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.74k stars 377 forks source link

Game settings window, opinion and suggestions regarding the options #1272

Closed LeHerosInconnu closed 2 years ago

LeHerosInconnu commented 4 years ago

I did a little study of the different options available in the "Game Settings" window. Here is my opinion and suggestions regarding these options.

Mandatory by default:

Must have:

Useful:

Bugged:

Related to Heroes 3:

These options will not be necessary in the future: These options are intended to bring difficulty to the player. I doubt they will be used by the majority of players. Also, since the AI will be improved and there will be a very difficult mode, they are not really necessary anymore.

These options should be adapted:

Related to "The Price of Loyalty" expansion. Folders and files from the expansion are necessary.

There are spelling mistakes and presentation irregularities in this window, it would be nice that a native english speaker checks this window.

I will report the bugs mentioned in this post later.

I will suggest other options to improve the gameplay and make the game more user friendly.

Edit 2020/12/25.

Managing options and user preferences with a better GUI: https://github.com/ihhub/fheroes2/discussions/2472.

idshibanov commented 4 years ago

Hi @LeHerosInconnu

Original developer of the project added a lot arbitrary changes to game logic that we're still cleaning up. This setting window is one of those things that we do not support. Main focus right now is to re-create the original game rather than spend time on enhancements.

With that context I think for 0.9 we should either remove this window altogether or remove a lot of options there. It's amazing that you tested and reviewed them since it saves us time.

In the future, around 1.0 we can go back and work on meaningful enhancements. I also think that we will need a better GUI than simple checkbox list.

If you have ideas you can add them here so they won't get lost.

LeHerosInconnu commented 4 years ago

Hello @idshibanov,

You do well to tell me that this window may be temporarily removed. I intended to report a few bugs related to the options in this window, but as the main focus for now is to re-create the original game, I will only focus on the bugs related to the differences compared to the original version of the game for now.

Count on me to add new options for "Beyond 1.0" version.

LeHerosInconnu commented 4 years ago

These options are buggy:

Sometimes the information window that indicates the player's turn is not displayed. I did not find a specific action to trigger the bug, but if a scenario in multiplayer mode two allied human players is relaunched several times by activating/deactivating the options (one at a time or both), the bug occurs.

Edit: first post updated.

LeHerosInconnu commented 4 years ago

Correction for the options concerning the add-on "The Price of Loyalty":

It is possible to test these options provided you add all the folders and files necessary for the add-on to work.

Edit: first post updated.

ihhub commented 4 years ago

Hi @LeHerosInconnu , please update your first message in this topic based on changes I made in this pull request.

LeHerosInconnu commented 4 years ago

@ihhub.

Hi @LeHerosInconnu , please update your first message in this topic based on changes I made in this pull request.

It's done.

ihhub commented 4 years ago

Hi @LeHerosInconnu , I made an extra change for these options here. You can remove both options from the list in your first message.

LeHerosInconnu commented 4 years ago

@ihhub.

Hi @LeHerosInconnu , I made an extra change for these options here. You can remove both options from the list in your first message.

It's also done.

ihhub commented 4 years ago

Good job!

LeHerosInconnu commented 4 years ago

"world: Crystal Ball also added Identify Hero and Visions spells"

Edit: This option works, but the description of this option can be confusing and should be replaced: "world: Crystal Ball temporarily inscribes the "Identify Hero" and "Visions" spells in the hero's magic book"

First post updated.

ihhub commented 4 years ago

Hi @LeHerosInconnu , I removed few other options as well here. Two of them didn't work properly and third one was impacting balance.

LeHerosInconnu commented 4 years ago

Hello @ihhub,

Hi @LeHerosInconnu , I removed few other options as well here. Two of them didn't work properly and third one was impacting balance.

I removed these options from the first post.

LeHerosInconnu commented 4 years ago

Option "heroes: allow transcribing scrolls (needs: Eye Eagle skill)".

This option has the effect of permanently inscribing the temporary spell of a spell scroll in the hero's magic book. The spell scroll is consumed during transcription.

The hero must have a certain level of the Eagle Eye skill to be able to transcribe the spell depending on the level of the spell.

Eagle Eye Basic: Spells level 1 to level 2 Eagle Eye Advanced: Spells level 1 to level 3 Eagle Eye Expert: Spells level 1 to level 5

The hero must also have the level of Wisdom skill sufficient to be able to transcribe the spell in the magic book.

No Wisdom: Spells level 1 to level 2 Wisdom Basic: Spells level 1 to level 3 Wisdom Advanced: Spells level 1 to level 4 Wisdom Expert: Spells level 1 to level 5

The transcription of the spell in the magic book also has a cost in spell points corresponding to the cost of casting the spell.

Transcribing scrolls 01

This is a very nice option.

For my part, I would adapt the level of spells authorized by the level of the Eagle Eye skill a little so that it is more in relation to the levels of the Wisdom skill:

Eagle Eye Basic: Spells level 1 to level 3 Eagle Eye Advanced: Spells level 1 to level 4 Eagle Eye Expert: Spells level 1 to level 5

There is also a small bug that I will report: https://github.com/ihhub/fheroes2/issues/1467 And also an improvement of the information windows: https://github.com/ihhub/fheroes2/issues/1468

Edit: first post updated.

Branikolog commented 4 years ago

Eagle Eye Basic: Spells level 1 to level 3 Eagle Eye Advanced: Spells level 1 to level 4 Eagle Eye Expert: Spells level 1 to level 5

In my opinion, levels of the spells that hero can learn in battle and from scrolls, should be the same for each level of secondary skill. It looks bad, when hero can learn in battle 1-2lvl spells, but can learn from scroll 1-3 having basic "Eagle Eye" skill. Also, we should add this additional info in the description of the secondary skill.

LeHerosInconnu commented 4 years ago

@Branikolog.

That's a good point.

The problem is that the Eagle Eye skill is limited to level 4 spells at most during combat.

Eagle Eye Basic: Spells level 1 to level 2 Eagle Eye Advanced: Spells level 1 to level 3 Eagle Eye Expert: Spells level 1 to level 4

When the ability to transcribe a spell was designed, the creator simply increased the level of the Eagle Eye Expert skill from level 4 spells during combat to level 5 spells for transcription so that the level 5 spells could be transcribed.

This is what makes the option a bit "wobbly" in its use.

Based on this principle, if the Expert level of the Eagle Eye skill has been increased by 1 level for the level of spells (it has gone from the value 4 to the value 5), the other mastery levels of the Eagle Eye skill must be increased of the same value.

We can also consider that it is more difficult to use the Eagle Eye skill during combat because the learned spells come from the opponent. While the transcription of the spells comes from the hero himself, hence the possibility of using the Eagle Eye skill with 1 higher level for spells for each level of expertise of the Eagle Eye skill.

Also, we should add this additional info in the description of the secondary skill.

Yes, absolutely. :)

Branikolog commented 4 years ago

Yes, absolutely. :)

So, if we have to describe different spell levels for transcribing scrolls, the whole skill description will become too large. I don't like, when there's lots of text in description. Looks bad. Hard to read and recognize information.

The problem is that the Eagle Eye skill is limited to level 4 spells at most during combat.

Why can't we limit scroll transcribing on the same level too?

LeHerosInconnu commented 4 years ago

@Branikolog.

Yes, absolutely. :)

So, if we have to describe different spell levels for transcribing scrolls, the whole skill description will become too large. I don't like, when there's lots of text in description. Looks bad. Hard to read and recognize information.

No need to write a novel, the simple sentence "Allows you to transcribe 1st to 3rd level spells from spell scrolls into your magic book." should be sufficient. :)

The problem is that the Eagle Eye skill is limited to level 4 spells at most during combat.

Why can't we limit scroll transcribing on the same level too?

Because it will bring frustration to the player. The main appeal of playing a video game is to have fun playing the game, not to have frustration.

For the limitation of spell level during combat, that's understandable. The player must deploy time and skill to obtain level 5 spells and sometimes even build several mage guilds to obtain the desired spell. If it was easy to learn level 5 spells during a combat, the human player would just wait for AI players to build mage guilds to get the spells, which would break the design of the game a bit. Not to mention that when the player plays the scenarios in "Impossible" difficulty mode, it is even more difficult to build level 5 mage guilds.

For the spell scrolls, the hero can already use the spells, the transcription just registers the spell permanently in the hero's magic book and frees a slot in the hero's inventory. It doesn't break the design of the game in any way and I would even say that it fixes the flaw of being encumbered by multiple spell scrolls after defeating an opposing hero.

Now all that remains is to teach the AI ​​to use this possibility intelligently. No need to "grill" a level 5 spell scroll if the hero already has the spell, the AI ​​must give the spell scroll to another of his heroes who can use the spell with all its effectiveness. :D

Branikolog commented 4 years ago

Well, I want to see this option with some limitations: not all scrolls can be learned. Let's leave the most valuable 5th level scrolls as they are. Let players exchange them. Win in a battle. Let this scroll fill a space in inventory, if you still want to use 5th level spell.

LeHerosInconnu commented 4 years ago

@Branikolog.

Well, I want to see this option with some limitations: not all scrolls can be learned. Let's leave the most valuable 5th level scrolls as they are. Let players exchange them. Win in a battle. Let this scroll fill a space in inventory, if you still want to use 5th level spell.

Why activate a fun option and then want to restrict it? :)

Or a settings file for the option to allow/prohibit certain spell scrolls should also be available to provide maximum flexibility to users.

Branikolog commented 4 years ago

Why activate a fun option and then want to restrict it? :)

We are not talking about deliberate restrictions, but about in-game balance. If authors decided to make a hero with "eagle eye" skill not recognize 5th level spells (admitting it in such way especially rare and valuable) they probably assume player should learn them only in Guild or having special artifact, but not somewhere during other activities. They even haven't made a special 5 tier shrine for 5th level spells. (If i'm not mistaken) So let's leave 5th level spells like something ultra valuable and unattainable for the most of cases. Also, I don't like "eagle eye" skill having different values for studying spells. Players always would be in a mess. "What level can they learn by advanced skill? 3? And what scrolls? 4?" It should be simple: the same level of the skill for the same level of spells, no matter, how player would try to learn it: in a battle or by scroll. That's my opinion for this nice skill improvement. We also should ask other members of the project.)

Addition: Also we can try to improve "Eagle Eye" skill in other way. I've heard lots of ideas in different resources and we even have such option in CONFIG menu: add scrolar effect for this skill. Originally, "Eagle Eye" skill was intended to expand the cases for a hero to learn new spells. So my proposal is to make it like "scolar" skill from HoMM3, but only in one way manner. If hero has this skill - only HE can learn spells from other allied heroes' books, that he met on his way, using his sharp eagle eye.

LeHerosInconnu commented 4 years ago

@Branikolog.

We are not talking about deliberate restrictions, but about in-game balance.

The balance of the game is absolutely not changed since in any way the hero can already use the spell contained in the spell scroll.

They even haven't made a special 5 tier shrine for 5th level spells. (If i'm not mistaken)

The pyramid can be thought of as a kind of a shrine with single use. :)

So let's leave 5th level spells like something ultra valuable and unattainable for the most of cases.

Spell scrolls containing a level 5 spell will not appear miraculously on the adventure map, it is the scenario creator who will place them on the adventure map. The fact that the hero can transcribe in his magic book a level 5 spell, which he already has, will not change the fact that he must first obtain the famous spell scroll containing the spell.

Also, I don't like "eagle eye" skill having different values for studying spells. Players always be in a mess. "What level can they learn by advanced skill? 3? And what scrolls? 4?" It should be simple: the same level of the skill for the same level of spells, no matter, how player would try to learn it: in a battle or by scroll.

It seems simple to me.

During combat: Basic: spells level 1 to 2 Advanced: spells level 1 to 3 Expert: spells level 1 to 4

Transcribe the spell, with the required level of Wisdom: Basic: spells level 1 to 3 Advanced: spells level 1 to 4 Expert: spells 1 to 5 The same level ​​for spells with the same expertise as for the Wisdom skill.

Very easy to understand.

Also we can try to improve "Eagle Eye" skill in other way.

I also have some tweaks and enhancements that are already planned to improve the Eagle Eye skill. ;)

we even have such option in CONFIG menu: add scrolar effect for this skill. Originally, this skill was intended to expand the cases for a hero to learn new spells.

I also have a secondary skill suggestion that does the same thing, among other things.

So my proposal is to make it work only in one way manner. If hero has this skill - only HE can learn spells from other alied heroes' books, that he met on his way, using his sharp eagle eye.

There may also be a settings file for the option that allows the user to choose how the Eagle Eye skill works.

ihhub commented 4 years ago

Hi @LeHerosInconnu , I removed game: show SDL logo option.

LeHerosInconnu commented 4 years ago

Hello @ihhub,

Hi @LeHerosInconnu , I removed game: show SDL logo option.

I removed this option from the first post. Edit: And updated the first post with small precisions from following posts.

ihhub commented 4 years ago

Hi @LeHerosInconnu, I've removed "castle: allow recruits special/expansion heroes" option as it was really imbalanced. Imagine having a Level 1 hero with Spell Power 4 and Knowledge 5 at a normal multiplayer map.

LeHerosInconnu commented 4 years ago

Hello @ihhub,

Hi @LeHerosInconnu, I've removed "castle: allow recruits special/expansion heroes" option as it was really imbalanced. Imagine having a Level 1 hero with Spell Power 4 and Knowledge 5 at a normal multiplayer map.

I removed this option from the first post.

ihhub commented 4 years ago

Hi @LeHerosInconnu , we've removed "world: save count monster after battle" option.

LeHerosInconnu commented 4 years ago

Hello @ihhub,

Hi @LeHerosInconnu , we've removed "world: save count monster after battle" option.

I removed this option from the first post.

ihhub commented 4 years ago

Hi @LeHerosInconnu , could you please remove "heroes: allow pickup objects for patrol" option as it's not used anywhere anymore after AI changes?

LeHerosInconnu commented 4 years ago

Hello @ihhub,

Hi @LeHerosInconnu , could you please remove "heroes: allow pickup objects for patrol" option as it's not used anywhere anymore after AI changes?

I removed this option from the first post.

ihhub commented 3 years ago

Hi @LeHerosInconnu , we recently updated game: show info system option to show current time and FPS value. Now this option is more valuable.

LeHerosInconnu commented 3 years ago

@ihhub.

Hi @LeHerosInconnu , we recently updated game: show info system option to show current time and FPS value. Now this option is more valuable.

I modified the first post accordingly.

ihhub commented 3 years ago

Hi @LeHerosInconnu , I removed these options since they don't work:

LeHerosInconnu commented 3 years ago

Hello @ihhub,

Hi @LeHerosInconnu , I removed these options since they don't work:

  • hero: allow banned sec. skills upgrade
  • battle: high objects are an obstacle for archers

First post updated.

ihhub commented 3 years ago

Hi @LeHerosInconnu , few buggy options were removed from the code:

Could you please update the original post in this issue?

LeHerosInconnu commented 3 years ago

Hello @ihhub,

Hi @LeHerosInconnu , few buggy options were removed from the code:

  • "heroes: surrendering gives some experience"
  • "heroes: recalculate movement points after creatures movement"

Could you please update the original post in this issue?

First post updated.

ihhub commented 3 years ago

Hi @LeHerosInconnu and @Branikolog , I'm thinking that we should make heroes: in Arena can choose any of primary skills option by default and remove it completely since the original game might just contain the bug. What do you think?

LeHerosInconnu commented 3 years ago

Hello @ihhub,

Hi @LeHerosInconnu and @Branikolog , I'm thinking that we should make heroes: in Arena can choose any of primary skills option by default and remove it completely since the original game might just contain the bug. What do you think?

I agree with that. It doesn't change the original gameplay and the player can simply ignore the Knowledge choice.

Branikolog commented 3 years ago

Hi, @ihhub Well... On one hand, developers of the OG could consider knowledge as ultimate primary attribute and they didn't want players to excessively rise this important skill. On the other hand, I'm 101% sure no one would even notice that, as receiving each type of primary skill is quite expectable from this type of object. So, my word: This will have an influence on original gameplay. But I don't mind if it really appears there.

LeHerosInconnu commented 3 years ago

Hello @ihhub,

I've edited the original post and added some remarks for the options that could be removed and those possibly integrated with a direct access with a keyboard key.

Regarding the Morale and Luck artifacts option, it has been completely removed. Is this temporary? I think the ability to cumulate the effects of multiple copies of the same Morale and Luck artifact is a good option in my opinion because it reduces micromanagement between heroes and reduces the frustration of having artifacts taking up space for nothing. Personally, I was using this option. :)

ihhub commented 3 years ago

Hi @LeHerosInconnu , to keep AI development going on we have to limit the number of these options as every such option adds more complexity for AI logic. For now this option is removed completely. We'll review all these options once we have stable logic and AI.

BlkSwnNoir commented 2 years ago

Not sure that this is the proper place still

Similar to HOMM3, optional setting to auto bypass "One or more hero may still move..."

image

zenseii commented 2 years ago

Not sure that this is the proper place still

Similar to HOMM3, optional setting to auto bypass "One or more hero may still move..."

Personally I would prefer a key to make a hero "sleep" so that you wouldn't get reminded of that specific hero. Also until 1.0 as a rule there won't be added any more experimental options, and beyond that I believe the plan is to keep options as few as possible.

LeHerosInconnu commented 2 years ago

Hello @BlkSwnNoir and @zenseii,

Not sure that this is the proper place still Similar to HOMM3, optional setting to auto bypass "One or more hero may still move..."

Personally I would prefer a key to make a hero "sleep" so that you wouldn't get reminded of that specific hero. Also until 1.0 as a rule there won't be added any more experimental options, and beyond that I believe the plan is to keep options as few as possible.

In fheroes2, it is already possible to change the state of the hero to "sleeping" with the "z" key on the keyboard. In this state the hero is ignored when the user uses the buttons "Next Hero" and "End turn".

Related discussion: https://github.com/ihhub/fheroes2/discussions/4763.

zenseii commented 2 years ago

Hello @BlkSwnNoir and @zenseii,

Not sure that this is the proper place still Similar to HOMM3, optional setting to auto bypass "One or more hero may still move..."

Personally I would prefer a key to make a hero "sleep" so that you wouldn't get reminded of that specific hero. Also until 1.0 as a rule there won't be added any more experimental options, and beyond that I believe the plan is to keep options as few as possible.

In fheroes2, it is already possible to change the state of the hero to "sleeping" with the "z" key on the keyboard. In this state the hero is ignored when the user uses the buttons "Next Hero" and "End turn".

Related discussion: #4763.

Thanks! Every day I learn something new! In that case I don't think an option to disable this reminder all together is necessary. If someone cares that much it shouldn't be hard to disable in the source code, in my opinion. Most HOMM games don't let you disable it anyway, but they do have that sleep function.