KSP Interstellar Extended

KSP Interstellar Extended

1M Downloads

Positron and antimatter propulsion bug and "Simulation Time exceeded" warning in console.

Spacemike opened this issue ยท 10 comments

commented

So, after the recent update something went a bit wrong with Positron propulsion systems, both the thermal and plasma engines seem to freeze and lock up at 0 kN of thrust with a "Nominal" Status (but the animation still plays) and the reactor stays active at 0% (but even if I edit the minimum throttle of the reactor to something, that only causes the reactor to overheat) with the message "Warning: [StageInfo]: Simulation Time exceeded" starts appearing in console. A new one of those messages appears about every one or two seconds while the engine is running, however, is the throttle is put to 0 or the engine is not active, the warning does not appear. Although, I am not that familiar with the inner workings of the way the engines were programmed, but based on my best guess is that something is going wrong with the calculations that determine what thrust the engine should produce, I say that because fusion drives work just fine, and if I edit the antimatter engine to work with thermal or plasma, those engines do not function properly and the same error ensues, but if I use the Magnetic Nozzle on the antimatter reactor, it works fine, despite still having the same simulation warning (although, for some reason, they do get a "too dense atmospherere" (that is how it is spelled on the status) warning, despite being 1M above the surface). I also tested the Magnetized Target Fusion Reactor, and it worked just fine, besides a single simulation time warning when I first turned it on. I'm not sure if anyone else has encountered these issues, but, unless the positron method of propulsion changed in the last update (which the changelog only showed a few minor updates), this seems like a bug to me that has to do with the "FNAntimatterReactor" module. Also, I tested this in a heavily modded game and a game with only the files in the "GameData" part of this mod (I also tried the curse forge version, but the result was the same) and the 1 DLC for the game (with the vanilla Squad folder still there too). I also included a little test craft that used the 3 thermal engines and the plasma engine in a setup that had worked before the update (along with a small MT Fusion Reactor on the side to show how it works fine), thanks for any assistance in this matter.
Positron Propulsion Tester.zip

commented

well at least I know "Simulation Time exceeded" is not a message from KSPIE but some other mod.

Are you sure you provide the positron antimatter with sufficient positron antimatter?

commented

Alrighty, it might be from Better Burn Time then (as it was part of both the github and cruseforge little modpack things)

And, yes, i am 100% sure it has the necessary positron fuel for 4 reasons:

  1. Before the update i had built several ships whose positron drive systems worked just fine,
  2. I can manually throttle up the reactor and overheat the ship with all the waste heat being produced, and
  3. I can attach a thermal generator to that very same Positron reactor that it attached to the engine and have it output energy just fine.
  4. The Positron reactor's status is: "Active (0.000%)", which shows that it is getting fuel, but that the engine isn't telling the reactor to start giving it power to create thrust.

EDIT: If there is some kind of debug mode to put the reactor in to help you identify the problem i would be more than happy to enable that and give you that data!

EDIT2: I also noticed that the Thermal Turbojet's Shutdown Engine button doesn't go away, whether or not that engine is active, if that helps with this issue at all.

commented

could you specify exactly how to reproduce the problem with minimum amount os part and steps

commented

Well, i'm using the latest version of KSP (1.51.2335 x64) for one, and, as for how i replicate it, i can't get positron drives to work in any kind of scenerio (other than as a generator), so the simplest thing would be:
[Air Intake] + [iHal] + [Positron tank (and set its fuel to max)] + [Positron Antimatter Reactor] + [Thermal Turbojet]
Or the air intake is replaced with like Helium or some other fuel. You could also put the iHal on top and the fuel tank below that, no matter what I have tried so far, the positron reactor doesn't seem to be receiving any kind of a signal or so from the Thermal Turbojet, I throttle up, but the reactor just sits at idle.

EDIT: Reinstall didn't help at all, but I did take this picture to show a bit more of the issue. You can see that I am fully throttled up, both the reactor and thermal turbojet are active and have plenty of fuel, but the reactor is not going about 0% and there is no thrust being produced.
20181108123147_1

commented

Alright, there appears to go something wrong during inititialisation of the stock enginemodule. In my own log, I get a System.ArgumentOutOfRangeException on the ModuleEngines. The problem appears to happen even before the engine controller is loaded. my guess is there is something else causing this

commented

Huh, that's weird, I wonder why it only happens for the positron drive system and not a Fusion-powered Thermal Turbojet. I hope it at least give some information on what/where the error is occurring at, but I would have to assume that it is in whatever ties the "FNAntimatterReactor" module with that engine Module, but I don't quite know much about how your code ties them together. I did notice the engine modules error, but that has to do with light FX and appears whenever the turbojet engine spawns in in the editor (and not the other 2 thermal engines), but if that was the issue then I would assume that the engine wouldn't work at all then, and just for the positron reactor. Not to mention, the issue happens with all 3 thermal engines and on the positron reactor, leading to me to believe that the issue lies within the reactor and not the engine itself, possibly whatever system is used for the reactor to receive the "throttle up" command from the engine, where the engine requests thermal power.

commented

Alright, I figured out what the problem is, the speed of the Positron antimatter reactor is 0. This is supposed to make it react instantly. It does for power production, but for propulsion is has the opposite effect, making it infinity slow to accelerate. A quick fix therefore is to open the config file and change reactorSpeedMult to 100

commented

Yes, got it fully fixed now. Funny how this bug got under the radar. I initially though it was a fuel problem, but after investigation I quickly discovered it was some sort of throttle issue. because the reactor power production is linked directly to engine throttle, it would not produce any power. Now it has the proper instant behavior like stock chemical engines, making it ideal for VTOL, which it is intended for.

commented

Glad to hear! and, yeah, bugs like this can easily go unnoticed for quite a long time until it actually starts creating a fairly obvious issue or bug, but at least it wasn't too difficult to debug, I do know that modding for several other games and such can be a nightmare. And, yeah, fuel can easily look like one of the most obvious issues with the positron reactor, as the default for the fuel tank is set to be 0 positrons, and the reactor has no built in storage, but the interface you made for the reactors makes it really easy to tell what's going on when it tells me "Positrons Depleted" and, yeah, I kinda guessed that there was some kind of linkage between the engine throttle and reactor, and I'm glad that this little bug helped clean up and fix that little linkage issue!

commented

That fixed it! thanks! that is quite the weird bug though, I guess just overtime the difference between the way power production and the way engines use the reactor's speed multiplier was never really an issue, as before now I think the lowest value the drive had been set to was 1, but at least now the cause of the issue is known and is able to be fixed!