Jump to content

[WIP] (1.9.1 - 1.12+) TrekDrive - a Star Trek-like Warp Drive by ShadowWorks v0.99.1w NX-Class (10/08/2021)


TheShadow1138

Recommended Posts

On 7/6/2021 at 6:19 PM, Puggonaut said:

All good apart from the last episode , which sucks :mad:

I agree, the last episode was disappointing, especially knowing some of the things they were going to do in season 5.  It's one of those instances, I think, where the production staff were told "this is all you get", and had to put something together.

Link to comment
Share on other sites

Coding Update:  Work continues on the impulse engine code.  I've made some progress.  Using the shuttlepod as the test-bed I now have it lifting off vertically with the ability to switch between "Takeoff" and "Landing" modes.  The "Landing" mode doesn't work yet, and it doesn't hover yet, but I'm hopeful that I can get a decent hover.  The trick is getting a good acceleration profile, especially for the landing, takeoff isn't as much of an issue since you'd likely start accelerating forward and further upward after clearing the ground.  I was wanting to use continuous functions for the acceleration profile, but I'm going to move (at least for now) to piecewise linear functions to dial in the takeoff, hover, and landing.  This, I believe, will make it easier to dial it in and if I can move to continuous functions after I have the behavior correct, then I could go that way.

It's not much progress, but it was quite satisfying to see the shuttle pod lift vertically and stable using one line of code to apply a force to the vessel center of mass.

Link to comment
Share on other sites

Update:  I have gotten the impulse engines working!  They will default to takeoff when staged and the ship will automatically lift upwards when on the surface, exactly counter to gravity.  Landing also works by slowing the vertical velocity to 5.0m/s.  In my early testing with the shuttlepod slowing to a vertical speed of about 100m/s by the time one reaches 500m above the surface (radar altitude), the shuttlepod's engine will be able to slow the pod down to 5m/s to allow a soft landing.  Once radar altitude is 0m, the engine stops applying thrust, but does not deactivate the engine.  If you were to immediately switch to "Takeoff" mode, it would begin lifting off the ground again.

I also have the normal thrusting code working allowing a full test of the shuttlepod as well as the NX itself.  It is possible to get the NX to orbit from the runway, but it must be done slowly, almost agonizingly so.  It would have to be done carefully and applying too much thrust too close to the ground causes the game to crash, but only with the NX.  I believe that since the ship experiences drag while in atmosphere that applying more than about 1/4 throttle causes the ship to flip or somehow violently contact the ground and sends the components off at excessively high velocities causing the game to crash.  Once above say 1000m it is safe to apply more throttle to the NX, and in space there is nothing to worry about.

There's still some tweaking to do to try and get the fuel gauge to draw when the engines are staged, and with the warp drive system to implement the new system of resource utilization.  I also need to implement a basic bussard collector module for those who don't have KSPIE for its collector.

Beyond the Code:  Still getting the parts completely behaving as intended in-game.  I wanted to use part variants (stock or B9PartSwitch) for the nacelles and impulse engines, but ran into an issue with the stock ModulePartVariant where my plugin wouldn't animate the emissive of the starboard nacelle because it was being loaded second.  So, I switched the nacelles to separate part configs, but thought that ModuleAnimateThrottle would behave differently, but I was wrong.  Consequently only the port impulse engines will glow as they are throttled, even after switching to B9PartSwitch.  So, it looks like the two main and two secondary impulse engines will need to be separate parts to work properly, but I'm gonna keep working on it.

In the meantime, here are some screenshots of the non-standard NX-class variants:

NX-03 Challenger

AIEmFsB.png

ui5mCB9.png

j2AQ9Qi.png

NX-07 Buran

ItVRuXJ.png

wILn3VK.png

Pp12sl9.png

N2j5FNw.png

I do need to tweak the spotlights because they are interfering with one another, and shining onto the planet from orbit.

Link to comment
Share on other sites

20 hours ago, TheShadow1138 said:

Update:  I have gotten the impulse engines working!  They will default to takeoff when staged and the ship will automatically lift upwards when on the surface, exactly counter to gravity.  Landing also works by slowing the vertical velocity to 5.0m/s.  In my early testing with the shuttlepod slowing to a vertical speed of about 100m/s by the time one reaches 500m above the surface (radar altitude), the shuttlepod's engine will be able to slow the pod down to 5m/s to allow a soft landing.  Once radar altitude is 0m, the engine stops applying thrust, but does not deactivate the engine.  If you were to immediately switch to "Takeoff" mode, it would begin lifting off the ground again.

I also have the normal thrusting code working allowing a full test of the shuttlepod as well as the NX itself.  It is possible to get the NX to orbit from the runway, but it must be done slowly, almost agonizingly so.  It would have to be done carefully and applying too much thrust too close to the ground causes the game to crash, but only with the NX.  I believe that since the ship experiences drag while in atmosphere that applying more than about 1/4 throttle causes the ship to flip or somehow violently contact the ground and sends the components off at excessively high velocities causing the game to crash.  Once above say 1000m it is safe to apply more throttle to the NX, and in space there is nothing to worry about.

There's still some tweaking to do to try and get the fuel gauge to draw when the engines are staged, and with the warp drive system to implement the new system of resource utilization.  I also need to implement a basic bussard collector module for those who don't have KSPIE for its collector.

Beyond the Code:  Still getting the parts completely behaving as intended in-game.  I wanted to use part variants (stock or B9PartSwitch) for the nacelles and impulse engines, but ran into an issue with the stock ModulePartVariant where my plugin wouldn't animate the emissive of the starboard nacelle because it was being loaded second.  So, I switched the nacelles to separate part configs, but thought that ModuleAnimateThrottle would behave differently, but I was wrong.  Consequently only the port impulse engines will glow as they are throttled, even after switching to B9PartSwitch.  So, it looks like the two main and two secondary impulse engines will need to be separate parts to work properly, but I'm gonna keep working on it.

In the meantime, here are some screenshots of the non-standard NX-class variants:

NX-03 Challenger

AIEmFsB.png

ui5mCB9.png

j2AQ9Qi.png

NX-07 Buran

ItVRuXJ.png

wILn3VK.png

Pp12sl9.png

N2j5FNw.png

I do need to tweak the spotlights because they are interfering with one another, and shining onto the planet from orbit.

i cannot wait to have this in game. i genuinely am so god damned amazed by how good this looks. thank you for doing this shadow!

Link to comment
Share on other sites

15 hours ago, Puggonaut said:

Coming along nicely , can't wait to have this in game .

 

3 hours ago, bjornadri said:

i cannot wait to have this in game. i genuinely am so god damned amazed by how good this looks. thank you for doing this shadow!

I can't wait for everyone to get their hands on this too.

I did solve the game crashes.  Apparently the configs I copied to get the parts in-game had crash tolerances, breaking force, and breaking torque values that were extremely small sometimes causing apparent breakages that would send parts flying off at game-breaking speeds causing the crashes.  Increasing these values significantly (multiplying by 10,000 or 100,000) solved that issue, and also solved an issue with the ventral mounted nacelle variant where going full throttle on the impulse engines would cause the ship to break apart.  Now, I have no issues with launch clamps causing game crashes and the ships remain in one piece at full impulse and max warp, not that warp speed was any problem.

I was going to let this be a surprise for release, but it looks soooo good, I can't wait to share any longer...

cgicSEw.png

RI4HVZx.png

DjWl6nC.png

ENK71uu.png

Edited by TheShadow1138
Link to comment
Share on other sites

8 hours ago, TheShadow1138 said:

 

I can't wait for everyone to get their hands on this too.

I did solve the game crashes.  Apparently the configs I copied to get the parts in-game had crash tolerances, breaking force, and breaking torque values that were extremely small sometimes causing apparent breakages that would send parts flying off at game-breaking speeds causing the crashes.  Increasing these values significantly (multiplying by 10,000 or 100,000) solved that issue, and also solved an issue with the ventral mounted nacelle variant where going full throttle on the impulse engines would cause the ship to break apart.  Now, I have no issues with launch clamps causing game crashes and the ships remain in one piece at full impulse and max warp, not that warp speed was any problem.

I was going to let this be a surprise for release, but it looks soooo good, I can't wait to share any longer...

cgicSEw.png

RI4HVZx.png

DjWl6nC.png

ENK71uu.png

OMG YES...........The Refit lives .................Yehaa .

Link to comment
Share on other sites

12 hours ago, Puggonaut said:

OMG YES...........The Refit lives .................Yehaa .

It does indeed, and warp 7 will get you out of the system very soon.  This still allows one to use the warp 5 engine as a backup drive, though it would probably be a fabricated situation unless system failures are used.  I can't remember off the top of my head if system failures were implemented in stock, but I do remember there being a mod for that.  I'm not sure, but once this is released it will be one of the few games with a playable NX Refit.  The only other one I can think of is Star Trek Online.

On another note, I've gotten the plugin set up so that all actions in the PAWs related to the warp drive (coils, core, generator) as well as the impulse drive can be set in action groups!  So, using the drive will be much easier.  I've also added the ability to discharge the warp coil for those who want to simulate a full shutdown of the ship.  I may publish an update with the updated plugin and the shuttlepod while I finish finalizing the NX for the full 1.0 release.

Link to comment
Share on other sites

12 hours ago, TheShadow1138 said:

It does indeed, and warp 7 will get you out of the system very soon.  This still allows one to use the warp 5 engine as a backup drive, though it would probably be a fabricated situation unless system failures are used.  I can't remember off the top of my head if system failures were implemented in stock, but I do remember there being a mod for that.  I'm not sure, but once this is released it will be one of the few games with a playable NX Refit.  The only other one I can think of is Star Trek Online.

On another note, I've gotten the plugin set up so that all actions in the PAWs related to the warp drive (coils, core, generator) as well as the impulse drive can be set in action groups!  So, using the drive will be much easier.  I've also added the ability to discharge the warp coil for those who want to simulate a full shutdown of the ship.  I may publish an update with the updated plugin and the shuttlepod while I finish finalizing the NX for the full 1.0 release.

about the shuttlepods, i'm very intrigued to see the docking mechanics work. is that aspect of the mod ready to be shown off by any chance?

Link to comment
Share on other sites

6 hours ago, bjornadri said:

about the shuttlepods, i'm very intrigued to see the docking mechanics work. is that aspect of the mod ready to be shown off by any chance?

Not yet.  I want to get the NX behaving as intended before really tackling the docking of the shuttlepod.

Link to comment
Share on other sites

TrekDrive v0.9w

v0.9w - Shuttlepod & Impulse Engine Release

* Updated the TrekDrive.dll
    * All TrekDrive buttons/toggles can now be set as Action Groups
    * SW_ModuleImpulseEngine Added - automatic takeoff and landing modes when sub-orbital, it will not automatically land from orbit.
    * SW_ModuleBussardCollector Added - When the collector is activated it will collect at a random rate for a random period of time before choosing another random rate and period of time.  Collects LqdDeuterium and Antimatter with LqdDeuterium collecting at a higher rate.  Collection will only occur at sub-light velocities.
* Updated Waterfall version.
* Updated Waterfall effect on the Phoenix Launcher Main Engine to correct a position issue.
* Added a Waterfall effect to the Phoenix - visible when traveling at warp; the effect is based on the streaking stars warp effect from TNG - VOY and ENT.
* Added Enterprise-era Shuttlepod
    * Shuttlepod main body - holds 5 kerbals with airlocks on both sides (No IVA)
    * Shuttlepod Impulse Engine

__________________________________________________________________________________________________________________________________

In other news...
I have finally gotten around to updating my KSP to 1.12.1 and ran into a problem that I found out about over on BDB's thread.  It seams that the changes in the docking port module (or perhaps some other bug in 1.12.1) there is an issue with floppy joints.  In 1.11.2 the NX was solid as a rock with no auto strutting or any joint reinforcement, but in 1.12.1 it flops around like a fish out of water.  I was able to fix it, however, by enabling "Rigid Attachment" in the PAW.  After a quick check of the KSP API I found that "rigidAttachment" is something we can set in the CFG files, it just defaults to "false".  So, I set "rigidAttachment = true" in all of the NX part CFGs, just to be safe, and tested it out and lo and behold it worked.  The NX is back to being solid as a rock.  I still have some work left to do to get it ready for release

Edited by TheShadow1138
Link to comment
Share on other sites

Is there a trick to using the shuttle or the impulse engine? Anything more than 30% throttle and the shuttle starts flipping. If I attach the engine to my space planes the autopilot pulls it off the ground with the plane hanging under it.

Link to comment
Share on other sites

6 hours ago, kowkillar said:

Is there a trick to using the shuttle or the impulse engine? Anything more than 30% throttle and the shuttle starts flipping. If I attach the engine to my space planes the autopilot pulls it off the ground with the plane hanging under it.

You'll definitely need to us SAS, even during takeoff.  The plane is probably hanging under the engine because of atmospheric drag and the location of the center-of-mass being closer to the engine.  In atmosphere flying can be finicky, especially in the denser part of the atmosphere because of drag.  The same behavior would probably occur if a stock liquid engine were given this much power.  I can do more testing to see if it can be made easier to deal with, but no promises that it will get easier.  I know that with SAS and RCS activated that the shuttlepod can be flown to orbit easily.

Link to comment
Share on other sites

On 7/17/2021 at 10:56 AM, TheShadow1138 said:

You'll definitely need to us SAS, even during takeoff.  The plane is probably hanging under the engine because of atmospheric drag and the location of the center-of-mass being closer to the engine.  In atmosphere flying can be finicky, especially in the denser part of the atmosphere because of drag.  The same behavior would probably occur if a stock liquid engine were given this much power.  I can do more testing to see if it can be made easier to deal with, but no promises that it will get easier.  I know that with SAS and RCS activated that the shuttlepod can be flown to orbit easily.

The addition of more powerful SAS helped tremendously. I didn't realize that the shuttlepod had RCS.  

Link to comment
Share on other sites

Progress:  I had an issue docking the shuttlepod to the NX.  After docking I wasn't able to engage the warp drive, but I tracked it down to how I was initializing the drive in my plugin, I was using the active vessel instead of "this.vessel".  Long story short, I fixed it and was able to dock fly a shuttlepod from the surface of Kerbin, dock with a waiting NX-class starship in orbit, engage the warp drive and fly to Duna orbit without issue.  I then warped back to Kerbin, undocked the shuttlepod, and safely landed at the KSC.  I haven't messed with the rotation ability of the docking ports just yet, but I'll get to that.

I've also been able to get the Waterfall effect for the streaking stars at warp to be visible from inside the Phoenix.  It was actually a rather quick fix by making a new model to go with the custom texture.  It was pretty cool to see the streaking stars from inside the Phoenix's cockpit.

IVA Question:  Speaking of the warp stars being visible from the IVA of the Phoenix, I have a question.  How important are bridge IVAs for the NX and other warp-capable starships?  I had planned on making a bridge IVA for each ship I make (NX, Constitution, whatever comes after), and I have started the NX bridge, but as I work on it it seems daunting, even though I planned on simplifying the design.  So, I wanted to gauge how important y'all think the IVAs are for these ships, especially since, on the whole, the bridge doesn't actually have a windowed view out of the ship.  If y'all don't consider them important for these ships, then I'll focus on the ships themselves and maybe work on IVAs as I get inspired, or just ignore them except for smaller craft, like shuttlecraft.

Link to comment
Share on other sites

1 hour ago, TheShadow1138 said:

So, I wanted to gauge how important y'all think the IVAs are for these ships

Shuttle craft yes... but make the panelling all LCARS TNG style, not Enterprise... save yourself the real hassel of props...

IMHO all kerbal crew should have stations but I'd not worry.   An IVA for the shuttle bay to watch incoming craft and the bridge is enough.

Hpw many kerbals does it hold?

Link to comment
Share on other sites

9 minutes ago, theJesuit said:

Shuttle craft yes... but make the panelling all LCARS TNG style, not Enterprise... save yourself the real hassel of props...

IMHO all kerbal crew should have stations but I'd not worry.   An IVA for the shuttle bay to watch incoming craft and the bridge is enough.

Hpw many kerbals does it hold?

I was planning an LCARS-style for the bridge and shuttlepod for that very reason.  I hadn't considered doing an IVA for the shuttle bay to watch incoming craft, just the bridge.

As for how many kerbals it holds, I haven't given it anything beyond the bridge crew in terms of crew capacity.  The NX in the show, I believe is stated to have something like 85 crew on board, but that might be a bit too much for KSP, but I'm not sure.

Link to comment
Share on other sites

 

1 hour ago, TheShadow1138 said:

I haven't given it anything beyond the bridge crew

85.  Too many I suggest.

Go for bridge crew with a couple of observers, shuttlecraft tourists to sit on the bridge.

captain (pilot)

Helm (pilot)

Comms (sci)

Science (sci)

Engineering (eng)

Logistics (eng)

Two observers (red shirt tourists)

That's a compliment of 8 which is kinda 1/10 'RL' which is great for a stock sized replica!

How many does the shuttlecraft hold? I'm away from home currently so can't just download and check :/

Can you make the engines only run with a minimum compliment, say 3 engineering, helm and one other?

Link to comment
Share on other sites

1 hour ago, TheShadow1138 said:

I was planning an LCARS-style for the bridge and shuttlepod for that very reason.  I hadn't considered doing an IVA for the shuttle bay to watch incoming craft, just the bridge.

As for how many kerbals it holds, I haven't given it anything beyond the bridge crew in terms of crew capacity.  The NX in the show, I believe is stated to have something like 85 crew on board, but that might be a bit too much for KSP, but I'm not sure.

maybe 30-40 kerbal crew? 

Edited by OrdinaryKerman
Link to comment
Share on other sites

17 hours ago, theJesuit said:

 

85.  Too many I suggest.

Go for bridge crew with a couple of observers, shuttlecraft tourists to sit on the bridge.

captain (pilot)

Helm (pilot)

Comms (sci)

Science (sci)

Engineering (eng)

Logistics (eng)

Two observers (red shirt tourists)

That's a compliment of 8 which is kinda 1/10 'RL' which is great for a stock sized replica!

How many does the shuttlecraft hold? I'm away from home currently so can't just download and check :/

Can you make the engines only run with a minimum compliment, say 3 engineering, helm and one other?

The shuttlecraft holds 5, the number they could hold in the show, which makes it good for a jaunt down to the surface for away missions until I implement a transporter, which is planned at the moment.

It might be possible to prevent the warp drive from operating unless a minimum compliment is aboard, but that would just add another thing users would have to keep track of when playing.  I could see someone warping to a system, and sending down an away team planning to warp somewhere else and pick them up later, only to forget and send the wrong crew members down and not be able to go to warp and have to bring them back up and switch them out.  In the long run it might be more aggravation than fun to do.

17 hours ago, OrdinaryKerman said:

maybe 30-40 kerbal crew? 

That may be a good number, especially if one was trying to populate a colony, or planning on long-term away missions.  I'm still mulling the number, but it definitely won't be 85, 40 might be a good upper limit for consideration.

Link to comment
Share on other sites

3 hours ago, PalowPower said:

Hey one question, what is the .DS_Store file in the Mod folder? Do i have to put it in GameData?
CTsGq8r.png

The .DS_Store file is a macOS specific file that is similar to Microsoft's desktop.ini file, holding information on icon position, background image, and the like.  It is not part of the mod and can be safely ignored.  The .DS_Store file is hidden by default on macOS so I didn't think about it showing up for players using Windows, or possibly Linux.

Just to be clear, the .DS_Store file is not part of the mod and doesn't need to be put anywhere.  It's a file that my OS autogenerates for every directory.  You can safely delete the .DS_Store file.

Edited by TheShadow1138
Link to comment
Share on other sites

Bridge IVA Progress:  Just wanted to show y'all the progress that's being made on the bridge IVA.  The geometry is nearly complete.  It's not an exact recreation of the bridge from the show, but it's pretty close I think.  I've slightly reworked the science and ops consoles to be more ergonomic as the ones in the show were really only useful in the center and set dressing on the sides.  My redesign is more ergonomic and would allow a user to use three screens instead of just one.

9cwxmZH.png

I'm going to make simple non-functional display props in kind of an Enterprise-LCARS style.  This way there won't be a lot of props to place and should make building out the IVA a faster process.

Link to comment
Share on other sites

Bridge IVA Progress:  I've got the IVA geometry and textures done, but I don't want to show any pics of the textured bridge until I've got the IVA built out with the screen and console props.  On that note, I've got the props modeled, since they're just LCARS-like screens, each one is just a simple rounded off panel.  I'm currently working on the textures for the props and have three of them completed:  A generic start screen for a large wall panel, the Master Systems Display, and the helm console.  I'm trying to stick somewhat to the Enterprise screen style, though I am using the LCARS font.  I'm also going for a plausibly workable UI layout making it a bit more realistic without extraneous buttons with random numbers making the console borderline or completely indecipherable.

Generic Start Screena9TOMDs.png

Master Systems Display:  (Uses orthographic renders of my NX model)
lAJxlfZ.png

Helm Console:
GJwP0qK.png

Link to comment
Share on other sites

7 hours ago, TheShadow1138 said:

Bridge IVA Progress:  I've got the IVA geometry and textures done, but I don't want to show any pics of the textured bridge until I've got the IVA built out with the screen and console props.  On that note, I've got the props modeled, since they're just LCARS-like screens, each one is just a simple rounded off panel.  I'm currently working on the textures for the props and have three of them completed:  A generic start screen for a large wall panel, the Master Systems Display, and the helm console.  I'm trying to stick somewhat to the Enterprise screen style, though I am using the LCARS font.  I'm also going for a plausibly workable UI layout making it a bit more realistic without extraneous buttons with random numbers making the console borderline or completely indecipherable.

Generic Start Screena9TOMDs.png

Master Systems Display:  (Uses orthographic renders of my NX model)
lAJxlfZ.png

Helm Console:
GJwP0qK.png

Getting really excited about this .

First thing i'm gonna do on release is build a spacedock in orbit .

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...