Been busy trying to tidy all the loose ends up. Redone a lot of the multiplayer layer, finished implementing all the messages that weren't previously done (like naming heroes, cancelling movement). Done the installer (mostly.. one key issue left). Was basically trying to get everything finished until combat was the only thing left to do, so I could concentrate on that.
So, started on that now last day or so, and oh boy, there's so much of it > Finding piles of routines to do with combat which all need doing, always surprises me how much code there was in the Delphi version that I had forgotten writing

So trying to slog through it.
A lot of the complication is for handling monsters in nodes/lairs/towers - they're an annoying special case for just about everything. If you're wandering around the map and walk next to a stack of enemy units, you can see the exact types, numbers, health, experience of every enemy unit. If you walk next to an enemy city, you can see every unit in the city. But if you walk next to a node, you can't see what's inside. Even when you 'attack' it to scout it and see the type of mob inside, you only find out the type - not how many, whether they're already damaged, what the secondary type of mob is or so on. That is all a royal pain to deal with in the code, it has to send the units to the client a the start of the combat and kill them off at the end. If monsters in nodes/lairs/towers just worked the same as everything else, so you could see all of them as soon as you walk next to them, there'd be a lot less fuss to deal with in combat. But oh well, I try to stick to how the original worked
