Tag Info

Hot answers tagged

10

Script one (or two or three) bouncing paths for the ball to follow. Adjust the rotation of your wheel model to cause the correct slot to land underneath the ball's final destination. A bouncing path: construct complex animations made from many small movements of the ball over time, such that it appears to be natural physical motion around the structure of ...


6

Disclaimer: This answer is based on the book Artificial Intelligence for Games by Millington and Funge. You should take a look at it for details, and implementations notes at AI4G.com and it's aimed to give readers the general idea trying to avoid copyright infringement. I'm going to answer in reverse order because I think that's the level of difficulty. ...


3

If you mean that you want the direction for the enemies to face so that they're looking at the player's car, it's literally just maths. You need to calculate the vector between the enemy and the player, and then normalise it so it's a direction. Code example: Vector3 direction = Vector3.Normalise(player.position - enemy.position);


3

The problem is that "good" is always a relative term. Good compared to what? To evaluate the strength of a game AI you need to compare it to other players by letting it play against them. These players can either be humans or other game AIs which were developed independently. And even then you have only proven that it is good at countering the strategies ...


2

Calculate the path in background, and then change the numbers when you render it. Calculate a path based on random parameters, but do this invisible to the player. You now know on which field the ball will land. Then you render it visible, but before you do that you rotate the texture of the roulette wheel so that the field where the ball will land shows ...


2

the Monte Carlo Tree Search (MCTS) is applicable but not very good in this case, as the opponents actors are not "random" but will choose the best move they can. However, if you choose to use MCTS you have to copy the current game state for simulation... loop through all possible moves m in that state A. For N times do... Setup simulation-copy to ...


2

I think i could generate all possible states for one game tick, but with four players and 5 basic actions (4 moves and bomb place) it gives 5^4 states at first level of the game tree. Correct! You need to search all 5^4 (or even 6^4, as you can walk in 4 directions, stop and "put a bomb"?) actions for each game tick. BUT, when a player already decided ...


2

Your question, in essence: "Can I rate something without a point of reference?" No, you cannot. The game has to be played a certain number of times before you have any reference point at all. Once a certain number of games has been played given one set of AI parameters, you can then, from a human standpoint, gauge the difficulty. And of course you need ...


1

The A-* algorithm requires hat the set of possible agent locations be discrete, not continuous, and that there be a connectivity relation between the set of possible locations, called nodes. A well-written A-* algorithm will not require any particular storage choice for the nodes and the connectivity, but will use Inversion of Control to obtain the ...


1

You can't "avoid" dead ends. Without looking forward, you'll not know its a dead end... I guess you just don't want your exploring vehicle / person / whatever to stop when a dead end is reached, right? So, I suppose that the "avoid dead ends" rule is meant as "if possible". I assume you want to develop some kind of strategy game, where one needs to first ...


1

A flood fill algorithm might be what you are looking for: http://en.wikipedia.org/wiki/Flood_fill This particular algorithm could provide your AI with a "map" of coordinates it would be allowed to travel to. Given the proper instructions, your customized flood fill algorithm would fill based on the rules of your gameboard. If you are looking for a ...


1

Do you evade in the sense of "to flee" or "to (non-)cooperatively walk around each other"? The answer to both questions is quite easy: 1) To let A flee away from B... let move A in the direct opposite direction of B relative to A. Which means: The direction vector should be Position(B) - Position(A). You'll then need to calculate the angle from this Vector ...



Only top voted, non community-wiki answers of a minimum length are eligible