Good morning seafarers! Here's dev diary number four. As always, I'd love your feedback so comment below!
Battle systems are one of the most integral parts of any role playing game, and Ships and Scurvy is no different. There are many approaches you can take to building a battle system for your game, from making it the central aspect of your game ( the Diablo series ) to making it an incidental (and possible to avoid ) part of your game ( the Ultima series ) . You can build the combat in real time into the world itself, or have it flash to a separate screen for turn based battles. All of these approaches have been successful, so it means you don’t have to reinvent the wheel for your own combat.
I think the first thing you have to decide is how central combat is to your game and how much time do you want to take up. Long combat can be tedious if you don’t have a tonne of strategic options and variety of opponents. Is your game realtime or turn based? Is it a single hero, or do you have a party of adventurers? It’s important to play other RPGs in order to find what you liked and disliked about each system – if you were frustrated by long combat animations, take them out. If you really liked the spellcasting system from another game, try and emulate it for in yours.
In Ships and Scurvy I’ve decided to make battles real-time (except for the hero battles ) . I’ve come up with three different battle systems: Naval battles , land battles and hero battles.
Naval Battles
When your ship is sailing around the world, you will occasionally encounter other vessels. Based on your actions in the game, your ship and crew will have a reputation stat varying from ‘downright despicable’ to ‘paragon of virtue’ . Other ships will have these reputation meters too, and depending on how you match up, battle may or may not be a foregone conclusion.
When ships meet, a little menu will appear with the following options:
Parley (friends) – When both vessels are of similar alignment, you can talk to them and sometimes get rumours about the world. They may know the location of some treasure, or the whereabouts of a dangerous sea creature.
Parley (enemies) – When faced with enemies, you can attempt to avoid battle through negotiation. If the other ship is more powerful than you, captain may demand payment of gold, crew or cargo. Refusal can lead to battle.
Trade – If both vessels are of a similar alignment, you can trade goods ( which may be life saving if your crew is down to eating rats )
Attack – If you want to ignore the pleasantries and get straight to battle. You can attack both friendly and enemy vessels, though your reputation will suffer if you betray alliances.
Once attack is selected, the game view is switched from the top down overworld to a side on , 3 quarter angle of your two ships in combat.
Each ship has three primary statistics:
Hull – determines the strength of the ship’s hull. Once this reaches zero the ship sinks and there is no chance of salvaging anything from the wreck
Sails – the ship’s ability to flee battle. Once this reaches zero, the ship is stranded and may be boarded for attack. This allows you to salvage stuff from the other ship.
Crew – literally the number of sailors on board the vessel. If this reaches zero, your ship is defeated.
So, during the battle, you are able to select one of these areas to target: hull/sails/crew. Your ship will auto fire cannonballs at whatever you target, at a rate of fire depending on some other stats like crew morale/health etc. The more cannons you have, the more often you can fire – however if your crew dwindle, there’ll be nobody to fire the cannons. You can see there’s a bit of strategy involved here.
Situations may arise like “this enemy craft is much stronger than me, do I destroy their sails and attempt to flee?” , or perhaps ” I have a lot more crew then them, but less cannons – perhaps I can attempt to board them and fight hand to hand?”
Here’s a little animated GIF of a sea battle in action. Notice how both ships have lost their sails – eventually the hero’s ship loses all it’s crew too and is sunk.
Land Battles
Land battles can occur in several situations. If you are able to successfully board the enemy’s ship, a land battle can occur on board the deck of the ship. Alternatively, if your crew are exploring one of the many islands in the game, they may encounter unfriendly natives, hostile soldiers and so on. In this case, you’ve got a land battle on your hands and the game switches views to another 3 quarter perspective shot , this time with a landscape background in the distance and two crews facing each other.
I got the concept for this kind of battle system from a classic Broderbund strategy game from the early 1980s, The Ancient Art of War. This game is seriously one of the best war games I’ve ever played – it has a wonderful mix of strategy and action that was really lost in the more complicated wargames of the 90s and beyond. It feels much more like a casual game than anything else, battles are decided quickly and there’s no hex grids or anything like that to bog you down. Now, in Ancient Art of War, battles were side-on and both forces ran at each other and attacked. You have the option to tell troops to advance or retreat, but that’s about it. Fights are done in 10-30 seconds, and the game is so much better for it.
Incidentally, how many times have you sighed or shouted in rage when playing RPGs where random encounters mean a ten minute meaningless battle against Foozle’s henchmen , wandering boars or whatever – this is exactly what I’m trying to avoid by having fast battles.
Here’s a very rough work in progress of the land battles – I’m still drawing the character avatars and I’ll need to hire a real artist to do the backgrounds ( holler if you know anyone!) . At the moment all the character avatars have a random colour ( and the same eyepatch ) but in the final version they’ll be colour coded according to which side they’re on.
Your crew is divided up into three troop types:
Heavy armour – These sailors move slowly, carry large weapons and wear metal armour. They have an advantage against light armour troops.
Light armour – These sailors wear light clothing and carry sharp weapons, allowing them to dart quickly across the battlefield. They have an advantage against ranged troops.
Ranged -These sailors wear light clothing and wield ranged weapons such as bows and muskets. They can do damage from afar, making them effective against slow heavy armour troops.
As you can see, it makes for an interesting ‘rock-paper-scissors’ dynamic. Each troop has an advantage and disadvantage over the other two. You’ll want your heavy troops to defend your archers from light troops and so on . The trick here is you can only take up to 30 troops into battle, and you must pre-select these troops before you see your enemy’s forces.
I’m toying with the idea of bringing the captain ( your character ) into the battle as a hero character with more stats – this could be cool as it’s more risky ( you can potentially die and lose the game this way ) but the reward could be high in that they can cause a lot of damage to enemy forces.
Speaking of which, the third and final battle system:
Hero Battles
This may or may not make the final build of the game , but I’m thinking of having a special section of the game for when two heroes ( generally ship captains ) meet in battle. Picture an atmospheric duel on top of a mast, ala Pirates of the Carribbean 3 and the wonderful showdown between Davy Jones and Captain Jack Sparrow. The idea for this would be you select a series of attacks ( high/high/low ) and parries ( the same ) and the battle plays out in quick sequences. The winner forces the loser back along the mast until they eventually fall off and are defeated.
Anyway, that’s it for today, I hope you got some ideas for battle systems in your own RPG!
Cheers, happy journeys in your game development!
Oliver Joyce
Whiskeybarrel Studios