Skip to content

Add the Waterhole object#10309

Draft
Districh-ru wants to merge 35 commits intoihhub:masterfrom
Districh-ru:add-waterhole-object
Draft

Add the Waterhole object#10309
Districh-ru wants to merge 35 commits intoihhub:masterfrom
Districh-ru:add-waterhole-object

Conversation

@Districh-ru
Copy link
Collaborator

@Districh-ru Districh-ru commented Oct 21, 2025

Many thanks to @PusshPop for the Waterhole object sprites and for the underwater battlefield background!

fheroes2.2026-02-01.09-43-51-373.mp4

To properly represent the objects the water cycling colors were duplicated in the game palette to the non-cycle palette part. The same is done also for the lava cycling colors (it includes changes from #10287):

The new colors are placed in the unused part of palette (color IDs 246-253).
All engine palette conversion tables are updated to support the new colors (the values are mostly taken from their updated cycling colors in the corresponding table).

The Barrel object is also updated with the new palette colors.

TODO:

  • Add the logic for human player for the Waterhole object;
  • Add the logic for AI player for the Waterhole object.

@Districh-ru Districh-ru added this to the 1.1.12 milestone Oct 21, 2025
@Districh-ru Districh-ru self-assigned this Oct 21, 2025
@Districh-ru Districh-ru added editor Map editor related stuff new assets New game data related stuff, specific only to fheroes2 labels Oct 21, 2025
Copy link
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Clang-Tidy found issue(s) with the introduced code (1/1)

@ihhub ihhub modified the milestones: 1.1.12, 1.1.13 Nov 9, 2025
@ihhub ihhub modified the milestones: 1.1.13, 1.2.0 Dec 20, 2025
@ihhub ihhub added the high priority Very critical change needed immediately label Jan 30, 2026
@ihhub
Copy link
Owner

ihhub commented Jan 30, 2026

This is a must object for the upcoming release.

Hi @Districh-ru , do you think we can rework this pull request or would it be better to just from scratch? Also, we go updated images.

@ihhub ihhub modified the milestones: 1.2.0, 1.1.14 Jan 30, 2026
@Districh-ru
Copy link
Collaborator Author

Hi @ihhub
A little later (probably tomorrow) I'll try to resolve conflicts for this PR. If it'll be hard, I'll open a new PR.
But we should determine the logic for this object.
And also what updated images should we use?)

@ihhub
Copy link
Owner

ihhub commented Feb 1, 2026

Hi @ihhub A little later (probably tomorrow) I'll try to resolve conflicts for this PR. If it'll be hard, I'll open a new PR. But we should determine the logic for this object. And also what updated images should we use?)

Hi @Districh-ru ,

We should use images provided in this message on Discord - https://discord.com/channels/733093692860137523/1070399399127167106/1456756481612316693

I am attaching the archive here:
Waterhole close 2.zip

Copy link
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Clang-Tidy found issue(s) with the introduced code (1/1)

@Districh-ru
Copy link
Collaborator Author

Funny MSVC/clang-tidy errors:

  • clang-tidy says error: lambda capture 'waterholePartsX' is not required to be captured for this use [clang-diagnostic-unused-lambda-capture];
  • if I please Clang then MSVC says error C3493: "waterholePartsX" cannot be implicitly captured because no default capture mode has been specified
    So I used [&] to please them both.

@Districh-ru
Copy link
Collaborator Author

Districh-ru commented Feb 15, 2026

Hi @ihhub, should we also apply the underwater palette to the armies and hero?)

Current WIP:

fheroes2.2026-02-15.13-36-41-850.mp4

@ihhub
Copy link
Owner

ihhub commented Feb 16, 2026

@Districh-ru , looks way better! Let's keep the troops as it is for now. I see one big problem - the resource file has grown a lot. We might need to add compression there.

I will come back to this ticket once I finish Haunted Mines addition.

@PusshPop
Copy link

@Districh-ru Looks good! Nice to see that the random objects also came out nice. A question though, is it possible to set the background animation at 8 fps, regardless of what battlespeed one might choose?

should we also apply the underwater palette to the armies and hero?)

I would say no for the players own armies. However, it might worth experimenting with the underwater palette on attacking monsters so you can basically add all units, create a custom roster and it would make sense. The lore can be that you are now fighting monsters/mobs that have fallen overboard & drowned over the years and reanimated by the sea gods 😆.

@Districh-ru
Copy link
Collaborator Author

Sure, @PusshPop

fheroes2.2026-02-16.20-14-20-772.mp4

But now we have an issue: previously we had no (fast) background animation and now we need to make all battlefield animations (movement, attack, spell, ...) to properly render the background with its own render rate along with the animation of the action)
I'll try to fix it soon

@ihhub
Copy link
Owner

ihhub commented Feb 18, 2026

Hi @Districh-ru and @zenseii ,

I would like to hear your opinion about the name of the object: we cannot use waterhole as an object name since we already have Watering Hole object. I am suggesting one of the following:

  1. Water Chasm
  2. Ocean Rift

Please feel free to suggest different one.

@zenseii
Copy link
Collaborator

zenseii commented Feb 18, 2026

@ihhub, I gave some thought to these two suggestions and neither really fit well since it's neither a chasm nor a rift.

Then I realized we have the more violent type of whirlpool called maelstrom. In my opinion that would be better since it also sounds more fantasy-like and frightening.

@ihhub
Copy link
Owner

ihhub commented Feb 18, 2026

maelstrom

I like it.

@ihhub
Copy link
Owner

ihhub commented Feb 18, 2026

I am also inclining towards an idea to modify monster stats for the battle exclusively for this object. The reasoning is that this is literally underwater so it makes sense that Water Elementals have more advantage there. What do you think?

Repository owner deleted a comment from Alucard648 Feb 18, 2026
@Districh-ru
Copy link
Collaborator Author

I am also inclining towards an idea to modify monster stats for the battle exclusively for this object. The reasoning is that this is literally underwater so it makes sense that Water Elementals have more advantage there. What do you think?

@ihhub, we can keep monster stats, but apply some spells with very long duration time to hero's army and to the monsters. Like

  • Slow (it is hard to move and even fly under the water),
  • Stoneskin (monsters are covered with corals that made them stronger).

Doing so we'll keep the game creatures stars and logic but make this battle unique.

@Mr-Bajs
Copy link
Contributor

Mr-Bajs commented Feb 21, 2026

How about fire spells under water?

@zenseii
Copy link
Collaborator

zenseii commented Feb 21, 2026

Lots of cool ideas here. I think any one you decide on will fit. Here are some more ideas you can take or leave:
Hp Regeneration for water elementals(we)
Increased speed for we

We'd also need to decide if and how these changes should apply to we in hero's army, both hired and summoned.

I also think we don't need to limit ourselves to reusing pre-existing spells and effects, in other words, we could make a new maelstrom-specific status for these we, and this status could, or could not, ensure the changes are exclusive to the neutral we.

As a side note in case anyone brings it up, these effects don't make sense for we in the moat since there's less water or some magical explanation 🤷

@Alucard648
Copy link

Go ahead, set time limit, i. e. 6 turns. If it expires, all living troops (undead and elementals not count) are insta-killed.
"ALL YOUR LIVING TROOPS HAVE DROWNED!" - the last entry in combat log, if it happens.

@ihhub
Copy link
Owner

ihhub commented Feb 22, 2026

Let's push these changes to the next release as it still needs a lot of refinement.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

editor Map editor related stuff high priority Very critical change needed immediately new assets New game data related stuff, specific only to fheroes2

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants