Jump to content

[1.8.x-1.12.x] Module Manager 4.2.1 (August 1st 2021) - Locked inside edition


sarbian
 Share

Recommended Posts

hi, just wondering if anyone has workarounds for the localisation issue?

https://github.com/sarbian/ModuleManager/issues/155

https://github.com/sarbian/ModuleManager/issues/118

trying to sort parts by manufacturer, e.g.

@PART[*]:HAS[#manufacturer[C7*]]

i suspect this will only work for some localisations, and this doesn't work:

@PART[*]:HAS[#manufacturer[#autoLOC_501624]]

 

 

Link to comment
Share on other sites

I'm trying to define an object, but only if it hasn't been defined elsewhere, but MM won't let you use '%' or '&' in parent nodes! 

create command (&) is not valid on a root node
replace command (%) is not valid on a root node

How do I do that?

For example:

B9_TANK_TYPE
{
	name = Ore
	...
}

I want to define this structure, but only if it has not been defined previously.

Thanks.

Link to comment
Share on other sites

Why does this patch work for the MPO probe, but not for the MTM? The cost for the latter is only the xenon cost.

My formula would be cost = mass * 6000 * SAS level, if it is present (so it wouldn't apply to the stayputnik)

@PART[*]:HAS[#category[Pods]&#vesselType[Probe]]
{
    @cost = #$mass$
    @cost *= 6000
}

@PART[*]:HAS[#category[Pods]&#vesselType[Probe]&@MODULE[ModuleSAS]:HAS[#SASServiceLevel]]
{
    @cost *= #$/MODULE[ModuleSAS]/SASServiceLevel$
}

For the MPO I get 0,395*6000*3 = 7110 which is correct, but for the MTM I get a cost of 15200, although it should be 0,415*6000*2 = 4980; it also works with every other probe core except the MTM!

Edited by KawaiiLucy
Link to comment
Share on other sites

Concerning MM patches that rescale eninges:  How would I rescale the waterfall effect with an MM Patch?

What I've tried:

@PART[AndromedaUS_Engine_1]:AFTER[Waterfall]:NEEDS[Waterfall]
{
	@MODULE[ModuleWaterfallFX]
	{
		@TEMPLATE[waterfall-hypergolic-UDMH-NTO-upper-1]
		{
			@scale[0,1,2] *= 1.5
		}
		
		@TEMPLATE[waterfall-nozzle-glow-orange-1]
		{
			@scale[0,1,2] *= 1.5
		}
	}
}

While it doesn't error out, it also doesn't rescale the effects, so I'm not sure if it didn't apply the patch at the right time, or MM doesn't know what the Template node is.

Link to comment
Share on other sites

On 10/25/2013 at 7:01 AM, sarbian said:

You just have to put the dll in your KSP/GameData folder. Then you can put you patch .cfg file anywhere. I would create a folder for your personal patch, but it's up to you.

These install instructions make no sence.

There is no .cfg file that i can find.

Can someone expalin this to me?

Link to comment
Share on other sites

8 minutes ago, Admiral Fluffy said:

These install instructions make no sence.

There is no .cfg file that i can find.

Can someone expalin this to me?

Cfg file contains the patch.  Unless you are writing your own patch, it would be included in the mod.  If you are writing or downloaded a patch (or even copy/paste) then you put it into a fold ending with  .cfg 

Note that if you use Notepad on Windows, it makes files ending .txt, so you gave to rename files like that

Edited by linuxgurugamer
Link to comment
Share on other sites

21 minutes ago, linuxgurugamer said:

Cfg file contains the patch.  Unless you are writing your own patch, it would be included in the mod.  If you are writing or downloaded a patch (or even copy/paste) then you put it into a fold ending with  .cfg 

Note that if you use Notepad on Windows, it makes files ending .txt, so you gave to rename files like that

So i make a folder ending with .cfg with the stuff in it?

And where do I put it?

Edited by Admiral Fluffy
Added some clafification
Link to comment
Share on other sites

On 7/8/2021 at 1:27 PM, Dominiquini said:

I'm trying to define an object, but only if it hasn't been defined elsewhere, but MM won't let you use '%' or '&' in parent nodes! 

create command (&) is not valid on a root node
replace command (%) is not valid on a root node

How do I do that?

For example:

B9_TANK_TYPE
{
	name = Ore
	...
}

I want to define this structure, but only if it has not been defined previously.

Thanks.

The restriction was added because it makes some things ambiguous - if you had PART { mesh=whatever } then where KSP would look for the model would depend on which one was used.  Almost no one uses that anymore though and I don't think there are too many other features that depend on the path.  So maybe it's time to rethink that.

In the mean time you can figure out what other mods might add it and just NEEDS with them

Link to comment
Share on other sites

13 hours ago, Admiral Fluffy said:

So i make a folder ending with .cfg with the stuff in it?

And where do I put it?

Hi, Admiral. You need to create a file with any text editor and give it the .cfg extension: forexample.cfg

With the text editor you place your patch code in it and place this file in the gamedata folder. I have a directory for my patches: ksp/gamedata/mypatches/forexample.cfg

Link to comment
Share on other sites

Hi,

with 1.12.1 German and Module Manager 4.1.4 i get 2 "Cannot parse node name as tag list" localization errors related to "GameData/Squad/Localization/temp.cfg"

Part of the LOG:

[LOG 22:32:05.255] [ModuleManager] Waited 0.000s for patching to finish
[LOG 22:32:05.255] [ModuleManager] Applying patched game database
[LOG 22:32:05.257] [ModuleManager] Dumping ModuleManager log to main log
[LOG 22:32:05.258] [ModuleManager] 
#### BEGIN MODULEMANAGER LOG ####


[LOG 22:31:45.670] Log started at 2021-07-11 22:31:45.670
[LOG 22:31:46.799] Checking Cache
[LOG 22:31:46.977] SHA generated in 0.175s
[LOG 22:31:46.977]       SHA = 86-0C-45-6B-B8-9D-34-59-15-92-2D-55-43-EF-70-55-F7-E2-C3-65-09-19-BA-65-D4-5A-29-E3-F3-ED-71-5C
[LOG 22:31:46.978] Pre patch init
[LOG 22:31:47.246] compiling list of loaded mods...
Mod DLLs found:
  Name                                    Assembly Version         Assembly File Version    KSPAssembly Version      SHA256

  Assembly-CSharp                         0.0.0.0                  0.0.0.0                  1.12                     76ae2473e1f9b826105fd4eac4789b0b0eaf6303a698507177853fc6691c8a04
  ModuleManager                           4.1.4.0                  4.1.4.0                  2.5                      c3a771f61e578ac9e9d69ac642ddd98dde19de8e26635266876748c86b829d81
  KerbalEngineer.Unity                    1.0.0.0                  1.0.0.0                  1.0                      1f01f8b29e95cf9557b04a467d082ab76a01c1cde462d9e2ee6d4c96df02ec0e
  KerbalEngineer                          1.1.9.0                  1.1.9.0                                           83c75e4f935dda43ca8b781cf4769a4e6ad365f2cb17a24028076afe87515958
  MechJeb2                                2.5.1.0                  2.12.0.0                 2.5                      f2c4bed987677fcab818e91125db5132cf70be11b31cba9ac36b5e76fd4226e8
  System.Buffers                          4.0.3.0                  4.6.28619.01                                      accccfbe45d9f08ffeed9916e37b33e98c65be012cfff6e7fa7b67210ce1fefb
Non-DLL mods added (:FOR[xxx]):
Mods by directory (sub directories of GameData):
  Squad
  SquadExpansion
Mods added by assemblies:

[LOG 22:31:47.247] Loading Physics.cfg
[LOG 22:31:47.249] Extracting patches
[LOG 22:31:47.282] Deleting root node in file MechJeb2/Parts/MechJebNoCommandPod node: @PART[*]:HAS[@MODULE[MechJebCore],!MODULE[KerbalEVA]]:NEEDS[!RP-0,!RealismOverhaul,MechJebUnlocked] as it can't satisfy its NEEDS
[ERR 22:31:47.309] Cannot parse node name as tag list: can't create tag list from empty string
on: Squad/Localization/temp/-
[ERR 22:31:47.309] Cannot parse node name as tag list: can't create tag list beginning with :
on: Squad/Localization/temp/:
[LOG 22:31:47.376] Applying patches

Can i just ignore that or will that cause trouble later on?

thank you very much.

Edited by Midimax
Link to comment
Share on other sites

18 hours ago, Midimax said:

Hi,

with 1.12.1 German and Module Manager 4.1.4 i get 2 "Cannot parse node name as tag list" localization errors related to "GameData/Squad/Localization/temp.cfg"

Hi!

This file sounds like something made by third-parties, the stock installation don't have it, neither the Deutsch localisation depot (I use Steam, I downloaded it using the Steam Console). Probably a left-over.

Out of curiosity, what's on that file?

 

18 hours ago, Midimax said:

Can i just ignore that or will that cause trouble later on?

You can probably ignore it, but since it's an "alien" artifact contaminating stock assets (GameData/Squad and GameData/SquadExpansion ideally should be considered sacred land), the ideal solution IMHO would be to remove it - assuming this is not needed by some sacrilegious 3rd party add'on :) - since the curiosity on checking what's inside of it.

Link to comment
Share on other sites

5 hours ago, Lisias said:

This file sounds like something made by third-parties, the stock installation don't have it,

Sorry i forgot to mention. It is the GOG Version 1.12.1_03142_48164 Linux, including the Making History  and  Breaking Ground DLC

I deleted everything and reinstalled it from scratch , used CKAN to install  MechJeb2, Kerbal  Engineer Redux and ModulManager 4.1.4
Nothing else, and the file is there.

It contains 11521 lines of German text in the Format like the example of line 10 down below: (every line starts with 2 Tab keychars)

    #autoLOC_6005084 = Europäische Weltraumorganisation

Unfortunately the log does not say in which line exactly the  parsing error appeared, there is for sure not a single line beginning with ":" but the very last line is empty.

PS.: I took a look at "dictionary.cfg" at the same location, at least the line from above is in there and it is a little bit better formatted (within curly braces and things), while "temp.cfg" contains just only "#autoLOC..." lines, maybe "temp,cfg" is really only there by a packaging mistake and not needed. 

Thanks

Edited by Midimax
added PS and corrected some typos
Link to comment
Share on other sites

Can anybody tell me why this throws a "warning"?!:

@PART[*]:HAS[@MODULE[ModuleDataTransmitter]]:HAS[@antennaType[INTERNAL]]
{
	!MODULE[ModuleDataTransmitter] {}
}

I just added this to my patch collection and now MM throws me a warning while loading.

But it seems to work as intended...

Link to comment
Share on other sites

21 hours ago, maculator said:

Can anybody tell me why this throws a "warning"?!:

@PART[*]:HAS[@MODULE[ModuleDataTransmitter]]:HAS[@antennaType[INTERNAL]]
{
	!MODULE[ModuleDataTransmitter] {}
}

I just added this to my patch collection and now MM throws me a warning while loading.

But it seems to work as intended...

@maculator I think that you should use:

@PART[*]:HAS[@MODULE[ModuleDataTransmitter]:HAS[#antennaType[INTERNAL]]]
{
	!MODULE[ModuleDataTransmitter] {}
}

For keys, you should use '#' (Include Key) or '~' (Exclude Key) (https://github.com/sarbian/ModuleManager/wiki/Module-Manager-Handbook)

Edited by Dominiquini
Link to comment
Share on other sites

It just states "1 warning" behind the number of patches that its applying in the loadscreen.  I dumped everything to a file but couldn't find anything relating to a warning.

Link to comment
Share on other sites

1 minute ago, maculator said:

It just states "1 warning" behind the number of patches that its applying in the loadscreen.  I dumped everything to a file but couldn't find anything relating to a warning.

Take a look in the log file: "#KSP_FOLDER#\Logs\ModuleManager\*.log"

Link to comment
Share on other sites

Ah that was helpful. Didn't know MM stores its reports there.

But I stil got my problem. It says the warning is about the second :HAS, so I' tried this approach:

@PART[*]:HAS[@MODULE[ModuleDataTransmitter],#antennaType[INTERNAL]]:FINAL
{
	!MODULE[ModuleDataTransmitter] {}
}

didn't work. Now there is no warning, But my patch also doesn't work anymore.

The original patch

@PART[*]:HAS[@MODULE[ModuleDataTransmitter]]:HAS[#antennaType[INTERNAL]]
{
	!MODULE[ModuleDataTransmitter] {}
}

does work. It only says:

[WRN 21:53:31.364] more than one :HAS tag detected, ignoring all but the first: /Axel/@PART[*]:HAS[@MODULE[ModuleDataTransmitter]]:HAS[#antennaType[INTERNAL]]:FINAL

I guess its a syntax problem. And I really don't know how to phrase it otherwise :S

Link to comment
Share on other sites

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.

 Share

×
×
  • Create New...