Announcement: Be excellent to each other.


Caravel Forum : DROD Boards : Bugs : Changed briar processing in 5.1.1 (Is it a regression? I don't know.)
New Topic New Poll Post Reply
Poster Message
Dragon Fogel
Level: Smitemaster
Rank Points: 2434
Registered: 06-21-2014
IP: Logged
icon Changed briar processing in 5.1.1 (+2)  
Over in another thread, I was looking into a demo that broke in the latest version due to changes to briar processing, probably introduced somewhere in the process of fixing a different briar bug.

http://forum.caravelgames.com/viewtopic.php?TopicID=44954&page=1#442465

Basically: it seems that briar roots created through the Build command are being processed before pre-existing briar roots, at least on the turn that they're built. I couldn't figure out if the weird order was persisting on later turns, since that's somewhat complicated to set up, but I might see about putting together a test case later.

Trying to figure out what's happening here and if it should be changed. Only Horticultural Headache demos broke (plus the hub room related to that entry), so I think whatever changed here only has an impact with built briar roots.
12-26-2021 at 05:47 PM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
Dragon Fogel
Level: Smitemaster
Rank Points: 2434
Registered: 06-21-2014
IP: Logged

File: Briar Testing.hold (1018 bytes)
Downloaded 47 times.
License: Public Domain
icon Re: Changed briar processing in 5.1.1 (+2)  
Okay, with some effort I managed a test setup.

The south root is created through scripting. As soon as growth happens, the red tile southeast of the north root turns black, but there is no diagonal growth from it.

Then, if you wait a few turns, the red tile at (13,21) will be the same distance from both roots, so whichever one is processed first will turn it black. This means that the next tile to turn black will be whichever one is closer to the next tile processed.

The south tile turns black, so this tells us that processing returns to the usual order. The different processing order only happens on the turn that the new root is built.

I'm pretty sure it's an issue with processing order and not attachment because if the order were the same as normal, this is what I would expect to happen even if the south root wasn't attached to the briar patch:

-North root turns red tile black
-South root expands into patch. Since the tile is black, there is diagonal growth from it.

However, I guess it's possible some less straightforward issue is causing the weird behavior.
12-26-2021 at 09:28 PM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
hyperme
Level: Smitemaster
Avatar
Rank Points: 1064
Registered: 06-23-2006
IP: Logged
icon Re: Changed briar processing in 5.1.1 (+1)  
Looking at the growth in the provided room seems to suggest some kind of connection issue, since in 5.1.1, briar grows onto (9,18) on turn one, which should be possible if the root at (10,19) is connected to the rest of the patch. This doesn't happen in 5.1 until all the fresh briar has matured.

____________________________
[Insert witty comment here]
Qzvlkx?

[Last edited by hyperme at 12-26-2021 09:57 PM]
12-26-2021 at 09:57 PM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
Dragon Fogel
Level: Smitemaster
Rank Points: 2434
Registered: 06-21-2014
IP: Logged

File: Briar Testing.hold (1.1 KB)
Downloaded 47 times.
License: Public Domain
icon Re: Changed briar processing in 5.1.1 (+1)  
Found something else weird, which is happening in 5.1 as well.

1E is a room I made to confirm that the briar processing order is the usual one in 5.1. 1S is a room I made to mess around with separate pre-existing roots.
And, uh. In 1S, the south root doesn't expand from the black briar in either version of the game. Clicking the roots indicates the game doesn't consider the two roots to be part of the same patch; but that doesn't explain why the south root only grows into tiles right next to the root, despite being orthogonally next to a tile of black briar.

Weirder still, if I remove the north root and its entire patch, the south root expands from the black briar. If I just remove the north root, the south root treats everything as connected to it.

I'm not sure if there's a direct relation between the problems here, but something is definitely wrong.

Edit: Don't remember which version I made the room in. I guess it's possible that one version of the editor is making things connect in weird ways, but once that connection exists it happens in both versions.

[Last edited by Dragon Fogel at 12-27-2021 07:10 AM]
12-27-2021 at 04:54 AM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
hyperme
Level: Smitemaster
Avatar
Rank Points: 1064
Registered: 06-23-2006
IP: Logged
icon Re: Changed briar processing in 5.1.1 (+3)  
Worked out the issue. As it turns out, being able to construct briar roots after a room has loaded was not expected by the code that adds briar roots. Since "briar edges" don't exist until after roots are added, the function that adds roots doesn't connect them to post-load roots. Due to how the briar related data structures are set up, skell's fix to stop magic briar connections also revealed this.

____________________________
[Insert witty comment here]
Qzvlkx?
12-27-2021 at 03:03 PM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
mrimer
Level: Legendary Smitemaster
Avatar
Rank Points: 5058
Registered: 02-04-2003
IP: Logged
icon Re: Changed briar processing in 5.1.1 (0)  
Thank you for the testing and fix!

Merged the PR.

____________________________
Gandalf? Yes... That's what they used to call me.
Gandalf the Grey. That was my name.
I am Gandalf the White.
And I come back to you now at the turn of the tide.
01-05-2022 at 01:00 AM
View Profile Send Private Message to User Send Email to User Show all user's posts High Scores This architect's holds Quote Reply
Dragon Fogel
Level: Smitemaster
Rank Points: 2434
Registered: 06-21-2014
IP: Logged
icon Re: Changed briar processing in 5.1.1 (+1)  
Tested. My one broken demo in Horticulturalist's Headache is not breaking under 5.1.1.427X. Test hold seems to be behaving the same way in both 5.1 and 5.1.1.427X.

Furthermore, demo for The Briar Patch 2S1E in The Goblin still breaks in 5.1.1.427X; this is actually good since it broke due to fixing the original briar bug that led to discovering this issue.

Is there anything else I should check to confirm the fix?
01-05-2022 at 11:47 PM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
hyperme
Level: Smitemaster
Avatar
Rank Points: 1064
Registered: 06-23-2006
IP: Logged
icon Re: Changed briar processing in 5.1.1 (+2)  
That is everything that needed to be checked. Thank you for being thorough.

____________________________
[Insert witty comment here]
Qzvlkx?
01-06-2022 at 07:56 AM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
New Topic New Poll Post Reply
Caravel Forum : DROD Boards : Bugs : Changed briar processing in 5.1.1 (Is it a regression? I don't know.)
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.