site banner

The Motte Moddes: HighSpace (February 2024)


							
							

Aaaand we're back!

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

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

  • testers: the way the any program works always makes sense to the developer, so feedback from people who aren't me is always appreciated. This is a pretty easy way to get involved, though it does require an initial investment of buying Freespace2, at least until we manage to turn it into a proper total conversion, and use only our content.

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

  • Some of the ships concepts are now imported into the game

  • 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

November was a mess for me IRL, December was Christmas time, and even though January was busier than I would like, I managed to get some work in. The biggest change is the Battle Group split / merge feature. Also did some refactoring because there were way too many ship lists to keep track of whenever any ship is was added / removed, but of course that's not the kind of thing that lends itself to flashy gifs. Another change that I managed to get in back in November is setting up debugging with EmmyLua which helps in development a lot.

Bugs found

  • Cannot jump into mission without “Alpha 1” being present in group
  • Crash on win/lose of the game
  • System map targetting is off - sometimes the target ship moves on before you reach it

What's next

  • Improve the simplified orbital mechanics

  • Fixing the bugs

  • AI code for System View ships, first for plotting the course, and if time permits for some basic enemy movement as well.

8
Jump in the discussion.

No email address required.

Re: fighters patrols, could there be a resource advantage? Redirecting a carrier group frigate to get line of sight on a region is surely more expensive in fuel and manpower than sweeping its entire neighborhood with one or two fighters.

Hm... the only resource that comes to mind is fuel, and time (with bigger ships being slower). Or do you mean having the crew be completely fungible, and telling everyone on a frigate to jump into fighters?

Individual patrols might be hell from a micromanagement standpoint

Right, I'm hoping some typical patrol patterns involving multiple ships can be automated. You'd select the ships / fighter wings you want to deploy tweek some parameters via the mouse-wheel and / or a few buttons, and they'd do the rest for you. You'd only get notified on contact.

The details are still a bit hazy and will probably remain so until I cross that bridge, but one pattern that feels like it should work would be to send the slower ships inward, where the orbital period is lower, and the faster ship outwards. With conventional drivers they could stay in sync while giving off only short-range IR signatures, and they'd periodically sweep the orbit like a radar. Or you could sacrifice staying synced for maximum stealth.

The sync will fall apart the more outward you go, so you'll need more and more assets to cover the area, or to start using active scanners that will give your position away.

especially if the default behavior allows each lone fighter to trigger a hopeless fight.

Yeah, I suspect auto-resolve will become necessary.

Re: additive orbits. The thing about flying faster than gravity can pull you down is that you really only can go “forward.” Actually reversing the direction of your orbit is very expensive because the “zero” point isn’t idling, but falling into the nearest well.

Yeah, the current model is a result of me wanting something realistic-ish, but also deciding that I'm definitely not going to write Kerbal Space Program here. The results are goofy if you know anything about physics, but I hope they can result in something fun mechanically.

Practically speaking, this causes a bunch of unintuitive stuff when connecting two points. To the point where games like Interplanetary kind of have to build around it from the ground up. So handwaving to allow free transfers between orbits is…it’s probably a good idea.

Right, that's how "gravity stops working when enignes are on" started. The problem here is that slower ships can get away from faster ships just by killing their engines, which makes no sense, hence the hopefully better approach of summing velocities while magically maintaining the same orbit. You should still have free transfers by going inward/outward, but you might not be able to backtrack depending on where you are.

It's possible the whole thing will become a dead end, and I'll just make the solar system stationary.

Whoops, I meant in terms of in-fiction resources, not necessarily in-game. It’s not enough for the frigate to have better sensors than a fighter; it has has to have better sensors than however many fighters you could buy/staff/fuel instead of a second frigate.

I’m envisioning something where you can set up zones on the map to run your fighter patrols. Region on the map, region around your fleet, or cone around your direction of travel. Abstract your fighters patrolling in that region. The size of the region (and distance from your nearest base) would determine your chance of encountering enemies who are within, and succeeding at that random chance would give a popup letting you start a fleet battle. Obviously if the enemy reached your permanent sensor bubble, you’d see them either way.

Abstract your fighters patrolling in that region.

Love your feedback, man. Yeah, that's obviously a batter solution (orders of magnitude easier to code, if nothing else). I swear my 'tism wanting to model everything will be the end of me.

Shit, wanting to model everything is literally my job title.

Maybe this weekend I can get the debug version installed properly. I do want to contribute instead of play peanut-gallery.

That sounds like a sweet job, though maybe I'd change my mind if I had to do it every day. OTOH, maybe that's just the cure I need.

Maybe this weekend I can get the debug version installed properly. I do want to contribute instead of play peanut-gallery.

As usual let me know if you need any help.

Compiling from source could be a good idea, it's pretty straightforward, and you'll need it anyway if you want to attach a LUA debugger (though so far I was only able to figure that out on Linux)