site banner

The Motte Moddes: HighSpace (October 2023)

The goal of this thread is to coordinate development on our project codenamed HighSpace - a mod for Freespace 2 that will be a mashup between it and High Fleet. A description of how the mechanics of the two games could be combined is available in the first thread.

Who we have

I hope you don't mind I moved you to Consultants for now, @netstack. I'm always torn between keeping people in their originally declared roles as encouragement, and not wanting to harass them into contributing, when writing the contributor list. I'll be more than happy to re-add you as a dev if you're still on board.

Who we need

The more the merrier, you are free to join in any capacity you wish! I can already identify a few distinct tasks for each position that we could split the work into

  • developers: “mission” code, “strategic” system map code

  • artists: 2D (user interface), 3D (space ships, weapons explosions)

  • writers: worldbuilding/lore, quests, characters

A small note if you want to contribute:

Don't be afraid to ask questions however small, or silly you might find them. This is literally one of the primary functions this thread has. The Hard Light documentation is... there... but it's not great, and between that, the peculiarities of LUA, the FS2 scripting API, RocketLib, and other parts of FS2 modding, it really might not be obvious how to resolve issues you run into. I might not be able to answer all questions, but I've dabbled in all these things, so there's good chances I might be able to help.

What we have

  1. Capital ships

  2. Fighters

  3. A cruiser, loaded in-game

  4. Turntable render for a cruiser

  5. Turntable render for a destroyer

  • A proof of concenpt for “strategic” system map we jump into on start of the campaign. It contains a friendly ship and 2 enemy ships, you can chose where to move / which enemy ship to attack.

  • A “tactical” RTS-like in-mission view where you can give commands to your ships.

  • A somewhat actual-game-like workflow. Attacking a ship launches a mission where the two ships are pitted against each other. If you win, the current health of your ship is saved, and you can launch the second attack. If you clean up the map you are greeted with a “You Win” message, or “You Lose” if you lose your ship.

Updates

It was another slow month, but things are finally starting to move. Literally. I added a current time display (set to the very beginning of the universe for now), and time can be paused / started / fast-forwarded. I also added a side bar with some help text (I thought the controls were relatively obvious, only to realize that what seemed obvious depended on the game I was most recently playing). The planets are the only things that move on their own for now, but I should be able to extend that feature to ships pretty soon. I'm not sure if this idea will go anywhere, but I'm thinking of having ships be able to move through conventional and subspace drives, the former obviously only being useful for planet-moon type distances.

Other than that I spent a lot of time optimizing. Brute-forcing my way through "find me the ship under the mouse cursor" was fine for a proof-of-concept, but I was finding myself making more and more "get me the nearest X" queries, so it was time to shove everything into a spatial index. I'm quite happy with the result, but it's not really something you can show off visually (well, unless you really want to).

What's next

  • Getting the ships to move along an orbit.

  • Real-time ship movement (sub-space, and conventional)

  • Obstacle mechanics for the planets

5
Jump in the discussion.

No email address required.

I was also trying to come up with a scenario where we could test some of the game mechanics we've been discussing. I was thinking about something along the lines of:

Tensions between [our Glorious Motherland] and [Evil Empire] have been rising. Hostilities have not broken out, but both sides are obviously preparing for war. As a result, the prices of [strategic resource] have skyrocketed, which in turn caused an increase in pirate activity. [Interstellar Mining Corporation] has requested military assistance in securing a recently established [strategic resource] mining base. Pirates have been raiding their freighters en route to [industrial center], and the frequency of the raids suggests they managed to set up a base in the same system the [Corporation] mine is located. Your orders are to locate and destroy the pirate base.

The rules would be:

  • Subspace jumps give away the ship's location at long range, unless line of site is broken by a large body like a planet/moon.
  • Depending on the distance between the detecting and jumping ship, and/or the quality of it's sensors, the destination of the jump can be estimated.
  • Infra-red sensors can pick up moving ships at short distances without giving away their own location
  • Radar can pick up static ships at short distances, but gives away it's own location
  • Ships can be pulled out of subspace with a warp inhibitor
  • No communication is possible with a ship in subspace.

Every once in a while a freighter would arrive to pick up the cargo, and then try to make it to a jump node at the outskirts of the system. If the pirates manage to figure out where it's going, they can pull it out of subspace and attack it, and if they're equipped with a signal jammer, you won't be able to tell anything is off until the ETA at the destination. You can counter with making a series of shorter jumps letting you confirm the status of the freighter, and narrowing down the location of the attack if one does happen, but almost certainly giving away the freighter's route.

You'd be judged by how many freighters make it out of the system before you destroy the pirate base, and any delays your security measures might have caused. The idea is that you'll have to make some sacrifices in order to learn where the pirates are launching their attacks from.

I think a scenario like that should be manageable in terms of development, would let us test which mechanics work and which don't, and would be a decent first mission for a larger campaign when we get to that point.