It’s been a looong week. A lot of low-level coding was done, particularly as to the how objects are loaded and stored for later use. What mainly prompted this was when I tried to get the art for the main engine component to load. That actually worked fine, but it was way too limited–again, old prototype code. Each component could only have one object, and it was cumbersome how they were tied to the actual ship, making them difficult to manipulate. So, I rebuilt the entire system. Now, each component can have multiple parts, and those parts can be manipulated by triggers from ship systems.
This will give me, and modders later on, great freedom when designing ship components. Engines could have opening and closing vanes or vent doors that react to specific engine modes; gun turrets can now have recoiling barrels and other moving bits; etc. One thing I really want to do is have weapons that can be stowed within the hull for protection, and then get deployed when needed. All this is now possible.
Although a simple example, you can see in the shot below the art that was loaded for the installed engine component. Again, each and every component can have visual elements to represent it, so at a glance you’ll be able to get a good idea of what a ship’s capabilities are. Also, components can have interior art, too (this will be important later on ).
As I mentioned last week, all the art for the left console’s instruments is in place as you’ll see in the shot below. You’ll also notice that the throttle and flight controls are in and working. That’s another system I had to rewrite to be much more efficient and robust than it was in the prototype. As then, the on-screen controls mimic the inputs you make. However, the new system goes beyond that, allowing you to actually control the ship by manipulating the art itself. This won’t be as useless later on as it may sound right now :)
The other big work that was done this week was on the design and basic implementation for the Main Engine System (MES) and Maneuvering Thruster System (MTS). As I mentioned in the last entry, the first engine type I’m working on is an… expanded… version of a VASIMR engine. Without going into too much detail, each engine has a reactor that provides a substantial amount of power to the drive itself. The majority of the power is used by the superconductor to create the electromagnetic field that contains and focuses the super-heated plasma. Any leftover power is fed into the main electrical bus and is used for weapons, shields, and other high-power components.
Engines are rated in MegaNewtons, and are sorted by mount type (so you can’t jam a huge, 47 MN engine onto a small shuttle, for ex). Specific Impulse is also represented. The inner workings of the code are much more detailed than this and I’m hesitant to describe them too deeply right now. That said, I’m actually very excited about how the various components within the engine will work when damaged, and how the pilot will deal with the situation. Considering the plasma can reach temps of nearly 1,000,000 Kelvin, you could imagine what might happen if the superconductor even partially failed for a few moments–how might you deal with that to save the ship?
The thruster system is similar in design, except that the EM field contains the plasma and routes it to various nozzles as needed….
And that’s about it for now. In the next two weeks I need to get the controls implemented for the new systems, and continue work on the station interior. Otherwise, I’d like to take a moment to say Happy Holidays to everyone who celebrates, for whatever it is you celebrate. For myself, Christmas is almost here, and I’ll be taking a couple days off to spend with family.
I hope everyone has a safe and merry holiday season Cheers….