Squares, now in new Victoria varieties

Started by Fussmatte, March 30, 2013, 06:39:45 AM

Previous topic - Next topic

Fussmatte

Stupid thread titles aside,
I was playing a stupid test level where there's a scriptbox that makes you repeatedly flip over and over (via gotoroom() ), and there was a trinket, and there were square enemies stuck in the walls. Anyways, when I collected the trinket, the squares suddenly turned into Victorias.

(The place where Viridian stands is where the flip script is.)
I can only get it to work after I touch the squares (I had Invicibility on, too lazy to turn it off). The Victori-squares return to their normal squareness after I hit ACTION.
Could anyone explain this? If they can?

Chillius


blue626

I saw a similar problem in Dimension À by Dav999. After rescuing a crewmate, a script was executed, but not normally. After Viridian was teleported to another room all of the internal crew-mates created were floating, a terminal was transformed into a grey cremate and green enemies created later appeared as :verdigris:s.
I wasn't the only one which got this problem, and realized the version of the game is unrelated.
It has to do with the fact that the script box was in the same place as the crew-mate. Here's a quote from FIQ, from the level's thread:

Quote from: FIQ on August 03, 2012, 11:09:00 PM
Also, what Roskilla is explaining is a common problem with dialog "clashes".

If you find a trinket, or a crewmate, the game freezes untill you press ACTION to remove the dialog (or wait if it's a crewmate). If another script happens to execute at the same time, the game freezes completely. Viridian will most likely float, and entity sprite data reverts to 0 (a happy crewmate standing on floor looking right). The only way to revert to normal is to fire up the level editor, start a level, exit, and start it again, and then exit. That, or restarting VVVVVV.

Never ever have scripts that can trigger the same time as trinketfound/crewmatefound, simple as that.

But I don't know how entity sprite data being reset to 0 has to do with transforming enemies to crew-mates of their colour and terminals to grey crew-mates. :-\
I suspect it also happens with simplified scripting, making it a real glitch.

Off-topic: How would a script with gotoroom make :viridian: flip repeatedly? Do you mean gotoposition?

Chillius

Quote from: blue626 on March 30, 2013, 05:19:10 PM
I saw a similar problem in Dimension À by Dav999. After rescuing a crewmate, a script was executed, but not normally. After Viridian was teleported to another room all of the internal crew-mates created were floating, a terminal was transformed into a grey cremate and green enemies created later appeared as :verdigris: s.
I wasn't the only one which got this problem, and realized the version of the game is unrelated.
It has to do with the fact that the script box was in the same place as the crew-mate. Here's a quote from FIQ, from the level's thread:

Quote from: FIQ on August 03, 2012, 11:09:00 PM
Also, what Roskilla is explaining is a common problem with dialog "clashes".

If you find a trinket, or a crewmate, the game freezes untill you press ACTION to remove the dialog (or wait if it's a crewmate). If another script happens to execute at the same time, the game freezes completely. Viridian will most likely float, and entity sprite data reverts to 0 (a happy crewmate standing on floor looking right). The only way to revert to normal is to fire up the level editor, start a level, exit, and start it again, and then exit. That, or restarting VVVVVV.

Never ever have scripts that can trigger the same time as trinketfound/crewmatefound, simple as that.

But I don't know how entity sprite data being reset to 0 has to do with transforming enemies to crew-mates of their colour and terminals to grey crew-mates. :-\
I suspect it also happens with simplified scripting, making it a real glitch.

Off-topic: How would a script with gotoroom make :viridian: flip repeatedly? Do you mean gotoposition?

Fixed!

blue626

#4
Quote from: Chillius03 on March 30, 2013, 05:26:06 PM
Quote from: blue626 on March 30, 2013, 05:19:10 PM
(My fixed post)

Fixed!

Thanks, I somehow forgot that a smiley's text wouldn't be considered a smiley if it has a letter immediately after/before it.
EDIT: Wait, is this post useless?

Fussmatte

Quote from: blue626 on March 30, 2013, 05:19:10 PM
But I don't know how entity sprite data being reset to 0 has to do with transforming enemies to crew-mates of their colour and terminals to grey crew-mates. :-\
Well, because enemies and terminals are entities, and sprite 0 is a crewmate, maybe? ::)

Quote from: blue626 on March 30, 2013, 05:19:10 PM
Off-topic: How would a script with gotoroom make :viridian: flip repeatedly? Do you mean gotoposition?
I probably should have said "via flip() and gotoroom()". gotoroom() makes it so the script repeats, by going to the same room.

blue626

Quote from: Doormat on March 30, 2013, 06:45:24 PM
Quote from: blue626 on March 30, 2013, 05:19:10 PM
But I don't know how entity sprite data being reset to 0 has to do with transforming enemies to crew-mates of their colour and terminals to grey crew-mates. :-\
Well, because enemies and terminals are entities, and sprite 0 is a crewmate, maybe? ::)

Okay, that makes sense now. I think FIQ tried to say say that in the quote, but I didn't understand. I didn't knew sprite 0 is a crew-mate.

FIQ

Doormat is correct, enemies, terminals, etc, are entities.

blue626

Quote from: FIQ on March 30, 2013, 10:00:54 PM
Doormat is correct, enemies, terminals, etc, are entities.

I already suspected that , no need to say it again. ??? What I didn't knew was that sprite 0 is a crewmate.