1. Sea Power
  2. News

Sea Power News

Dev-Update 3/24

Hi all!

Another short update with some more screenshots from our dev pipeline showing continuous work on aircraft but also on ground units.

Sampans around Đồng Hới, with Oklahoma City CLG-5 in the background.
April 19th, 1972



A-7E scoring almost vertical Sidewinder kill on 921st Regiment's Fresco, more Frescos with proper Fighter Regiments liveries.



B-13 130mm / 5.1" coastal artillery positions, with Chinese-made Cross Slot coastal defense early warning radar.



Dev-Update 2/24

Dear readers!

Another small update about what was going on the last two weeks.

We had a visit from Frazer (MicroProse) and came together with Nils and me (Martin) in Munich to show our game to Fritz and Alex from GameStar:



We also started some internal (closed) beta so things are coming along nicely. Still some way to go but we're getting closer!

Quite some work was done regarding aircraft, here the MiG-21 Fishbed:



And land based installations, KS-19 and S-60 flak over Thanh Hóa province claimed another Corsair:



Vietnam war era dogfighting:



That's it for this time. We're preparing some more footage as well as game play videos and new trailers within the coming weeks.

/Martin

Dev-Update 1/24

As already announced in our happy new year news we want to show more stuff on a regular base. Mainly screenshots but also videos will come soon. And of course there will be another dev diary which is already in progress!

This dev update will be aircraft related. We recently added the B-52G, here showing some weapon launches:



Defenders. Attackers. Depends which side of reticle you find yourself on.
MD500 family WIP - right now manned by brave ubiquitous soviet heli pilots, awaiting proper crew and more detailing:



Tale spin: We worked on quite some aircraft AI, having contrails and finally some action:



And finally some (boring) stats of our game. Beside all those shiny screenshots here are some nerdy numbers (yes I love numbers). Our project grew quite large over time... Above 400k lines of code so far. Those values for estimated costs are using some formula based on the complexity, I could look them up if someone is interested.
Just to clarify: Those are NOT our real costs. They are just estimates done by some (not our) algorithm:



That's it for today, y'all have a great start into this week!

/Martin

Happy new year!

Dear all!

The entire team of Triassic Games wishes you a fantastic start into the year 2024 also on behalf of the crew of this Orel carrier:



Here some screenshots from the Kiev airgroup attacking a small US escort group:



We want to do some more regular screenshot and video updates of the progress of what we're doing and apparently "News" are the most appropriate way of doing so as we cannot embed screenshots in forum postings as it seems.

There will be more dev diaries coming as well but we want to push some news with less text and more screens as well! Hope you like it!

/Martin

Dev Diary #8 - Flight Model

Intro


Hello Everyone!

We’re trying to be better at dev diaries and we hope you appreciate the info. Today we will be talking about aircraft in Sea Power and how they work behind the scenes.

The first thing to say is that Sea Power is not a flight simulator, it is focused around Naval Warfare in the Missile Age, but aircraft are a vital component of that. Because of that Sea Power does not give you direct control of flying individual aircraft like DCS or Flight Simulator but instead allows you to task single aircraft or formations to complete objectives and the pilots and squadron leaders will sort that out for you. Because Sea Power isn’t a traditional flight simulator we are able to play a little bit fast and loose with the physics of the aircraft that you see in the sky, which is sorely needed given the number you might have!

Flight Model


A traditional flight simulator implements a flight model with normally 6 degrees of freedom and will use complex analysis methodologies like the Blade Element Model (X-Plane famously uses this method) which I barely remember from University. These methods produce reliable and interesting flight dynamics but are computationally quite intense! Here for example we can see the model for a single element of a blade, imagine doing this for 40 to 50 elements per aircraft!



To save your computers from a fiery death Sea Power instead mainly (but more on that in a moment) implements a 3 Degree of Freedom model. Happily in the team we have access to people who have been trained in both Physics and Air Vehicle Systems, if you saw our interview with Subsim a number of weeks back we mentioned how nice it was to have a variety of backgrounds in the team and this is one of the places where this really really helps!

The model itself is based on the one described in this paper by Dr. Lesley A. Weitz and allows us to have a simple but rapid simulation for most of the flight envelope. The model allows us to provide control inputs based solely on Altitude, Heading, and Velocity values which means we can skip the weightier implementations using Unity’s physics system.



Additionally, as Dr Weitz has been kind enough to provide us with a set of control laws and dynamics in a set of pseudo-code algorithms a lot of the significant work is done for us, this gives us a solid base on which to build.

Part of that building has been implementing semi-realistic thrust and lift modelling to our model, at the very core of this is a model of the atmosphere. Sea Power makes use of the International Standard Atmosphere (ISA) as defined in this resource kindly provided by NASA. The ISA defines how the atmosphere changes around us and helps explain why the outside air temperature at 30,000 ft is significantly below 0C.



Alongside the temperature the pressure of the atmosphere significantly reduces with altitude, dropping from approximately 101.3 kPa at sea level to near 0 kPa at 30000m. Because the atmosphere nearly follows the ideal gas laws the density of the air reduces at the same time, this allows us to model the impact of altitude upon our aircraft.

Now for those of you that are familiar with this stuff I apologise but for those that aren’t welcome to the wonderful world of aerodynamics, operational analysis and propulsion physics. It almost makes me nostalgic for University again. Density has an important impact on our aircraft in two primary ways.

The first way is Dynamic Pressure, dynamic pressure is a measure of the energy in the air that impacts upon something, the force you feel pushing against your hand out the window of a moving car is Dynamic Pressure. We calculate it as `dynamicPressure = 0.5 * density * velocity * velocity` and it is important as both the Lift and the Drag of an aircraft depend on the product of dynamic pressure and lift and drag coefficient respectively. Fundamentally what this means is that the faster you go and the higher the air density the more lift and drag you get out of an aircraft.

The second way drag impacts an aircraft is in the amount of thrust you can get out of its engine. Propulsion was one of my favourite modules at university and I have dug into my university notes to provide you these charming (yes that is my handwriting, can you tell why I am an engineer?) diagrams of the sections of a turbojet engine and a turbojet engine with reheat.



We use diagrams like this to visualise the propulsion cycle of the engine, shown in this diagram from NASA, which allows us to do a load of fancy derivations to arrive at a really simple equation for the thrust of an engine `T = massFlowRate * (exhaustVelocity – inletVelocity)` if we make a bunch of assumptions about the nature of life, the universe, and everything we can say that the Mass Flow Rate is the product of the inlet area, the velocity of the aircraft, and the air density. This means that thrust is directly linked to altitude! The equations get more complicated as we go to different engine types but the core of the problem is the same, `Force = mass * acceleration`, Isaac Newton to the rescue!



All of this leads us to something that looks pretty good and is computationally fairly simple (which is good as we can check the values with hand calculations) which we use for the majority of the life of an aircraft.

The details above allow us to force our aircraft to generate contrails, engine smoke, and tip vortices based upon the performance that you are demanding from them at a given moment.

Different States


However this doesn’t cover all scenarios, while the aircraft is not airborne we use a different controller for motion.The ground based controller is a really simple Newtonian system based upon the good old equation F=ma. We tend to ignore a lot of the realities on the ground in favour of getting you in the air quickly!

However the simple formula Isaac Newton gave us does not cover such trivial realities as navigating your way around an airbase, for that we use defined taxiways to allow you to watch your aircraft drive around on their way to the runway.



[previewyoutube][/previewyoutube]

The same also applies to aircraft carriers, where the taxi paths are described in such a way as to allow unlimited possibilities (I know someone is already planning to launch their Vipers from the Battlestar Galactica). We have made sure to include details like opening and extending hangars and even oddities like the vertical elevators on the Moskva-class Helicopter Cruiser.



Takeoff is another situation where the normal flight model does not apply. Seapower supports, at present, 5 different types of takeoff: Normal, Catapult, Skijump, VTOL, and Helicopters. Each of these methods has its own system that allows us to provide realistic looking behaviour without risking the flight model getting horribly confused and smashing all of your shiny F-14s into a thousand tiny pieces.



These unique states exist throughout the flight control system and allow the aircraft to behave in a manner that is appropriate to the moment that they are in.

State Machines


A moment ago I referred to something called “states” this leads us to a really important concept for Seapower, and lots of games in general! This is the “Finite State Machine”. A State Machine is a way of creating a system that transitions through behaviour in a repeatable and reliable way when certain conditions are satisfied.

FSMs are used throughout Seapower to drive systems across a range from torpedo homing to aircraft landing, they are an incredible tool, if you want to learn more I recommend this video: Unity Bots with State Machines - Extensible State Machine / FSM - YouTube

Conclusion


At this point my ramblings have hit about 7 pages in Word so I think I better stop and get back to coding. We are really looking forward to getting this game to everyone who is out there waiting for it. We really can't wait for you to see the effort and dedication that has gone into this across the last few years.

Here are two more videos showing landings on a carrier and on an airfield:

[previewyoutube][/previewyoutube]

[previewyoutube][/previewyoutube]