Friday, June 5, 2015

Zelda Deathmatch - Progress

No new interesting screenshots or anything, but I've gotten a bunch of new features in recently.

- Game management is now a thing.  The server specifies when the game starts, and the client hijacks some code in the ROM to prevent you from starting the game until the server allows.  When the server says the game ends, the client dumps you back at the player select screen by flipping a few RAM values.  The results of the game will vary by the game mode.  I plan to have some basic PVP modes (Deathmatch, something CTF-like), as well as a race mode with PVP, and a co-op PVE mode with boosted enemy stats.

- Custom maps can be a thing.  As a test, I have one that isolates the southern end of hyrule by modifying a few columns in ROM on the fly.  This can allow for smaller, more PVP-friendly arenas.

- I had to inject a little code into the ROM to do detection for which player killed which by saving off the ID of the object that caused the kill and reading that with the client.  This should be working now.

Things that still need to be done:

- Kill/death tracking.  Most of the pieces are already in place for this to work.  I intend to have some sort of login system and have the server track a running history of things like this for each user.

- Bomb handling.  Bombs are the only player weapon that there isn't an enemy equivalent of that I can use for remote players, so it will be a little tricky to get PVP bombs to work.

- Enemy syncing.  I have a couple ideas for how to make this work.  We'll see if any of them work.  This may end up being a "later" sort of thing.

- A few other minor things and bugfixes.

I will probably make this open source at some point so people can apply the same concept to other games.

No comments:

Post a Comment