This was another project I started in MonoGame. The goal was to make a gigantic grid-based 2D game. I don’t remember many other specifics, but the basic premise of the project was pretty ambitious.
The basic camera code and grid generation code were the first things i completed.
Once i had a simple grid generated, i wanted to take it a step further and create a grid of grids.
The grid became an 8×8 2D array of chunks which are 256×256 tiles. At most, there were 4 chunks active (within camera view). All other tiles were considered inactive until the camera moved within their visible range.
The tiles were colored to show where chunks begin and end.
After getting the grid generation sorted out, i doubled the size of the tiles and added a cursor (the white square). I also implemented some basic selection code. In this example, i could turn a tile yellow by clicking it.
In the top left corner i placed a basic player pawn entity as well.
Next I started work on my pathfinding for actor entities.
When you select an actor then click a tile, it runs a pathfinding function which computes a path to the tile (in the form of a queue consisting of tile objects). Then the actor starts de-queuing each tile and transitioning from tile to tile until it empties the queue. If a tile becomes impossible to traverse, then the actor will stop and re-call the pathfinding function, rebuilding the queue of tiles.
At this point i had also added an asynchronous load screen since generating all the world tiles took a bit of time.
This is where this project hit a dead end. In this case it was just a lack of direction.