What I've done this week
Quite a lot of time was spent analyzing the save game format of the original Lode Runner Online: The Mad Monks' Revenge with little success. Unfortunately, the format is not as straight-forward as Lode Runner 2 (to prevent rampant cheating I suspect), nor does it follow the same similarity that all other Presage resources share.
If you are interested in Lode Runner 2 and the technical stuff, I highly recommend having a look at Anthony Kozar's site.
The only definitive items I've identified in the puzzle format is the puzzle header, single/two-player mode and if you are playing the official puzzles. I think I've identified where the puzzle filename is stored but I honestly can't be sure. It is quite clear that the file is encrypted/cyphered in some way.
While it would be nice to load old saved puzzles, this is not a major drawcard.
The main thing started last week was local networking using the Lidgren Network Gen3 library. It's in early stages, but so far you can;
- host a game
- view available games on your local network
- join a game
- be transferred the puzzle set to play from the host
- send chat messages back and forth
Join a game or host your own
No gameplay has started yet, I want to get the basics in and working. Hopefully they'll be basic gameplay by the August update. I'll also being doing a more detailed LAN post later this week or next week some time.
- nothing, yay!
- the game will no longer pause when not active (lost focus, minimized, etc) if the network is running
- altered two properties in the Lidgren source to compile it against .Net Framework 4
Well, solving puzzle 19 was short lived. It appears it is broken again. I'm going to spend next week working on both LAN gaming and monk AI. I think I have an idea of what is wrong and will hopefully look into this before the August update.
- cleaned up the project;
- removed quite a lot of dead code
- removed some old testing dialogs
- added extra support to the listbox control
- fixed visual quirk in the file dialog and local game dialogs
- fixed visual quirk in the options dialog
- made some behind-the-scenes alterations to the listbox control
- fixed an issue with the file dialog that could cause an error when renaming puzzles
- added the network port to the config file; if you want to edit the port, you'll need to edit the config manually
- made the assigned keys/joysticks for gamepad bindings in the options dialog easier to see;
- DPad now use arrow icons only instead of "DL", "DR", "DU", "DD"
- the left or right joystick now has either "L" for left or "R" for right, followed by the direction arrow
- the new is the LEFT image below, the previous in the MIDDLE
- you can no longer attempt to assign keys when no controller is connected (image on the RIGHT)
Updated options for gamepads
Bugs being worked on
- Gravis gamepads not working with OS X (Adam)
- Windows with Japanese language causing a crash on start-up (Kyson)
- the current workaround is to set Windows to a Latin-based language (English, German, French)
What I'll probably do next week
- play/test for bugs
- continue AI improvements
- continue LAN