Marco Cawthorne
822a7221b2
WIP pmove, AI, etc. changes
2024-04-22 15:11:12 -07:00
Marco Cawthorne
3d32e75e88
NSClientSpectator: add new method SpectatorDeathcam()
2024-03-06 19:13:11 -08:00
Marco Cawthorne
649ed825ad
Big commit, work over various triggers. Clean up debug prints and make
...
them more consistent. Warnings are in yellow, while errors are in red.
New cvar: g_developerTimestamp will display timestamps next to debug messages
originating from the game-logic. Set g_developer to 1 to see them.
A lot of useful into, such as which entity id messages originate from
should aid in debugging quite a bit.
SP level transitions should also be more reliable now in terms of
transferring entities and the like.
Some levels have awkward transition areas and you might find yourself
jumping between levels frequently. Workarounds are in the works.
2024-03-02 00:40:08 -08:00
Marco Cawthorne
0e3eb491a6
NSClientPlayer: ensure pmodels have a shadow as well
2024-02-21 13:51:43 -08:00
Marco Cawthorne
4a8f4a6082
Add a whole bunch of new bot features, including bot profiles.
...
Developers: the internal class `bot` is now `NSBot`, and an entityDef
of the old name will be instantiated instead.
Override defs/bot.def in your mod and make it use any custom spawnclass
you wish. Now games don't have to override `addbot` or `bot_add` inside
the multiplayer game rules.
There's also more console commands. Clients now have access to:
addBot, killAllBots, killClass [classname], killMovables, trigger [targetname], input [entnum] [input] [data], listBotProfiles, listTargets, teleport [targetname], teleportToClass [classname], respawnEntities, spawn
2024-01-26 19:27:50 -08:00
Marco Cawthorne
40aee258ce
NSClientSpectator: new mode: overview which is work in progress.
...
Various misc fixes to code routines that negatively affect splitscreen.
We also set frametime/clframetime to 0.0 after the first player view has been drawn as to not run
predraw math more than once per frame. This should not cause any issues but if you are experiencing issues let us know.
2024-01-08 14:58:45 -08:00
Marco Cawthorne
32f9d974bb
New commands: listClientSoundDef, listServerSoundDef
...
Merge various trigger fields from Source entities into NSTrigger
Rename default player related sounds to the Source Engine style for more parity with Half-Life 2 and later games
Various player physics code fixes, such as being unable to jump higher when pushing against solids and faster noclip speed
2023-11-17 18:54:46 -08:00
Marco Cawthorne
c59a76a53d
NSMonster: add the ability to chase path_corners and things.
2023-10-03 11:05:14 -07:00
Marco Cawthorne
bd470605a3
Exterminate FX_Explosion, FX_Spark and FX_Impact references.
2023-07-24 14:14:20 -07:00
Marco Cawthorne
20415c7ebc
NSClientPlayer: Inherit player rendermode/fx/color/amt before calling UpdatePlayerAttachments()
2023-05-04 08:25:46 -07:00
Marco Cawthorne
3419c0df31
func_breakable: ensure the 'break' sound is played when present. also ensure we precache the break sound ahead of time.
2023-05-01 05:52:20 -07:00
Marco Cawthorne
f606efcbf7
NSClientPlayer: start networking rendermodes (needs to be optimised for network transfer)
2023-04-30 11:23:56 -07:00
Marco Cawthorne
3a755aaba7
NSSurfacePropEntity: add SetCanBleed() and CanBleed() methods to abstract the old iBleeds field.
2023-04-22 01:05:27 -07:00
Marco Cawthorne
706241a7b6
Client: viewmodel and player model weapon now inherit the rendermode of the player.
2023-04-16 10:43:40 -07:00
Marco Cawthorne
4a330ef3ce
PMove: improvements to liquid/waterlevel testing
2023-04-16 01:01:29 -07:00
Marco Cawthorne
8e14d3707d
NSClientPlayer: roll back .basevelocity in Predict{Pre,Post}Frame
2023-03-18 20:01:02 -07:00
Marco Cawthorne
7b42befcb3
Networked versions of func_conveyor, trigger_push. Bounce pads should be much nicer.
2023-03-18 17:49:12 -07:00
Marco Cawthorne
86dfb3ff1a
Fix various compiler warnings.
2023-02-14 12:54:06 -08:00
Marco Cawthorne
f0d77627ea
NSClientPlayer: Ensure .scale is reset upon spawning
2023-02-07 16:21:33 -08:00
Marco Cawthorne
fb4e08c2bf
NSClientPlayer: fix the view_ofs check in EvaluateEntity()
2023-02-07 14:01:25 -08:00
Marco Cawthorne
993c2a6ebc
Shared: Expose INPUT_BUTTON6 and INPUT_BUTTON7 so mods can define some extra movement/weapon inputs for clients.
2023-01-22 20:06:06 -08:00
Marco Cawthorne
5617000f77
NSClientPlayer: allow player to hold down Secondary attack after holding down Primary.
2023-01-18 21:31:36 -08:00
Marco Cawthorne
5f011a28dd
Shared: Removal of Game_Input().
2023-01-11 17:41:49 -08:00
Marco Cawthorne
1069468be1
Client: add cvar net_debugUpdates, to show which entity updates.
...
NSSurfacePropEntity: Add method: TimeSinceDeath()
Also further improvements to consistency of cvars, etc.
2023-01-08 13:18:57 -08:00
Marco Cawthorne
b2925d46e4
Lots of small clean ups and microoptimisations. ambient_generic has also been fixed in multiplayer and made to save more bandwidth.
...
Rename a bunch of cvars to be more in a more consitent style similar to later id Tech games.
2023-01-05 23:41:48 -08:00
Marco Cawthorne
dbf511dfb9
NSClientPlayer: add extrapolation of other clients, should be a lot smoother players all around now.
2023-01-05 15:31:25 -08:00
Marco Cawthorne
2c5bf43c58
Fixed spectator inputs getting stuck and physics being run twice, due to the recent changes to SV_RunClientCommand.
2023-01-02 18:10:20 -08:00
Marco Cawthorne
534b249ac4
Client: Call Weapons_PreDraw() inside NSClientPlayer's predraw.
2022-12-31 17:49:15 -08:00
Marco Cawthorne
27b0c26a12
Documentation improvements for platform, vgui etc. headers and files.
2022-12-30 00:15:10 -08:00
Marco Cawthorne
633046d28e
NSClient: Rename ClientInput() method in NSClient to ProcessInput(), as well as add SharedInputFrame() that can be overriden by the game.
2022-12-28 16:47:44 -08:00
Marco Cawthorne
2d911109cc
trigger_relay: Set m_iValue so that multisources will work properly that get targetted by them
...
trigger_auto: Delay the trigger of them in singleplayer until 1 player has joined
Misc cleanups. The 'Janitor Simulator' on TWHL should work now.
2022-12-14 16:51:16 -08:00
Marco Cawthorne
74b61f35ed
Print a warning + backtrace when we manually call remove() on an entity that hasn't been destroyed properly.
2022-11-30 16:47:24 -08:00
Marco Cawthorne
2c6da152ed
Clean up more and more warnings fteqcc yells about
2022-11-30 14:21:55 -08:00
Marco Cawthorne
5f126516c6
Server: Add new global g_dmg_vecLocation, which gives an approximate damage impact location.
2022-11-11 15:04:11 -08:00
Marco Cawthorne
39854c0740
NSClientPlayer: UpdatePlayerAnimation() is now calling when running player physics, and also run seperately for non predicted player entities during predraw.
2022-11-11 14:18:14 -08:00
Marco Cawthorne
bb92aaf37f
NSClientPlayer: Fix ladder climbing sounds from not playing.
2022-11-10 15:41:42 -08:00
Marco Cawthorne
003bc5d88a
Removal of Footsteps_Update outside of NSClientPlayer. Mods now have the full ability to override steps within the player class. Method name subject to change.
2022-11-01 19:54:56 -07:00
Marco Cawthorne
843dcc8284
Kill src/client/player.qc. We now have overridable methods dedicated for updating player animations, attachments and more inside NSClientPlayer.
...
Some of these APIs are still subject to change but they're being deployed in TW 1.35 right now.
2022-11-01 19:12:40 -07:00
Marco Cawthorne
e499a7d484
Documented the Nuclide System (NS) classes.
2022-10-14 13:08:47 -07:00
Marco Cawthorne
05eb10904e
func_vehicle: Make it shared/predicted. The smoothest it's ever been!
2022-08-28 09:20:34 -07:00
Marco Cawthorne
146051dd67
Proper nonvirtual declarations for class methods.
2022-08-24 15:11:04 -07:00
Marco Cawthorne
7c40100e46
Cleanup time for some of our base classes. Go over Show/Hide methods, and document
...
the EFFECTS fields we have available. Since we do our own networking mostly we can reuse
some that are only available via CSQC (or NQSSQC)
2022-08-24 14:05:59 -07:00
Marco Cawthorne
517614fd37
Major overhaul that'll make savegames a lot better. Every entity we implement should have a Save/Restore function.
...
AI noes recalculates their route in case of a loaded savegame... And much more.
2022-08-10 14:24:06 -07:00
Marco Cawthorne
a4a0cc3c43
build.cfg: Bump BUILD_ENGINEREVISION to 6303, thus fixing FreeTS from not compiling.
...
Shared: Fix that colormap was evaluated as part of PLAYER_VELOCITY instead of PLAYER_MODELINDEX
This is a minor optimisation.
Add NSClientPlayer::OptimiseChangedFlags...
2022-08-09 09:05:31 -07:00
Marco Cawthorne
5ca96bbcd9
Add helpers across the codebase to deal with networking ents. I tried prototyped a more elegant solution the compiler didn't like - the language should really deal with this.
2022-08-07 14:12:55 -07:00
Marco Cawthorne
6d8273331a
Client: Replace rogue setproperty calls with ones talking to our g_view object
2022-08-05 21:15:19 -07:00
Marco Cawthorne
d7418151f0
Client: Disable some expensive routines when paused.
2022-07-18 10:02:04 -07:00
Marco Cawthorne
66b09de431
Big commit fixing many regressions since crunch hit. env_sprite has been reworked.
...
multi_manager entities now behave correctly when calling themselves in MULTITHREADED mode.
Remove GS_RENDERFX option. Too many entities rely on its functionality anyway.
Fixed some rendermode behaviour - ladders will no longer be visible.
You can now see the playermodel (and no longer the viewmodel) in mirrors.
Fixed a lot of warnings.
2022-07-07 09:10:14 -07:00
Marco Cawthorne
5691fe518f
prop_rope: Minor performance boost. Add cvar rope_maxsegments.
2022-06-27 12:16:11 -07:00
Marco Cawthorne
d1a90e9aa4
NSClientPlayer: Allow weapon input when in intermission & in vehicle, so the intermission end can get triggered.
2022-06-20 11:45:50 -07:00