Skip to content
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

Barons don't fight each other #28

Open
shockups70 opened this issue Sep 29, 2022 · 8 comments
Open

Barons don't fight each other #28

shockups70 opened this issue Sep 29, 2022 · 8 comments
Labels
enhancement New feature or request

Comments

@shockups70
Copy link

I played on hard, loose, large map and the game ended in a 'stalemate' because the highest level units would not engage witg each other. The other game allowed you to fight other 'barons' under certain conditions.

@Sesu8642
Copy link
Owner

Thanks for your input. Do you know how that works exactly?

@Sesu8642 Sesu8642 added the enhancement New feature or request label Sep 29, 2022
@shockups70
Copy link
Author

shockups70 commented Sep 29, 2022 via email

@Sesu8642
Copy link
Owner

Interesting. I try to replicate the original game mechanics pretty closely. But I don't actually own the original game :D
I guess the easiest way would be to make an attacking baron stronger than a defending one.

@d-albrecht
Copy link

d-albrecht commented Oct 2, 2022

I saw videos of the original game (haven't played it yet either) where the player commented that a stalemate could be possible in a specific situation, hence I'm not sure if you really could defeat units of the same strength. And if this was a thing, why would this only work with barons, shouldn't the same be true for all other units as well? I feel like introducing exceptions to the rule just to prevent a stalemate is a poor design decision. If you happen to end up in a situation where no side can conquer the other, then this is one type of valid outcome to a match. Either this map seed just plainly isn't winnable, or you used the wrong strategy.

If levels of this game where pre-selected and vetted for being winnable, then you could ask for insights for how the game is winnable, but in a purely random generated seed it is just the reality that some matches will not be winnable and that's fine. And a few will end up in a stalemate.

And if this depends on the distance then no AI will give you a chance to come close enough to beat their baron, so you wouldn't prevent stalemates either.

I agree that it could be possible to define a general rule that would let you take tiles that are protected by some unit (meaning neighboring tiles, not the tile with the unit itself) with units of the same strength under specific circumstances, but as I said, this should be a rule that applied to every level of strength and was well-documented in the tutorial.

@Sesu8642
Copy link
Owner

Sesu8642 commented Oct 2, 2022

@d-albrecht interesting perspective on stalement/tie being a valid outcome. Maybe there should be a message box when it happens. But then I would need to detect it which is difficult because the situation can be resolved by one player moving their baron. It's not that important for singleplayer but could be something that needs to be handled when multiplayer happens.

@d-albrecht
Copy link

Well, in multi-player matches this should probably just come down to one player suggesting a draw (like in chess). And for single-player matches against AIs, there would be a lot to consider in order to detect a stalemate, so again, it's way easier if the human player just manually ends the match at some point. Or you could use similar rules like in chess, if both players (because in a stalemate you usually have only two players left; in general) don't move their units for a bunch of turns or only recreate the same set of positions, then the game could just detect that.

So, I would suggest: Don't bother with detecting actual stalemates, instead consider using general rules like in chess to end games with (a) the same position happening too often or (b) some amount of turns without changes in tile-ownership. This would work well in both single-player and multi-player mode and would force movement of any kind. Otherwise, I would rely on the human players to be "mature" enough to resign / offer a draw if an apparent stalemate happens.

@jmdejong
Copy link

jmdejong commented Nov 7, 2022

Maybe a stalemate can be solve with an even stronger unit with a higher cost. Currently the stalemate is possible because it is possible for at least 2 players to have a baron in the field and still have a positive income. If the strongest unit has a cost that is larger than half the maximum number of tiles in the map then no 2 of that unit can stay in the game indefinitely and therefore no stalemate can occur

@d-albrecht
Copy link

I can see the logic behind that suggestion but I'm not sure that this would actually improve the game in general. First of:

it is possible for at least 2 players to have a baron in the field and still have a positive income

that hugely depends on the board size. So, all further argumentation would necessarily be tied to specific board sizes if that is the argument you want to make. Or in other words: differently sized games would offer a different number of units / unit upgrades. Given that each unit type needs a sprite, I'm not a fan of offering arbitrary number of units just to break a tie. But you are right that at least for extremely large boards, "only" having Barons can lead to more stalemates quickly. Even three-way stalemates.

Furthermore, it's a principle of this game that creating strong units is rather cheap (only 10 money per strength level), but sustaining them is getting more and more expensive (each level costs three times as much as the previous). Still, Barons are the first were the salary is higher than their cost. And if you aren't able to sustain the unit even one turn, then sure it will die, but you will never have to pay it's high salary. So, this game design - in my eyes - needs an upper bound / a cap of some sort. If upgrading would be the expensive part and sustaining was "relatively" cheap, I'd argue that then having more levels of strength could be an interesting idea. But promoting a play style where you upgrade the units just to have them die, feels odd to me. And if your opponent plays strategically, then you need two stronger units at least. Then it just becomes a game of who has the necessary money to overrun the opponent first. And if it more advisable to wait until you can create three or four stronger units to cut off another tile(s), or just two to move the border. And if both players have roughly the same income, the border will just be moved back and forth several times.

TL;DR: Given that extremely large map sizes were added, we probably could benefit from a stronger unit but I would be very careful with removing the strength cap entirely. And given that the AI loves to create unsustainable units all the time (in my experience at least), adding stronger units can quickly worsen the quality of the existing AIs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants