Jump to content

Photo

Rainbow Death Crash!


  • Please log in to reply
27 replies to this topic

#1 TheLegend_njf

TheLegend_njf

    Deified

  • Members
  • Real Name:Grant

Posted 21 July 2017 - 05:40 PM

I think it's about time we talk about this.

 

What is it and why does it happen?


  • Avaro and strike like this

#2 strike

strike

    life is fragile, temporary, and precious

  • Members
  • Real Name:Olórin

Posted 21 July 2017 - 07:21 PM

How about rainbow death corruption, where palettes stay messed up and flicker all the time.  



#3 Avaro

Avaro

    o_o

  • Members
  • Real Name:Robin
  • Location:Germany

Posted 21 July 2017 - 07:24 PM

How about rainbow death corruption, where palettes stay messed up and flicker all the time.  

 

Is that a suggestion? Or does it happen in either ZQ or ZC?



#4 strike

strike

    life is fragile, temporary, and precious

  • Members
  • Real Name:Olórin

Posted 21 July 2017 - 09:21 PM

For me in the past it has happened on both.



#5 Timelord

Timelord

    The Timelord

  • Banned
  • Location:Prydon Academy

Posted 21 July 2017 - 11:03 PM

This occurs when Rainbow Bight seeps out of the 1980s to infect ZQuest data files during time-warped saves.


Edited by ZoriaRPG, 22 July 2017 - 07:02 AM.


#6 DarkDragon

DarkDragon

    Junior

  • ZC Developers

Posted 21 July 2017 - 11:29 PM

What are the details of this bug? It happens still in the latest 2.50?



#7 Russ

Russ

    Caelan, the Encouraging

  • Administrators
  • Location:Washington

Posted 22 July 2017 - 12:26 AM

To my knowledge, yes it does, though it happens much more commonly with particular quests. Isle of Rebirth in particular is notorious, so it might be related to quest size. Basically, the "video" stops updating, though ZC is still running and you can F6->Save using the sound effects as an audio cue. Clicking on the screen causes the palettes to go nuts. Here's a video. This happens randomly and infrequently; I haven't found any real trigger for it.
  • Eddy and TheLegend_njf like this

#8 Anthus

Anthus

    Lord of Liquids

  • Members
  • Location:Ohio

Posted 22 July 2017 - 02:58 AM

What version is this? I've never seen this, but I'm still using 2.50.2. It looks pretty serious though. 



#9 Eddy

Eddy

    ringle

  • Moderators
  • Real Name:Edward
  • Pronouns:He / Him
  • Location:London, United Kingdom

Posted 22 July 2017 - 06:15 AM

I've noticed it happening in 2.50.2, so I'm gonna assume this happens with all 2.50 versions or something.

 

It's quite a frustrating bug though and I find that it happens after using ZC for quite an extended period of time for me.



#10 Timelord

Timelord

    The Timelord

  • Banned
  • Location:Prydon Academy

Posted 22 July 2017 - 06:54 AM

To my knowledge, yes it does, though it happens much more commonly with particular quests. Isle of Rebirth in particular is notorious, so it might be related to quest size. Basically, the "video" stops updating, though ZC is still running and you can F6->Save using the sound effects as an audio cue. Clicking on the screen causes the palettes to go nuts. Here's a video. This happens randomly and infrequently; I haven't found any real trigger for it.

 

I have never had this occur to me in windowed mode, ever, ever. Was that recording made in fullscreen, or windowed mode?

 

It is easily possi ble that Allegro 4.2 in fullscreen can have issues like this on Win 8 and later,  but otherwise, I would need to deeply analyse the quest scripts but from that footage,

 

If it is a script issue, I suspect that there is some illegal instruction that is writing into an unprotected memory area, or a stack issue that is causing ZC to crash. This could be caused by something as simple as writing to a variable for 'FFC 0', as you now know. If memory values are being overwritten, then it could be affecting anything with no real way to determine where, or why, unless you run a build that was generated in Debug mode.

 

Knowing precisely what scripts are running at the time would be useful, but I know that IoR is infamous for stack issues, or at least, it was during the course of its development. This would be the house odds wager.

 

If this could be demonstrated with some kind of procedure (i.e. Do these steps, and this will nearly always occur.), then we could find the cause, but if it is truly random, then I doubt that it can be fixed. Those palette flashes occur typically when the game is paused, or when the ZC UI palette is shifted into focus. It is common when exiting the software, but it should never happen while the quest is running.

 

 

I've noticed it happening in 2.50.2, so I'm gonna assume this happens with all 2.50 versions or something.

 

It's quite a frustrating bug though and I find that it happens after using ZC for quite an extended period of time for me.

(Emphasis, mine)

 

That is the classical definition of an Allegro 4.2 bug on Windows. This is one of the things that the shift to ag4.4.x fixes; in particular, the loss of the ability to pass keyboard input to ZC after it has been running for an extended duration. Thus, it is possible that this bug was fixed by the shift to 4.4, but only time will tell. if it is a stack issue, likewise, the 2.5 stack changes may have fixed it. If it is a problem caused by unprotected memory, then, well, it's going to be a tough one.


Edited by ZoriaRPG, 22 July 2017 - 07:01 AM.


#11 Gleeok

Gleeok

    It's dangerous to dough alone, bake this.

  • Members
  • Real Name:Pillsbury
  • Location:Magical Land of Dough

Posted 22 July 2017 - 07:34 AM

I've never seen this happen in ZC, but I once saw a Rainbow Death Crash in real life. Crazy stuff.
  • ShadowTiger, 4matsy, TheLegend_njf and 2 others like this

#12 Saffith

Saffith

    IPv7 user

  • ZC Developers

Posted 22 July 2017 - 08:53 AM

If it happens more in some quests than others, and it's most often in one heavily scripted quests, I do wonder if it's caused by a script error. Any chance the script is trying to load FFC #0 at some point? That's the big issue we already know about.
 

This is one of the things that the shift to ag4.4.x fixes; in particular, the loss of the ability to pass keyboard input to ZC after it has been running for an extended duration.

It doesn't look like it fixes that. The same code's still there.
I think you greatly overestimate how much 4.4 fixes.

#13 Timelord

Timelord

    The Timelord

  • Banned
  • Location:Prydon Academy

Posted 22 July 2017 - 09:18 AM

If it happens more in some quests than others, and it's most often in one heavily scripted quests, I do wonder if it's caused by a script error.  That's the big issue we already know about.
 

 

(Emphasis, mine.)

 

That is what I was wondering, if you note above. The LoadFFC function needs some limitation, so that it is not possible to write to random memory spots.

 

I'm not sure why this is going on:

 

//code.push_back(new OSetRegister(new VarArgument(REFFFC), new VarArgument(EXP1)));
        code.push_back(new OSubImmediate(new VarArgument(EXP1), new LiteralArgument(10000)));

 

Why was this changed, from the commented line?  Hell, why is REFFFC not physically set by the block? I'm not sure where the best placement would be, to bound the input value from 1 to MAXFFCS, given that this is processed at such a low level.

 


 
It doesn't look like it fixes that. The same code's still there.
I think you greatly overestimate how much 4.4 fixes.

 

I have not encountered a loss of KB focus on any ZC version built on the 4.4. libs. Have you encountered that? It certainly fixed the alt-tab issue, too, and a few graphical and input problems (on Windows 7).



#14 Saffith

Saffith

    IPv7 user

  • ZC Developers

Posted 22 July 2017 - 09:53 AM

Why was this changed, from the commented line?  Hell, why is REFFFC not physically set by the block?

That is a very good question. Probably some ancient bug fix or optimization. Can't check the logs at the moment, unfortunately, so it will have to remain a mystery for now.

 

I have not encountered a loss of KB focus on any ZC version built on the 4.4. libs. Have you encountered that?

Barely tried. But I know why it happens, and the code is still there.

#15 TheLegend_njf

TheLegend_njf

    Deified

  • Members
  • Real Name:Grant

Posted 22 July 2017 - 10:23 AM

I haven't yet caught up reading all the posts in this topic yet, but just for the record. This has happened to me a lot towards the end of The Hero of Dreams (specifically at the Commander boss and Ganondorf), and I do play in Windowed mode. I'm also using 2.50 to play that quest. 

 

As far as I know, The Hero of Dreams doesn't use scripts. 

 

So we can narrow out Zoria's earlier suggestions from an earlier post.

 

I'm a Windows 10 user, so I'm not sure if that's a connection. 




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users