Marco Cawthorne
e8de2b32bb
NSIO: Fix sloppy code in our Restore() method.
2022-03-29 22:25:45 -07:00
Marco Cawthorne
8c3804a1bc
Make Client_InIntermission() a shared (Client/Server) function, add method 'InIntermission()' to CGameRules.
...
Tone down the intermission view movement, also tweak Spawn_SelectRandom() to find more points.
2022-03-29 15:20:52 -07:00
Marco Cawthorne
dd26664ac4
NSEntity: fix typo in ParentUpdate() preventing us from parenting things by offset
2022-03-28 20:20:29 -07:00
Marco Cawthorne
50312d500a
SurfaceProperties: Be more pedantic about what object can contain material
...
info in SurfData_Impact()
2022-03-28 19:01:29 -07:00
Marco Cawthorne
e2073dfc43
env_glow: Quick hack to allow oriented sprites to rotate when pointing down.
2022-03-28 17:18:50 -07:00
Marco Cawthorne
a2c90e8e95
CSQC_UpdateView: Move View_PreDraw() call right before addentities.
2022-03-28 15:45:32 -07:00
Marco Cawthorne
95c2b8225a
func_door: Add 'snd_move' attribute.
...
Platform: Misc minor GLSL updates. You can use the #TINT parm on program fade materials now.
2022-03-28 03:32:02 -07:00
Marco Cawthorne
9252682c53
NSTrigger: Add 'Trigger' input, this will make interacting between GoldSrc and Source triggers easier.
2022-03-26 23:27:27 -07:00
Marco Cawthorne
1ca716d4fe
func_door: Add Save/Restore methods to aid save-games.
2022-03-26 18:15:43 -07:00
Marco Cawthorne
0e4aa015a7
NSEntity: Add 'Use' input from Source.
2022-03-26 18:04:06 -07:00
Marco Cawthorne
c87837f583
func_door: Add 'forceclosed' key from Source
2022-03-26 18:03:22 -07:00
Marco Cawthorne
ed3c821175
logic_auto: Initial implementation.
...
NSEntity: Add support for 'SetParentAttachment', which currently supports
the keyword 'origin'. Will be extended to look for model attachments in the future.
NSEntity: Attachments now take the spawn offset into account instead of
attaching to an entity's origin. Use SetParentAttachment to override this.
2022-03-24 17:59:30 -07:00
Marco Cawthorne
9e9d5b1832
env_fog_controller: Initial implementation. Fully shared entity, tested on
...
d2_coast_XX maps in Half-Life 2.
2022-03-23 11:05:35 -07:00
Marco Cawthorne
3dc0be8ff4
func_dustcloud: Fix 'Alpha' not being respected fully.
2022-03-23 00:35:30 -07:00
Marco Cawthorne
8df9b6db0e
func_dustcloud: Add separate material textures/sfx/dustcloud into platform/
2022-03-23 00:26:46 -07:00
Marco Cawthorne
8fa85bd1e5
func_dustcloud: initial implementation. Currently fully client-side, so
...
Inputs and 'StartDisabled' don't work.
2022-03-22 22:57:15 -07:00
Marco Cawthorne
f8963a12db
prop_static: Respect .skin... we do this because this to-be-makestatic'd
...
entity will not support the RenderFXPass() anyway.
2022-03-22 19:51:59 -07:00
Marco Cawthorne
750bb413e9
prop_rope: Now a shared (client/server) entity instead of just client. Will
...
now respect parenting so you can have very dynamic rope attachments in
the world.
2022-03-22 16:38:31 -07:00
Marco Cawthorne
143a00e94e
Fix light_dynamic (static) from not spawning in CSQC. Add r_skipDiffuse to rtlight.glsl,
...
add SURF_PENETRATE, which will make bullets pass right through them when
BULLETPENETRATION is set. Go over and refactor a lot of base_client, player
and spectator code to facilitate both permanent and temporary spectators
better. Add experimental env_glow lens flare code. Fix material ID detection
bug for Q3 based BSPs. A couple helper functions were added to src/client/utils.cpp
but they are not yet final.
2022-03-17 21:05:47 -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
519035d349
NSRenderableEntity: Use deformVertexes instead of the currently broken .fatness field.
2022-03-15 00:14:44 -07:00
Marco Cawthorne
88a1984d09
NSRenderableEntity: Add RFX_GLOWSHELL effect. Note that .fatness doesn't
...
currently work on HL MDL.
2022-03-15 00:01:20 -07:00
Marco Cawthorne
dca95b5c45
Fix some warnings across the board.
2022-03-14 11:18:59 -07:00
Marco Cawthorne
bbfc8c945c
BotLib: Prematurely commit all this new nav-stuff because some people like
...
to compile their games.
2022-03-13 17:10:12 -07:00
Marco Cawthorne
e437550c73
BotLib: Add definitions for BOTINFO_AMMO and BOTINFO_ARMOR.
2022-03-13 17:09:12 -07:00
Marco Cawthorne
ae85529f95
Add pmodel attributes to the base player class.
2022-03-13 17:01:18 -07:00
Marco Cawthorne
0fc52f726d
BotLib now responds to 'alert' flagged sounds as well. Also added a cooldown
...
timer so we don't call alerts too often.
2022-03-11 14:00:44 -08: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
d63f838a86
info_particle_system: Default .angles to point upward.
2022-03-10 13:50:53 -08:00
Marco Cawthorne
d885e2e643
BotLib: lot of work done on recognizing weapon types, making proper use of
...
Weapons_IsEmpty() checks - more fixes for pathfinding; the ability to set
walk and movespeed externally via method overrides; several bugfixes in
relation to firing (and getting stuck on pressing other keys.
2022-03-08 21:50:30 -08:00
Marco Cawthorne
f1f12623d1
Client: add r_skipFlares cvar.
2022-03-03 23:32:51 -08:00
Marco Cawthorne
ce02de7eff
Physics_InputPostMove: Unset FROZEN _after_ physics frame...
2022-03-03 23:32:33 -08:00
Marco Cawthorne
d8a8f07432
Client: make sure customphysics is set 'Empty' on monsters, clients
2022-03-03 23:31:59 -08:00
Marco Cawthorne
9765f4662b
Organize cmd.qc and fix centerprints from being 'font ambigious'. Use
...
the console font for now (like GoldSrc would, for example)
2022-03-03 16:13:30 -08:00
Marco Cawthorne
7ba2bee8e2
light_dynamic: Add r_showDlights, which will visually highlight active
...
dynamic lights that are active in-game.
2022-03-03 14:16:46 -08:00
Marco Cawthorne
53f5780ac0
Improvements to console output to make debugging easier, simplified
...
entry.qc by pushing more code into external functions. Add support
for mods to override networked events (after we added support for
ent update overrides the other week).
2022-03-03 14:16:02 -08:00
Marco Cawthorne
93124fa6de
base_player: Add Death() method that'll let the client know when to render
...
the 'Deathcam'. Also add the mentioned UpdateDeathcam().
2022-03-02 20:37:40 -08:00
Marco Cawthorne
3882611087
Server: Make sure we forceinfokey the '*team' field to 0 upon ClientConnect
...
to avoid having players show up in teams after map-change.
2022-03-02 09:19:05 -08:00
Marco Cawthorne
6db98c88aa
BotLib: Add support for goalitems. These may include objectives for things
...
like CTF - flag your game-mode entities as either .botinfo BOTINFO_TEAM_GOALITEM
or BOTINFO_TEAM_GOALCAPTURE and BotLib will try to figure out what to do.
2022-03-02 09:17:57 -08:00
Marco Cawthorne
390f127898
NSRenderableEntity: Run Math_FixDelta() on our angles before networking
...
anything to make sure we're within the network constraints of the protocol.
2022-03-02 09:15:41 -08:00
Marco Cawthorne
169bd80fc8
GameRules: Add 'IsTeamPlay()' method to the gamerules class. Use this
...
instead of the soon to be removed Rules_IsTeamPlay()!
2022-03-02 09:14:58 -08:00
Marco Cawthorne
ee2d3f6b3f
SoundDef: add 'pitch' support to Sound_PlayAt(), the pointsound builtin does
...
support pitch on FTEQW but it's not advertised in the extensions .qc
2022-03-02 09:14:02 -08:00
Marco Cawthorne
d4de286086
Menu-FN: Add 'menumap' to the liblist.gam extended specification.
2022-02-23 01:41:43 -08:00
Marco Cawthorne
a687d7b330
Various tweaks to documentation inside the codebase, more verbose general
...
information prints to console to aid non-devs in sending bug reports and
finding other issues. Updates to some of the GLSL. Minor material fixes.
2022-02-23 01:17:05 -08:00
Marco Cawthorne
084414db40
Client: Fix bug where muzzleflashes wouldn't show up in FreeHL.
2022-02-22 12:01:31 -08:00
Marco Cawthorne
8cb4c35e23
Remove SendFlags with constants from NSEntity and peers, make full use
...
of EvaluateEntity() to decide which attributes to send network updates of.
2022-02-18 00:30:24 -08:00
Marco Cawthorne
1d9ade7319
NSEntity: Add ClientRemove() method so sub-classes can control what happens
...
when a SSQC ent representation is removed from the client.
prop_vehicle_drivable: All sorts of tweaks, lots subject to change.
VGUI elements now get a callback when the resolution gets resized, so they
get a chance to reposition themselves.
Deprecate function ClientGame_EntityRemove().
2022-02-17 22:16:35 -08:00
Marco Cawthorne
47a37af545
Client: Allow mods to override entity updates of gs-entbase.
...
prop_vehicle_drivable: Initial work towards suspension.
2022-02-11 17:09:08 -08:00
Marco Cawthorne
22ab20a7b4
Server: TraceAttack will now track range across bullet penetration, as well
...
as handle water volume impacts.
2022-02-10 16:17:24 -08:00
Marco Cawthorne
f118e34792
Client: Verify our pSeat player entity directly, don't assume 'self' is the
...
player in CSQC_Parse_Event and CSQC_Input_Frame.
2022-02-10 13:31:57 -08:00
Marco Cawthorne
bef8dfb117
Base: Some minor edits to facilitate the TW akimbo weapons (clean this later...)
2022-02-04 15:24:43 -08:00
Marco Cawthorne
82e1f2e044
GS-EntBase: Move prop_static fully to the client-side.
2022-02-04 10:52:37 -08:00
Marco Cawthorne
c4a5070027
NSProjectile: Fix small compiler warning.
2022-02-04 10:22:01 -08:00
Marco Cawthorne
4c6800aa4f
Some fixes/checks for prop_dynamic that I forgot to revert while testing.
...
Also added some changes to NSVehicle/prop_vehicle_drivable.
2022-02-03 21:18:31 -08:00
Marco Cawthorne
54cf7f8273
GS-EntBase: Add SetScale(), SetOwner(), SetVelocity() and SetTouch() methods
...
to NSEntity.
2022-02-02 10:23:31 -08:00
Marco Cawthorne
bcf9e2e758
Cleaning up some warnings.
2022-02-01 13:37:21 -08:00
Marco Cawthorne
eb3eb567ca
Shared: nil out the base_client predraw. Get rid of the .pitch attribute of
...
base_player. Fix some angle networking typos.
2022-02-01 09:33:28 -08:00
Marco Cawthorne
04fe9ae215
Menu-FN: Make this progs aware of DRAWFLAG_ADDITIVE
2022-01-31 18:26:34 -08:00
Marco Cawthorne
a3a5f9d626
Client: Some fixes for handling player/spectator classes, both share now the
...
same parent class on both client and server. Fix crash with spectators and
input-frame overrides. Add 'additive' command to fontdefs.
2022-01-31 17:38:01 -08:00
Marco Cawthorne
eb01a1d8d2
Client: Add helper functions for right-aligned text drawing.
2022-01-31 17:04:08 -08:00
Marco Cawthorne
155b8c343b
Font_StringWidth: Fix me being tired and not returning anything valid in this
2022-01-31 16:21:09 -08:00
Marco Cawthorne
5a3f59a24c
BotLib: Add checks to validate the result of Way_FintClosestNode()
2022-01-31 16:07:04 -08:00
Marco Cawthorne
7bcd03c05e
Client: Change Font_GetStringWidth() to Font_StringWidth().
2022-01-31 15:39:08 -08:00
Marco Cawthorne
e11465018f
Client: Allow base_player and spectator classes to override CSQC_Input_Frame
...
with a new method: ClientInputFrame.
2022-01-31 15:31:07 -08:00
Marco Cawthorne
419e89e861
Client: Some minor work towards making the textmenu/game_text code respect
...
actual font data handled by Nuclide via external fontdef files.
2022-01-31 13:57:30 -08:00
Marco Cawthorne
7ce222007c
NSMonster: Fix oversight where targets would get overriden by AlertNearby()
...
Make it so Pain() has a random chance to change targets.
2022-01-31 10:12:41 -08:00
Marco Cawthorne
3fc7c477f0
info_particle_system: Fix the emitting speed/angle. Apparently that's
...
specified in the particle config itself.
2022-01-28 17:55:45 -08:00
Marco Cawthorne
578da4a779
Add VGUI_Active() which returns whether or not we're drawing VGUI elements,
...
add SNDFL_ALERTS to sound shaders, which will alert enemy AI of suspicious
behaviour, fix a health-setting bug in NSSurfacePropEntity and remove
playerslot check in item_pickup from base/
2022-01-28 16:02:00 -08:00
Marco Cawthorne
abdce0b61d
NSMonster: Improve 'seeing', don't target just anything with takedamage set to YES.
...
Add 'AlertNearby()' which is called when a monster sees a new enemy,
gets hit or dies.
2022-01-28 12:31:24 -08:00
Marco Cawthorne
2c80a9f9ff
NSSurfaceProp/PropData: Add support for breakable_skin. When a prop 'dies'
...
it doesn't necessarily have to disappear, it can change its material to one
of your choosing.
2022-01-28 06:53:32 +01:00
Marco Cawthorne
92bb821ad9
NSMonster: Add GetWalk/Run/ChaseSpeed methods to override movement speeds
...
of each monster class that's based upon it.
2022-01-25 20:07:25 -08:00
Marco Cawthorne
f0a8fa0889
Client: Games can now override base-Nuclide commands.
2022-01-25 20:06:40 -08:00
Marco Cawthorne
63d7b04852
NSMonster: Do some basic interpolation between new/old frames. HLMDL are
...
currently not supported however (engine needs a fix)
2022-01-24 17:29:58 -08:00
Marco Cawthorne
7963b11a7d
NSMonster: Add MeleeMaxDistance() and MeleeCondition(), so classes can
...
easily override condition and distance of their melee attacks.
2022-01-24 12:29:06 -08:00
Marco Cawthorne
709f0a2297
scripted_sequence: More work to make c1a3 and t0a0a work properly
2022-01-21 17:24:39 -08:00
Marco Cawthorne
82b1cb68fa
Improvements to some GoldSrc rendermode code, better teleporting behaviour
...
for scripted_sequences.
2022-01-21 12:24:25 -08:00
Marco Cawthorne
06d07738b6
Clean up the base classes, get rid of having to manually include the entbase
...
defs.h for the respective progs.
2022-01-20 16:23:29 -08:00
Marco Cawthorne
fbb53d62f4
prop_dynamic: Filter the 'solid' field by its 3 supported collision types.
2022-01-20 14:27:39 -08:00
Marco Cawthorne
8bf7315253
prop_dynamic: Now solid by default, unless spawnflags bit 256 is set.
2022-01-20 12:57:17 -08:00
Marco Cawthorne
24b00565e3
Make it easier to parse Input/Output entity data by adding PrepareOutput()
...
to the NSIO class
2022-01-20 12:47:59 -08:00
Marco Cawthorne
9e2b89e386
NSEntity: BBox will now account for rotation whenever SetModel() is used.
2022-01-20 12:30:53 -08:00
Marco Cawthorne
d41c770393
func_physbox and prop_physics now respect the 'start asleep' spawnflags
...
they have.
2022-01-20 10:37:17 -08:00
Marco Cawthorne
33795822a9
Rework env_global, entities communicating with it as well as support for
...
changetarget/changedelay in trigger_changelevel, which will make Hazard
Course its last level work in terms of elevator shenanigans.
2022-01-10 23:48:14 -08:00
Marco Cawthorne
ec9432fe73
NSRenderableEntity: Save/Restore tracking for 'frame' field.
2022-01-10 23:46:28 -08:00
Marco Cawthorne
009462f3ee
GS-EntBase: Add game_counter_set entity.
2022-01-10 13:34:07 -08:00
Marco Cawthorne
e98f751071
Add missing Save/Restore methods for ambient_generic, env_beverage, and
...
a dozen more.
2022-01-10 13:20:00 -08:00
Marco Cawthorne
a95354c09a
trigger_multiple: Add missing save field for OnEndTouchAll I/O trigger.
2022-01-10 13:18:59 -08:00
Marco Cawthorne
11c37f789d
NSMonster: Add TriggerCondition for death of an NSMonster.
2022-01-10 13:18:25 -08:00
Marco Cawthorne
e4b7d55b3c
NSEntity: Add Destroy() which makes sure a sub-class is cleanly removed
...
from the game when possible.
2022-01-10 13:17:36 -08:00
Marco Cawthorne
f42263dbfe
game_counter: Revise QUAKED comment, as it is apparently a point entity.
2022-01-10 13:07:58 -08:00
Marco Cawthorne
826e6c3150
GS-EntBase: Add game_counter entity.
2022-01-10 13:06:35 -08:00
Marco Cawthorne
02c2ff7be5
env_glow: Add 'rotate' key to rotate the sprite/material by X degree amount
2022-01-07 17:04:43 -08:00
Marco Cawthorne
52dfde0cf1
Sound: Add Sound_PlayLocal() which is a 'sound shader' analogue to to
...
localsound()
2022-01-07 13:46:16 -08:00
Marco Cawthorne
749424aa84
NSMonster: Add support for actions (used in e.g. HLMDL) to query which seq
...
to play. This will be expanded shortly in-engine to support more formats...
2022-01-06 19:27:08 -08:00
CYBERDEViL
7607c249f6
Fix bug where dropped items shouldn't be respawned.
...
`spawn()` will cast it's params to floats, so when `m_iWasDropped: TRUE`
was given it would set `m_iWasDropped` to `1065353216`; and conditions like
`m_iWasDropped == TRUE` where never met. Which would cause
`valve/src/server/items.qc:item_pickup::touch` to set `think` to `Respawn`.
2022-01-05 23:41:13 +01: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
08e112e128
trigger_changelevel: check if we're inside a trigger_transition under
...
certain conditions (and only compare the activator...)
2022-01-03 19:28:22 -08:00
Marco Cawthorne
df2a385bbd
func_door: 'netname' trigger happens when door returns to its original
...
position, not the other way around.
2022-01-03 19:27:47 -08:00
Marco Cawthorne
3726139eda
func_guntarget: Add Save/Restore, as well as a fix for Respawn() and health
...
being reset.
2022-01-03 19:08:30 -08:00
Marco Cawthorne
a0cec88f3b
Merge pull request #2 from cyber-bridge/master
...
Honor weapon .pickup return value.
2022-01-04 01:30:07 +01:00
Marco Cawthorne
6dcf76ac5d
func_breakable: Be more paranoid about checking health and propdata overrides
2022-01-03 13:02:56 -08:00
CYBERDEViL
f6b0b5c348
Honor weapon .pickup return value.
...
For FreeCS this means CT-team wil no longer be able to pickup the bomb.
2022-01-03 19:12:26 +01:00
Marco Cawthorne
d3dcb3a12b
GS-EntBase: Cleanup and fixes regarding which func_ entities support the
...
'angles' key for visuals. trigger_hurt damagetype tweaks (needs more tests)
as well as monstermaker fixes and SF_ROT_TOGGLE func_door_rotatings no
longer auto-return...
2022-01-03 00:23:20 -08:00
Marco Cawthorne
758b28346d
Client: Add fade.h and add definition in worldspawn's QUAKED comment for
...
startdark.
2022-01-02 21:21:06 -08:00
Marco Cawthorne
d375ec5f93
Client: Implement "startdark" key from worldspawn. Which is responsible for
...
the fade-in effect in c0a0 for example.
2022-01-02 21:04:55 -08:00
Marco Cawthorne
c920e4c3e8
NSRenderableEntity: Support for scrolling textures (requires shader
...
overrides for now, stay tuned) with variable speeds. Improvements to
func_conveyor, other rendering fix involving alphamasking textures.
2022-01-02 20:50:50 -08:00
Marco Cawthorne
623754ec5a
GLSL, NSRenderableEntity: Added hack to prevent alphatesting against world
...
surfaces utilizing the default lightmapped shader.
2021-12-31 01:47:47 -08:00
Marco Cawthorne
3ca728e1d0
func_conveyor: Add Save/Restore methods for save-games.
2021-12-29 15:54:51 -08:00
Marco Cawthorne
6ca3900b4d
NSSurfacePropEntity: Handle health more appropriately to avoid conflicts,
...
unbreaks func_button's health behaviour.
2021-12-29 14:13:08 -08:00
Marco Cawthorne
cad1dfbcfe
Waypoint-system: You can now unlink waypoints (either one or two way...)
2021-12-18 17:50:43 -08:00
Marco Cawthorne
043c6878d6
Server: Waypoint flagging will now link two nodes if they weren't linked
...
already.
2021-12-18 17:20:25 -08:00
Marco Cawthorne
e45c41610c
Client: Flip the first two entries under the link sub-menu in way_menu.
2021-12-18 16:38:35 -08:00
Marco Cawthorne
5637d49189
Waypoint-system: Add 'sv way addnear' which will create a node auto-linked
...
to the nearest node to the player.
2021-12-18 16:36:51 -08:00
Marco Cawthorne
30e0ca9ad5
Client: Auto-load waypoints for current map when first opening way_menu.
...
Add cvar: way_autoload
2021-12-18 16:27:28 -08:00
Marco Cawthorne
f2e44b24fb
Add platform/base_sound.pk3, move base sound shaders in there. Add misc/null
...
and misc/missing PCM samples for fallback.
2021-12-18 15:06:37 -08:00
Marco Cawthorne
6ec29e9985
SurfData_IDtoImpact: Fix IMPACT_METAL lookup
2021-12-17 21:23:30 -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
c2e4050bae
Replace CSQC_Parse_Damage with our own, add EV_DAMAGE. Make sure trigger_hurt
...
respects the 'damagetype' field. Add CSQC_UpdateSeat to make querying of
the current player seat easier (splitscreen).
2021-12-17 18:20:30 -08:00
Marco Cawthorne
8075616d6d
SurfaceProperties: We were missing a few material ID lookups for GoldSrc
...
regarding impacts.
2021-12-16 13:12:44 -08:00
Marco Cawthorne
00e9eec764
Menu-FN: To make standard load faster, the parsing of game-info now happens
...
whenever try to enter 'Custom Game'.
2021-12-15 22:33:30 -08:00
Marco Cawthorne
c8a6b1f123
Added support for _detail.txt definitions, allowing maps to specify detail
...
textures. New cvars: r_detailtextures, r_detailtexture_xscale, r_detailtexture_yscale.
2021-12-15 11:17:25 -08:00
Marco Cawthorne
094e87f957
Server: Add support for maps/$MAPNAME_skl.cfg to support Sven Coop's map
...
specific skill overrides.
2021-12-14 10:25:32 -08:00
Marco Cawthorne
7bfea15dd0
Add base/shared/fx_corpse.qc, change set to seta in masters.lst
2021-12-13 11:47:55 -08:00
Marco Cawthorne
a80def1d12
Server: Fix that you're unable to pick up weapons when you've hit the ammo
...
cap of said weapon.
2021-12-12 20:36:11 -08:00
Marco Cawthorne
bfad97f6eb
prop_dynamic: Remove redundant .health set code that's now handled in the
...
parent class.
PropData: Fix a bug that fails to check our cache properly, resulting in
the first entry being returned when no data is properly defined.
2021-11-21 04:23:33 +01:00
Marco Cawthorne
a2f8fd0a5d
NSSurfacePropEntity: Keep track if .health is ever set manually, take that
...
and PropData info into account for determining if any child classes will
'break' by default
2021-11-21 03:57:18 +01:00
Marco Cawthorne
eb85121716
Add BUILD_ODE build.cfg setting. Add stubs for platform specific functions
...
like achievements, rich presense. Minor GLSL adjustments.
2021-11-20 17:27:52 +01:00
Marco Cawthorne
1e31ab2955
Following last commit, we allocate EFX data statically up-front too.
2021-11-15 03:59:39 +01:00
Marco Cawthorne
58734ec4d2
Improve VM memory usage by avoiding fragmentation in sound shaders and prop
...
data. Games can enable dynamic memory allocation by setting SOUNDSHADER_DYNAMIC
and PROPDATA_DYNAMIC in their progs.src
2021-11-15 03:46:59 +01:00
Marco Cawthorne
0085403c95
NSSurfacePropEntity: Save/Restore for its attributes, OnBreak output etc.
2021-11-13 07:55:33 +01:00
Marco Cawthorne
08c3a4a576
SurfData: Goodbye to DAMAGE_MATERIAL. We streamline that process now so
...
that all entities will use surfaceParm defined info by default unless
overriden by an entity. + Set up sane defaults for surface properties.
2021-11-13 01:38:20 +01:00
Marco Cawthorne
40da8b09f9
NSPhysicsEntity: Filter out the various damage types when applying force upon
...
the ent taking damage.
2021-11-10 13:06:57 +01:00
Marco Cawthorne
c7845fd694
NSRenderableEntity: m_iBody should be applied to the first two geomset groups (for now)
...
to deal with funky GS model behaviour.
2021-11-10 10:42:52 +01:00
Marco Cawthorne
7d717779b3
NSRenderableEntity: Fix "body" key not being read in SpawnKey()
2021-11-10 09:50:59 +01:00
Marco Cawthorne
568716ca78
NSEntity: Check .scale before applying setsize() in case someone's funny
2021-11-10 03:00:09 +01:00
Marco Cawthorne
a8e4cd5748
NSEntity: Make sure .scale affects SetSize() calls and is updated with
...
SetModel() calls. Also keep track of original .mins/.maxs in case scale
changes.
2021-11-10 02:33:31 +01:00
Marco Cawthorne
b670c994c1
build_engine.sh: Support building of HL2/SRC2004 content via the new plugin
...
that you can enable in build.cfg...
base_player: Add MakeTempSpectator() and MakePlayer(), so gamemodes have it
easier to handle in-game status changes...
NSRenderableEntity: Add support for 'modelscale' key
2021-11-09 17:33:16 +01:00
Marco Cawthorne
a48baff2d1
Menu-FN: Add a hack around drawtextfield(), wasting QC asm instructions in
...
the process for something as simple as specifying character size.
2021-11-06 11:17:54 +01:00
Marco Cawthorne
24070f9e37
Client: Secondary attack will now hide the weapon selection HUD overlay.
2021-11-06 08:24:12 +01:00
Marco Cawthorne
93d46022fa
HLMaterials_Load: Fix typo that prevented us from adding an processed
...
texture name to our hash table
2021-11-06 07:31:51 +01:00
Marco Cawthorne
3bb88216c8
Add DAMAGE_MATERIAL as a possible .takedamage value, this may just be a
...
temp way for model based entities to communicate whether or not they use
that in-model surfaceflags.
2021-11-06 07:15:13 +01:00
Marco Cawthorne
c22b001f60
Cleanup: get rid of the ancient Font_LoadFont() wrapper, pipe _all_ text
...
font info through our internal font_s data structure.
2021-11-04 22:48:19 +01:00
Marco Cawthorne
2484f6c283
func_rotating: Set think and nextthink to something in order for an infinite
...
avelocity to work. Great.
2021-11-04 00:01:38 +01:00
Marco Cawthorne
aa0ccf4413
Add test_grenadeclip.
...
Add helper functions to convert RGB255 to ^x color codes.
Small fixes for fonts in vguilib.
2021-11-03 21:54:43 +01:00
Marco Cawthorne
0a8dbd0edb
Menu-FN: Skip intro page if we're playing with steambg in the liblist.gam.
2021-11-01 21:43:01 +01:00
Marco Cawthorne
69d58edbb6
trigger_multiple: Implement the output "OnEndTouchAll". Needs stress-testing.
2021-11-01 02:38:24 +01:00
Marco Cawthorne
2a23eebc79
NSRenderableEntity: Render RM_SOLID rendermode ents invisible when m_flRenderAmt is 0.
2021-10-31 20:07:56 +01:00
Marco Cawthorne
908a9fd524
GS-EntBase: Add initial implementation of func_areaportal.
2021-10-31 19:52:55 +01:00
Marco Cawthorne
fe15241b2d
GS-EntBase: add PortalOpen/Close methods to func_door and func_door_rotating
...
which keeps track of our areaportal state more reliably.
2021-10-31 19:15:32 +01:00
Marco Cawthorne
d25a597d71
Player: SetSize() after the .flags field update in case their bbox changed
...
and we aren't running physics on their entity.
Viewmodels: Add cvar v_modellag (Default: 0)
2021-10-30 00:59:31 +02:00
Marco Cawthorne
5bf3545e69
GS-EntBase: Added a ton more Save/Restore functions for many core entities.
...
Player entity is also getting save/restored now.
2021-10-28 04:29:11 +02:00
Marco Cawthorne
98c234da48
SurfaceData: Non NSSurfacePropEntity class ents will just use the generic world check for impact effect lookup.
2021-10-27 03:06:29 +02:00
Marco Cawthorne
98d9f8f618
Sound: Convert legacy attenuations to Q unit radii upon parsing.
2021-10-23 13:45:59 +02:00
Marco Cawthorne
090edf53ff
NSTrigger: Make sure SpawnKey sets 'target' on the client progs too.
...
prop_rope: Fix the ropes not looking towards the right direction.
2021-10-23 12:40:35 +02:00
Marco Cawthorne
f5a8ec8ef3
Added support for the triggers/think states across Save/Restore functionality
2021-10-23 01:00:15 +02:00
Marco Cawthorne
4c2b37c34d
NSEntity: Save/Restore behaviour for some more fields.
2021-10-22 21:20:22 +02:00
Marco Cawthorne
fa5cdd5a80
Initial commit of the Save/Restore system, this is the first reference
...
implementation of QuakeC controlled save-files and SV_PerformLoad() and
SV_PerformSave that Spoike added into FTEQW for Nuclide.
2021-10-22 20:51:51 +02: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
64eb0cc11d
PMove: Be more aggressive with our unstuck function.
2021-10-21 21:27:58 +02:00
Marco Cawthorne
ac8eefc313
NSEntity: Fix a very bad bug that caused Client entities to not parse
...
any fields through SpawnKey.
2021-10-21 00:36:15 +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
e53a7a33e2
TraceAttack: Accumulate trace_surface_id's into g_multiDamage_HitBod
...
so we keep track of which body types we hit
2021-10-16 21:28:03 +02:00
Marco Cawthorne
70fe95e5a7
Add support for Source styled surfaceproperties.txt definitions, which
...
is incorporated into func_breakable/pushable already. Mods can now control
material/surface properties without code.
2021-10-15 19:01:36 +02:00
Marco Cawthorne
736ecb61f8
TraceAttack: check surfaceflags on world traces, m_iMaterial on anything
...
else.
2021-10-15 09:37:51 +02:00
Marco Cawthorne
d283c309cd
Add missing material/impact definition for sand. Document some other ids
...
of interest that are used in L4D and GO.
2021-10-11 23:29:26 +02:00
Marco Cawthorne
147969e8a8
Client: Add Weapons_EnableModel() and Weapons_DisableModel() so weapons can
...
manually control the visibility regardless of viewzoom setting
2021-10-08 21:50:04 +02:00
Marco Cawthorne
574980bb1d
CGameRules: Now incorporates DamageApply and DamageRadius, thus making you
...
able to have gamerule specific logic for inflicting damage to entities.
2021-10-07 23:30:21 +02:00
Marco Cawthorne
dd94d7d75f
View: Move muzzleflash precaches out to be game specific.
2021-10-06 22:00:23 +02:00
Marco Cawthorne
3d7e132699
CBaseEntity: add SetParent and ClearParent Inputs for level designers.
2021-10-04 13:56:18 +02:00
Marco Cawthorne
726332c78e
CBaseEntity: Add Ignite(), Exinguish(), IsOnFire() methods according to the
...
Source 2004 spec (controllable lifetimes etc.)
2021-10-04 13:22:40 +02:00
Marco Cawthorne
12753616df
Remove some left-over junk code that no longer runs
2021-09-30 23:32:47 +02:00
Marco Cawthorne
59ee0bd359
PMove: Pressing jump will now make you jump off the ladder, like in HL and
...
some other games.
2021-09-30 23:19:01 +02:00
Marco Cawthorne
2b377fdd79
Document the various CONTENTBITS that are relevant to us and reserve
...
a GRENADECLIP content bit, so levels can be optimised for nade throws.
2021-09-24 10:48:05 +02:00
Marco Cawthorne
565d8ad7e7
PMove: Add flag FL_ONUSABLE, which will tell us if we're looking/hovering
...
over something that we can +use on.
2021-09-23 01:01:59 +02:00
Marco Cawthorne
5439bfb59b
CBaseEntity: Mark some methods as nonvirtual, fix some regressions with
...
func_healthcharger/recharger, trigger_gravity
2021-09-22 20:56:20 +02:00
Marco Cawthorne
451beedb0c
CBasePhysics: add support for explosions upon destruction, provided via
...
propdata.
2021-09-21 21:11:02 +02:00
Marco Cawthorne
251713121c
PropData: Add support for the BreakModel info parsing. Any CBaseEntity can
...
now be augmented. prop_physics entities can already make use of them.
2021-09-21 20:33:09 +02:00
Marco Cawthorne
f34b78b11c
CBaseMonster: Fix being able to push monsters around when you're standing on them
2021-09-17 20:41:48 +02:00
Marco Cawthorne
3bceff6a2c
Implement and parse the propdata system from Source 2004 and make our
...
func_breakable entity aware of it.
2021-09-17 19:31:22 +02:00
Marco Cawthorne
3cc01ca512
CBaseMonster/NPC: Tweak what qu/s speed is considered falling
2021-09-17 01:24:47 +02:00
Marco Cawthorne
211a28692b
CBaseMonster: Add FALLING flag, and FallNoise() method so monsters/npcs can
...
specify what to do/play when they start falling.
2021-09-17 00:41:58 +02:00
Marco Cawthorne
56e07c3f06
CGameRules: Add MonstersSpawn(), now game-modes can be queried for whether
...
or not monster entities spawn on init.
2021-09-16 21:16:37 +02:00
Marco Cawthorne
1764677394
Add hacks to func_door(_rotating) that deal with 'wait' being 0.
2021-09-16 20:26:03 +02:00
Marco Cawthorne
2cebd560c3
multi_manager: Remove old debug prints
2021-09-16 19:19:22 +02:00
Marco Cawthorne
56a616ec8b
CBaseEntity: Add reliable methods to query what certain attributes where
...
when the entity first spawned. (e.g. GetSpawnOrigin())
2021-09-16 17:34:56 +02:00
Marco Cawthorne
cba54d3e2b
Added crossprint, changed input_sequence from int to float as
...
it's now integrated into the engine, however as a float (blame DP)
2021-09-15 22:44:31 +02:00
Marco Cawthorne
034575ac87
Plugins: chatsounds.dat will now look for any definitions
...
file named chatsounds_*.txt.
2021-09-12 12:19:28 +02:00
Marco Cawthorne
81116646e4
Sound_Distance: Use pointsound, because the engine may do a funny
...
with channels and whatnot in the OpenAL backend. It works when
no entities are involved.
2021-09-12 01:17:26 +02:00
Marco Cawthorne
ab34230016
GS-EntBase: func_door_rotating gets the 'locked_sound' too. That's
...
it for today.
2021-09-12 01:11:36 +02:00
Marco Cawthorne
eda2e3e751
GS-EntBase: Implement 'locked_sound' in func_door.
2021-09-12 01:06:45 +02:00
Marco Cawthorne
c9d502f364
GS-EntBase: env_shooter's Respawn should set .think to __NULL__
...
to avoid potential Respawn() calls not working as expected.
2021-09-12 00:30:37 +02:00
Marco Cawthorne
dfa7e32eca
CBaseNPC: Don't allow us to 'Speak' or 'Sentence' when we're dead.
2021-09-12 00:21:28 +02:00
Marco Cawthorne
f884b3d35d
Separate networking between CBaseEntity and CBaseMonster, needs
...
cleaning.
2021-09-12 00:13:24 +02:00
Marco Cawthorne
10b2ff1fca
Add setorigin_safe(), which is just like setorigin but pushes
...
entities upwards out of the ground.
2021-09-12 00:12:55 +02:00
Marco Cawthorne
b8de87d45c
func_pushable: Mark collision-helper as non-solid upon breaking.
2021-09-12 00:11:12 +02:00
Marco Cawthorne
d4fe258d62
prop_vehicle_driveable: Fix QUAKED definition classifying it as
...
a brush entity, oops.
2021-09-11 22:46:29 +02:00
Marco Cawthorne
d94a5f33eb
GS-EntBase: Add prop_vehicle_driveable, for model based 4-wheel
...
vehicles.
2021-09-11 22:43:14 +02:00
Marco Cawthorne
bc2fbb4a69
Implement setpos() and setang(). The engine provides setpos, but
...
we may want to declare it for possible future overrides.
2021-09-09 19:03:26 +02:00
Marco Cawthorne
5578b0e602
GS-EntBase: Add client-side prediction for func_tankmortar.
2021-09-08 20:17:13 +02:00
Marco Cawthorne
2a86794d67
Add precache_cubemap() to src/client/defs.h
2021-09-02 21:11:54 +02:00
Marco Cawthorne
8ba5bc56d2
Sound: Added 'distshader' keyword support... which will play a
...
another sound definition at global attenuation (explosions like this)
2021-09-02 10:10:27 +02:00
Marco Cawthorne
4a2cde56cc
Clean up pseudorandom() a bit.
2021-09-02 09:47:48 +02:00
Marco Cawthorne
527318bd65
Deprecate CBaseFX, introduce .predraw for weapon functions.
2021-09-02 09:39:37 +02:00
Marco Cawthorne
9fa091db43
Reserve 3 SRC'04 rendermodes, implement RM_DONTRENDER.
2021-09-01 22:41:11 +02:00
Marco Cawthorne
fd05c2419c
Minor cleanup of SendFlags assignments, fix for 'sv respawn_ents' affecting players.
2021-09-01 22:11:30 +02:00
Marco Cawthorne
f0957141cc
CBaseEntity: Add inputs for 'Kill' and 'KillHierarchy'
2021-09-01 21:39:21 +02:00
Marco Cawthorne
1657ff3e29
GS-EntBase: Move I/O system into CBaseEntity, add Skin, Disable/EnableShadow inputs...
2021-09-01 21:30:10 +02:00
Marco Cawthorne
57f1408b8c
Add UpdateView() to CBaseVehicle, to let vehicles override the
...
camera properties in CSQC_UpdateView before rendering.
2021-09-01 15:19:50 +02:00
Marco Cawthorne
0bc83d289d
Menu-FN: Add r_pixelscale, to be used in combination with r_autoscale
2021-08-29 21:41:31 +02:00
Marco Cawthorne
2377734e60
Client: Remove drawpic and drawsubpic wrappers.
2021-08-29 19:42:45 +02:00
Marco Cawthorne
6cea322f6a
base_player: Network v_angle[1] along with angles[1]
2021-08-29 18:28:11 +02:00
Marco Cawthorne
42b1abf668
Menu-FN/FS: Only parse sprays from logos/, not root of mod-dir
...
anymore. Users with giant BMP screenshots will rejoice
2021-08-29 09:53:36 +02:00
Marco Cawthorne
34505bcacf
GS-EntBase: Fix crash with vehicles by networking them separately
...
from CBaseEntity, which will assign the needed client-side input
method for prediction
2021-08-28 21:25:38 +02:00
Marco Cawthorne
4952e7fbe0
Menu-FN & GLSL: Hack to allow for .colormap style top/bottom color
...
onto vertexlit entities. Requires .colormod[2] to be 2.
Used by the menu with MODEL_PREVIEW.
2021-08-27 21:52:41 +02:00
Marco Cawthorne
6de82ca18c
Menu-FN: if a menu.dat is compiled with MODEL_PREVIEW defined,
...
we'll use a 3D player-model previews instead of the image based one
2021-08-27 21:15:57 +02:00
Marco Cawthorne
e28de86415
Call DSP_UpdateSoundscape(), seems I forgot all about it!
2021-08-27 11:35:59 +02:00
Marco Cawthorne
be0df99c8d
Menu-FN: Add WEBMENU define, to get rid of all the filesystem
...
searches related to mods and packages for potential web builds
2021-08-23 11:04:56 +02:00
Marco Cawthorne
76b26fd3af
func_brush: Clarify default state in the QUAKED description
2021-08-19 19:11:46 +02:00
Marco Cawthorne
d4fccac03f
Work towards making vehicles predicted, this is ongoing.
2021-08-19 17:54:08 +02:00
Marco Cawthorne
62b5e300d7
Set default physics cvars up on init, as the engine has some set to "" and
...
thus renders our autocvar definitions useless.
2021-08-14 09:13:27 +02:00
Marco Cawthorne
f562991ada
Clean-up defines for physics vars. Those are handled elsewhere...
2021-08-14 08:49:40 +02:00
Marco Cawthorne
a3e0cceba0
GS-Entbase: Add detailed QUAKED definition for light_environment!
2021-08-12 21:34:32 +02:00
Marco Cawthorne
0d759c724c
Menu-FN: Support for mIRC color codes in the Chat-Room function (fg only)
2021-08-12 12:36:48 +02:00
Marco Cawthorne
fbf6ee7367
Switch from iqmtool to vvmtool.
2021-08-10 12:07:09 +02:00
Marco Cawthorne
c7004625ae
Menu-FN: Add LOGO_STATIC, rename LOGO to LOGO_AVI. Allowing mods to have
...
non video menu headers
2021-08-08 14:06:26 +02:00
Marco Cawthorne
844c29bf23
Menu-FN: Off-load font definitions into external .font files, like cgame
2021-08-08 13:54:05 +02:00
Marco Cawthorne
0cd6694c32
Menu-FN: Parse locale file info, then gfx/shell definition overrides to
...
allow for proper translations of the menu system.
2021-08-08 12:12:17 +02:00
Marco Cawthorne
fb63b4f774
GS-EntBase: Fix rendermodes for more complicated entities, ts_bikini will
...
now display properly.
2021-08-08 07:47:20 +02:00
Marco Cawthorne
1230a6d636
prop_rope: Fix PVS culling. It may be more aggressive now, so fix your maps.
2021-08-08 06:51:57 +02:00
Marco Cawthorne
ca9e42a49c
Add 'testPointLight' command.
2021-08-06 08:46:12 +02:00
Marco Cawthorne
9fb574d920
CBaseEntity: Fix error for when games are not compiled with GS_RENDERFX
2021-08-03 07:15:25 +02:00
Marco Cawthorne
0709688f9f
Add base/default.cfg, some fallback menu assets.
2021-08-02 22:36:36 +02:00
Marco Cawthorne
3ca7b5451c
Menu-FN: set create-server maxplayers to 8 when cvar is at 1, search pak
...
archives in reverse for liblist etc. files to ensure we read the latest +
more fixes
2021-08-01 11:49:00 +02:00
Marco Cawthorne
0ca3d03927
Remove some debug stuff.
2021-08-01 11:21:24 +02:00
Marco Cawthorne
1ec3cf2e8e
Decouple Camera/Viewmodel effects from src/ into base/src/
2021-08-01 08:53:21 +02:00
Marco Cawthorne
3ef55c5e48
build_engine.sh: iqm has been renamed to iqmtool, so adjust those basenames
2021-07-20 12:19:27 +02:00
Marco Cawthorne
3b0ad9468a
Menu-FN: Fix broken training map button.
2021-07-19 08:37:08 +02:00
Marco Cawthorne
affa7b4a0c
Client: add camera.qc and viewmodel.qc, better restructure how we apply
...
effects to the view. Add CVARs v_cambob, v_camroll, v_bobstyle...
2021-07-19 08:36:19 +02:00
Marco Cawthorne
37c5c6efdd
GS-Entbase: Make sure we use Set*() functions for networked fields all the
...
time to notify clients of any changes
2021-07-19 08:34:46 +02:00
Marco Cawthorne
50c3f27a69
GS-Entbase: Document spawnflags throughly in QUAKED comments.
2021-07-17 21:04:34 +02:00
Marco Cawthorne
d744bf2272
GS-Entbase: QUAKED comment improvements for level editors
2021-07-14 11:49:30 +02:00
Marco Cawthorne
9798e0c91b
QUAKED light_surface, a new vmap-only entity that enables you to
...
quickly add map-specific material overrides for the purpose of lighting.
It's similar to the "_surfname" key in tyrutils_ericw, but it is more
advanced than that.
2021-07-12 10:17:10 +02:00
Marco Cawthorne
8a2820f15b
func_brush: Ironed out most of the behaviour, thanks Xylemon for creating
...
a great test map documenting how this entity should behave in Source.
2021-07-12 10:15:00 +02:00
Marco Cawthorne
e13323e07d
Client: when 'buildcubemaps' is running, make sure the views are centered
...
at all times to avoid FTE dumping weird projections
2021-07-09 22:18:25 +02:00
Marco Cawthorne
60313aa3ce
GS-Entbase: env_particle needed setorigin() and setsize(), since that's
...
how FTE will now set a pvs sample in CSQC
2021-07-09 22:16:36 +02:00
Marco Cawthorne
3f3e61689d
GS-Entbase: Move client/worldspawn to shared/worldspawn, defined QUAKED
...
comments that we encourage using for new maps
2021-07-03 12:42:33 +02:00
Marco Cawthorne
03ecfbabfb
Menu-FN: Don't push the updater into anyones face right now until this is
...
rock-solid under the hood
2021-07-02 23:42:03 +02:00
Marco Cawthorne
3d236a64ed
Client: console command 'dev_sunpos' will now also report the sunangle and
...
pitch values for a light_environment entity.
2021-07-02 13:43:58 +02:00
Marco Cawthorne
dc592c1deb
Client: Muzzleflash will now follow the viewmodel angle, in case it's
...
a 3D model (The Wastes)
2021-07-02 11:16:57 +02:00
Marco Cawthorne
3a69435a6b
Platform: Update test_lightwarmth.bsp/map
2021-06-29 22:27:25 +02:00