Announcement: Please read the Rules Topic for some general rules and etiquette before using the Hints and Solutions system.


Caravel Forum : DROD Boards : Hints and Solutions : Blockerture Science Laboratories : Floating Antechamber : 1 North, 2 West
New Topic Post Reply
Poster Message
kikuchiyo
Level: Delver
Rank Points: 61
Registered: 04-01-2012
IP: Logged
icon Blockerture Science Laboratories : Floating Antechamber : 1 North, 2 West (0)  
I have an extremely weird issue with this room: the gravity block is rotating in place (one CCW rotation per turn), and doesn't respond to the clone's stepping on tokens. Clearly, the room is impossible in this state. Even more weirdly, I did the very similar room to the east a few days ago, and it behaved normally then.

Is my copy of DROD broken? Is it even possible for it to break like that suddenly? Is my copy of reality broken? What is going on?
06-14-2022 at 09:22 PM
View Profile Send Private Message to User Show all user's posts High Scores Quote Reply
Xindaris
Level: Smitemaster
Avatar
Rank Points: 1346
Registered: 06-13-2015
IP: Logged
icon Re: Blockerture Science Laboratories : Floating Antechamber : 1 North, 2 West (+1)  
Ah, I think I might know what the problem is.

Basically, the code "faking a token" for the gravblock rotators has some unavoidable imperfections. What it's supposed to do is activate once when Beethro, or a mimic, clone, timeclone, etc. steps on it, then wait until that entity steps off before activating again. But, if you switch away from a clone who's standing on a token he just activated, then it "thinks" that a Beethro stepped off and an inactive clone stepped on, so it reactivates itself. And if you swap back to the clone then it activates again.

I could've avoided this issue in this particular room by using a different version of the entities that doesn't do that, and instead waits to reactivate until there's nothing on it anymore at all, but I stuck to just using the single version of the entity in every room over crafting the most perfect illusion of a real token possible.

What you need to do is make sure the clone is not standing on any token when you swap away from him.

If I'm wrong about that fixing things, do let me know.

____________________________
109th Skywatcher

Here are some links to Things!
Click here to view the secret text


[Last edited by Xindaris at 06-14-2022 11:58 PM]
06-14-2022 at 11:56 PM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
kikuchiyo
Level: Delver
Rank Points: 61
Registered: 04-01-2012
IP: Logged
icon Re: Blockerture Science Laboratories : Floating Antechamber : 1 North, 2 West (+1)  
After my brief existential meltdown I was beginning to suspect that it might be a scripting bug where a hold-scoped variable got stuck.

So I've restored to the start of 1N1W, and redid it (mostly based on your demo), and the bug did not appear again. But I think I did swap away from the clone while standing on a token, so that alone is not necessarily enough to trigger it. Perhaps it has to do with exiting the room right after switching away from a clone standing on a token? I vaguely recall I might have done that earlier.

Anyway, thanks for the help!

[Last edited by kikuchiyo at 06-15-2022 10:53 PM]
06-15-2022 at 10:52 PM
View Profile Send Private Message to User Show all user's posts High Scores Quote Reply
Xindaris
Level: Smitemaster
Avatar
Rank Points: 1346
Registered: 06-13-2015
IP: Logged
icon Re: Blockerture Science Laboratories : Floating Antechamber : 1 North, 2 West (0)  
I hadn't considered that; it actually sounds pretty likely now that I'm thinking of it. The rotator/float tokens have to "tell" the blocks in the room what to do via a global variable, so if that doesn't get reset between setting it and leaving the room, it would definitely cause unintended behavior. Most of the time this isn't a problem because the tokens are not placed near room edges, but a clone could do exactly that.

I could avoid an issue like this by making sure all the relevant variables get re-initialized at room start, but clearly didn't think about it at the time.

____________________________
109th Skywatcher

Here are some links to Things!
Click here to view the secret text


[Last edited by Xindaris at 06-16-2022 02:36 AM]
06-16-2022 at 02:35 AM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
New Topic Post Reply
Caravel Forum : DROD Boards : Hints and Solutions : Blockerture Science Laboratories : Floating Antechamber : 1 North, 2 West
Surf To:


Forum Rules:
Can I post a new topic? No
Can I reply? No
Can I read? Yes
HTML Enabled? No
UBBC Enabled? Yes
Words Filter Enable? No

Contact Us | CaravelGames.com

Powered by: tForum tForumHacks Edition b0.98.8
Originally created by Toan Huynh (Copyright © 2000)
Enhanced by the tForumHacks team and the Caravel team.