Somehow I must have added that
savefile->WriteFloat( spreadCrouchFactor );
twice when merging the Ruiner/Rivensin changes into the SDK.. damn.
(As it's only read once, all data read from the savegame after it
will be garbage)
I had a crash when creating a Savegame in idAnimState::Save(),
because animator was NULL - so I added a check for that.
The rest has been found with GCC address sanitizer (ASan)
it's only shown in the g_version CVar, but if we have this constant
in the SDK make it show something sensible.. and this SDK code should
be compatible with all dhewm 1.5.x releases (=> dhewm3 version will
be bumped to 1.6.x if game API compatibility is broken)
I hope I guessed this right: This could prevent the rare assertion
in RenderWorld.cpp:954 ("bounds[0][0] <= bounds[1][0]
&& bounds[0][1] <= bounds[1][1] && bounds[0][2] <= bounds[1][2]").
Cursor now uses 2 different guis based upon aspect ratio just like
the hud. This is due to the translations of of the cross hairs being
off if a 4:3 cursor is on top of a 16:9 render view.
Requires additional key in the player def just like the hud does.
In game menu no longer stretches. Looks much better.
This is the menu that displays the advanced controls.
(DG: based on revility's commit with same message, removed stuff already
implemented here and cleaned up the rest a bit)
pm_crouchviewheight updated. origin was set from near the player's stomach and not the neck
pm_thirdpersonsidescale default value reduced. Player can still adjust the amount in the main menu.
Added new cvar pm_crossHairSideScale
Corrected description of pm_ProjectileOrigin.... this does not effect projectiles. Only the tracers, models or particles attached to them.
adds a new cvar pm_crossHairSideScale to move the view position origin sideways. Useful if pm_crosshairorigin is set to 0 and aiming around corners. weapon projectiles use this as their spawn position. cross hairs use it as the origin of the trace line. default is 0. player should adjust to their liking and current camera settings. If set too far over, the player can shoot around walls.
removed bobbing and jittering while the crosshair origin is set to use a joint on the player model (pm_crosshairorigin 1). Was very noticeable while looking at steps.
Needed if you want to play some of the vanilla doom 3 maps by default. Note that you will need to update more stuff like statements, globals, etc. for the game to start with all of them. Another note that the scripts are not loaded by default in ruiner/Rivensin due to none of the maps being tested. Most of them are not third person friendly. Someday I hope to get a mini version of the campaign ported.
Game will go into first person while at a gui and then back to thirdperson when leaving. Needed for maps which use gui consoles in them. Check comments in code for full details. Probably a better way to do this.
CheckCrossHairOrigin is used when entering and exiting guis to get the player's current setting and restore it when leaving the gui. Check the player.cpp for full details.
This was done so pm_thirdperson wil always reset to 1 when starting the game. If the game crashes or quits while in first person it was starting back up in it before.
New cvar to enable and disable launching projectiles from the weapon's world model barrel joint and also towards the crosshair's position. launchfrombarrel must be set to 0 in projectile def files to use. Done incase a weapon doesn't need it or has issues using it in the future. none currently do.
Changes cross hair trace line origin from the camera's origin to a joint on the player's model defined in player.cpp file
Done this way because pm_modelview cvar has some kind of over ride going on when the levels start. Consider this a work around fix.
Not sure how or why it happened, but the code was causing the bow to use wrong cross hairs, and auto weapon switch. I believe there was a mistake on my end when cleaning up the code in the player.cpp and playercursor.cpp files.
Additionally having a second weapon to use the soul cube hud notice is not needed as the planned weapon is not happening anytime soon.
Only the soul cube can display hud notifications when enough kills are done. this adds support for a 2nd weapon to do so. weapon is not in 2010 but will be 2018 build. Code should still be compatible with 2010 build.
This should fix hdr always resetting every time the game is restarted, thirdperson view sometimes not enabled by default, and the need for pm_modelview to be turned on for cross hair trace line origin fix.
Also cleaned up formatting around hdr cvars, and third person camera cvars.