Jump to content

KSP 1.5.1: Contracts issue - stock issue?


Recommended Posts

After fulfilling two contracts in one flight I went back to SPC and found exactly two entries of this:

Input is null for field 'agent' in config node 'CONTRACT_FINISHED'
   at System.Environment.get_StackTrace()
   at ConfigNode.AddValue(System.String name, System.String value)
   at Contracts.Contract.Save(.ConfigNode node)
   at Contracts.ContractSystem.OnSave(.ConfigNode gameNode)
   at ScenarioModule.Save(.ConfigNode node)
   at ProtoScenarioModule..ctor(.ScenarioModule module)
   at ScenarioRunner.UpdateModules()
   at ScenarioRunner.GetUpdatedProtoModules()
   at Game.Updated(GameScenes startSceneOverride)
   at GamePersistence.SaveGame(System.String saveFileName, System.String saveFolder, SaveMode saveMode, GameScenes startScene)
   at GamePersistence.SaveGame(System.String saveFileName, System.String saveFolder, SaveMode saveMode)
   at KSCPauseMenu.<draw>m__9()
   at DialogGUIButton.OptionSelected()
   at DialogGUIButton.<Create>m__7()
   at UnityEngine.Events.InvokableCall.Invoke()
   at UnityEngine.Events.UnityEvent.Invoke()
   at UnityEngine.UI.Button.Press()
   at UnityEngine.UI.Button.OnPointerClick(UnityEngine.EventSystems.PointerEventData eventData)
   at UnityEngine.EventSystems.ExecuteEvents.Execute(IPointerClickHandler handler, UnityEngine.EventSystems.BaseEventData eventData)
   at UnityEngine.EventSystems.ExecuteEvents.Execute(UnityEngine.GameObject target, UnityEngine.EventSystems.BaseEventData eventData, UnityEngine.EventSystems.EventFunction`1 functor)
   at UnityEngine.EventSystems.StandaloneInputModule.ProcessMousePress(UnityEngine.EventSystems.MouseButtonEventData data)
   at UnityEngine.EventSystems.StandaloneInputModule.ProcessMouseEvent(Int32 id)
   at UnityEngine.EventSystems.StandaloneInputModule.ProcessMouseEvent()
   at UnityEngine.EventSystems.StandaloneInputModule.Process()
   at UnityEngine.EventSystems.EventSystem.Update()
 
(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)

Perhaps this has to do with outdated ContractConfigurator - but it's not mentioned anywhere in the ...

... log and stuff:
https://www.dropbox.com/s/884bzl5ugbd2yv7/2018-10-24_2 KSP.log and stuff.7z?dl=1

Link to comment
Share on other sites

On 10/24/2018 at 5:50 PM, Gordon Dry said:

After fulfilling two contracts in one flight I went back to SPC and found exactly two entries of this:


Input is null for field 'agent' in config node 'CONTRACT_FINISHED'
   at System.Environment.get_StackTrace()
   at ConfigNode.AddValue(System.String name, System.String value)
   at Contracts.Contract.Save(.ConfigNode node)
   at Contracts.ContractSystem.OnSave(.ConfigNode gameNode)
   at ScenarioModule.Save(.ConfigNode node)
   at ProtoScenarioModule..ctor(.ScenarioModule module)
   at ScenarioRunner.UpdateModules()
   at ScenarioRunner.GetUpdatedProtoModules()
   at Game.Updated(GameScenes startSceneOverride)
   at GamePersistence.SaveGame(System.String saveFileName, System.String saveFolder, SaveMode saveMode, GameScenes startScene)
   at GamePersistence.SaveGame(System.String saveFileName, System.String saveFolder, SaveMode saveMode)
   at KSCPauseMenu.<draw>m__9()
   at DialogGUIButton.OptionSelected()
   at DialogGUIButton.<Create>m__7()
   at UnityEngine.Events.InvokableCall.Invoke()
   at UnityEngine.Events.UnityEvent.Invoke()
   at UnityEngine.UI.Button.Press()
   at UnityEngine.UI.Button.OnPointerClick(UnityEngine.EventSystems.PointerEventData eventData)
   at UnityEngine.EventSystems.ExecuteEvents.Execute(IPointerClickHandler handler, UnityEngine.EventSystems.BaseEventData eventData)
   at UnityEngine.EventSystems.ExecuteEvents.Execute(UnityEngine.GameObject target, UnityEngine.EventSystems.BaseEventData eventData, UnityEngine.EventSystems.EventFunction`1 functor)
   at UnityEngine.EventSystems.StandaloneInputModule.ProcessMousePress(UnityEngine.EventSystems.MouseButtonEventData data)
   at UnityEngine.EventSystems.StandaloneInputModule.ProcessMouseEvent(Int32 id)
   at UnityEngine.EventSystems.StandaloneInputModule.ProcessMouseEvent()
   at UnityEngine.EventSystems.StandaloneInputModule.Process()
   at UnityEngine.EventSystems.EventSystem.Update()
 
(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)

Perhaps this has to do with outdated ContractConfigurator - but it's not mentioned anywhere in the ...

... log and stuff:
https://www.dropbox.com/s/884bzl5ugbd2yv7/2018-10-24_2 KSP.log and stuff.7z?dl=1

yeah running into the same errors thinking its contract configurator not passing everything over. 

Link to comment
Share on other sites

  • 2 weeks later...

I'm having the same thing happen.  If it requires a particular part, or a particular orbit, I can't finish the contract even if I have the part/reach the orbit.

Different traces, but same base error.

 

[ERR 21:35:11.192] Input is null for field 'agent' in config node 'CONTRACT_FINISHED'
   at System.Environment.get_StackTrace()
   at ConfigNode.AddValue(System.String name, System.String value)
   at Contracts.Contract.Save(.ConfigNode node)
   at Contracts.ContractSystem.OnSave(.ConfigNode gameNode)
   at ScenarioModule.Save(.ConfigNode node)
   at ProtoScenarioModule..ctor(.ScenarioModule module)
   at ScenarioRunner.UpdateModules()
   at ScenarioRunner.GetUpdatedProtoModules()
   at Game.Updated(GameScenes startSceneOverride)
   at GamePersistence.SaveGame(System.String saveFileName, System.String saveFolder, SaveMode saveMode, GameScenes startScene)
   at GamePersistence.SaveGame(System.String saveFileName, System.String saveFolder, SaveMode saveMode)
   at DatedQuickSaves.DatedQuickSaves.DoAutoSave()
   at DatedQuickSaves.DatedQuickSaves.Update()

 

[ERR 21:32:31.120] Input is null for field 'agent' in config node 'CONTRACT_FINISHED'
   at System.Environment.get_StackTrace()
   at ConfigNode.AddValue(System.String name, System.String value)
   at Contracts.Contract.Save(.ConfigNode node)
   at Contracts.ContractSystem.OnSave(.ConfigNode gameNode)
   at ScenarioModule.Save(.ConfigNode node)
   at ProtoScenarioModule..ctor(.ScenarioModule module)
   at ScenarioRunner.UpdateModules()
   at ScenarioRunner.GetUpdatedProtoModules()
   at Game.Updated(GameScenes startSceneOverride)
   at Game.Updated()
   at QuickSaveLoad.doSave(System.String filename, System.String screenMsg)
   at QuickSaveLoad.OnSaveAsClose(System.String saveName, Boolean pauseGame, .FinishedSaveLoadDialogCallback onSaveAsCloseReturn)
   at QuickSaveLoad.ConfirmDialog(Boolean pauseGame, .FinishedSaveLoadDialogCallback onSaveAsCloseReturn)
   at QuickSaveLoad+<SpawnSaveAsDialog>c__AnonStorey1.<>m__1()
   at DialogGUIButton.OptionSelected()
   at DialogGUIButton.<Create>m__7()
   at UnityEngine.Events.InvokableCall.Invoke()
   at UnityEngine.Events.UnityEvent.Invoke()
   at UnityEngine.UI.Button.Press()
   at UnityEngine.UI.Button.OnPointerClick(UnityEngine.EventSystems.PointerEventData eventData)
   at UnityEngine.EventSystems.ExecuteEvents.Execute(IPointerClickHandler handler, UnityEngine.EventSystems.BaseEventData eventData)
   at UnityEngine.EventSystems.ExecuteEvents.Execute(UnityEngine.GameObject target, UnityEngine.EventSystems.BaseEventData eventData, UnityEngine.EventSystems.EventFunction`1 functor)
   at UnityEngine.EventSystems.StandaloneInputModule.ProcessMousePress(UnityEngine.EventSystems.MouseButtonEventData data)
   at UnityEngine.EventSystems.StandaloneInputModule.ProcessMouseEvent(Int32 id)
   at UnityEngine.EventSystems.StandaloneInputModule.ProcessMouseEvent()
   at UnityEngine.EventSystems.StandaloneInputModule.Process()
   at UnityEngine.EventSystems.EventSystem.Update()

[ERR 19:12:05.918] Input is null for field 'agent' in config node 'CONTRACT_FINISHED'
   at System.Environment.get_StackTrace()
   at ConfigNode.AddValue(System.String name, System.String value)
   at Contracts.Contract.Save(.ConfigNode node)
   at Contracts.ContractSystem.OnSave(.ConfigNode gameNode)
   at ScenarioModule.Save(.ConfigNode node)
   at ProtoScenarioModule..ctor(.ScenarioModule module)
   at ScenarioRunner.UpdateModules()
   at ScenarioRunner.GetUpdatedProtoModules()
   at Game.Updated(GameScenes startSceneOverride)
   at GamePersistence.SaveGame(System.String saveFileName, System.String saveFolder, SaveMode saveMode, GameScenes startScene)
   at GamePersistence.SaveGame(System.String saveFileName, System.String saveFolder, SaveMode saveMode)
   at KSP.UI.Screens.RDSceneSpawner.onRDDespawn()
   at EventVoid.Fire()
   at KSP.UI.Screens.RDSceneDespawner.BtnExit()
   at UnityEngine.Events.InvokableCall.Invoke()
   at UnityEngine.Events.UnityEvent.Invoke()
   at UnityEngine.UI.Button.Press()
   at UnityEngine.UI.Button.OnPointerClick(UnityEngine.EventSystems.PointerEventData eventData)
   at UnityEngine.EventSystems.ExecuteEvents.Execute(IPointerClickHandler handler, UnityEngine.EventSystems.BaseEventData eventData)
   at UnityEngine.EventSystems.ExecuteEvents.Execute(UnityEngine.GameObject target, UnityEngine.EventSystems.BaseEventData eventData, UnityEngine.EventSystems.EventFunction`1 functor)
   at UnityEngine.EventSystems.StandaloneInputModule.ProcessMousePress(UnityEngine.EventSystems.MouseButtonEventData data)
   at UnityEngine.EventSystems.StandaloneInputModule.ProcessMouseEvent(Int32 id)
   at UnityEngine.EventSystems.StandaloneInputModule.ProcessMouseEvent()
   at UnityEngine.EventSystems.StandaloneInputModule.Process()
   at UnityEngine.EventSystems.EventSystem.Update()

[ERR 21:31:48.394] Input is null for field 'agent' in config node 'CONTRACT_FINISHED'
   at System.Environment.get_StackTrace()
   at ConfigNode.AddValue(System.String name, System.String value)
   at Contracts.Contract.Save(.ConfigNode node)
   at Contracts.ContractSystem.OnSave(.ConfigNode gameNode)
   at ScenarioModule.Save(.ConfigNode node)
   at ProtoScenarioModule..ctor(.ScenarioModule module)
   at ScenarioRunner.UpdateModules()
   at ScenarioRunner.GetUpdatedProtoModules()
   at Game.Updated(GameScenes startSceneOverride)
   at GamePersistence.SaveGame(System.String saveFileName, System.String saveFolder, SaveMode saveMode, GameScenes startScene)
   at GamePersistence.SaveGame(System.String saveFileName, System.String saveFolder, SaveMode saveMode)
   at FlightAutoSave+<PersistentSave>c__Iterator0.MoveNext()
   at UnityEngine.SetupCoroutine.InvokeMoveNext(IEnumerator enumerator, IntPtr returnValueAddress)

[ERR 19:58:20.738] Input is null for field 'agent' in config node 'CONTRACT'
   at System.Environment.get_StackTrace()
   at ConfigNode.AddValue(System.String name, System.String value)
   at Contracts.Contract.Save(.ConfigNode node)
   at Contracts.ContractSystem.OnSave(.ConfigNode gameNode)
   at ScenarioModule.Save(.ConfigNode node)
   at ProtoScenarioModule..ctor(.ScenarioModule module)
   at ScenarioRunner.UpdateModules()
   at ScenarioRunner.GetUpdatedProtoModules()
   at Game.Updated(GameScenes startSceneOverride)
   at GamePersistence.SaveGame(System.String saveFileName, System.String saveFolder, SaveMode saveMode, GameScenes startScene)
   at FlightDriver.StartWithNewLaunch(System.String fullFilePath, System.String missionFlagURL, System.String launchSiteName, .VesselCrewManifest manifest)
   at EditorLogic.<goForLaunch>m__44()
   at CallbackUtil+<DelayedCallback>c__Iterator1.MoveNext()
   at UnityEngine.SetupCoroutine.InvokeMoveNext(IEnumerator enumerator, IntPtr returnValueAddress)
 

log with 162 examples... https://drive.google.com/uc?export=view&amp;id=1Ph_PIXeun98v25Hg1jJBruz3Z2WRSS8v

 

Link to comment
Share on other sites

  • 2 months later...

Same here:

Quote

[ERR 00:28:27.141] Input is null for field 'agent' in config node 'CONTRACT'
   at System.Environment.get_StackTrace()
   at ConfigNode.AddValue(System.String name, System.String value)
   at Contracts.Contract.Save(.ConfigNode node)
   at Contracts.ContractSystem.OnSave(.ConfigNode gameNode)
   at ScenarioModule.Save(.ConfigNode node)
   at ProtoScenarioModule..ctor(.ScenarioModule module)
   at ScenarioRunner.UpdateModules()
   at ScenarioRunner.GetUpdatedProtoModules()
   at Game.Updated(GameScenes startSceneOverride)
   at GamePersistence.SaveGame(System.String saveFileName, System.String saveFolder, SaveMode saveMode, GameScenes startScene)
   at GamePersistence.SaveGame(System.String saveFileName, System.String saveFolder, SaveMode saveMode)
   at MCSceneSpawner.OnMCDespawn()
   at EventVoid.Fire()
   at MCDespawner.BtnExit()
   at UnityEngine.Events.InvokableCall.Invoke()
   at UnityEngine.Events.UnityEvent.Invoke()
   at UnityEngine.UI.Button.Press()
   at UnityEngine.UI.Button.OnPointerClick(UnityEngine.EventSystems.PointerEventData eventData)
   at UnityEngine.EventSystems.ExecuteEvents.Execute(IPointerClickHandler handler, UnityEngine.EventSystems.BaseEventData eventData)
   at UnityEngine.EventSystems.ExecuteEvents.Execute(UnityEngine.GameObject target, UnityEngine.EventSystems.BaseEventData eventData, UnityEngine.EventSystems.EventFunction`1 functor)
   at UnityEngine.EventSystems.StandaloneInputModule.ProcessMousePress(UnityEngine.EventSystems.MouseButtonEventData data)
   at UnityEngine.EventSystems.StandaloneInputModule.ProcessMouseEvent(Int32 id)
   at UnityEngine.EventSystems.StandaloneInputModule.ProcessMouseEvent()
   at UnityEngine.EventSystems.StandaloneInputModule.Process()
   at UnityEngine.EventSystems.EventSystem.Update()

It`s not a problem with Contract Configurator because I haven`t installed it. It must be a stock problem or another mod like ScanSat, which has some configs for contracts.

Link to comment
Share on other sites

  • 1 month later...
  • 2 months later...

I just returned to the game having not played since 1.5 and noticed the same exception spam

According to some info from the Contract Configurator git hub issues (https://github.com/jrossignol/ContractConfigurator/issues/672) it is caused by some AGENT definitions not having a title attribute which was introduced in KSP 1.2 for localization.

I fixed the exception spamming in my game with these 2 steps:
1) Manually editing and fixing the persistant.sfs save file for all current and completed contracts
2) Adding a small ModuleManager config to fix the AGENT definitions that cause the exceptions

The Details
1) Find all instance in the save file with a null agent string. Using an editor like Notepad++ I searched for "agent = [\r\n]" as a regular expression, this will find all instances of the null agent within all the CONTRACT nodes. You should find there is an agentName attribute that is set correctly, so I copied the agentName value as the agent value.
Basically changing this:

			seed = 1927166245
			state = Offered
			viewed = Seen
			agent = 
			agentName = Field Research Team
			deadlineType = None

Into this:

			seed = 1927166245
			state = Offered
			viewed = Seen
			agent = Field Research Team
			agentName = Field Research Team
			deadlineType = None

For every found instance. Might be a good idea to backup your save file before doing this, just to be safe. If you are far into a career game, you might have lots of entries to fix.

2) Save the following ModuleManager config in your GameData folder somewhere, and it will fix all the AGENT definitions that are missing the title attribute

@AGENT:HAS[~title[]]:FINAL
{
	title = #$name$
}

Short and simple, find all AGENT nodes that have no title, add a title and set it's value the same as the AGENT name.

 

Reload your newly edited save file, and the exception spam should be gone. At least, it was in my case.

Link to comment
Share on other sites

  • 2 weeks later...

Just an fyi, cuz there's a lot of these blank agents.  To fix it using regular expressions in notepad++ (or sublime!!!) use this regex:

Find and Replace:

FIND:   

agent = [\r\n]\t\t\t\tagentName = (.*)

REPLACE:   

agent = \1\n\t\t\t\tagentName = \1

BTW If that doesnt work then you might needs to remove one of the \t chars in both regexes.  That is \t for tab, in most of my files it's 5 tabs to start a new line but for some reason one or two files only have 4 tabs.  

 

Oh and mega props on the MM cfg! Awesome!

Edited by dskzz
Link to comment
Share on other sites

  • 1 month later...
On 6/30/2019 at 1:43 AM, dskzz said:

Just an fyi, cuz there's a lot of these blank agents.  To fix it using regular expressions in notepad++ (or sublime!!!) use this regex:

Find and Replace:

FIND:   


agent = [\r\n]\t\t\t\tagentName = (.*)

REPLACE:   


agent = \1\n\t\t\t\tagentName = \1

BTW If that doesnt work then you might needs to remove one of the \t chars in both regexes.  That is \t for tab, in most of my files it's 5 tabs to start a new line but for some reason one or two files only have 4 tabs.  

 

Oh and mega props on the MM cfg! Awesome!

You beat me to it by a month and a half! Mine was:

find:

agent = $(\s+)agentName = (\w+)$

replace:

agent = \2\1agentName = \2

Operating system agnostic, doesn't care about how many indents are in the source.

Link to comment
Share on other sites

  • 2 months later...

Here it is October 2019 and I just started seeing the same issue. Currently running KSP 1.7.3 with ContractConfigurator 1.27.1. 

I've been on this Career game for a while, and it only started recently showing in my logs and causing KSP to hang:

Input is null for field 'agent' in config node 'CONTRACT_FINISHED'

They all seemed to be related to the 'Kerbal Academy' and 'Kerbal Space Tourism' and I'm assuming this spam just built up over time.

Anyway, I just manually added 'agent = [name]' in the 'persistent.sfs' as described above. About to test it, so I'll report back if I'm having any issues. I've also put into the custom MM config. Fingers crossed!

UPDATE: Well, after two game's worth of testing, it looks like this fix works - no more issues with null fields (or so it seems).

Here's the CFG file working it's magic:

[LOG 20:07:12.215] Applying update /ContractConfigurator_NullAgent_Fix/@AGENT:HAS[~title[]]:FINAL to ContractPacks/KerbalAcademy/Agent/KerbalAcademyAgency.cfg/AGENT[Kerbal Academy]
[LOG 20:07:12.215] Applying update /ContractConfigurator_NullAgent_Fix/@AGENT:HAS[~title[]]:FINAL to ContractPacks/KerbalAcademy/Agent/KerbalAcademyAgency.cfg/AGENT[Kerbal Academy]
[LOG 20:07:12.215] Applying update /ContractConfigurator_NullAgent_Fix/@AGENT:HAS[~title[]]:FINAL to ContractPacks/KerbalAcademy/Agent/KerbalAcademyAgency.cfg/AGENT[Kerbal Academy]
[LOG 20:07:12.215] Applying update /ContractConfigurator_NullAgent_Fix/@AGENT:HAS[~title[]]:FINAL to ContractPacks/KerbalAcademy/Agent/KerbalAcademyAgency.cfg/AGENT[Kerbal Academy]
[LOG 20:07:12.215] Applying update /ContractConfigurator_NullAgent_Fix/@AGENT:HAS[~title[]]:FINAL to ContractPacks/Tourism/Agencies/Agents.cfg/AGENT[Kerbal Space Tourism]
[LOG 20:07:12.215] Applying update /ContractConfigurator_NullAgent_Fix/@AGENT:HAS[~title[]]:FINAL to ContractPacks/Tourism/Agencies/Agents.cfg/AGENT[Kerbal Space Tourism]
[LOG 20:07:12.215] Applying update /ContractConfigurator_NullAgent_Fix/@AGENT:HAS[~title[]]:FINAL to ContractPacks/Tourism/Agencies/Agents.cfg/AGENT[Kerbal Space Tourism]
[LOG 20:07:12.215] Applying update /ContractConfigurator_NullAgent_Fix/@AGENT:HAS[~title[]]:FINAL to ContractPacks/Tourism/Agencies/Agents.cfg/AGENT[Kerbal Space Tourism]
[LOG 20:07:12.216] Applying update /ContractConfigurator_NullAgent_Fix/@AGENT:HAS[~title[]]:FINAL to SpaceY-Lifters/Agencies/Agents.cfg/AGENT[SpaceY Technologies Corporation]
[LOG 20:07:12.216] Applying update /ContractConfigurator_NullAgent_Fix/@AGENT:HAS[~title[]]:FINAL to SpaceY-Lifters/Agencies/Agents.cfg/AGENT[SpaceY Technologies Corporation]
[LOG 20:07:12.216] Applying update /ContractConfigurator_NullAgent_Fix/@AGENT:HAS[~title[]]:FINAL to SpaceY-Lifters/Agencies/Agents.cfg/AGENT[SpaceY Technologies Corporation]
[LOG 20:07:12.216] Applying update /ContractConfigurator_NullAgent_Fix/@AGENT:HAS[~title[]]:FINAL to SpaceY-Lifters/Agencies/Agents.cfg/AGENT[SpaceY Technologies Corporation]
[LOG 20:07:12.216] Applying update /ContractConfigurator_NullAgent_Fix/@AGENT:HAS[~title[]]:FINAL to SXT/Agencies/Agents.cfg/AGENT[Kerbolyov Design Bureau]
[LOG 20:07:12.216] Applying update /ContractConfigurator_NullAgent_Fix/@AGENT:HAS[~title[]]:FINAL to SXT/Agencies/Agents.cfg/AGENT[Kerbolyov Design Bureau]
[LOG 20:07:12.216] Applying update /ContractConfigurator_NullAgent_Fix/@AGENT:HAS[~title[]]:FINAL to SXT/Agencies/Agents.cfg/AGENT[Kerbolyov Design Bureau]
[LOG 20:07:12.216] Applying update /ContractConfigurator_NullAgent_Fix/@AGENT:HAS[~title[]]:FINAL to SXT/Agencies/Agents.cfg/AGENT[Kerbolyov Design Bureau]
[LOG 20:07:12.216] Applying update /ContractConfigurator_NullAgent_Fix/@AGENT:HAS[~title[]]:FINAL to SXT/Agencies/Agents.cfg/AGENT[Armstrong, Siddeley and Royce Engineering]
[LOG 20:07:12.216] Applying update /ContractConfigurator_NullAgent_Fix/@AGENT:HAS[~title[]]:FINAL to SXT/Agencies/Agents.cfg/AGENT[Armstrong, Siddeley and Royce Engineering]
[LOG 20:07:12.216] Applying update /ContractConfigurator_NullAgent_Fix/@AGENT:HAS[~title[]]:FINAL to SXT/Agencies/Agents.cfg/AGENT[Armstrong, Siddeley and Royce Engineering]
[LOG 20:07:12.216] Applying update /ContractConfigurator_NullAgent_Fix/@AGENT:HAS[~title[]]:FINAL to SXT/Agencies/Agents.cfg/AGENT[Armstrong, Siddeley and Royce Engineering]

 

Edited by scottadges
Link to comment
Share on other sites

  • 3 months later...
On 6/16/2019 at 10:18 PM, phoenix2004uk said:

2) Save the following ModuleManager config in your GameData folder somewhere, and it will fix all the AGENT definitions that are missing the title attribute


@AGENT:HAS[~title[]]:FINAL
{
	title = #$name$
}

Short and simple, find all AGENT nodes that have no title, add a title and set it's value the same as the AGENT name.

This needs to be pinned, I had Wild Blue spamming my log but this one stops all. Thanks for creating this!

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...