![](https://forum.kerbalspaceprogram.com/uploads/set_resources_17/84c1e40ea0e759e3f1505eb1788ddf3c_pattern.png)
![](https://forum.kerbalspaceprogram.com/uploads/set_resources_17/84c1e40ea0e759e3f1505eb1788ddf3c_default_photo.png)
xEvilReeperx
Members-
Posts
894 -
Joined
-
Last visited
Content Type
Profiles
Forums
Developer Articles
KSP2 Release Notes
Everything posted by xEvilReeperx
-
No, the button looks alright (you're talking about the AppLauncher button in Map View?). I think I've tracked the problem down. Did you have a bunch of rescue contracts offered and/or accepted? I completely forgot what happened when a contract to rescue a Kerbal is offered: they're added to your roster so you don't accidentally (intentionally?) hire a Kerbal of the same name and complete the contract with an imposter. It looks like the way I handle assigned kerbals is different than the game, so they mysteriously appear when they shouldn't. I'll fix that right up and hopefully the problem will be solved
-
This led to me a clue, but I seem to be missing one of your mods dealing with contracts since I get a NRE while saving contracts which hoses the game state. Which mods do you have installed, other than FC? I've got this list based on your save so far: Dmagic Orbital Science Kethane FinePrint RealRoster FinalFrontier SCANsat
-
I haven't been able to reproduce it so it might be some special factor. Can you tell me (as best you can remember) any details that might help? Specifically, which command pod the crew member got out of, which body the ship was orbiting and orbit altitude, and anything else that might be related (especially mods related to crew, like life support or crew management). If you happen to have the logs saved somewhere or can replicate the problem, that'd be great too!
-
Something's gone wrong when loading a ScenarioModule. This looks suspicious: NullReferenceException: Object reference not set to an instance of an object at TarsierSpaceTech.TSTProgressTracker.OnLoad (.ConfigNode node) [0x00000] in :0 at ScenarioModule.Load (.ConfigNode node) [0x00000] in :0 at ScenarioRunner.AddModule (.ConfigNode node) [0x00000] in :0 at ProtoScenarioModule.Load (.ScenarioRunner host) [0x00000] in :0 at ScenarioRunner+.MoveNext () [0x00000] in :0 If this exception interrupted KSP before it created the ProfileManager, ScienceAlert will never start and you may have other problems related to ScenarioModules (asteroids not spawning, progress not being tracked, etc). Could you try removing that particular mod temporarily? If that doesn't fix it, let me know Can you provide more detail? Are you saying you clicked EVA report and your crewman vanished into nothing? Anything suspicious in the log? As far as I know, the method I use to do this is exactly equivalent to clicking the EVA button in the interface
-
The scene is often rotated and the camera moved to make it look like "up" is up when the reality is you're perched like a fly on the side of a ball at KSP. Here's an example that captures what you're trying to do (if I read the intent correctly): [KSPAddon(KSPAddon.Startup.Flight, false)] class LineDrawer : MonoBehaviour { LineRenderer up, right, forward, sky; Transform owner; private System.Collections.IEnumerator Start() { while (!FlightGlobals.ready) yield return 0; var rt = FlightGlobals.ActiveVessel.rootPart.transform; forward = MakeLine(rt, Color.blue); right = MakeLine(rt, Color.red); up = MakeLine(rt, Color.green); sky = MakeLine(rt, Color.yellow); sky.SetWidth(0.2f, 0.1f); owner = rt; } private LineRenderer MakeLine(Transform parent, Color color) { GameObject line = new GameObject(); line.transform.parent = parent; var r = line.AddComponent<LineRenderer>(); r.useWorldSpace = true; // ignores own position, just use coordinates in worldspace as given r.SetWidth(1f, 0.01f); r.SetVertexCount(2); r.material = new Material(Shader.Find("Particles/Additive")); r.SetColors(color, color); return r; } private void Update() { if (!FlightGlobals.ready) return; up.SetPosition(0, owner.position); up.SetPosition(1, owner.position + owner.up * 5f); right.SetPosition(0, owner.position); right.SetPosition(1, owner.position + owner.right * 5f); forward.SetPosition(0, owner.position); forward.SetPosition(1, owner.position + owner.forward * 5f); sky.SetPosition(0, owner.position); sky.SetPosition(1, owner.position + FlightGlobals.upAxis * 10f); } }
-
[0.25] Aligned/Formatted Currency Indicator
xEvilReeperx replied to xEvilReeperx's topic in KSP1 Mod Releases
Aaaaand updated for 0.25 -
Those are usually from rescue type contracts. Do you recognize any of them as ones you've fired/retired? Under the hood, FireCrew treats everybody you've fired or retired as dead -- they're not actually deleted or removed from the roster specifically to be as compatible as possible and to avoid losing ribbons. If RealRoster or FinalFrontier are respawning them and ignoring their respawn times, you could end up with a situation pictured in your screenshot. I'll have a look at it. Thanks
-
[0.25] Aligned/Formatted Currency Indicator
xEvilReeperx replied to xEvilReeperx's topic in KSP1 Mod Releases
Yep, it's the very next thing on my todo list. It should be a simple fix like FireCrew, Squad just rearranged the UI hierarchy a bit -
Does it revert to default on a ship you've been flying or on new ships? Newly launched ships will start with the "default" profile; you can overwrite it with a modified version to start all ships off with your preferred settings. If it's on a ship you've been flying (and didn't revert your safe on), I'd be interesting in your logs and/or any error/warnings that ScienceAlert displays in the Alt+F2 window. That might point me in the right direction
-
If you have enabled SCANsat integration, ScienceAlert won't alert you about biome-dependent experiments if you don't have scan data for the area of the body you're orbiting. If you're seeing "Data not found" and you do NOT have SCANsat integration enabled then something is broken and I'd like to hear more
-
Closing the RevealPart Window
xEvilReeperx replied to Crzyrndm's topic in KSP1 C# Plugin Development Help and Support
I haven't tried them but there a few entries in PartListToolTips that look interesting and might work: PartListToolTips.HideTooltip(), two versions PartListToolTips.displayTooltip -
1.8rc1 is released. Consider this to be a beta version since it's only seen a few hours of actual ingame testing. It shouldn't be possible to ruin a save with it but make a backup just in case I decided to axe some features intended for this version such as recovery method (transmission/return), a more robust debug window and another small feature for the sake of getting something useable since everybody has been waiting so long already. I'll update the OP with more info tomorrow since it's late and I'm tired, but here's a quick rundown on how profiles work: There are two types of profile: Vessel-specific profiles, denoted by asterisks, and Stored profiles Vessel-specific profiles are what they sound like. You can toggle a particular experiment off, change filter or threshold settings, animation options and such for a specific vessel. You don't need to save these with the disk button; just flip the options you want and it'll be remembered for that vessel. Stored profiles are shared across all vessels. If you save a vessel-specific profile, it will become a stored profile. If you overwrite an existing profile, any other ships set to use the same profile (and aren't vessel-specific, remember the asterisks) will inherit those changes.
-
You were pretty close, though. You built your new AnimationStates out of empty clips so naturally you won't be seeing any animation. It works as expected, with the single gotcha being that since your PartModule isn't attached to the same GO as the Animation you're messing with, the message sent from an AnimationEvent won't go to your script automatically. Here's an example that tweaks the Communotron for fun: class JellyListener : MonoBehaviour { private void MethodSentOnAnimationsGameObject() { // just forward it GetComponentInParent<JellyfishDish>().SendMessage("JellyfishOpen"); } } class JellyfishDish : PartModule { new Animation animation; public override void OnAwake() { base.OnAwake(); print("Jellyfish awake"); animation = part.FindModelAnimators().SingleOrDefault(); int frames = (int)(animation.clip.length * animation.clip.frameRate); animation.AddClip(animation.clip, "Jellyfish", (int)(frames * 0.7) /* selected arbitrarily */, frames); AnimationState jellyfish = animation["Jellyfish"]; jellyfish.normalizedSpeed *= 3f; jellyfish.clip.AddEvent(new AnimationEvent() { time = 0f, functionName = "MethodSentOnAnimationsGameObject" }); jellyfish.wrapMode = WrapMode.PingPong; animation.gameObject.AddComponent<JellyListener>(); // listens for our event } [KSPEvent(active = true, guiActive = true, guiActiveEditor = true, guiName = "Deploy the Jellyfish")] public void JellyfishDeploy() { animation.Play("Jellyfish"); } private void JellyfishOpen() { ScreenMessages.PostScreenMessage("Jellyfish!", .5f, (ScreenMessageStyle)UnityEngine.Random.Range(0, 3)); print("JellyfishOpen event"); } } [KSPAddon(KSPAddon.Startup.MainMenu, true)] class InsertPartModule : MonoBehaviour { private void Start() { PartLoader.getPartInfoByName("commDish").partPrefab.AddModule("JellyfishDish"); } }
-
Do you have the part and config you could post? My snippet only prints which components are attached to a GameObject and its children, nothing more. If you're getting an animation to play at all then it won't help you and you're already past the "are we sure this part HAS an animation?" part of debugging
-
Well, it's looking at things on a per-sample basis already. "Mystery goo in low orbit over Kerbin's shores" is completely separate from "Mystery goo in low orbit over Kerbin's grasslands". At "not maxed", you'll be alerted any time taking a sample for that specific experiment + body + situation (if applicable) + biome (if applicable) would result in a report that, once recovered, would be worth a non-zero amount of science after accounting for any science already gathered for that subject plus any other duplicate onboard samples. There's surely a better way to convey what's happening in the UI so if you have any suggestions I'd be interested in them
-
The old version shouldn't be doing that (unless you've configured it do so). Can you provide more detail? Specifically, which experiment(s) were being alerted and what your filter method was. This usually happens when you've configured SA to alert you for "not maxed" experiments -- SA is doing what it's supposed to, and any time you have a) a particular experiment available and using that experiment will result in a non-zero science result after calculating the value of any other similar samples onboard then you'll be alerted. You can use the min threshold to filter out small report values or step down the filter method to something like <90% which should be ideal for most cases unless you're trying to wring every last science point out of a particular experiment