Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
(+1)

Wow!  This is surprisingly addictive.  I haven't gotten too far, but diagonal movement is definitely key here.  I'm interested in the pathfinding mechanics.  It looks like the player path to the exit is pretty straightforward, but how are you determining the other characters?  Is it based upon where they start in the level?

My high score: 38 points after 8 races.

Thank you for playing my game and providing your score! :-)

I just created a High-Score-Table in my game-description and added your name to it.

The pathfinding of the navigation system as well as that of all the opponents is done with the A* algorithm of rot.js using a topology of 4, which allows only orthagonal movement. So if the player just strictly follows his navigation system, he will not be able to overtake anyone. 

But you are right, the diversity of the paths is mainly achieved by a variation of the starting locations of all characters. The player always starts at the very west of the level (y-coordinate is randomized).  Runner H starts a few steps to the east compared to the player (y-coordinate is also randomized) giving him a small advantage since the goal is always in the very east of the level (y-coordinate is also randomized). Runner G starts a even more in the east and so on. So the runner with the best starting position should be runner A in most cases. Since the dungeon and the y-positions are all randomized the starting position of player A is not always the best and that of the player is not always the worst, it is just a tendency.

Another mechanism to achieve route-diversity is confusion. Runners get sometimes confused if others in front of them are using the same path. In this case a new path is calculated trying to avoid the paths of the runners in front of the confused runner.

Deleted 306 days ago
Deleted 306 days ago
Deleted 306 days ago
Deleted 306 days ago
Deleted 250 days ago

Hello shaddockh, version v0.8 is out!
Click here to see what is new.