Announcement: Be excellent to each other.


Caravel Forum : DROD Boards : Bugs : Halph and stalwarts/soldiers pathfind through puffs.
Page 1 of 2
2
New Topic New Poll Post Reply
Poster Message
Dragon Fogel
Level: Smitemaster
Rank Points: 2434
Registered: 06-21-2014
IP: Logged
icon Halph and stalwarts/soldiers pathfind through puffs. (+2)  
Halph, stalwarts, and soldiers do not pathfind through monsters in general, but they will pathfind through puffs.

This seems inconsistent, though it's not that big of a deal to me; I just wanted to check if it was intended, before somebody goes and uses it in a puzzle.
06-22-2021 at 06:56 PM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
bbb
Level: Master Delver
Rank Points: 215
Registered: 10-07-2013
IP: Logged
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (0)  
That's consistent with all monsters ignoring puff and stepping on them, whatever the consequences may be.
07-25-2021 at 08:28 PM
View Profile Send Private Message to User Show all user's posts This architect's holds Quote Reply
Dragon Fogel
Level: Smitemaster
Rank Points: 2434
Registered: 06-21-2014
IP: Logged
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (+2)  
General monster behavior has little bearing on the behavior of Halph, stalwarts, or even slayers. It makes sense that monsters on their own ignore puffs, it makes sense that brained monsters ignore puffs, it even makes sense for citizens to ignore puffs because they can't figure out how to deal with monsters in their pathmaps.

But Halph and stalwarts take monsters into account in their pathfinding, so it's weird that puffs are an exception to that. Slayers take certain monsters into account, but ignore others, so really they could go either way on puffs. And puffs move after all of these entities, so they could still be at risk of puffs if they pass by on the right turn.
07-25-2021 at 08:42 PM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
bbb
Level: Master Delver
Rank Points: 215
Registered: 10-07-2013
IP: Logged
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (+2)  
Monsters as a rule don't step on each other, even if they can't plan ahead and anticipate it. This also holds for Halph and slayers, even though slayers can "clear" a path by stabbing monsters. Monsters DO step on puffs, so in is plausible that Halph and slayers will also do it, and then it wouldn't make sense for them to pathfind around them.

I'm not saying that is the only reasonable design, or even that it is the better design. Just that it isn't inconsistent.

I would be surprised if the Halph+puff combination has never been used in published holds. (Obviously EP has such rooms, but they can still be changed.)
07-25-2021 at 09:11 PM
View Profile Send Private Message to User Show all user's posts This architect's holds Quote Reply
hyperme
Level: Smitemaster
Avatar
Rank Points: 1062
Registered: 06-23-2006
IP: Logged
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (+2)  
This is less of an outright bug, and more of a weird emergent behavior. These monsters all pathfind through puffs because they don't consider them obstacles. This appears to be deliberate, since it can be seen in Halph code that Halph has a specific exception for puffs when checking tiles for monster obstacles.

However, it's still pretty weird, given that all these "intelligent" monsters still avoid firetraps, which are similar to puffs in that they are passable yet deadly.

____________________________
[Insert witty comment here]
Qzvlkx?
07-25-2021 at 10:40 PM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
Nuntar
Level: Smitemaster
Avatar
Rank Points: 4590
Registered: 02-20-2007
IP: Logged
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (0)  
I suggested the rule that intelligent monsters avoid active firetraps in the last week of TSS development, so it's not a big surprise that we overlooked an inconsistency with another behaviour. However, if it were to be changed then I feel it should be changed for all monsters that avoid firetraps (because we are implicitly saying the two are equivalent). That includes brained monsters, and that's almost certainly too big a change and would break lots of rooms.

(Just as an aside, EP does not have any rooms with both Halph and puffs -- the rooms you're thinking of had puffs replaced with other obstacles, because Chapter 7 elements can't appear in other levels in the same chapter.)

____________________________
50th Skywatcher
07-26-2021 at 11:58 AM
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
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (0)  
Personally, I think it's fine if brains can't handle puffs but other entities can. We already have brains not able to handle force arrows.

For me, the key point is that puffs are monsters, not that they're dangerous. Brains and citizens can't handle monsters in their pathfinding, so I wouldn't expect them to be any smarter about puffs. Slayers can, though they only pathfind around a specific few monsters. And both Halph and stalwarts pathfind around all monsters, with puffs being the one exception.
07-26-2021 at 04:42 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: 5056
Registered: 02-04-2003
IP: Logged
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (0)  
Nuntar wrote:
I suggested the rule that intelligent monsters avoid active firetraps in the last week of TSS development, so it's not a big surprise that we overlooked an inconsistency with another behaviour.
I agree this feels like a simple oversight for intelligent monsters.

Do we have consensus on the scope of what we want to change to address the issue?

____________________________
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.
07-26-2021 at 08:16 PM
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: Halph and stalwarts/soldiers pathfind through puffs. (+3)  
I don't think we do yet. So I'll share my thoughts a little more formally, in hopes that we can figure out where the disagreements are and move on from there.

I think this should be changed for entities that consistently avoid pathfinding through monsters - they should treat puffs like other monsters. (I forget if engineers avoid pathfinding through monsters. I think so but I haven't double-checked.)

Slayers avoid pathfinding through some monsters but not others. I think it would make sense for puffs to be on the list of monsters they avoid, but I don't feel as strongly on this point.

Brained monsters and citizens don't take monsters into account (other than gentryii and snake bodies in the former case) so it makes sense to me that they would treat puffs like other monsters and ignore them, as is the case now.
07-26-2021 at 09:51 PM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
Nuntar
Level: Smitemaster
Avatar
Rank Points: 4590
Registered: 02-20-2007
IP: Logged
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (+4)  
Dragon Fogel wrote: (I forget if engineers avoid pathfinding through monsters. I think so but I haven't double-checked.)

So... I just tested this by placing a gel baby stuck in a 1-wide passage between walls. An engineer will indeed pathfind around the gel baby, recognising it as a tile he cannot move onto.

A citizen, on the other hand, will pathfind around the gel baby when targeting a build marker -- but he will try to go through the gel baby when targeting a relay station.

This is obviously too ingrained to change now, but I'm astonished that such a glaring inconsistency has been in the game since TCB and the community as a whole seems never to have noticed.

____________________________
50th Skywatcher
07-27-2021 at 08:37 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: 1062
Registered: 06-23-2006
IP: Logged
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (+1)  
The obvious change to fix this issue is to have Halphs, Citizens/Engineers and Stalwarts/Soldiers consider Puffs as obstacles. This will have the following effects:

1. When they construct paths to their goal, the paths will avoid puffs.
2. If a puff moves onto their path, the path will become invalid, and a new path will be calculated.
3. These elements will never step onto puffs, even when not following a path. This means that they will block Citizens that are returning to a Relay Station like any other monster.

This leaves two remaining questions:

1. Should Slayers consider Puffs as obstacles? If so, they'll avoid Puffs, and Puffs will be able to cut off the Wisp.
2. Should Relay Stations consider Puffs as obstacles? If so, Citizens will avoid Puffs on the way to Relay Stations.

____________________________
[Insert witty comment here]
Qzvlkx?
07-28-2021 at 12:31 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
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (+3)  
So there's an issue here where citizens are dumb about monsters on the way to relay stations and smart about them on the way to build markers.

I think the deciding factor here is that the puff is a monster, not that it's dangerous. So if the rules are that citizens pathfind around monsters on the way to build markers and don't on the way to relay stations, then they should walk into puffs like fools if they're going for a station and dodge them if they're on their way to build. It's weird but that's what makes the most sense given the weird existing rules.

Slayer isn't an obvious case either way. However, this was brought up in chat a moment ago:

ThemsAllTook (10:32 AM) Aren't puffs a mostly unknown hazard that Beethro learned about midway through TSS? Like, why would Halph or a slayer know to recognize them as something to avoid if they've never encountered them before?

My response to this is that puffs are monsters and I think pathfinding should treat them as other monsters, not as a specific hazard. In the case of slayers, though, the question is whether they should be one of the special cases that the slayer doesn't pathfind through. And this is basically an argument that no, they shouldn't, the knowledge that puffs kill you hasn't really worked its way through the ranks of what few slayers still exist at the time of TSS.

I don't feel that strongly either way on slayers, myself, so I'm just pointing that out as a case for "slayers shouldn't treat puffs as an obstacle".
07-28-2021 at 05:51 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: 1062
Registered: 06-23-2006
IP: Logged
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (+2)  
Some more thoughts:

Currently, Slayers create paths through all monsters, except for serpents and mosnters that leave remains. Since Puffs are neither snakes, nor leave remains, it is probably most consistent if Slayers continue to path through them, even to the death. Plus Slayers with daggers will happily walk over most monsters, so it's not too weird if they step on puffs.

As for Puffs being monsters, while it's true that monsters are movement obstacles, Puffs are specifically an exception to that rule. So a tile containing a Puff still allows for an open move, so a path can go through it. I think Puffs being deadly to move onto is a better reason to avoid them, since the point of pathfinding is to get somewhere, and you can't get somewhere if you die. Also since you fail the room if Halph dies, it's better if he generally makes decisions that keep him alive.

As for Citizens, I think they need to treat Puffs the same, no matter where they're going. It's already pretty opaque that Citizens going to markers and Citizens going to stations use different pathing, so adding another weird complication seems unwise.

____________________________
[Insert witty comment here]
Qzvlkx?
07-28-2021 at 08:39 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
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (+2)  
Citizens already don't treat roaches the same way depending on their destination. The inconsistency ship sailed a long time ago with them, and I think it would just make things even worse to have one specific monster they don't ignore when making their way to relay stations.

I guess there's the special case of "what does a citizen do if a puff is on their prefered tile but they have another tile that's the same distance away"; currently, citizens do move around roaches in that instance.
07-28-2021 at 08:59 PM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
Nuntar
Level: Smitemaster
Avatar
Rank Points: 4590
Registered: 02-20-2007
IP: Logged
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (+4)  
Dragon Fogel wrote: My response to this is that puffs are monsters and I think pathfinding should treat them as other monsters, not as a specific hazard.

The problem with this idea is that Halph, engineers, and citizens targeting a build marker do not give special treatment to monsters in the first place. They only ask one question about each tile: "Can I step here?" This question has a clear answer in all cases but a few:

* Halph does recognise active firetraps as somewhere he "cannot" step, because even though he technically could step there, it would kill him.
* Halph does not give any special treatment to inactive firetraps, floor spikes or hot tiles, not recognising that these might be fatal to him.

Puffs are a really arguable edge case, because even though they are instantly fatal like firetraps, Halph may see a puff a long way ahead interrupting his path. Should that cause him to change his path, even though the puff would probably have moved by the time he reaches it?

I don't feel strongly about this, but I think it is marginally more consistent if the puff does make Halph recalculate -- after all, he would recalculate if something turns on a firetrap somewhere along his path, even though it might turn off again by the time he reaches it. (And since that would be consistent with how he treats other monsters, Fogel and I would agree on what the behaviour should be, even if we get there by different reasoning.)

* * *

Stalwarts/soldiers target monsters, so the situation where they would consider pathing around monster A to reach monster B can only arise if monster A is a non-target such as a gentryii. In fact, they do path around gentryii in this situation. I think if we decide that Halph can recognise a puff as a tile he cannot step onto, then it makes sense that stalwarts/soldiers should as well.

* * *

Slayer wisps and citizens targeting relay stations are the two cases where the category of "monster" has special treatment. They will consider tiles the slayer/citizen can step on, but will ignore monsters if the tile is otherwise steppable. In this case, I think it's clear that if Halph and stalwarts can recognise a puff as a non-steppable tile, Slayers and citizens should as well. So in this case they would treat puffs differently from other monsters, but I think that would be the correct decision.

____________________________
50th Skywatcher
07-28-2021 at 10:39 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: 1062
Registered: 06-23-2006
IP: Logged
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (+3)  
Based on current arguments and my own thoughts, here's how I'm feeling about resolving this for each element:

Halphs: Treats puffs as impassable. Won't step on puffs, will path around them and considers them path-breaking obstacles.

Stalwart/Soldier: Treats puffs as impassable. Won't step on puffs, will path around them.

Slayer: Either always treats puffs as passable, or impassable.
If puffs are passable to Slayers, the wisp will path through them, and Slayers can step on them.
If puffs are impassable to Slayers, the wisp will avoid them and be broken by them, and Slayers will never step on them.

Citizen: Treats puffs as impassable. Will path around puffs to reach build markers, and considers them path-breaking obstacles. In a stunning display of Citizens being weird, this doesn't have an effect on them when they're travelling to Relay Stations.

Relay Station: Not sure about this one. If they treat puffs as obstacles, Citizens will be blocked by puffs when going to stations. Otherwise, the Citizen will happily walk into a puff when heading for a station.

____________________________
[Insert witty comment here]
Qzvlkx?
07-29-2021 at 10:25 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: 5056
Registered: 02-04-2003
IP: Logged
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (0)  
I like your thinking.

Not considering the current game behavior, here are my thoughts on your open questions (without meaning to be prescriptive):

Slayer: Though 39th Slayer says "Always trust the wisp!", I'm thinking that puzzles with slayers and puffs wouldn't be very interesting if you can trivially get a slayer to walk right into a puff because its along the slayer's path. From the standpoint of Puzzle Potential, my intuition says that having wisps/slayers avoid puffs would be more interesting.

Relay Station: Also thinking about puzzle design here. Since it's often difficult to control citizens' paths along supply routes, having citizens automatically walk into roaming puffs along the way without recourse would surely be irritating. I'd suggest puffs act as obstacles to citizens, blocking them as they proceed along their paths. (In that case, IIRC, without a persistent pathing token in the room, the citizen will eventually seek another path, if the puff hasn't already run into them by that point.)

____________________________
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.

[Last edited by mrimer at 07-30-2021 11:05 PM]
07-30-2021 at 11:01 PM
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: Halph and stalwarts/soldiers pathfind through puffs. (+1)  
So just to make sure I have your second point correctly: you're suggesting that citizens on the way to relay stations treat puffs in exactly the same way they would treat a roach. They don't take it into account when calculating their path, but if one is in the way, they'll walk around it, or stop entirely if there's only one tile they can go to and the puff is on it.

I think that sounds fine. They're not treating it differently when it comes to general pathfinding, but they're not walking into it either. Seems to basically address the problem from both the "behaving consistently with how they treat other monsters" angle and the "puffs are dangerous" angle. Standing still right next to a puff isn't exactly the best way to deal with that danger, but thinking ahead isn't a strong point of most non-player entities anyhow.
07-31-2021 at 01:27 AM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
Nuntar
Level: Smitemaster
Avatar
Rank Points: 4590
Registered: 02-20-2007
IP: Logged
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (0)  
Dragon Fogel wrote:
So just to make sure I have your second point correctly: you're suggesting that citizens on the way to relay stations treat puffs in exactly the same way they would treat a roach. They don't take it into account when calculating their path, but if one is in the way, they'll walk around it, or stop entirely if there's only one tile they can go to and the puff is on it.

I think that sounds fine.

No, that sounds terrible. The above two posts have basically agreed that in all other cases (Halph, stalwarts, slayers, engineers, and citizens targeting build markers), human entities should be smart enough to recognise a puff as something they can't step into, and treat it as an obstacle. If that is the direction we want to go in, then I think it's great that we're making it consistent across the board. But it makes no sense for citizens, and only citizens, to have an exceptional behaviour that breaks the pattern and gives them emergent behaviour different from every other pathfinding entity.

And again, "treating puffs like other monsters" shouldn't be a consideration when being deadly to step on is precisely what distinguishes puffs from other monsters. It's as if someone were to say "constructs should treat oremites like other floor types when pathfinding, because don't you see, they're a floor type!" But being deadly to constructs is one of the core features that distinguishes oremites from other floor types.

* * *

There are two more pathfinding entities that should be considered: brained monsters in general, and guards. It could be argued that if human entities are going to be smart enough to avoid walking into puffs, then guards should too (being human); and since guards follow the brain pathmap, the brain pathmap should treat puffs as obstacles.

However, I'm worried that making this change would break a lot of rooms, because after all, brained monsters show up a lot more often than Halph or stalwarts.

____________________________
50th Skywatcher
07-31-2021 at 03:34 AM
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
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (+2)  
Nuntar wrote:
No, that sounds terrible. The above two posts have basically agreed that in all other cases (Halph, stalwarts, slayers, engineers, and citizens targeting build markers), human entities should be smart enough to recognise a puff as something they can't step into, and treat it as an obstacle. If that is the direction we want to go in, then I think it's great that we're making it consistent across the board. But it makes no sense for citizens, and only citizens, to have an exceptional behaviour that breaks the pattern and gives them emergent behaviour different from every other pathfinding entity.

They already behave differently from every other pathfinding entity.

Their behavior with monsters is already "pathfind around them when targeting a build marker and don't pathfind around them when targeting a relay station".

There are zero other things in the monster tab - including gentryii and snake bodies, which brains can handle! - that citizens consider pathfinding obstacles. Whether it's a good thing or not, this is a unique trait to citizens-going-to-relay-stations pathfinding and it's probably not going to be changed.

So I just think the best thing to do with puffs is make them consistent with it. To do otherwise is to create an entirely new mechanic for citizens, which seems more drastic than fitting puffs into their existing rules, however awkwardly. The rules are already awkward and probably too ingrained to change. If we were starting from scratch, I would probably be fine with the citizen always ignoring the roach when pathfinding but not the puff, regardless of destination; since that isn't an option, I would rather than the puff and roach be treated the same.

To put it another way: Halph, stalwarts, citizens heading for build markers, and engineers are already "smarter" than citizens heading for relay stations when it comes to monsters. Given that this is the case and will continue to be the case, it does not break consistency if they are "smarter" about another type of monster as well. Whatever confusion will exist for puffs under these rules already exists for roaches, and making them consistent about puffs will make the roach behavior even more confusing to a player who notices the puff behavior first. I would rather have the player notice one behavior, predict the citizen will behave the same way in the other case, and be correct.

For similar reasons, I think brains should not pathfind through puffs. Puffs are similar to other things brains have trouble with and that's good enough for me. I would be okay with guards not moving directly onto puffs but not considering them pathfinding obstacles, provided that doesn't break too many demos.
07-31-2021 at 06:14 AM
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: 5056
Registered: 02-04-2003
IP: Logged
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (0)  
Thank you for the changes, hyperme!

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.
08-07-2021 at 02:47 PM
View Profile Send Private Message to User Send Email to User Show all user's posts High Scores This architect's holds Quote Reply
hyperme
Level: Smitemaster
Avatar
Rank Points: 1062
Registered: 06-23-2006
IP: Logged
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (+4)  
Bring this back again because I'm not particularly happy with the way I resolved it for Citizens going to relay stations. The pending fix is that Citizens will get "stuck" on Puffs like any other monster, and that doesn't feel right. In fact, I believe that it's the worst possible behaviour of the options presented. Every other non-Puff monster either walks into a Puff, or as of this change, will avoid them. Citizens getting stuck on Puffs is an inconsistency that, at least to me, seems more like a bug than the current behaviour.

Rather than waffle on about DROD ideals or whatever for four or five paragraphs, I'm going to cut directly to what I think the problem here is: Citizens are awful. Digging into how they work to deal with this issue has cemented my opinion that they are, from a game design perspective, the worst element in DROD. Every solution is going to seem wrong and upset people, because Citizens are a mess. There's no good solution to this issue, only a least bad solution.

So here are the obvious ways to deal with that are better than "Citizen gets stuck on Puffs":

Keep the Old: Citizens go back to not avoiding Puffs, no matter where they are going. Engineers, in their role as "better Citizens" will still avoid Puffs.

Relay to the Death: Citizens avoid puffs on the way to build markers, but not when travelling to relay stations. It might be annoying, but it's consistent with them ignoring monsters when heading to stations until the monster is in the way.

Full-time Avoidance: Citizens path around puffs, no matter the destination. It's an exception, sure, but DROD is a game built out of exceptions.

Snow Jackets: Cizitens are immune to puffs and don't avoid them. This might break some rooms and also opens a big can of worms in regards to Engineers.


In regards to brained mosnters, that ship sailed a long time ago. There's a room in The Second Sky (the hold) that requires brained monsters to walk into Puffs, so changing the behaviour here isn't feasible. Guards might be changable in some way, but I'd prefer to only do so if it doesn't break any rooms.

____________________________
[Insert witty comment here]
Qzvlkx?
08-10-2021 at 04:09 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: 5056
Registered: 02-04-2003
IP: Logged
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (0)  
I don't have a strong opinion and am open to your suggestions. Being close to the code and having looked at this a fair amount recently, which option out of these would be your recommendation?

____________________________
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.
08-10-2021 at 06:14 PM
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: Halph and stalwarts/soldiers pathfind through puffs. (+2)  
So here, to me, is the problem.

Citizens behave differently on the way to relay stations than they do on the way to build markers. This is terrible, and even worse, changing it would break either every room where citizens build things, or every room with citizens period, depending on how we changed it.

In fact, on the way to relay stations citizens are the absolute worst among pathfinding entities at handling any monster.

I think pathfinding around puffs on the way to relay stations is absolutely terrible unless we're going to actually change all the rules for them. But changing all the rules for them would definitely break lots of rooms.

So the question is, should citizens on the way to relay stations move through puffs, or treat them exactly the same way as roaches, including not walking directly into them. I feel like these are the best out of a poor set of options.

And for that, let's shift to guards for a moment.

Guards refuse to hit bombs with their swords. However, they don't care about bomb locations when pathfinding - soldiers and stalwarts do. They also won't walk into firetraps even if they don't have a brain path to the player, or are focused on another target.

So the behavior of "don't walk into puffs but ignore them when pathfinding" feels like it would be in line with those self-preservation behaviors for guards. I don't know if it would break any rooms; all I'm saying is that more generally, I wouldn't see it as out of place. And this would apply only to guards, not other brained monsters.

I guess what I'm getting at is, I don't think relay-going citizens should be "smarter" than guards when it comes to any monster, including puffs.

I agree the change is weird if we make it only for citizens, but I think it's less weird if we make it for guards too. We're creating a new rule, but we're applying it to multiple entities that it makes sense to have it for - where making it part of their pathfinding is a problem but giving them limited self-preservation instincts is reasonable.

However, if we don't want to make the change for guards, whether for philosophical reasons or for "it breaks too many rooms" reasons, then I would prefer that citizens walk through puffs.

[Last edited by Dragon Fogel at 08-10-2021 06:48 PM]
08-10-2021 at 06: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: 1062
Registered: 06-23-2006
IP: Logged
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (+1)  
I suppose that if guards were to change, it would be slightly less weird for them and citizens to get stuck on puffs. Then the rule is that human monsters that use brain-like pathing won't step on puffs, even if it gets them stuck. It's not great, but I guess it's somewhat consistent.

____________________________
[Insert witty comment here]
Qzvlkx?
08-10-2021 at 10:59 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: 1062
Registered: 06-23-2006
IP: Logged
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (+1)  
Here is some more information in regards to Puffs and Guards. The room search tool shows two rooms that use them together, and two that use Fluff Vents and Guards to together:

Elemental Showcase 5.0: The Abandoned Beethro Place: 1W
Take Five: Duplication Desert: 1W
Granny's Secret: First Level: 1W
Putting the Pieces Together: Assembly Hall: 1S

These rooms all contain situations where Guards might Puff themselves. In fact, the room in Take Five requires a Guard to step on a Puff. While this interaction is rare, it does appear that people consider it sensible.

My personal opinion is that it's better to have everything that's using brain-like pathing react to puffs in the same way. Since we can't change brained monsters, the reaction has to be that they walk into them. It's a tad weird, but I think the other way would be weirder, since the deal with puffs is that monsters walk into them. (Slayers and Halphs are already exceptional, and the other smart pathing monsters won't get stuck to Puffs, but instead avoid them.)

____________________________
[Insert witty comment here]
Qzvlkx?
08-11-2021 at 02:22 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
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (+2)  
There are several ways in which guards are already different from other brained monsters. For example, guards will ignore the brain pathmap to go after a stalwart.

I agree that brained monsters and guards should treat puffs the same as far as pathfinding goes, but there's no reason why they can't have different behavior at the "figure out the next step you're going to make" stage. They already do when bombs are involved, after all. Or if that's not good enough for you because it involves the weapon as a factor, consider that most monsters making an unbrained move because the brains' preferred direction is blocked will walk right into a firetrap, but guards won't.

The Duplication Desert room can be fixed fairly easily if guards are changed, as the point of the puff is it's the only place for something to die and only one thing can go onto its tile. If we want to preserve all demos, we probably have to use a script; otherwise we can just put a firetrap where the puff is and have a mechanism to turn the firetrap on. Since the guard won't move into the firetrap voluntarily, this will have the same limitations as the current arrangement.

Also, not that this really matters, but I'm pretty sure it's not actually possible to let a guard get puffed in the Assembly Hall room. The puffs are pretty tightly controlled. It's definitely not part of the intended solution.

[Last edited by Dragon Fogel at 08-11-2021 06:13 PM]
08-11-2021 at 06:09 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: 1062
Registered: 06-23-2006
IP: Logged
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (+1)  
There is merit in the idea that since Guards don't do things that will very probably kill them, they should also avoid doing the one thing that is 100% certain to kill them. Hitting bombs and stepping on activate firetraps is risky, but might be okay. Stepping on a puff is instant death when the move resolves.

With this all in mind, here are the Final Non-Terrible Options:

Path to the Death: Guards will walk into puffs, and Citizens going to stations will walk into puffs.

Safety "First": Guards/Citizens will disregard moves from pathmaps that direct them onto puffs, and Guards not on the pathmap won't step on puffs. This may result in them getting stuck. This requires one room to be updated to remain possible, and will probably break some demos for other rooms.

____________________________
[Insert witty comment here]
Qzvlkx?
08-11-2021 at 08:07 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
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (+1)  
For what it's worth, I think the non-scripting option that's least likely to break demos in the Duplication Desert room is to replace the puff with a firetrap, and have the wubba on an on-off plate that turns the firetrap on. (Importantly, it has to be on, not toggle.)

It's necessary to move the wubba because of the bottom row of duplicators, so demos won't fail for not doing that. They would only fail if the player duplicated wubbas before leading the guard to the puff's spot, but once you've solved the main puzzle, it's a lot easier to just lead the guard into place first and I imagine most if not all demos do it that way.
08-11-2021 at 10:20 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: 1062
Registered: 06-23-2006
IP: Logged
icon Re: Halph and stalwarts/soldiers pathfind through puffs. (+3)  
Having worked this over in my brain even more, I think it is ultimately more consistent to have Guards and Citizens consider Puffs as obstacles. The reasoning is as follows:

1. We have a set of monsters that considers stepping on firetraps as being bad.
2. Some of these monsters now consider stepping on Puffs bad.
3. Unlike most monsters, Guards don't step on firetraps even when making a non-brainy move.
4. citizens are bad since they use two different types of pathing
5. citizens are worse if they're the only firetrap avoider that still steps onto puffs
6. In some circumstances, Slayers and Halphs can now get stuck on Puffs, so it's not so bad if Guards and Citizens do the same.
7. Guards use the brain pathmap, which can't see puffs. Relay Station pathmaps are very similar to the brain pathmap, so it's not too divergent if they don't see puffs. (plus keeping puffs invisible to Relay Stations avoids complexities).
8. Thus, it's nice and consistent to have all the monsters that don't step onto firetraps also not step onto puffs. Even if this very occationally leads to weird-looking situations.

____________________________
[Insert witty comment here]
Qzvlkx?
08-12-2021 at 10:13 PM
View Profile Send Private Message to User Show all user's posts High Scores This architect's holds Quote Reply
Page 1 of 2
2
New Topic New Poll Post Reply
Caravel Forum : DROD Boards : Bugs : Halph and stalwarts/soldiers pathfind through puffs.
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.