New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HttT S6: Cancel attacks, support alt cave entrance #3459

Merged
merged 3 commits into from Sep 10, 2018

Conversation

Projects
None yet
4 participants
@jostephd
Member

jostephd commented Aug 12, 2018

If the player ordered a unit to move and attack, allow the attack to be canceled, as done in #3227 for DiD. And change the undead reinforcements triggering.

jostephd added some commits Aug 11, 2018

HttT S6: Trigger the additional undead as soon as the player touches …
…the cave entry.

Seen in :debug with a Nightgaunt. Not sure if it can happen in normal play.
HttT S6: Support unlikely player behavior.
Trigger the undead reinforcements even if the player skips the main cave entrance.
@CelticMinstrel

This comment has been minimized.

Show comment
Hide comment
@CelticMinstrel

CelticMinstrel Aug 12, 2018

Member

I don't understand the first commit... part of it looks like it really belongs with the second commit, while the other part is just confusing.

Member

CelticMinstrel commented Aug 12, 2018

I don't understand the first commit... part of it looks like it really belongs with the second commit, while the other part is just confusing.

@jostephd

This comment has been minimized.

Show comment
Hide comment
@jostephd

jostephd Aug 12, 2018

Member

@CelticMinstrel There are a couple of different things going on:

  1. [first commit] When you order move-and-attack and the moves ends in a village, and that spawns the Thieves, cancel the ordered attack to let the player choose another attack if he wishes. As in #3227.

  2. [first commit] Same, for when you order a move-and-attack and the move ends on the cave entrance trigger hex. For example, if you move to 17,6 to attack a unit that's on 17,5.

  3. [second commit] Change the trigger from moveto to enter_hex. That matters when using a fast unit to move directly into the cave without first stopping on one of the four trigger hexes. If the fast unit is followed by a slow unit that stops on the trigger hex, the fast unit could get trapped.

  4. [third commit] Add cave entrance trigger hexes on the side entrance.

Clearer? Should I split this to two PR's or something?

Member

jostephd commented Aug 12, 2018

@CelticMinstrel There are a couple of different things going on:

  1. [first commit] When you order move-and-attack and the moves ends in a village, and that spawns the Thieves, cancel the ordered attack to let the player choose another attack if he wishes. As in #3227.

  2. [first commit] Same, for when you order a move-and-attack and the move ends on the cave entrance trigger hex. For example, if you move to 17,6 to attack a unit that's on 17,5.

  3. [second commit] Change the trigger from moveto to enter_hex. That matters when using a fast unit to move directly into the cave without first stopping on one of the four trigger hexes. If the fast unit is followed by a slow unit that stops on the trigger hex, the fast unit could get trapped.

  4. [third commit] Add cave entrance trigger hexes on the side entrance.

Clearer? Should I split this to two PR's or something?

@CelticMinstrel

This comment has been minimized.

Show comment
Hide comment
@CelticMinstrel

CelticMinstrel Aug 12, 2018

Member

Yes, that makes it clearer, thanks. I don't think it needs to be split.

Member

CelticMinstrel commented Aug 12, 2018

Yes, that makes it clearer, thanks. I don't think it needs to be split.

@GregoryLundberg

This comment has been minimized.

Show comment
Hide comment
@GregoryLundberg

GregoryLundberg Aug 13, 2018

Contributor

Your "unlikely" behavior is exactly how I play it. The question is: do we really want to expand the tripwire to the left, or leave it? Perhaps it should be the entire cave interior?

Contributor

GregoryLundberg commented Aug 13, 2018

Your "unlikely" behavior is exactly how I play it. The question is: do we really want to expand the tripwire to the left, or leave it? Perhaps it should be the entire cave interior?

@jostephd

This comment has been minimized.

Show comment
Hide comment
@jostephd

jostephd Aug 13, 2018

Member

I assumed the side entrance should be a tripwire for balance reasons, to ensure the undead reinforcements are always spawned.

I don't understand what you mean by making the entire cave interior a tripwire, do you mean making it so the hills/flat hexes adjacent to the cave hexes will no longer be tripwires? If 13,3 (cave) is a tripwire but 12,3 (flat) is not, once the player moves a unit to 13,3 a Revenant will spawn adjacent to the unit preventing it from either completing its move or retreating, and given the low terrain defense on that hex the player's unit will probably die even if it's a level 3 unit at full health (except Highwaymen). I don't think that would be fun.

The PR makes it so 12,3 is a tripwire, once the player steps on it it will be in range of both a Revenant and the Dark Sorcerer, but on 12,3 the player will have better terrain defense than on 13,3. Also it's more likely that the player will have MP remaining to retreat, not having expended MP on entering a cave hex.

Member

jostephd commented Aug 13, 2018

I assumed the side entrance should be a tripwire for balance reasons, to ensure the undead reinforcements are always spawned.

I don't understand what you mean by making the entire cave interior a tripwire, do you mean making it so the hills/flat hexes adjacent to the cave hexes will no longer be tripwires? If 13,3 (cave) is a tripwire but 12,3 (flat) is not, once the player moves a unit to 13,3 a Revenant will spawn adjacent to the unit preventing it from either completing its move or retreating, and given the low terrain defense on that hex the player's unit will probably die even if it's a level 3 unit at full health (except Highwaymen). I don't think that would be fun.

The PR makes it so 12,3 is a tripwire, once the player steps on it it will be in range of both a Revenant and the Dark Sorcerer, but on 12,3 the player will have better terrain defense than on 13,3. Also it's more likely that the player will have MP remaining to retreat, not having expended MP on entering a cave hex.

@GregoryLundberg

This comment has been minimized.

Show comment
Hide comment
@GregoryLundberg

GregoryLundberg Aug 13, 2018

Contributor

If, somehow (which is not now possible, but could be), a unit could avoid the present tripwire hex, landing on any cave interior hex should trigger the undead breaking out of the corners as well,

What I am saying is that I remember working on it to clean it up a bit but I don't remember checking that every possible hex inside the carver was a tripwire. It probably should be the same hex which have permanent night as their day cycle.

Contributor

GregoryLundberg commented Aug 13, 2018

If, somehow (which is not now possible, but could be), a unit could avoid the present tripwire hex, landing on any cave interior hex should trigger the undead breaking out of the corners as well,

What I am saying is that I remember working on it to clean it up a bit but I don't remember checking that every possible hex inside the carver was a tripwire. It probably should be the same hex which have permanent night as their day cycle.

@jostephd

This comment has been minimized.

Show comment
Hide comment
@jostephd

jostephd Aug 14, 2018

Member

If, somehow (which is not now possible, but could be), a unit could avoid the present tripwire hex, landing on any cave interior hex should trigger the undead breaking out of the corners as well,

Yes, with this PR it is impossible to avoid the tripwire, so it's moot whether hexes inside the cave are tripwire or not.

In 1.14 without this PR it is possible to avoid the tripwire by having enough MP (Outlaw, Sylph, Rogue, of course the latter would be bad play).

What I am saying is that I remember working on it to clean it up a bit but I don't remember checking that every possible hex inside the carver was a tripwire. It probably should be the same hex which have permanent night as their day cycle.

As I said in my previous post, I don't think it would be good for 13,3 (cave, permanently night) to be a tripwire if 12,3 (flat, normal day/night cycle) isn't, because that would effectively kill a player unit with no forewarning and no recourse.

Maybe we could make only the cave hexes a tripwire, but add a forewarning about the Revenant? The Thieves could speak of rumors of undead reinforcements, or of the undead being much stronger than they have shown so far, or something? Then the 13,3 trap wouldn't be frustrating.

Member

jostephd commented Aug 14, 2018

If, somehow (which is not now possible, but could be), a unit could avoid the present tripwire hex, landing on any cave interior hex should trigger the undead breaking out of the corners as well,

Yes, with this PR it is impossible to avoid the tripwire, so it's moot whether hexes inside the cave are tripwire or not.

In 1.14 without this PR it is possible to avoid the tripwire by having enough MP (Outlaw, Sylph, Rogue, of course the latter would be bad play).

What I am saying is that I remember working on it to clean it up a bit but I don't remember checking that every possible hex inside the carver was a tripwire. It probably should be the same hex which have permanent night as their day cycle.

As I said in my previous post, I don't think it would be good for 13,3 (cave, permanently night) to be a tripwire if 12,3 (flat, normal day/night cycle) isn't, because that would effectively kill a player unit with no forewarning and no recourse.

Maybe we could make only the cave hexes a tripwire, but add a forewarning about the Revenant? The Thieves could speak of rumors of undead reinforcements, or of the undead being much stronger than they have shown so far, or something? Then the 13,3 trap wouldn't be frustrating.

@GregoryLundberg

This comment has been minimized.

Show comment
Hide comment
@GregoryLundberg

GregoryLundberg Aug 14, 2018

Contributor

Lessee ... IIRC it was my fifth or twentieth attempt when I finally got up there and was, like, cool, what can go wrong, now? Kill the Boss and I'm finally done with this scene. Lad-de-dah let's waltz in and get to it. WTF? WHERE DID THEY COME FROM?

So it was my sixth (or thirtieth) attempt before I finally decided to flank them and win through.

Personally, I like the flanking not tripping the trap. But if you want it there, it should be everywhere. And don't depend upon a given move limit. If you can debug and set moves remaining to 99 and skip over the tripwire, someone can eventually make a unit which will, as well.

Contributor

GregoryLundberg commented Aug 14, 2018

Lessee ... IIRC it was my fifth or twentieth attempt when I finally got up there and was, like, cool, what can go wrong, now? Kill the Boss and I'm finally done with this scene. Lad-de-dah let's waltz in and get to it. WTF? WHERE DID THEY COME FROM?

So it was my sixth (or thirtieth) attempt before I finally decided to flank them and win through.

Personally, I like the flanking not tripping the trap. But if you want it there, it should be everywhere. And don't depend upon a given move limit. If you can debug and set moves remaining to 99 and skip over the tripwire, someone can eventually make a unit which will, as well.

@jostephd

This comment has been minimized.

Show comment
Hide comment
@jostephd

jostephd Aug 14, 2018

Member

@GregoryLundberg Did you miss that this PR changes the tripwire from moveto to enter_hex? "Make the entire cave a tripwire" does not make sense when enter_hex is used. It is also not possible to skip over the tripwire when it uses enter_hex.

Member

jostephd commented Aug 14, 2018

@GregoryLundberg Did you miss that this PR changes the tripwire from moveto to enter_hex? "Make the entire cave a tripwire" does not make sense when enter_hex is used. It is also not possible to skip over the tripwire when it uses enter_hex.

@jostephd

This comment has been minimized.

Show comment
Hide comment
@jostephd

jostephd Sep 7, 2018

Member

[second commit] Change the trigger from moveto to enter_hex. That matters when using a fast unit to move directly into the cave without first stopping on one of the four trigger hexes. If the fast unit is followed by a slow unit that stops on the trigger hex, the fast unit could get trapped.

[third commit] Add cave entrance trigger hexes on the side entrance.

Related thread (a user reporting the trap not triggering on the side entrance as a "possible bug"): https://forums.wesnoth.org/viewtopic.php?f=4&t=48699&p=632892#p632878

Member

jostephd commented Sep 7, 2018

[second commit] Change the trigger from moveto to enter_hex. That matters when using a fast unit to move directly into the cave without first stopping on one of the four trigger hexes. If the fast unit is followed by a slow unit that stops on the trigger hex, the fast unit could get trapped.

[third commit] Add cave entrance trigger hexes on the side entrance.

Related thread (a user reporting the trap not triggering on the side entrance as a "possible bug"): https://forums.wesnoth.org/viewtopic.php?f=4&t=48699&p=632892#p632878

@sevu

This comment has been minimized.

Show comment
Hide comment
@sevu

sevu Sep 9, 2018

Member

Can this go into 1.14.5 as is?

Member

sevu commented Sep 9, 2018

Can this go into 1.14.5 as is?

@jostephd

This comment has been minimized.

Show comment
Hide comment
@jostephd

jostephd Sep 9, 2018

Member

At least 1) and 2) (adding cancel_action) should go to 1.14.5. Possibly the whole patch.

Member

jostephd commented Sep 9, 2018

At least 1) and 2) (adding cancel_action) should go to 1.14.5. Possibly the whole patch.

@sevu sevu added this to the 1.14.5 milestone Sep 9, 2018

@GregoryLundberg

This comment has been minimized.

Show comment
Hide comment
@GregoryLundberg

GregoryLundberg Sep 10, 2018

Contributor

As much as I hate losing my favorite end-run I'd say merge it as-is.

Contributor

GregoryLundberg commented Sep 10, 2018

As much as I hate losing my favorite end-run I'd say merge it as-is.

@sevu

This comment has been minimized.

Show comment
Hide comment
@sevu

sevu Sep 10, 2018

Member

By all means, have your favourite end run. I asked because I wondered if we have here a situation of one person expecting more changes and another assuming it's done, and because of the planned release.

Member

sevu commented Sep 10, 2018

By all means, have your favourite end run. I asked because I wondered if we have here a situation of one person expecting more changes and another assuming it's done, and because of the planned release.

@GregoryLundberg

This comment has been minimized.

Show comment
Hide comment
@GregoryLundberg

GregoryLundberg Sep 10, 2018

Contributor

Nah. I'm fine with it as it is.

Contributor

GregoryLundberg commented Sep 10, 2018

Nah. I'm fine with it as it is.

@GregoryLundberg GregoryLundberg merged commit 0cb4484 into wesnoth:1.14 Sep 10, 2018

1 of 3 checks passed

continuous-integration/travis-ci/pr The Travis CI build could not complete due to an error
Details
continuous-integration/appveyor/pr AppVeyor build failed
Details
Codacy/PR Quality Review Up to standards. A positive pull request.
Details

@jostephd jostephd referenced this pull request Sep 10, 2018

Open

Forward port #3514

10 of 15 tasks complete
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment