Commit Graph

62 Commits

Author SHA1 Message Date
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 5f070fa8c9
point_spotlight: give it a better texture (thanks Maxwell) and optimize some bits 2023-09-12 19:39:51 -07:00
Marco Cawthorne 60128c6b1e
Server: add "Cheaters Lament", a proof of concept detection mechanism for suspicious player behaviour 2023-08-07 13:14:49 -07:00
Marco Cawthorne bd470605a3
Exterminate FX_Explosion, FX_Spark and FX_Impact references. 2023-07-24 14:14:20 -07:00
Marco Cawthorne 159756889f
New PropData API function: BreakModel_Entity(NSSurfacePropEntity target, vector dir, float speed); 2023-07-17 11:33:44 -07:00
Marco Cawthorne 12bb472abc
add class NSPortal (initial work, plus custom pmove changes).
Work on NSProjectile expansion has begun.
Support for skill cvar referencing within entityDef values.
2023-05-27 11:58:34 -07:00
Marco Cawthorne 2c72d358ce
Sentences: Speed up the word search using hashtables 2023-03-24 10:48:04 -07:00
Marco Cawthorne c7709bb2d5
Add NSMoverEntity, a class that handles moving, pushing entity classes such as func_door and the like. 2023-03-13 19:12:54 -07:00
Marco Cawthorne 56ec44700a
Lots of cleanup related to many entity classes to aid doxygen with generating documentation. 2022-12-06 15:04:07 -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 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 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 db2d3b1730
Get rid of hlmaterials.qc by making the look-up happen fully within NSMaterial.qc as part of the newly unified material routines.
There's also a new file (hlmaterials.txt) that is subject to change which will allow you
to add many custom material definitions without hard-coding a thing. Which fixes conflicts between different GoldSrc games.
2022-10-15 20:32:40 -07:00
Marco Cawthorne 7ad6d9c457
Make games buildable again, caused by renaming Spraylogo and GameRules classes/files. 2022-10-14 15:49: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 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 2a220fb331
Move base classes out of gs-entbase. This evolution only happened because classes such as CBaseMonster that once existed were replaced and it grew from there.
Tweak g_developer prints for scripted_sequences.
2022-07-19 15:22:15 -07:00
Marco Cawthorne 878df0941e
Cleanup for some CGameRules method types. Moved some Util_ functions into their own file. 2022-07-16 15:11:33 -07:00
Marco Cawthorne 220b424e33
Fix some misc Damage_Apply calls in really old parts of the code. Add more useful PlayerConnect/PlayerDisconnect methods into the base gamerules. 2022-07-14 18:04:11 -07:00
Marco Cawthorne 7632d0debd
Mapcycle: add Mapcycle_Load(), which will allow modes to suggest their own mapcycle. Subject to change. 2022-06-20 11:46:29 -07:00
Marco Cawthorne 27308ff1f4
env_sprite: Fix predraw for modelindex based entities.
TraceAttack: Add TraceAttack_SetRangeModifier(). This will enable CS-like bullet penetration behaviour.
2022-04-24 00:23:38 -07:00
Marco Cawthorne e79a2e9c2e
NSMonster: Add method bool CanCrouch(). Monsters will then attempt to crouch.
SoundDefs: Add support for distshader on Sound_PlayAt() calls.
2022-04-10 07:01:14 -07:00
Marco Cawthorne 9a6897c433
Extend FX_GibHuman with a dir (euler) and force parameter. 2022-04-05 20:39:30 -07:00
Marco Cawthorne 96f3a1224a
This is a massive change. Check the full msg here:
https://icculus.org/~marco/txt/nuclide_may2022.txt
2022-03-15 19:33:11 -07:00
Marco Cawthorne 6fb067eed3
My name has changed, so an update to the copyright to reflect it. 2022-03-11 11:40:43 -08:00
Marco Cawthorne 9d4d7afdcd
Big overhaul of momentary_door, momentary_rot_button... now onto the last
entity until Hazard Course is fully functional from beginning to end.
2022-01-04 21:54:42 -08:00
Marco Cawthorne 60fefa8c94
Server: Fix bug where clients would not receive damage notifications when
armor is the only affected attribute.
2021-12-17 20:27:36 -08:00
Marco Cawthorne 0a4b0ea795
Client: Move Damage_Draw() and Damage_Precache() out of here, into the
game-specific realm
2021-10-21 23:30:42 +02:00
Marco Cawthorne 249e4bc612
Massive revamp of the Nuclide system classes, more efficient networking
and memory usage thanks to intelligent boxing of fields.
Added Util_TimeToString, removed old VOX code, added lots of new helper
classes...
2021-10-20 01:19:10 +02:00
Marco Cawthorne d4fccac03f Work towards making vehicles predicted, this is ongoing. 2021-08-19 17:54:08 +02:00
Marco Cawthorne 2082f1355a Menu-FN: Parse liblist.gam files instead of relying on manifests outright. 2021-05-28 10:26:42 +02:00
Marco Cawthorne 1485544b91 Base: Get rid of g_eAttacker, which had been replaced by g_dmg_eAttacker.
Go over TraceAttack and make it combine multiple Damage_Apply calls into
one.
2021-05-10 11:33:31 +02:00
Marco Cawthorne 64745eb23c Overhaul prediction routines by boxing the generic client attributes away
from the game specific code. Add some helper macros... clean a whole bunch
up.
2021-05-08 17:44:16 +02:00
Marco Cawthorne ce2185ff02 Plugins: Added a callback for when a client is done connecting to a server 2021-02-14 21:05:10 +01:00
Marco Cawthorne ae6f3ebdfb Lots more documentation in server/*.c, minor fixes for some mod guns like
They Hunger, Gearbox, SciHunt and Poke646. Also cvar support for 'pausable'
2021-01-06 13:58:37 +01:00
Marco Cawthorne c76cdc5903 BotLib: Added basic waypointing and pathfinding system. They'll go about
their business but not do much else just yet.
2020-12-23 07:53:43 +01:00
Marco Cawthorne 74192c2f78 Implement basic EV_SHAKE event & adding 'shakes' key multiplier to sound
shaders. Client-side sound shaders will get proper shake duration matching
the sound sample length too. Fancy stuff you can try.
2020-12-12 06:24:48 +01:00
Marco Cawthorne 2fa4fd159c Move CLASSEXPORT from server/defs.h to shared/defs.h 2020-12-01 12:32:42 +01:00
Marco Cawthorne 69fa528822 Server: Move footstep precaches into Footsteps_Init 2020-10-30 13:29:37 +01:00
Marco Cawthorne 8cbbeaae24 Platform: Add gl_stipplealpha support to models. 2020-10-25 11:50:15 +01:00
Marco Cawthorne d9dababe65 Moved all possibly game-specific flags (such as FL_FLASHLIGHT) into gflags,
this affects mods. Please check the diff to see what you'll need to adjust.
2020-10-22 16:30:37 +02:00
Marco Cawthorne 2afba74a86 Added test_areaportal, to debug openportal() 2020-10-18 01:10:21 +02:00
Marco Cawthorne 50ccbf4b9a Add func_tank, func_tankmortar and generally faff about with input code. 2020-09-04 21:28:06 +02:00
Marco Cawthorne a00a574b4a Plugins: Added ClientConnect and ClientDisconnect hooks 2020-08-14 22:13:03 +02:00
Marco Cawthorne c0f97524ce Change 'impulse 240' for adding bots to 'sv bot_add', which is game-mode
oriented and more flexible to mod authors.
2020-07-09 10:42:34 +02:00
Marco Cawthorne 4d201c281b Fix armor indirection bug. The compiler ought to warn about name conflicts like these. 2020-05-28 19:53:24 +02:00
Marco Cawthorne fc3f124d24 Progs.src for server-side codebases are much simpler now, player class now
inherits the base_player class, which is a new addition.
2020-05-03 05:26:06 +02:00
Marco Cawthorne 0c0b9938b7 Went over weapon-drop logic to handle ammo, undroppable weapons.
Added basic intermission logic to HL:DM for fraglimit/timelimit being hit.
Cleaned up WeaponAPI to get rid of killicons, which should be handled
elsewhere.
2020-04-26 13:17:19 +02:00
Marco Cawthorne 051d07fbcf TraceAttack: Added support for weapon-specific penetration values.
Counter-Strike now uses those, values are those from CS:S's 2011 weapon
scripts.
2020-04-23 06:51:39 +02:00
Marco Cawthorne d72fc4d17c FX: Cleaned up inits and organized everything into the relevant game
specific directories, so mods can now inherit/override effects easier.
2020-04-23 03:13:29 +02:00