Anuken / Mindustry-Suggestions

Repository for Mindustry suggestions and feedback
131 stars 58 forks source link

Random enemy attack #3361

Closed slavjane2109 closed 2 years ago

slavjane2109 commented 2 years ago

Describe the content or mechanics you are proposing.

I've been watching your game for a very long time! She's brilliant! I am sure that the game lacks the intelligence of the opponent's bots. They always move linearly. And the defense is built predictably. It's very boring. It would be great if they moved to the core in a random direction, each bot on its own path. Then it would be much more interesting and difficult. Then we would have to build defenses in all directions! That would be cool! It's very boring to play with stupid bots.

Describe how you think this content will improve the game. If you're proposing new content, mention how it may add more gameplay options or how it will fill a new niche.

It will add dynamics to the game! The game will become much more interesting and more difficult. I think this is the most important thing in your game

Before making this issue, check the boxes below to confirm that you have acknowledged them.

oinkymoo commented 2 years ago

they find the fastest route based on certain algorithms. also do you have any idea how many routes there are. even diverging by a single block and rejoining the group adds hundreds of new paths. this is computationally infeasible and doing that would make them dumber

slavjane2109 commented 2 years ago

I hope that the creator of such a thoughtful game will not find it difficult to come up with an algorithm for the behavior of bots. For example, when bots appear, you can set each random point on the map when approaching this point, they begin to change direction to the core. Of course, this is not ideal, but it is definitely better than a linear algorithm for finding the nearest path

Ruichka commented 2 years ago

You can't just simply do and perform such difficult pathfinding. Finding the best path already takes some power, especially when calculating it for all units.

Adding such additional complexity (how much units gotta go here, how much here, is it even going to be any good to split the groups, etc) is going to be very hard to implement and consume a decent amount of computer resources.

itcannotbe commented 2 years ago

~Computer screaming as 1000 units does a* every second.~

itcannotbe commented 2 years ago

I hope that the creator of such a thoughtful game will not find it difficult to come up with an algorithm for the behavior of bots. For example, when bots appear, you can set each random point on the map when approaching this point, they begin to change direction to the core. Of course, this is not ideal, but it is definitely better than a linear algorithm for finding the nearest path

You have little knowledge on how the game works.

slavjane2109 commented 2 years ago

It is not necessary for each bot separately. You can divide the war into groups, each group has its own algorithm. Anyway, this issue needs to be solved somehow in the game. Otherwise, interest in the passage of the company is lost. Too primitive and predictable. I build fences and form the way for bots myself, knowing in advance where to build defenses. There must be another option

itcannotbe commented 2 years ago

It is not necessary for each bot separately. You can divide the war into groups, each group has its own algorithm. Anyway, this issue needs to be solved somehow in the game. Otherwise, interest in the passage of the company is lost. Too primitive and predictable. I build fences and form the way for bots myself, knowing in advance where to build defenses. There must be another option

How do you think multiple spawn points work?

slavjane2109 commented 2 years ago

Do you want to say that such a game will remain until the release of the full version? Then the game is doomed to failure and a small audience of players. The whole interest of this game will remain only in the extraction of resources. Yes, it's cool implemented, but it gets boring quickly. After all, in many strategies there is artificial intelligence that forces the player to adapt to his actions, and the more random they are, the more interesting the game is. I admit that I do not understand the intricacies of programming, but the strategy genre itself has existed for a long time and there is something to compare it with. I live in Russia and write through a translator, sorry if something is not clear. I am 31 years old and I give an account of my actions, so that you would not think that some stupid schoolboy raised this topic. I really love this genre of games and when you play for a long time, you immediately notice what can make this game perfect

slavjane2109 commented 2 years ago

I really love this genre of games and when you play for a long time, you immediately notice what can make this game perfect

NrkSed commented 2 years ago

Finding the best path already takes some power, especially when calculating it for all units.

Irrelevant to the suggestion, but No, it calculates 4 routes based on quite a few factors and makes all units go there(1 for ground 1 for air 1 for naval and 1 for units which can step over terrain) and constantly checks if there is a better route (in case if the player builds walls or removes them). There is no need to calculate hundreds of paths for each specific unit when there is only one path each branch of unit follows.

stuffyAI commented 2 years ago

it calculates 4 routes based

Yes, something like that, but kinda not. Mindustry uses flow fields for unit movement, Units themselves only know how to move straight (observed when using logic or rallying units), and ground/naval units use information in blocks and tiles which directs them to their destination.

Basically, if my unit wants to move to point A, it asks the tile/block it is currently on which way it has to go for the fastest route. This has the huge advantage that it has extreme performance savings, those crucial for mobile devices, as placing one block only causes to calculate up to 29 'tile directions' * 'the amount of possible targets' instead every possible route leading close to A. The disadvantage is the obvious lack of non-target routes, because flow fields are only set for cores.

Regardless, I do not feel that changing that for enemies makes any sense at all, adding difficulty through RNG should be a last resort.

oinkymoo commented 2 years ago

I hope that the creator of such a thoughtful game will not find it difficult to come up with an algorithm for the behavior of bots. For example, when bots appear, you can set each random point on the map when approaching this point, they begin to change direction to the core. Of course, this is not ideal, but it is definitely better than a linear algorithm for finding the nearest path

Pathfinding is already hard enough as-is, just going from anywhere to a few unchanging destinations. Navigating from anywhere to anywhere would take far too long.

github-actions[bot] commented 2 years ago

This suggestion is now stale, and will be automatically closed.