[Won't change] Backwards Compatibility Issues

Bugs that have been investigated and resolved somehow.

Moderator: GZDoom Developers

Re: Backwards Compatibility Issues

Postby Zhs2 » Fri Jan 18, 2019 1:49 pm

Yholl wrote:
ChangeActorPitch (0, 350.0, 1);

This line in Laundry 3 makes you face forwards in a cutscene in 2.1.1, as intended.
In modern stuff, it makes you stare at the floor.
There's a bunch of different pitch problems like this in my mods when used in modern versions.

In any case, if modern gzdoom had something, like a new actor I could just spawn and check for, I could fix all this stuff myself and not have to bother anyone.
As it is right now, in most cases there is nothing I can do to solve this myself.

From the history of the GetActorPitch page, I'm surprised this value actually worked. 0 seems to be the proper value for looking straight ahead in all cases, and the fixed point value range for pitch seems to be very, very small otherwise - from [-0.25, 0.25] in GL, less for software!

Edit: oops, page 2 sniped Graf
User avatar
Zhs2
Power of meh.
 
Joined: 07 Nov 2008
Location: Maryland, USA, but probably also in someone's mod somewhere
Operating System: Windows 10/8.1/8 64-bit
Graphics Processor: ATI/AMD with Vulkan Support

Re: Backwards Compatibility Issues

Postby Graf Zahl » Fri Jan 18, 2019 1:58 pm

Rachael wrote:
Yholl wrote:Targeting a fast-running, stable, guaranteed multiplayer working, able to run on a large amount of computers version is the problem?

Sorry to be someone who rains on your parade, but that still remains the case, today. It seems like people running on legacy systems unable to handle it have got themselves caught in a shrinking minority. About 10 to 1, to be approximate.



It's again that old fallacy of overestimating the number of users of such systems, and then investing countless hours of work (or money) in supporting this stuff.
It's not even something that is limited to hobbyists, I already mentioned one story of a former job of mine here where a certain product had to be maintained for approx. 200 incompatible mobile handsets. The amount of work invested here was utterly insane and burned a significant portion of the budget. Worse, because these were "important" all assets were stripped down to work on that old hardware. The one thing nobody did until I really put pressure on them was to run an analysis tool on which SKUs really were important. What surprised everybody (except me) was that of the 200 SKUs we supported, maybe 20 were important and made up roughly 95% of all traffic.

And now take one guess which ones were on that list. I don't think anyone should be surprised that it was the high end stuff. All that "important" low end, for which the software got stripped down to a point where it remained a shell of its former self were utterly irrelevant!

And very much the same applies here.
User avatar
Graf Zahl
Lead GZDoom Developer
Lead GZDoom Developer
 
Joined: 19 Jul 2003
Location: Germany

Re: Backwards Compatibility Issues

Postby Yholl » Fri Jan 18, 2019 2:02 pm

Graf Zahl wrote:Behold that gem of a modding bug that just went unnoticed due to value wraparounds. You are aware that the valid range for pitches is -90 .. 90, right? 350 is outside that range and apparently at some point gets clamped to 90. Why didn't you use -10 as anybody else would have done?
I used A_LogInt(pitch) to find out the values I needed for things by looking around. The number it gave me was 350 for what I wanted.

Zhs2 wrote:From the history of the GetActorPitch page, I'm surprised this value actually worked. 0 seems to be the proper value for looking straight ahead in all cases, and the fixed point value range for pitch seems to be very, very small otherwise - from [-0.25, 0.25] in GL, less for software!
I recall ACS and Decorate are also different values at least in 2.1.1, with ACS using those ones and Decorate using 0-360 for some reason. I'm actually not sure why that one works at this point either.
User avatar
Yholl
I will hit you with my Decorate.
 
Joined: 17 Dec 2012
Location: Here, stupid.

Re: Backwards Compatibility Issues

Postby Zhs2 » Fri Jan 18, 2019 2:14 pm

ACS uses those values. DECORATE/ZScript's range is from [-90.0, 90.0] - negative up, positive down, at least in recent versions. A_LogInt wouldn't have returned a usable value because pitch is double precision in DECORATE/ZScript, not an int.
User avatar
Zhs2
Power of meh.
 
Joined: 07 Nov 2008
Location: Maryland, USA, but probably also in someone's mod somewhere
Operating System: Windows 10/8.1/8 64-bit
Graphics Processor: ATI/AMD with Vulkan Support

Re: Backwards Compatibility Issues

Postby Graf Zahl » Fri Jan 18, 2019 2:38 pm

To be more precise, ACS uses a weird scale where 1.0 is 360° (and by extrapolation and factoring in wraparound, 350.0 is also 360° (or what it really comes down to, 0°, i.e. perfectly horizontal pitch.) Please do not ask me why Randi chose such a value range, except for easy conversion to the old internal angle format.
User avatar
Graf Zahl
Lead GZDoom Developer
Lead GZDoom Developer
 
Joined: 19 Jul 2003
Location: Germany

Re: Backwards Compatibility Issues

Postby Matt » Fri Jan 18, 2019 3:05 pm

Kinsie wrote:I feel like ZScript is still young enough, and the issues in it apparent enough, that the majority of people using it would be, perhaps not happy, but at least reasonably receptive to script-breaking design fixes if they improved the overall state of the engine's health, and that enough of the people dabbling in it are still active enough to fix their mods to taste.
This.

That's why I'd posted that thing about globalfreeze as a feature suggestion for more graceful deprecation rather than a bug report.


Graf Zahl wrote:It's again that old fallacy of overestimating the number of users of such systems, and then investing countless hours of work (or money) in supporting this stuff.
It's not even something that is limited to hobbyists, I already mentioned one story of a former job of mine here where a certain product had to be maintained for approx. 200 incompatible mobile handsets. The amount of work invested here was utterly insane and burned a significant portion of the budget. Worse, because these were "important" all assets were stripped down to work on that old hardware. The one thing nobody did until I really put pressure on them was to run an analysis tool on which SKUs really were important. What surprised everybody (except me) was that of the 200 SKUs we supported, maybe 20 were important and made up roughly 95% of all traffic.

And now take one guess which ones were on that list. I don't think anyone should be surprised that it was the high end stuff. All that "important" low end, for which the software got stripped down to a point where it remained a shell of its former self were utterly irrelevant!

And very much the same applies here.
I feel like this should be reposted as a sticky so people have a better understanding of where Graf (and presumably the rest of the GZD dev team) is coming from when it comes to this issue.
User avatar
Matt
Putting the XD into *xdeath since 2007
 
Joined: 04 Jan 2004
Location: Gotham City SAR, Wyld-Lands of the Lotus People, Dominionist PetroConfederacy of Saudi Canadia

Previous

Return to Closed Bugs

Who is online

Users browsing this forum: No registered users and 2 guests