Figured I’d give everybody an update with what I’m up to and a breakdown on what to expect for SPACE SHIPS, considering I’ve had my head into this for at least two weeks now without really surfacing much.

I’ve got the basics of the ship system itself all functional. This might not sound like too much until the scope of what you’re gonna be able to do with them becomes clear, but it made for a lot of fiddly organising to make sure it could do everything I wanted it to, and now I’m starting to flesh out the first of the core parts that need to be built on top of it- the combat.

More deets after the break if you care to peep the future of ship on ship violencing! And if you don’t care? Then I leave you with a very cool thing done by MadamSquiggles that has also pushed me toward wanting to make sure we get some more pregnancy content as soon as I crawl out from under SHIPS4EVER.

Without further ado, basic ship features we want to support from the get go:

  • All ships are going to have interior maps.
  • The interiors are going to feature a couple of “key” rooms that all ships must have (like a cockpit, cargo bay, airlock/docking ramp and quarters).
    • These key rooms are how we’re going to trigger events that happen aboard the players ship. I’ll have to review everything we have that does this already and make changes to ensure it works, but going forward any “ship content” that takes place inside the ship should be tied to one of these rooms in a generic fashion.
    • Most of the rooms are going to be static per-ship.
    • Some of the rooms are special upgrade rooms, where you can put various possible upgrades. These rooms are categorized somewhat, so there’ll never be a situation where you need to forego combat capability for content availability.
  • The Map and the Upgrade system are going to be one in the same. YOU pick where upgradeable modules go in the ship according to those slots, and the module you put there will dictate what that room is like on your ship.
    • To be clear, you can’t change the overall layout of the ship, but you can plug things into room “slots”.
    • In addition to upgrade modules, there are core modules- these are the core things for the ship (like the shield generators, engines and so on). These aren’t going to be customisable initially, until we’ve settled on a good balance for the basic ships and exactly how much power variance we want to allow customisation to enable.
    • The one exception to this will be weapon systems- they will be “core” in that they come with the ships, but will, for the most part, be changeable within fitting limitations of the ship in question.
    • Modules are how crew are assigned to various ship roles, which in turn will provide combat bonuses.
  • Comprehensive inventory categories.
    • A proper differentiation between say, weapons, armor, other equipment, consumables and such. All of which can be stored together or in different rooms, and be granted bonus maximum slots independently of each other.
  • Ship on Ship combat.
    • Don’t expect to see any fights that involve multiple ships initially (or potentially ever), but I AM writing the system to support it. In reality, if we do ever use it, it’s likely it will only see a use for things like potential special weaponry (say, combat drones).
    • I want this. It’s happening. It may not always be available, but I want the ability to have “followup combat” involving boarding/being boarded, if somebody so desires to write such (which I do, so it will eventually be a thing).

I’ve just barely made a start on the combat code, mainly because every rock I kick over toward making it work uncovers seventeen things that I hadn’t already handled that I need to do. (Damage types, resistances, various bonus sources, status effects, temporary effects, a ‘template’ system of sorts for certain potential effects so we don’t have to implement “Specific Stun #37” etc).

After that I need to get the actual map display together at a base level for the ships, because they’re going to use a different, more elaborate system that avoids all of the problems we have with the current map structure. Considering the two systems are going to be essentially isolated from each other, it made sense for me to put the effort in now for Ships, get all of the Map V2 stuff to work, and then maybe think about porting it back to the rest of the game content.

Then when the BASIC map is done, I need to make the version that’ll be used for ship upgrades and crew assignments. This is gonna work like the current level up system does, in that it’ll replace the middle part of the game area with all the interface elements we need to show you to do the things.

I think that’s a large enough wall of text for one day. I’ll post more about combat when I’m further through implementing it.