NathanKell Posted February 23, 2015 Share Posted February 23, 2015 1. The only exceptions to the "is it in GameData" rule are:(a) if it's under a PluginData folder, the GameDatabase loader ignores it. That means the plugin has to load it manually, and you can't use MM to change it. (TACLS is an example)( even if a cfg is in GameData and not under a PluginData folder, a plugin may directly load the CFG, rather than load it through GameDatabase. Thus while you can change the values with MM it doesn't matter, because the plugin loads the file fresh from the drive every time it wants it. Fine Print (for 0.25) was an example of this; Arsonide kindly corrected this for .90.As to has/wildcard, there's a bug in .10 that Sarbian fixed for the next version that prevents it working. Eventually you will be able to do NODE[name],IDX:HAS[foo]But only in that order with the ,* or ,idx before the :HAS. Quote Link to comment Share on other sites More sharing options...
sarbian Posted February 23, 2015 Author Share Posted February 23, 2015 There is still a bug with that ? Crap Quote Link to comment Share on other sites More sharing options...
Tarheel1999 Posted February 23, 2015 Share Posted February 23, 2015 There is still a bug with that ? Crap I assume NK is referring to .11 which had the fix but wasn't officially published after Net-Burst reported a hang/crash. Quote Link to comment Share on other sites More sharing options...
sarbian Posted February 23, 2015 Author Share Posted February 23, 2015 The hunt for the elusive NullReferenceException continue in MM 2.5.12So far I have been unable to duplicate it here, even with all the cfg from someone who has it This version has even more logging.Edit: err. I meant 2.5.12 Quote Link to comment Share on other sites More sharing options...
sarbian Posted February 23, 2015 Author Share Posted February 23, 2015 (edited) I managed to duplicate the bug here by installing some of the plugin I saw in the logs of those with the error. The problem is that it did not help at all... It seems something is corrupting some config node and AFAIK it is not MM since they are already corrupted in the NEED check, before MM does much.The game ends up with node that look like that :RESOURCE{ name = Oxidizer amount = 7920 = 7920}And obviously it is not good. I also had a crash that make me think one of the mod is using a thread to access ConfigNode. I don't know which one yet and I can't just remove them one by one since I can't trigger the problem each time.Here are the mod I used. If you also have those crash post your log so I can see if you use some of those mods and make my list shorter.GameData\DDSLoader.dllGameData\ModuleManager.dllGameData\000_Toolbar\Toolbar.dllGameData\000_USITools\DynamicTanks.dllGameData\000_USITools\USITools.dllGameData\Chatterer\Plugins\Chatterer.dllGameData\Chatterer\Plugins\MiniAVC.dllGameData\Contracts Window\ContractsWindow.dllGameData\CrossFeedEnabler\Plugins\CrossFeedEnabler.dllGameData\DMagic Orbital Science\Plugins\DMagic.dllGameData\EditorExtensions\EditorExtensions.dllGameData\Firespitter\Plugins\Firespitter.dllGameData\Fusebox\Plugins\Fusebox.dllGameData\GCMonitor\GCMonitor.dllGameData\MechJeb2\Plugins\MechJeb2.dllGameData\JSI\RasterPropMonitor\Plugins\RasterPropMonitor.dllGameData\JSI\RasterPropMonitor\Plugins\MechJebRPM.dllGameData\KAS\Plugins\KAS.dllGameData\KerbalEngineer\KerbalEngineer.dllGameData\KerbalEngineer\MiniAVC.dllGameData\Kerbaltek\HyperEdit.dllGameData\PreciseNode\plugins\PreciseNode.dllGameData\ProceduralFairings\KSPAPIExtensions.dllGameData\ProceduralFairings\ProceduralFairings.dllGameData\RCSBuildAid\Plugins\RCSBuildAid.dllGameData\RCSBuildAid\Plugins\RCSBuildAidToolbar.dllGameData\Regolith\Regolith.dllGameData\SCANsat\Plugins\SCANsat.dllGameData\StageRecovery\StageRecovery.dllGameData\StockBugFixModules\AnchoredDecouplerFix.dllGameData\StockBugFixModules\ChuteQuickloadFixer.dllGameData\StockBugFixModules\CrewRosterFreezeFix.dllGameData\StockBugFixModules\EVAEjectionFix.dllGameData\StockBugFixModules\KerbalDebrisFix.dllGameData\StockBugFixModules\StickyLaunchPadFix.dllGameData\StockBugFixModules\SymmetryActionFix.dllGameData\Targetron\Plugins\Targetron.dllGameData\TextureReplacer\Plugins\TextureReplacer.dllGameData\TriggerTech\KerbalAlarmClock\KerbalAlarmClock.dllGameData\TriggerTech\KSPAlternateResourcePanel\KSPAlternateResourcePanel.dllGameData\TriggerTech\TransferWindowPlanner\TransferWindowPlanner.dllGameData\UmbraSpaceIndustries\Karbonite\Karbonite.dllGameData\UmbraSpaceIndustries\Kolonization\KolonyTools.dllGameData\UniversalStorage\MiniAVC.dllGameData\UniversalStorage\Plugins\AdvancedAnimator.dllEdit: I managed to trigger a related bug without MM, so I am quite sure it is one of those mods. Edited February 24, 2015 by sarbian Quote Link to comment Share on other sites More sharing options...
Tarheel1999 Posted February 24, 2015 Share Posted February 24, 2015 I'm not experiencing the problem that I know of but I can tell you what mods I don't have in that list (it's a short list). Fusebox precisenodestage recoverytargetrontransferwindowplanneradvancedanimatoruniversal storage mini-avc there are a couple of Firespitters in the wild right now and so I couldn't tell you if I have the same version. Quote Link to comment Share on other sites More sharing options...
RainDreamer Posted February 24, 2015 Share Posted February 24, 2015 Question: I am trying to modify a ModuleEngineFX module of an engine, but the atmospheric/velocity curves confuses me. Would something like this work, if I want to modify existing values after the first number in keys(the keys exist and I don't want to add more, I just want to change the ISP for different velocity and atmospheric level)?@MODULE[ModuleEnginesFX]{ @atmosphereCurve { @key = 0 360 @key = 0.1 390 @key = 1 500 } @velocityCurve { @key = 0 0.7 0 0 @key = 500 0.9 0 0 @key = 1000 1 0 0 @key = 3000 0.8 0 0 }} Quote Link to comment Share on other sites More sharing options...
sarbian Posted February 24, 2015 Author Share Posted February 24, 2015 If you keep the same number of key then you need to specify the key number.@MODULE[ModuleEnginesFX]{ @atmosphereCurve { @key,0 = 0 360 @key,1 = 0.1 390 @key,2 = 1 500 } @velocityCurve { @key,0 = 0 0.7 0 0 @key,1 = 500 0.9 0 0 @key,2 = 1000 1 0 0 @key,3 = 3000 0.8 0 0 }}If you need to change the number of keys then the best way is to delete them and recreate them.@MODULE[ModuleEnginesFX]{ @atmosphereCurve { !key,* = delete key = 0 360 key = 0.1 390 key = 1 500 } @velocityCurve { !key,* = delete key = 0 0.7 0 0 key = 500 0.9 0 0 key = 1000 1 0 0 key = 3000 0.8 0 0 }} Quote Link to comment Share on other sites More sharing options...
Olympic1 Posted February 24, 2015 Share Posted February 24, 2015 Can you update the OP with the newest MM dll? Quote Link to comment Share on other sites More sharing options...
sarbian Posted February 24, 2015 Author Share Posted February 24, 2015 No, since the last versions are for finding a bug. Quote Link to comment Share on other sites More sharing options...
Olympic1 Posted February 24, 2015 Share Posted February 24, 2015 Oh, ok then. Quote Link to comment Share on other sites More sharing options...
Zorbaq Posted February 24, 2015 Share Posted February 24, 2015 (edited) Here's my list.\GameData\ModuleManager.2.5.11.dll\GameData\ShowFPS.dll\GameData\000_Toolbar\Toolbar.dll\GameData\000_USITools\DynamicTanks.dll\GameData\000_USITools\USITools.dll\GameData\Chatterer\Plugins\Chatterer.dll\GameData\Chatterer\Plugins\MiniAVC.dll\GameData\Contracts Window\ContractsWindow.dll\GameData\CrossFeedEnabler\Plugins\CrossFeedEnabler.dll\GameData\DDSLoader\DDSLoader.dll\GameData\DMagic Orbital Science\Plugins\DMagic.dll\GameData\EditorExtensions\EditorExtensions.dll\GameData\EnvironmentalVisualEnhancements\Plugins\Clouds.dll\GameData\EnvironmentalVisualEnhancements\Plugins\Geometry.dll\GameData\EnvironmentalVisualEnhancements\Plugins\OverlayMgr.dll\GameData\EnvironmentalVisualEnhancements\Plugins\Terrain.dll\GameData\FerramAerospaceResearch\Plugins\FerramAerospaceResearch.dll\GameData\FerramAerospaceResearch\Plugins\ferramGraph.dll\GameData\FerramAerospaceResearch\Plugins\Scale_Redist.dll\GameData\Firespitter\Plugins\Firespitter.dll\GameData\Fusebox\Plugins\Fusebox.dll\GameData\InFlightWaypoints\InFlightWaypoints.dll\GameData\JSI\RasterPropMonitor\Plugins\MechJebRPM.dll\GameData\JSI\RasterPropMonitor\Plugins\RasterPropMonitor.dll\GameData\Kaboom\plugins\Kaboom.dll\GameData\KAS\Plugins\KAS.dll\GameData\KerbalEngineer\KerbalEngineer.dll\GameData\KerbalEngineer\MiniAVC.dll\GameData\KineTechAnimation\Plugins\KineTechAnimation.dll\GameData\Kiwa\Plugins\ShipListMod.dll\GameData\Klockheed_Martian_Gimbal\Plugins\km_Gimbal.dll\GameData\MechJeb2\Plugins\MechJeb2.dll\GameData\Nereid\FinalFrontier\Plugins\FinalFrontier.dll\GameData\PartAngleDisplay\PartAngleDisplay.dll\GameData\PreciseNode\plugins\PreciseNode.dll\GameData\ProceduralFairings\KSPAPIExtensions.dll\GameData\ProceduralFairings\ProceduralFairings.dll\GameData\QuickSearch\Plugins\QuickSearch.dll\GameData\RCSBuildAid\Plugins\RCSBuildAid.dll\GameData\RCSBuildAid\Plugins\RCSBuildAidToolbar.dll\GameData\Regolith\Regolith.dll\GameData\ResGen\ResGen.dll\GameData\S.A.V.E\Plugins\S.A.V.E.dll\GameData\SCANsat\Plugins\SCANsat.dll\GameData\SmokeScreen\SmokeScreen.dll\GameData\StageRecovery\StageRecovery.dll\GameData\StockBugFixModules\AnchoredDecouplerFix.dll\GameData\StockBugFixModules\ChuteQuickloadFixer.dll\GameData\StockBugFixModules\CrewRosterFreezeFix.dll\GameData\StockBugFixModules\EVAEjectionFix.dll\GameData\StockBugFixModules\KerbalDebrisFix.dll\GameData\TechManager\TechManager.dll\GameData\TextureReplacer\Plugins\TextureReplacer.dll\GameData\TriggerTech\KerbalAlarmClock\KerbalAlarmClock.dll\GameData\TriggerTech\KSPAlternateResourcePanel\KSPAlternateResourcePanel.dll\GameData\TriggerTech\TransferWindowPlanner\TransferWindowPlanner.dll\GameData\UmbraSpaceIndustries\Karbonite\Karbonite.dll\GameData\UmbraSpaceIndustries\Kolonization\KolonyTools.dll\GameData\UniversalStorage\MiniAVC.dll\GameData\UniversalStorage\Plugins\AdvancedAnimator.dll\GameData\VerneTech\FieldScientistPack\VT_FSPack.dll\GameData\Virgin Kalactic\VirginGeneric.dllWhat's your Firespitter version? Mine is 7.0.5511 from MKS/OKS/Karbonite and frankly, if I recall correctly, the problems started more or less after updating said mods... because the previously bundled firespitter.dll messed up fsFuelSwitch module on stock tanks (in my case coming from Atomic Age); namely it reset the resources on every launch/vessel swap. Didn't think of it until after I read the post about the borky RESOURCE node.Edit: got this while running .12[ModuleManager] Exception while checking needs : Squad/Parts/Engine/liquidEngineLV-T45/liquidEngineLV-T45/liquidEngine2 with a type of PARTline 7System.NullReferenceException: Object reference not set to an instance of an object at (wrapper stelemref) object:stelemref (object,intptr,object) at ModuleManager.MMPatchLoader.CheckNeeds (.ConfigNode subMod, System.String url, System.Collections.Generic.List`1 path) [0x00000] in <filename unknown>:0 at ModuleManager.MMPatchLoader.CheckNeeds (System.Collections.Generic.List`1 excludePaths) [0x00000] in <filename unknown>:0 (Filename: C:/BuildAgent/work/d63dfc6385190b60/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 49)NullReferenceException: Object reference not set to an instance of an object at (wrapper stelemref) object:stelemref (object,intptr,object) at System.Text.StringBuilder.AppendFormat (System.String format, System.Object arg0, System.Object arg1, System.Object arg2) [0x00000] in <filename unknown>:0 at ModuleManager.MMPatchLoader.PrettyConfig (.ConfigNode node, System.Text.StringBuilder& sb, System.String indent) [0x00000] in <filename unknown>:0 at ModuleManager.MMPatchLoader.PrettyConfig (.UrlConfig config) [0x00000] in <filename unknown>:0 at ModuleManager.MMPatchLoader.CheckNeeds (System.Collections.Generic.List`1 excludePaths) [0x00000] in <filename unknown>:0 at ModuleManager.MMPatchLoader+<ProcessPatch>c__Iterator0.MoveNext () [0x00000] in <filename unknown>:0 (Filename: Line: -1)Edit 2: Now KSP hangs every time, each time on a different part. I assume since this involves (to my knowledge) a parsing error, this behavior is to be expected? Edited February 24, 2015 by Zorbaq Quote Link to comment Share on other sites More sharing options...
Tarheel1999 Posted February 24, 2015 Share Posted February 24, 2015 I'm not so sure the issue with stock tank values resetting using the Atomic Age MM patch is a firespitter problem. The AA patch added a FS fuel switch module without also deleting the pre-defined resource amounts in the stock tanks. I don't think that is how the FS fuel switch module is intended to be used. Look at any of the mod parts which use the fuel switch module (like B9), they don't separately define the resource nodes for resources handled by the fuel switch module. Quote Link to comment Share on other sites More sharing options...
Zorbaq Posted February 24, 2015 Share Posted February 24, 2015 I'm not so sure the issue with stock tank values resetting using the Atomic Age MM patch is a firespitter problem. The AA patch added a FS fuel switch module without also deleting the pre-defined resource amounts in the stock tanks. I don't think that is how the FS fuel switch module is intended to be used. Look at any of the mod parts which use the fuel switch module (like B9), they don't separately define the resource nodes for resources handled by the fuel switch module.Aha, you are correct It was indeed so, I forgot I had to tweak AA's patch myself to get it working. Quote Link to comment Share on other sites More sharing options...
sarbian Posted February 24, 2015 Author Share Posted February 24, 2015 Edit 2: Now KSP hangs every time, each time on a different part. I assume since this involves (to my knowledge) a parsing error, this behavior is to be expected?Yes, that's the bug I m tracking. When you upgraded MM it deleted the cache on first use so now you get the bug. As I said I don't think it's a MM bug, MM just make it more obvious. Quote Link to comment Share on other sites More sharing options...
Zorbaq Posted February 24, 2015 Share Posted February 24, 2015 Yes, that's the bug I m tracking. When you upgraded MM it deleted the cache on first use so now you get the bug. As I said I don't think it's a MM bug, MM just make it more obvious.Alright, thank you kindly for all your help sarbian, with .12 now it should be fairly simple to pinpoint the offending mod via simple elimination. Quote Link to comment Share on other sites More sharing options...
sarbian Posted February 24, 2015 Author Share Posted February 24, 2015 On my install it seems to only crash when TextureReplacer is present. Quote Link to comment Share on other sites More sharing options...
Gaalidas Posted February 24, 2015 Share Posted February 24, 2015 Y'know, this "hanging" business reminds me of an odd behavior I've discovered when my computer has been running a long time without a reboot. KSP will load, but each and every file will take 10x the time to load. I haven't read all the discussion, but at the top of this page, in a quote, I read something that sounded like this. Make sure your problem isn't due to a computer that isn't getting its beauty rest. Quote Link to comment Share on other sites More sharing options...
sarbian Posted February 24, 2015 Author Share Posted February 24, 2015 I spent a while testing stuff and I can't find the source. I don't get it when TextureReplacer is not here but there is nothing in it that should create that problem, so it may just trigger the bug easier. It's a pain to test since it does not crash each time for me.I tried to add some code so MM wait until TR finish doing anything before starting but I still had the Exception/freeze. I also added some code to detect the problem and the result is just insane : value.name.Length = -1 for some node values... No node has that at the game start and some have it when MM starts its work. Quote Link to comment Share on other sites More sharing options...
sarbian Posted February 24, 2015 Author Share Posted February 24, 2015 Found it [TR.Loader] Generated mipmaps & compressed UmbraSpaceIndustries/Karbonite/Parts/KA_Tank_125_01/blank_a [2x2 DXT5 -> DXT1](Filename: C:/BuildAgent/work/d63dfc6385190b60/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 49)d3d: failed to create 2D texture id=3623 w=2 h=2 mips=3 d3dfmt=21 [invalid call]After that line the base is corrupted. My guess is that the texture is too small (2x2 png), that trigger a bad D3D call that is not properly caught and it corrupt part of the memory. Quote Link to comment Share on other sites More sharing options...
Tarheel1999 Posted February 24, 2015 Share Posted February 24, 2015 Good job! Looks like would be a tough edge case to find. You would need TR, D3D, and no ATM. Which is probably a rare combination. Quote Link to comment Share on other sites More sharing options...
Zorbaq Posted February 25, 2015 Share Posted February 25, 2015 Most impressive find!Indeed I have no ATM installed, most of my textures are dds-ified (DDS4KSP). But how would installing ATM help? Isn't the texture simply too small for DXT compression by any of the methods (dds4ksp, atm, tr)? Quote Link to comment Share on other sites More sharing options...
Tarheel1999 Posted February 25, 2015 Share Posted February 25, 2015 Most impressive find!Indeed I have no ATM installed, most of my textures are dds-ified (DDS4KSP). But how would installing ATM help? Isn't the texture simply too small for DXT compression by any of the methods (dds4ksp, atm, tr)?Because TR disables its compression and mipmap function when ATM is installed. So this error shouldn't occur with ATM installed. I also assume you are not using forceopengl to run KSP as I wouldn't expect a D3D call to be made in such a case (but I could be completely wrong). I'm using DDS textures, have ATM and TR installed, and the USI mod mentioned in sarbian's post and have not had this problem. However I'm also using forceopengl. Quote Link to comment Share on other sites More sharing options...
Yemo Posted February 26, 2015 Share Posted February 26, 2015 I seem to not understand how to use MM to change mods settings, if anyone can help, that would be awesome.This is the content of a settings.cfg from the mod KerbalMass:KerbalMass_Settings{ // A Kerbal's mass in game units (metric tons). // Can't be 0 or less. // default: KerbalMass = 0.09375 KerbalMass = 0.09375 // If the default part mass (as seen in the part description in the editor) // already contains the mass of a full crew. // default: DefaultPartMassIncludesKerbalMass = False DefaultPartMassIncludesKerbalMass = False}I seem to be unable to address the "KerbalMass_Settings" since it does not contain a "name = whatever".How should my MM.cfg file look like, to change the "KerbalMass = 0.09375" to eg 0.04?Thank you very much for your help. Quote Link to comment Share on other sites More sharing options...
nightingale Posted February 26, 2015 Share Posted February 26, 2015 (edited) I seem to not understand how to use MM to change mods settings, if anyone can help, that would be awesome.This is the content of a settings.cfg from the mod KerbalMass:KerbalMass_Settings{ // A Kerbal's mass in game units (metric tons). // Can't be 0 or less. // default: KerbalMass = 0.09375 KerbalMass = 0.09375 // If the default part mass (as seen in the part description in the editor) // already contains the mass of a full crew. // default: DefaultPartMassIncludesKerbalMass = False DefaultPartMassIncludesKerbalMass = False}I seem to be unable to address the "KerbalMass_Settings" since it does not contain a "name = whatever".How should my MM.cfg file look like, to change the "KerbalMass = 0.09375" to eg 0.04?Thank you very much for your help.If it's reasonable to assume there will only ever be one KerbalMass_Settings, then its my understanding that this should work:@[COLOR=#333333]KerbalMass_Settings[/COLOR]{ @[COLOR=#333333]KerbalMass = 0.04[/COLOR]}EDIT: Can't test it at the moment, but the documentation on the first page implies that you can only match in one of "7 ways" quoted there, in which case you may need to change above to:@[COLOR=#333333]KerbalMass_Settings,*[/COLOR]{ @[COLOR=#333333]KerbalMass = 0.04[/COLOR]} Edited February 26, 2015 by nightingale Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.