r/godot • • 21h ago

selfpromo (games) Finally got ship to ship combat working.

390 Upvotes

43 comments sorted by

17

u/Siduron 16h ago

Cool ship, but the clouds are the main character here. Holy sh-.

14

u/ninetailedoctopus 16h ago edited 16h ago

I love clouds. Like every time I fly my phone is full of cloud pics. Or I point at cool clouds to my lovely wife, who just nods (love her). My first game in Allegro had hand painted clouds in it. My second game in Monogame had “cloud” in the name. My college buddies know me as the guy who made the cloud game. I was biking a while ago and I almost crashed because I was looking up at clouds. I am a member of [r/CLOUDS](r/CLOUDS).

So yeah. I wanted some clouds in Godot too 🤣

3

u/Siduron 16h ago

Clouds in games are almost always an image on a skybox texture or at best some sort of volumetric effect, but you sir, reinvented game clouds.

1

u/ninetailedoctopus 2h ago

This means a lot to me, thank you. I will make it even better, then!

(yeah it's actually now better, it now hides alpha-blended things, and the moire effect in the video is somewhat gone)

9

u/PrimaryMaize6580 21h ago

i want the mecha xD

6

u/ninetailedoctopus 21h ago

You know what, I totally forgot to deploy them this video :D

Still have to wire the gun in, but it's there, the Airspace manager flies them.

2

u/PrimaryMaize6580 21h ago

At first, I thought it was more of a mecha game with a carrier ship than a game focused on the ship itself, but honestly, every version looks absolutely epic.

4

u/ninetailedoctopus 20h ago

Well, you can play it like that, you can pilot the mechs/planes/vtols, and it plays like faster PS1 arrmored core with dangling legs. No twitch gameplay, though. And no walking, because I can't animate a walk cycle that well.

1

u/PrimaryMaize6580 20h ago

Looks totally fine. Walking could be added later as DLC, and then you could use it to attack other carrier ships or sky fortresses, too.
😭🤣

11

u/ninetailedoctopus 21h ago edited 20h ago

So far I am happy with the feel and the visuals, though there are always a thousand and one more tweaks to do. The game can support upwards from 200 ships in glorious, cloudy, explode-y sky combat.

Technicals:

A single Airspace class manages all movement - it makes every ship flow together. It's like air traffic control, if ATC says "This is the THUNDERDOME!" every time pirates show up. Here's a performance tip if you want many ships - Actor model absolutely sucks in this context.

There are a lot of performance tricks underneath - I had to pull out all the stops to make it performant, with every ship spewing 2000 rounds per minute of CIWS fire... per gun, there's no way a one-node-per-bullet approach will work.

I know too much about ballistics now than I would have wanted to know. Love superelevation based targeting / TOI calcs.

Also it will be an epilepsy sim if I don't tune it right. Hello, Highfleet!

AI disclosure if this matters to you - the cameos use a python script that runs a local model I run on my 4070 laptop that is in turn run through heavy processing - a 128x128 cameo doesn't take much to generate. So far they are meh. Want some nice character designs, the hand made kind. Might try to write a cameo gen instead using an anime face 3d model (the Blender kind) and some really heavy processing - which would give them facial expressions, which is nice. Claude Code does the typing, but the engineering is all mine (I make high performance processing systems for a living for...15 years now, thus, you get a living world that doesn't lag, probably. Mostly.)

Zero sound, music next, hopefully I still remember how to operate a DAW, I have a leitmotif in my head already.

3

u/Dihlofosss 12h ago

Monitoring the progress, looks awesome.

Not rly clear about missiles

1 - those that was launched by the dead enemy - never hit the player. is it "destroyed" when the NPC was destroyed too or just the player was not the target?

2 - looks like missile's engines works during the entire target approach distance. You going to keep it more "artistic" with white trails as now or do more realistic, when booster works about 5 sec and next it fly by inertia?

2

u/ninetailedoctopus 11h ago

Not rly clear about missiles

Good signal there, I should make it more clear then :)

1 - yeah there's some fixes incoming, missiles are mostly a multi-mode seeker - command seeker when there's a lock from the firing ship, then if lock is lost then it goes into independent seek mode and seeks to another plausible target, then if lock is re-established then it does a ToI calc if it's still able to reach it, if not it continues on independent seek. (Yes I play Nebulous)

2 - artistic, mostly - a scene with lots of trails going all Macross Missile Massacre would look best to me. Although multi-stage missiles will be a dramatic thing :)

-11

u/Pantabrah 16h ago

I have a question. The top post on this sub right now is about how AI games don't belong here. This sub has a rule on how AI games don't belong here. Why are you posting an AI game here?

6

u/datamizer 15h ago

Because it isn't an AI game and if OP didn't mention it, no one would have even known. Y'all's purity tests are so silly.

3

u/intelligent_rat 12h ago

It is incredibly easy to tell, the Claude genned UI design and the slop character portraits constantly bombarding the top left corner of the screen immediately gave it away.

0

u/datamizer 11h ago

Zero people said anything about AI the last time OP posted about it here, same UI:

https://www.reddit.com/r/godot/comments/1x51igg/i_added_flares_to_my_game/

You also realize Claude is trained on actual UIs right?

1

u/Dargish 14h ago

Any engineer who isn't using AI to help with coding right now is just strapping a hand behind their back, it's like saying no to auto-complete when it became common place years ago. There is a difference between an engineer using AI as a tool like OP does here, using the knowledge and experience he has to engineer a product that works well, and a beginner who just tells AI to make him a game that does X which will be poorly engineered slop.

Speaking as a 20 year experience engineer who has gone from hand-writing code for work every day to not writing a line of code for work in the last 6 months. For what it's worth I am writing my own Godot game completely by hand just because I enjoy coding and miss it.

1

u/ninetailedoctopus 10h ago edited 10h ago

To be fair, I still write code, in the form of data structures, their relationships, the storage, the access patterns, cache locality, lifecycles, transformations.

In my world you aren’t thinking in syntax anymore - I can code as easily in Go as well as C# and C++ and Python and Java and Kotlin and Typescript (yes I do all these things for a living). I can do some assembly for that matter, or the .NET IL. You are thinking in the form of data and how it conforms to hardware. The language still matters in what the tooling is, what the primitives are.

But I have stopped code golfing and glorifying code as craftsmanship a long time ago. I have seen beautiful code that ran like shit. I have seen hacked together code that ran beautifully. I have read code written in Japanese (iykyk). I have seen devs like us share a lot of code because this shit is hard to reason about when you were a junior.

And then you get to senior, then principal, and you realize that it is a tool, a means to an end. And in that end is real craftsmanship.

2

u/Dargish 9h ago

Similar to you, I write data schemas and ensure there is data validation in place. Do I care exactly how the code that converts from input data to the schema I want works? No I do not, do I care that the end data matches my schema and has been validated, yes I do.

1

u/ConsistentAnalysis35 15h ago

I don't know why you are downvoted. It's a legit question.

3

u/codeninja 11h ago

Old man shoots at clouds.

Seriously though, looks cool. Very... atmospheric. Ill see myself out.

2

u/ninetailedoctopus 10h ago

I might have to add this as a quest at some point. Yoink!

2

u/aPOPblops Godot Student 9h ago

I can't believe this is the first cloud combat game I've seen. I love the thought of flying around in Jupiter's atmosphere even though it's literally impossible. 

3

u/ninetailedoctopus 3h ago

Clouds are beautiful, I really hope more people would look up and appreciate what they are.

Also "the first cloud type game" reminds me of Death Stranding 🤣

1

u/aPOPblops Godot Student 22m ago

Look we can't all be Hideo but you're coming pretty close

2

u/Gundroog 15h ago

Who's the artist for those character thumbnails? :)

1

u/darksundown 10h ago

World of Airships?  Cool.stuff!

1

u/alanbdee 8h ago

I don't know if it would fit. But a mechanic that I think would be cool is an anti-grav generator. It interrupts the affect gravity has on your ship and is how it "flies". But like a shield generator, it can be damaged. If it's damaged you start to fall and have to start using your landing thrusters to stay in the air with very limited mobility until your ship can fix itself. Just a neat idea that I had once to explain how ships fly without huge thrusters.

2

u/ninetailedoctopus 3h ago

I call it... the lift keel :) I have a LOT of lore written. The mechanism, the form of it, what happens if you do what.

Oh and it generates EVA like angel halos if you look at a flying thing that shouldn't fly in a certain angle.

2

u/doubleoathseven 3h ago

This is just a stun mechanic: take a certain kind of damage => lose mobility

1

u/YesBut-AlsoNo 5h ago

Holy shit I can feel the scale, and it's real good.

1

u/ninetailedoctopus 3h ago

You should see when it zooms out during fast travel mode. You remember those Indiana Jones movies with maps and arrows? Yeah.

1

u/Deep-Monk4872 34m ago

Genuinely curious how you're doing the target lead. For projectile-based ship combat I keep hitting the same wall: raycast-ahead works fine until the target starts strafing, then every shot whiffs and the AI reads as stupid rather than the shot being hard. Did you go with predictive aiming, or just tune projectile speed up until lead error stopped mattering?

1

u/PrimaryMaize6580 20h ago

At some point, you could add a sky tornado like the one in Mad Max: Fury Road, where you can barely see anything but still have to keep fighting.

3

u/ninetailedoctopus 20h ago

Oh you are in for a treat :)

Right now since the density functions aren't that granular (else they show up bad on clouds), the insides of the cloud are just a murk.

But I got PLANS :) And yes, I know that scene you speak of. Glorious.

1

u/Kessarean 18h ago edited 12h ago

This reminds me of Battle at Procyon. I loved that game. This looks so cool!

1

u/ninetailedoctopus 16h ago

Oh man, you have given me something to look at. Thank you for this!

1

u/melonfarmermike 16h ago

super pretty

0

u/xr6reaction 17h ago

Woah those clouds

0

u/gallusky 17h ago

That looks amazing ! Anywhere we can follow what you do ?

1

u/ninetailedoctopus 16h ago

My socials are nonexistent 😭 maybe a page soon :)

0

u/BacoDelMillennio 15h ago

Coooooooool

0

u/da_blue_jester 15h ago

That's fantastic - Homeworld and Battlestar vibes abound. Drop the Steam page this is a wishlist for sure