ihhub / fheroes2

fheroes2 is a recreation of Heroes of Might and Magic II game engine.
https://ihhub.github.io/fheroes2/
GNU General Public License v2.0
2.58k stars 359 forks source link

Animation of heroes' movement and "wait" (or "busy") mouse cursor #1266

Open LeHerosInconnu opened 3 years ago

LeHerosInconnu commented 3 years ago

In fheroes2, the mouse cursor "wait" (or "busy") is displayed during the human player heroes movement animation and during the AI players heroes movement animation. In the original game this is not the case, there is never a mouse cursor displayed during the human player heroes movement animation. The "wait" mouse cursor may be displayed briefly during the AI players' turn, but never during the animation of their heroes moving around the adventure map.

Animation of heroes' movement and wait (or busy) mouse cursor 01

ihhub commented 1 year ago

Hi @LeHerosInconnu , I created an alternative solution: we will show a pointer cursor during movement because showing a horse/boat cursor is also incorrect since a player can move to areas which aren't actually accessible by the hero.

LeHerosInconnu commented 1 year ago

Hello @ihhub,

Hi @LeHerosInconnu , I created an alternative solution: we will show a pointer cursor during movement because showing a horse/boat cursor is also incorrect since a player can move to areas which aren't actually accessible by the hero.

In the original game, there is no cursor displayed at all during the movement animations of the human or AI player heroes. The "busy" cursor appears sometimes briefly, for example during the autosave file saving operation, but never during the heroes' animations on the adventure map.

In original game:

https://user-images.githubusercontent.com/43583994/190420500-883bb768-7566-4785-ae2b-3da7a5521956.mp4

The "busy" cursor briefly displayed: vlcsnap-2022-09-15-15h41m20s163 cercle rouge

ihhub commented 1 year ago

Hi @LeHerosInconnu , in #5838 @oleg-derevenetz expressed a valid point why we need not to change what we have right now. Also you refer to DOS version of the game. I tested with Windows version today and it was showing a cursor during hero movement which was the last horse / boat icon before starting the travel.

I also think that wait cursor has no harm being used and it is natural to see it from new players' perspective. I will still keep this issue open but reclassify it as an improvement.

LeHerosInconnu commented 1 year ago

@ihhub.

Hi @LeHerosInconnu , in #5838 @oleg-derevenetz expressed a valid point why we need not to change what we have right now. Also you refer to DOS version of the game. I tested with Windows version today and it was showing a cursor during hero movement which was the last horse / boat icon before starting the travel.

I also think that wait cursor has no harm being used and it is natural to see it from new players' perspective. I will still keep this issue open but reclassify it as an improvement.

No, I'm talking about the Windows versions. Whether it is the Windows 1.3 version, the Windows 2.1 version, the Windows Gold 2.1 version or the Windows GOG 2.1 version, the cursor does not appear during the heroes' animations on the adventure map. I have always used the Windows versions to play Heroes of Might and Magic 2. I just briefly used the DOS version on Windows 95 to see if there was a difference, but since the Windows version worked well, that's the one I used for Windows 95, Windows XP, and now Windows 7 SP1 64 bits.

So for me, seeing the cursor appear while the heroes are moving on the adventure map is not natural, and it spoils the quality of the animations with this cursor generaly right in the middle area of the screen.

Moreover, under Windows, when the game is in windowed mode, the cursor appears as soon as it leaves the game window (and disappears as soon as it enters it), so the user knows where the cursor is, outside or inside the game window.

And also who does something else while playing Heroes of Might and Magic 2? No, no, no, not a truly REAL Heroes 2 player. :rofl:

oleg-derevenetz commented 1 year ago

Moreover, under Windows, when the game is in windowed mode, the cursor appears as soon as it leaves the game window (and disappears as soon as it enters it), so the user knows where the cursor is, outside or inside the game window.

Nope, there is a difference between "I don't see where the cursor is, but it should be here" and "the cursor is inside the game window". In the first case, it's merely speculative, and often you may need to perform extra actions (for example, move the mouse outside the game window and then back inside) to make sure if you were distracted. In the second case, you just see it directly. What was suitable for the DOS game is not very suitable for the game that should work on modern multi-window platforms.

Branikolog commented 1 year ago

Hi all. My 50 cent. I agree with @ihhub and @oleg-derevenetz. Visible cursor is a more proper way for me. Also, the game supports higher resolutions, so making cursor invisible may confuse players and make them miss cursor on a large gameplay area while it disappears. :)

LeHerosInconnu commented 1 year ago

Hello @ihhub, @oleg-derevenetz and @Branikolog,

@ihhub.

... Also you refer to DOS version of the game. I tested with Windows version today and it was showing a cursor during hero movement which was the last horse / boat icon before starting the travel.

I also think that wait cursor has no harm being used and it is natural to see it from new players' perspective. I will still keep this issue open but reclassify it as an improvement.

No, I'm talking about the Windows versions. Whether it is the Windows 1.3 version, the Windows 2.1 version, the Windows Gold 2.1 version or the Windows GOG 2.1 version, the cursor does not appear during the heroes' animations on the adventure map. I have always used the Windows versions to play Heroes of Might and Magic 2. I just briefly used the DOS version on Windows 95 to see if there was a difference, but since the Windows version worked well, that's the one I used for Windows 95, Windows XP, and now Windows 7 SP1 64 bits.

So for me, seeing the cursor appear while the heroes are moving on the adventure map is not natural, and it spoils the quality of the animations with this cursor generaly right in the middle area of the screen.

If you look closely, you can see the Windows menu bar "File Display Help" on any of my "In original Game:" screenshots. :)

Moreover, under Windows, when the game is in windowed mode, the cursor appears as soon as it leaves the game window (and disappears as soon as it enters it), so the user knows where the cursor is, outside or inside the game window.

Nope, there is a difference between "I don't see where the cursor is, but it should be here" and "the cursor is inside the game window". In the first case, it's merely speculative, and often you may need to perform extra actions (for example, move the mouse outside the game window and then back inside) to make sure if you were distracted. In the second case, you just see it directly. What was suitable for the DOS game is not very suitable for the game that should work on modern multi-window platforms.

Heroes of Might and Magic 2 is not a "DOS game" per se. The game was released for Windows 95 and for DOS simultaneously. On the front cover of the game box, it's the "Microsoft Windows 95" version that is highlighted.

United States: https://www.mobygames.com/game/dos/heroes-of-might-and-magic-ii-the-succession-wars/cover-art/gameCoverId,3355/ Germany: https://www.mobygames.com/game/windows/heroes-of-might-and-magic-ii-the-succession-wars/cover-art/gameCoverId,242770/ France: https://www.mobygames.com/game/windows/heroes-of-might-and-magic-ii-the-succession-wars/cover-art/gameCoverId,664526/

Hi all. My 50 cent. I agree with @ihhub and @oleg-derevenetz. Visible cursor is a more proper way for me. Also, the game supports higher resolutions, so making cursor invisible may confuse players and make them miss cursor on a large gameplay area while it disappears. :)

In this case, I think the user should be able to choose this with a setting. Either he prefers the way the original game works, without cursor displayed during the hero animations on the adventure map. Or he prefers that the "busy" cursor is displayed during the hero animations on the adventure map.

In original game: Without cursor displayed during the hero animations on the adventure map:

https://user-images.githubusercontent.com/43583994/190420500-883bb768-7566-4785-ae2b-3da7a5521956.mp4

In fheroes2: With the "busy" cursor displayed during the hero animations on the adventure map:

https://user-images.githubusercontent.com/43583994/190623207-b866f86b-c3a1-486c-a2b4-e46642eeccab.mp4

For my part, I prefer the version without cursor displayed during the hero animations on the adventure map, more beautiful from a game aesthetics point of view.

felix642 commented 1 year ago

Hi @ihhub @LeHerosInconnu, how do we want to handle this issue?

I suppose that we want to add a new option to display or not the cursor during the hero's animations? If so, where do we want to add this option?

Do we want to add it to the "experimental section" or do we want to add it to the official settings menu with an icon? I assume we should add a second page to that menu?

LeHerosInconnu commented 1 year ago

Hello @felix642 and @ihhub,

Hi @ihhub @LeHerosInconnu, how do we want to handle this issue?

I suppose that we want to add a new option to display or not the cursor during the hero's animations? If so, where do we want to add this option?

Do we want to add it to the "experimental section" or do we want to add it to the official settings menu with an icon? I assume we should add a second page to that menu?

This could be integrated into the "fheroes2.cfg" file first before being integrated into a sub menu of the "Mouse Cursor" in the same way as for the "Audio Settings". With the default mode of the original game, which means that the "busy" cursor is not visible during the heroes' animation on the adventure map.

In fheroes2:

https://user-images.githubusercontent.com/43583994/200579265-ada32eb9-2359-4866-8878-02a9f6bc640e.mp4