site banner

The Motte Modding Club - High Fleet (in Spaace)

After @urquan's recent post about participation on TheMotte not being as enjoyable anymore, I dropped a comment suggesting a group creative activity, to take our mind off the Culture War, and give people other reasons to come here. The idea to make a mod for Freespace 2 got fairly good feedback, so I'm making this post to give you my pitch, and to coordinate development.

High Fleet (in Spaaace)

Freespace is a space fighter sim that sends you to fight alongside massive capital ships duking it out with each other with giant beams, shells, and missiles. It does a very good job making you feel like you're a part of a bigger war machine, doing your part to fulfill a grander strategy... the problem is most of that is accomplished through good mission design, scripting, and storytelling. You might sometimes wonder if you could have turned the tide by knocking out a beam cannon, or disabling a ship's engines before it gets away... why yes, you could, and this is why these subsystems have been made indestructible during that particular mission. Such are the joys of story-driven games, so I'm not even mad, but this made me feel there's something missing in the game.

By contrast High Fleet is a part-strategy part-action-arcade roguelike, where you take your fleet behind enemy lines to strike at their heart. The combat mechanics are the least interesting part of the game in my opinion, but the strategic view in which you spend most of your time feels very compelling. You can split your fleet, and have your detachment clear up the area to prepare for the arrival of your flagship, gather intelligence, or look for allies. You do all of this while dodging patrolling enemy strike groups.

So why not combine them? FS2 had been open sourced, and now features an extensive Lua scripting API, and an optional libRocket based interface. It is possible to implement a High Fleet-like strategy game in libRocket, and dynamically generate a combat mission upon encounter. The lore of Freespace has a few things that lend themselves to this sort of strategy game:

  1. FTL is done through subspace jumps. Throughout the vanilla campaign there are references to ships needing to power up their drive before they can make a jump, and while to my knowledge rules governing subspace drives have never been hashed out (and may in fact be contradictory, in service of the storyline), setting up something simple like “bigger ships need more time to charge their drives” will already create quite a bit of strategic depth. Maybe you have a destroyer that's more than enough to deal with a threat you detected, but if you use it, it'll be comitted to that battlefield for an extended period of time, what if they're just luring you away from their true objective? Do you scramble a few fighter wings, and send them instead, since they'll be easier to recall if necessary?

  2. Inter-system jumps rely on “jump nodes”. This limits where you can travel to from the current system, and allows for blockades which you might need to break through (or set up yourself if you want to make sure your enemies won't escape).

  3. Subsystem mechanics. Each ship has a bunch of subsystems, typically: weapons, engines, sensors, and navigation. You might not have enough firepower to destroy an enemy ship, but maybe it's worth it to sacrifice a few fighters to knock out a subsystem? Maybe you're want to raid a freighter convoy, but there's a patrolling anti-fighter cruiser nearby that will make mince meat out of you. If you knock out it's engines it will give you enough time to deal with the freighters. Maybe you're trying to lose a pursuit, and there's no way you can jump out of their sensor range - why not knock out their sensors then?

  4. Ship specialization. It's hard to give justice how much room to play there is here, even with just the vanilla assets. Some capital ships are very good at taking out fighters, some are very good at taking out other capital ships. Bombers are a threat to even the biggest capital ships, but are vulnurable to fighters and interceptors, and need to get into point-blank range or there's a high chance their payload is intercepted. Reconessaince will be very important, and the player will need to adapt their strategy to what they have vs. what they're up against.

Hopefully, the result will be the best of both worlds - dynamic strategic gameplay, with a fun combat system.

What we have, and who/what do we need?

  • I'm a developer, and I'm happy to handle to coding side of things, although the more, the merrier

  • @FCfromSSC has offered to handle the 2D/3D art. I don't know if you can/wan't to handle this side in particular FC, but we'll need someone who can design a nice interface.

  • @netstack has provisionally offered to join in unknown capacity.

  • a writer would be nice to have. A strategy game could still be fun with no/minimal story, but if we're cloning High Fleet I think it would be nice to have a storyline. If nothing else, can someone please come up with a title for this project!

What's the plan?

  • I'd say step one would be the UI, and the intra-system strategic gameplay, and dynamic mission generation.

  • After that we have to decide about the inter-system/"high level" strategic gameplay. Do we indeed just copy High Fleet, or are we adding/changing something?

  • Do we use the Freespace universe or make our own? The former is easier, and we can reuse existing assets, but maybe our artists want to run wild?

18
Jump in the discussion.

No email address required.

Coding Update 002 - Something Resembling A Game

I took @netstack suggestion, and implemented a whole bunch of things that should now let you fight every ship visible on the strategic map:

  • If a ship dies in a mission, it dies in real life the strategic view.

  • At the end of a mission, ships' health is persisted.

  • After leaving the mission, you're brought back into the strategic view.

  • At the moment, the above means that if you try to warp out without killing the enemy ship, or your ship dying, you'll be thrown right back into the mission.

  • If all friendly or enemy ships are eliminated, you are greeted with a "you lose/win" dialog, which will throw you back into the main hall.

  • Though the odds are against you, I've found you can actually win. That Shivan corvette has superior firepower, but sometimes your cruiser can get it in a headlock and pommel it, from outside the reach it's cannons. If that happens speed up the time as much as possible, because that sort of battle takes over an hour to resolve.

  • Starting the campaign again from the main hall resets the game state.

Which means we have an actual game loop!