hh79 / gzdoomvr

Classic Doom/Heretic/Hexen games in stereo 3D and VR; modified version of gzdoom.
GNU General Public License v3.0
125 stars 10 forks source link

Plenty of DECORATE/ACS issues with DAKKA (and most probably other mods) #24

Open SinaelDOverom opened 4 years ago

SinaelDOverom commented 4 years ago

DAKKA is a mod that uses a lot of ACS and DECORATE for various effects, and it's compatible with GZDoom 2.2 and Zandronum, not to mention with the currrent version of GZDoomVR However it does have a lot of issues, that are most probably related to some ACS/Decorate functions not working as they do in regular versions. Here's the mods page: http://git.jinotra.in/ijon/dakka

Issues include -

1) Ammo reported wrong to the HUD script - ammo bars do not correlate with ammo count, some times showing empty bar when gun has ammo, half bar when there's no ammo, and in many cases even different ammo bar length for separate eyes so there's obviously something in VR-part of the code that breaks it. Picrelated - look at the minigun ammo bar 20200501192122_1_vr

2) absence of vertical spread from hitscan weapons (pistols, shotguns, minigun) whatever function responsible is obviously broken.

3) Traces coming from the player instead of a weapon (imo to avoid compatibility issues with mods where the function is used to track BODY rather than a WEAPON, there should be an option to send hand position instead of player position to DECORATE ZSript functions, as well as pure VR -alternatives for manual replacement on case-by-case basis)

Haven't done further playetesting, maybe there's more.

ajantaju commented 4 years ago

There is some issues in there that i have stumbled upon too. For example: My code


STIC C 1 A_FireCustomMissile ("HacxMolecule",0,1,0,0,FPF_NOAUTOAIM ,0)

Example code


A_FireCustomMissile (string missiletype [, angle angle [, bool useammo [, float spawnofs_horz [, int spawnheight [, int flags [, angle pitch]]]]]])

Most of those (space/rotation) variables do nothing in VR. Maybe they are implemented in more recent version of GZdoom and they will work when in parity, or there is more code to be written in those sections.

SinaelDOverom commented 4 years ago

Those are ancient functions and should still work fine. Download GZDoom 4.1.3 and test on it.