Marco Cawthorne
ee58089a55
env_explosion: Get it up to Source Engine standards.
2024-02-23 13:23:19 -08:00
Marco Cawthorne
34884b68a3
ambient_generic: fix mix-up of small and medium radius.
...
also set s_nominaldistance to 1024.
2024-02-23 13:22:51 -08:00
Marco Cawthorne
e2ee6987de
NSTraceAttack: save traceline endpos and plane_normal in case it gets set elsewhere
2024-02-23 13:21:44 -08:00
Marco Cawthorne
7d58b4a96a
NSRenderableEntity: Remove aggressive angle optimisation
2024-02-23 13:21:08 -08:00
Marco Cawthorne
8a18c2e992
PropData: gibs use a fixed angular velocity in fallback physics mode, and have a hitbox.
2024-02-23 13:20:53 -08:00
Marco Cawthorne
0f86ba61a1
DecalGroups_Place: cancel out if the group wasn't found.
2024-02-23 13:20:15 -08:00
Marco Cawthorne
5c90692873
SurfaceProperties: impacts now pass a proper dir vector to the particle system
2024-02-21 21:11:48 -08:00
Marco Cawthorne
6319f6166e
Skill.qc: readcmd() builtin usage replaced with a tiny config parser.
...
Context:
localcmd/stuffcmd are delayed enough that we can't use it to load
difficulty settings from skill.cfg before the game objects have spawned.
readcmd worked around this, but its usage is buggy and discouraged.
loading config files from the root game directory is forbidden by the
engine for security reasons (being able to read passwords etc.)
but we're allowed to do so from sub-directories.
by emulating the source engine behaviour we become compatible with their
convention, while also working around said incompatibility.
2024-02-21 21:08:57 -08:00
Marco Cawthorne
2f56725160
func_plat: nudge the platform the way way when no height is defined and we make up a position
2024-02-21 16:41:52 -08:00
Marco Cawthorne
29a997dbcf
Sound: add Sound_Stop() to make that task more slightly more accessible.
2024-02-21 16:11:14 -08:00
Marco Cawthorne
33e5038881
func_pushable: play the surfaceproperty specific scraping sound when being pushed around
2024-02-21 16:10:28 -08:00
Marco Cawthorne
b2fc4d2918
env_muzzleflash: add cvar `cg_muzzleflashDLightColor`
2024-02-21 16:09:32 -08:00
Marco Cawthorne
3e182b3737
NSRenderableEntity: Ensure .skeletonindex is set to 0 after deleting the skeletal object
2024-02-21 14:50:44 -08:00
Marco Cawthorne
0e3eb491a6
NSClientPlayer: ensure pmodels have a shadow as well
2024-02-21 13:51:43 -08:00
Marco Cawthorne
a9836563d1
trigger_teleport: add telefrag.
2024-02-21 13:43:43 -08:00
Marco Cawthorne
9847f3828e
NSGameRules: send a newly joined player to the intermission screen gently
2024-02-21 13:41:18 -08:00
Marco Cawthorne
08259f5652
make_mapdef.sh/trigger_changetarget: Minor fixes.
2024-02-19 13:23:46 -08:00
Marco Cawthorne
0df1e78cc3
Platform: Comment out debug strings.
2024-02-19 13:20:51 -08:00
Marco Cawthorne
ea0b365037
SurfaceProperties: Insist on having a 'default' stage defined. Use that to initialize the various surface properties.
2024-02-19 13:20:08 -08:00
Marco Cawthorne
f950dcaabb
func_pushable: Respect 'size' and improve movement direction math a little.
2024-02-15 14:49:44 -08:00
Marco Cawthorne
9e68e24d2e
trigger_teleport: Add filter for func_pushable entities. Test chamber can now be triggered.
2024-02-15 13:35:42 -08:00
Marco Cawthorne
99f513efdb
func_pushable: Remove hitcontentsmaski override, else the cart won't move up in the test chamber.
2024-02-15 13:35:13 -08:00
Marco Cawthorne
06d959ef02
func_tracktrain: Lots of improvements across the board. Enjoy c0a0-c0a0e!
...
func_trackchange/autochange: Initial implementation.
2024-02-13 22:51:36 -08:00
Marco Cawthorne
7e8d1aacdb
Fix various warnings.
2024-01-30 00:42:10 -08:00
Marco Cawthorne
31b88f63f2
Fixes for DAMAGE_AIM, so we can respect the `sv_aim` cvar.
2024-01-29 23:47:36 -08:00
Marco Cawthorne
08cac51d5f
NSClient: add `void SetInfoKeyFloat(string, float)` and `float GetInfoKeyFloat(string)` methods
2024-01-29 16:10:16 -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
ba4ddbd3f6
Math_FixDelta: Make recursive. Rename pending...
2024-01-26 19:10:57 -08:00
Marco Cawthorne
30903f7683
VGUIView: add missing return
2024-01-15 16:34:09 -08:00
Marco Cawthorne
da194e8eed
VGUIWindow: migrate non Window specific bits into its own class: VGUIView
2024-01-15 16:28:46 -08:00
Marco Cawthorne
05af28180e
Server: Fix typos in various sound precache calls.
2024-01-15 15:45:48 -08:00
Marco Cawthorne
fea60cd435
Client: add return to exit early when skyPath isn't set, solely to avoid an unnecessary print.
2024-01-15 15:44:46 -08:00
Marco Cawthorne
7b09f7cbc4
Menu-FN: Init String-Table before most of the other inits.
2024-01-15 15:43:43 -08:00
Marco Cawthorne
e9700b31b9
Sound_Init: Remove precaches for anything other than common/null.wav
2024-01-15 15:42:54 -08:00
Marco Cawthorne
5bdbe2cc47
NSNavAI: Add method RouteToPositionDenyFlags(). Same as RouteToPosition() but will accept a link-flag filter mask.
2024-01-11 15:56:41 -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
2891bc061e
func_breakable: precache particleeffectnum before first use
2024-01-04 14:34:37 -08:00
Marco Cawthorne
2034eb1d45
ambient_generic: better logging.
2024-01-04 14:33:25 -08:00
Marco Cawthorne
0c7fc9abc6
NSRadar: add method InitEmpty()
2024-01-02 15:41:25 -08:00
Marco Cawthorne
1b21a6cf46
ambient_generic/speaker: force spawnflag MSF_MULTIPLAYER within Spawned() instead of the constructor.
2024-01-02 15:26:29 -08:00
Xylemon
dda946476f
Add def for areaportalwindow
2024-01-02 12:40:40 -08:00
Marco Cawthorne
64a6a9007d
Add new cvar s_developer which prints sound related info from the game logic
2024-01-02 12:03:04 -08:00
Marco Cawthorne
21c27969f6
env_shooter: Correct the implementation of variance and repeatability.
2024-01-02 12:00:50 -08:00
Marco Cawthorne
cca461effe
Platform/Menu: Migration of Server_IsLan() into the master-server related code
2024-01-02 11:59:16 -08:00
Marco Cawthorne
4600a03165
NSRadar: checking in initial work on the class
2024-01-01 21:23:09 -08:00
Marco Cawthorne
bc05a07e50
NSRenderableEntity: rendermode RM_SOLID becomes invisible when renderamount is 0.
2024-01-01 21:21:31 -08:00
Marco Cawthorne
d16e096306
Documentation improvements, cleaning up of misc files.
2024-01-01 21:20:02 -08:00
Marco Cawthorne
591d5821f9
NSMonster: document the various spawnflags more
2023-12-15 18:38:33 -08:00
Marco Cawthorne
6c1db1f4f6
Shared: add `bool FileExists(string filePath)` function
2023-12-15 17:00:13 -08:00
Marco Cawthorne
2530608b1f
NSInteractiveSurface: fix typo
2023-12-15 16:59:19 -08:00
Marco Cawthorne
4b69949385
Server: Ensure r_meshpitch gets set to 1 on init.
2023-11-18 21:16:52 -08:00
Marco Cawthorne
fa4f77aae0
NSMonster: SetOrigin() during Respawn at least once so monsters don't die in the same spot during multiplayer respawns, inside hurt triggers or whatever.
2023-11-18 20:30:10 -08:00
Marco Cawthorne
277b453c40
Server: when skill is invalid (0) then default to 2 (medium)
2023-11-18 19:58:29 -08:00
Marco Cawthorne
faba64ad28
Menu-FN: Broadcast in Chat when a player is joining a server, and handle ACTION (/me) text output
2023-11-18 15:47:37 -08:00
Marco Cawthorne
af4212987f
Menu-FN: Make Chat Rooms and Controls accessible from other menus, keeping track of where we originated from
2023-11-18 14:34:16 -08:00
Marco Cawthorne
1ccb640ce6
Menu-FN: List ping for ICE servers correctly, View Game Info will now return to the appropriate menu
2023-11-18 14:10:24 -08:00
Marco Cawthorne
602fa9fd93
Menu-FN: Hide menu upon connecting to a server, and automatically refresh serverlist when opening the Internet Games menu
2023-11-18 14:00:42 -08:00
Marco Cawthorne
07173b3c7b
Platform: add menu debug command 'listGameLibrary' to output all the currently indexed games/mods
2023-11-18 13:31:33 -08:00
Marco Cawthorne
29e7b84e4b
NSMonster: handle the check for MSF_MULTIPLAYER inside Spawned() instead of the constructor
2023-11-18 12:09:49 -08:00
Marco Cawthorne
0cd5d0e5a7
MapCycle: Initialize g_mapCycle with mapcycle.txt, handle empty mapcycle slightly better.
2023-11-18 12:02:41 -08:00
Marco Cawthorne
22460c5aa0
BotLib: new commands - 'offset [vector]', 'flipx', 'flipy', 'flipz', 'merge [filename.way]', 'loadpb [podbotwaypoint.pwf]', 'loadrich [jumbot.jrf]', 'loadfb [foxbot.fwp]'
...
Also make the bots use the soundDef when pressing '+use'.
2023-11-17 18:58:24 -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
bf705a9e31
speaker: now shared between client/server game
...
NSTalkMonster: Remove game specific PREDISASTER flag from the code, implement GAG instead
New entities: env_cascade_light (wip), logic_achievement, env_instructor_hint (wip)
2023-11-15 09:52:11 -08:00
Marco Cawthorne
4790e9d230
NSItem: Position entity after everything else has spawned, to avoid entity lump ordering messing with droptofloor() calls
2023-11-15 00:14:06 -08:00
Marco Cawthorne
038265dd64
trigger_teleport: Special offset rules for players when choosing their final teleport destination.
2023-11-14 23:45:43 -08:00
Marco Cawthorne
801742dd4c
Platform: add MAPINFO_PREVIEW query type to MapLibrary_GetInfo() so interfaces can get a proper preview for levels.
2023-11-06 14:27:05 -08:00
Marco Cawthorne
e67d1b0da4
Server: add cvars mp_td_dmgToWarn and mp_td_dmgToKick
2023-11-06 08:46:22 -08:00
Marco Cawthorne
25cfc4938e
game_team_master/NSTrigger: GetValue() is now aware of who is querying for said information. Required for game_team_master.
2023-10-30 16:37:45 -07:00
Marco Cawthorne
d65ab07cf1
NSProjectile: revert the default setting for the various detonate modes
2023-10-29 23:25:40 -07:00
Marco Cawthorne
a6fb7767dc
Implement cycler_weapon, cycler_wreckage, game_end, game_player_hurt, game_score, game_team_master, game_team_set, game_player_team, game_zone_player
2023-10-25 00:46:04 -07:00
Marco Cawthorne
75d03f27fe
Add missing definitions for ENT_FUNNEL and ENT_SMOKER
2023-10-24 09:50:59 -07:00
Marco Cawthorne
97c2fdd778
env_smoker: Initial implementation.
2023-10-24 00:30:42 -07:00
Marco Cawthorne
01ebb973f2
env_funnel: Initial implementation.
2023-10-23 21:36:58 -07:00
Marco Cawthorne
ca04a7d637
func_platrot: Cleanup and rewrite the essential parts. Now inherits most of func_plat.
2023-10-23 14:38:02 -07:00
Marco Cawthorne
29b6a200b8
NSProjectile: Quick support for light_color/light_radius
2023-10-23 00:17:02 -07:00
Marco Cawthorne
73bec53034
PropData: read info from Source Engine .phy files
2023-10-22 23:30:31 -07:00
Marco Cawthorne
8cd6d3967d
Shared: sanity check for when decalgroups are attempted to be placed, but not available.
2023-10-18 07:47:24 -07:00
Marco Cawthorne
b7167a553e
Shared: don't mess with sound def names when precaching them.
2023-10-17 18:27:59 -07:00
Marco Cawthorne
11deea5b3d
Add the following physics entities from Source: phys_ballsocket, phys_constraint, phys_constraintsystem, phys_convert, phys_hinge, phys_keepupright, phys_slideconstraint & env_physexplosion
...
Add new class phys_rope, which will handle move_rope and keyframe_rope from Source.
2023-10-17 16:49:01 -07:00
Marco Cawthorne
81a498d49e
Client: update viewmodel bone count directly after switching models, needed for getting the right attachment positions
2023-10-13 08:23:12 -07:00
Marco Cawthorne
ab9d66b2e4
BotLib: for goals and goalitem route search, use WorldSpaceCenter() and not their origin to deal with brush triggers and non-existant origins properly
2023-10-13 08:22:31 -07:00
Marco Cawthorne
900cf43bd0
!!! Mods/games should now remove modelevent.qc and view.qc from their csprogs !!!
...
env_muzzleflash: Initial implementation of this Half-Life 2 entity
Client: model events are for viewmodels are now handled by NSRenderableEntity.
2023-10-12 14:45:27 -07:00
Marco Cawthorne
05ed789f9a
trigger_camera: Hacks that'll make it work (for now)
2023-10-11 01:05:40 -07:00
Marco Cawthorne
f96b41bc2e
NSSurfacePropEntity: Ignore view_ofs in GetEyePos() when we're a spectator.
2023-10-11 01:05:37 -07:00
Marco Cawthorne
b37afb1362
BotLib: break func_breakable entities within their path.
2023-10-11 01:05:35 -07:00
Marco Cawthorne
1bf829920f
NSRenderableEntity: Simplify RM_SOLID in RenderFXPass()
2023-10-11 01:05:34 -07:00
Marco Cawthorne
a623b1e301
NSTalkMonster: pathfinding fixes that benefit following players around the maps. More failsafes.
2023-10-11 01:05:28 -07:00
Marco Cawthorne
7d9de3a2cc
NSEntity: new method GetNearbySpot() which will return a free position close to the entity.
2023-10-11 01:05:26 -07:00
Marco Cawthorne
9602d5eac8
Client: add new cheat cvar: r_skipWorld
2023-10-11 01:05:19 -07:00
Marco Cawthorne
1d7b6fe25f
PMove: added pm_noclipSpeed and pm_noclipAccelerate cvars which serve an obvious purpose.
2023-10-11 00:39:31 -07:00
Marco Cawthorne
f183bfc571
ambient_generic: fix regression in the old style sound mechanism
2023-10-06 21:19:46 -07:00
Marco Cawthorne
a5ecd18047
env_model: Initial implementation of this SoHL entity
2023-10-06 00:21:17 -07:00
Marco Cawthorne
9896b652c8
env_shockwave: Initial implementation of this SoHL entity
2023-10-06 00:20:48 -07:00
Marco Cawthorne
818a1a2155
scripted_sequence: support for 'killtarget' key
2023-10-04 14:55:02 -07:00
Marco Cawthorne
662e01c84d
monster_generic: Set alliance to neutral.
2023-10-04 08:56:46 -07:00
Marco Cawthorne
6f3b07ed34
NSNavAI: ensure everything is properly nulled when an empty chase path target is set.
2023-10-04 08:56:21 -07:00
Marco Cawthorne
07e70aa4c4
NSMonster: disable yaw interpolation for now.
2023-10-04 08:55:53 -07:00
Marco Cawthorne
47eb4fb88f
func_tracktrain: fixes to the way the angle delta is calculated, and restore the train to a position relative to its last target post level transition.
2023-10-04 08:55:03 -07:00
Marco Cawthorne
40adc77d66
scripted_sequence: Don't call FreeStateMoved() when SS_NO is set.
2023-10-04 08:53:07 -07:00
Marco Cawthorne
b37893e660
Client: fix the typewriter text effect timing, where fadein controls the time for each character to fade in.
2023-10-04 07:55:55 -07:00