• Update: 23/5/2020
- Map data is now successfully downloaded from the Server to the Client based on a Version system. So if the Client's Map is out of date, a new map will be downloaded and updated upon startup.
• Update: 2/5/2020
- Implemented JSON Saving and loading conventions; Currently using it for Saving and Loading tile information and map data to a json file. Which will then be sent to an application on start up so it can render the information.
- Created a packet handling system using an operation code to trigger a handler; when a message received on either the server or client side.
- Begun writing an information encryption and decryption scheme with the implementation of XTEA, this will also be utilised for the encryption of map data.
- Begun writing Application Start up handlers, which will basically download information from the server needed to run the program; the current build, data information, etc.
• Update: 25/4/2020
- Basic Client/Server Framework has been complete, and messages can now be sent between the client(s) and server successfully. I have completed the network utilising the latest version of Netty (
https://netty.io/). I am now re-writting some of the Client to integrate the network so it can inherit the client protocols to allow for multiplayer. Tomorrow I will be working on player updating so multiple players can be rendered to the world.
- I have now re-vamped the way my tiles were processed and loaded, instead of using an ArrayList to load my tiles in each region I have converted to using a 2D Array. That was one of my dumb mistakes that lead me to problems arising in the A* pathfinding algorithm making the diagonal movement struggle to find a smooth diagonal path, instead it was zigzagging unnecessarily and taking dumb directions in some cases. This should now hopefully be resolved with further updating tomorrow. The Tile system will also have some more work done to it with our new storing and loading convention.
• Update: 11/4/2020
- Begun writing the server!
• Update: 18/1/2020
- Begun working on the functionality of the Tile Editing Interface for the Developer mode. Tiles can now be selected and placed.
• Update: 6/9/19
- Begun creating an interface system that loads & handles buttons and sprites based on identification numbers.
- Started working on an in-game development tool which allows me to spawn NPCS, OBJECTS, EDIT & ADD Regions, handle administration and moderation of players etc. This is being implemented with the new GUI System being made. The benefit of having the in-game development tool will allow me to make live changes to the game play, also speed up the testing process of any new physics or mechanics involving objects, players npcs or even just effects of tiles such as gravity changes etc.
• Update: 27/8/19
- Created tile click movement, in-order for a player to move they must click a target tile.
- Implemented the A* Pathfinding algorithm, this will also be used for AI Development.
• Update: 23/8/19 and Beforehand
- Client Animation Framework has been constructed
- Tile Map system has been created.
- Region CHUNK System has been created - basically means the world map will be loaded via regions, so the whole world is not being loaded at once it will only load the region you are in or closest to.
- Player entity created
- Tile Types have been added.
- Player movement started - The player will remain fixed to the centre of the screen and the world will move around the user.
- Started implementing a* path finding algorithmn, so when the player clicks on a tile the program will find the quickest possible route and travel the user to that tile.
- The client will only render whats just outside the screens parameters allowing a more consistant fps and not rendering what it doesn't need to.