View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000235 | Gameplay + OpenGL | [All Projects] Bug | public | 2017-02-10 11:13 | 2017-02-11 19:09 |
Reporter | rex | ||||
Assigned To | |||||
Priority | high | Severity | major | Reproducibility | always |
Status | resolved | Resolution | no change required | ||
Platform | OS | Windows | OS Version | 4 Pro | |
Summary | 0000235: Mass of Existing Actor Has Vanished | ||||
Description | The Gargantua in Paranoid has a Mass 0xFFFFFFFFF in DECORATE. In v2.3.2 and earlier, the actor behaves properly. In gzdoom-x64-g2.4pre-387-gbe9b2b3 a single shotgun blast sends it sliding back dozens of feet along the floor. This suggests that the mass of this actor is being affected by the newest build. | ||||
Steps To Reproduce | 1. Start Paranoid using v2.3.2 and play against the Gargantua. It exhibits normal behavior. 2. Start Paranoid using gzdoom-x64-g2.4pre-387-gbe9b2b3 and play against the Gargantua. Shoot it with a lighter weapon, and see it being pushed back like it has no mass. | ||||
Additional Information | Happens on gzdoom-x64-g2.4pre-387-gbe9b2b3 Does not happen on v2.3.2 Does not happen with other land enemies (and none has a mass as great as the Gargantua) | ||||
Tags | No tags attached. | ||||
What happens if the mass is changed to 0x7FFFFFFF? |
|
The problem comes from mass being signed. 0xffffffff is a mass of -1, i.e. less than nothing. Up to two weeks ago the ZScript parser clobbered any integer value larger than 0x8000000 on Windows because it used a signed int function that clamped the result if it got too large. Sorry, can't revert because the old behavior was broken. You have to lower the mass to 0x7fffffff. |
|
That is a shitty solution. This behavior was consistent with the setup from 7 years ago. Basically, you're saying that you can't fix a problem that was created earlier. In other words, retroactive compatibility is the lowest priority. Not a way to promote a long-term way of doing business. While I respect your need to ensure no broken code going forward, this is basically fucking up anything that was previously developed in compliance with parameters of the game engine from an earlier era. I completely disagree, and will need to re-evaluate how I want to handle this. For the record, I think that you're being dictatorial and don't give a fuck for retroactive compatibility. I realize you're on the Paranoiac Team, but you don't seem to be promoting the needs of this project. Regardless, thanks for your input. |
|
Incidentally, it turns out that this problem applies just to the Gargantua, so it might be a relatively easy fix. | |
Incidentally, tried the 0x7FFFFFFFF, but the actor still seems to be pushed back significantly with a minor projectile attack. I thought this was an easy fix, but apparently not. | |
It should be 0x7FFFFFFF, with seven 'F' characters instead of eight. | |
@ _mental_ and Edward-san: Thanks for giving me the proper definition. It works just as intended now. | |
Date Modified | Username | Field | Change |
---|---|---|---|
2017-02-10 11:13 | rex | New Issue | |
2017-02-10 15:16 | Edward-san | Status | new => feedback |
2017-02-10 15:16 | Edward-san | Note Added: 0000496 | |
2017-02-10 16:15 | Graf Zahl | Note Added: 0000497 | |
2017-02-10 16:15 | Graf Zahl | Status | feedback => resolved |
2017-02-10 16:15 | Graf Zahl | Resolution | open => no change required |
2017-02-10 19:51 | rex | Note Added: 0000498 | |
2017-02-10 20:03 | rex | Note Added: 0000499 | |
2017-02-10 20:18 | rex | Note Added: 0000501 | |
2017-02-11 00:57 | _mental_ | Note Added: 0000502 | |
2017-02-11 02:37 | Edward-san | Note Edited: 0000496 | View Revisions |
2017-02-11 19:09 | rex | Note Added: 0000520 |