Hi everyone!
Let me start with a disclaimer: this is my first time doing something like this.
I'm trying to create a mod that adds new art to the game, Greek sculptures in particular (so be warned for some ancient nudity, tasteful nudity though, in my opinion.). I've created the textures and copied and changed the .xml files for art (standard and terror). The art bench job, textures, descriptions and hitpoints etc. all seem to work ingame on a surface level (minus the textures still needing some minor adjustments to correctly fit on a tile, draw size etc.).
Now without copying those .xml files this project would be dead in the water as I have no real coding experience. The basics like descriptions and the path to the textures were easy to grasp but I have arrived at a point where I can't continue without help.
The issue: the game is throwing me the errors I have attached to this post. I'm at a loss at how to fix this, so I hope someone can help me figure this out. Please note that my only coding experience was building a shitty html website back in high school. I'd be happy to learn a bit though.
I hope I was able to give enough information to work with, if not, shoot me a message!
Edit: here is the error code:
And here is my .xml file:
Edit 2:After looking at the terror statue texpath and the error, it seems the game isn't looking at the correct folder for the terror statues, why is that?
Let me start with a disclaimer: this is my first time doing something like this.
I'm trying to create a mod that adds new art to the game, Greek sculptures in particular (so be warned for some ancient nudity, tasteful nudity though, in my opinion.). I've created the textures and copied and changed the .xml files for art (standard and terror). The art bench job, textures, descriptions and hitpoints etc. all seem to work ingame on a surface level (minus the textures still needing some minor adjustments to correctly fit on a tile, draw size etc.).
Now without copying those .xml files this project would be dead in the water as I have no real coding experience. The basics like descriptions and the path to the textures were easy to grasp but I have arrived at a point where I can't continue without help.
The issue: the game is throwing me the errors I have attached to this post. I'm at a loss at how to fix this, so I hope someone can help me figure this out. Please note that my only coding experience was building a shitty html website back in high school. I'd be happy to learn a bit though.
I hope I was able to give enough information to work with, if not, shoot me a message!
Edit: here is the error code:
Code Select
RimWorld 1.3.3117 rev669
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Message (string)
RimWorld.VersionControl:LogVersionNumber ()
Verse.Root:CheckGlobalInit ()
Verse.Root:Start ()
Verse.Root_Entry:Start ()
Could not load UnityEngine.Texture2D at Things/Building/GreekSculpture/TerrorStatueA in any active mod or in base resources.
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.ContentFinder`1<UnityEngine.Texture2D>:Get (string,bool)
Verse.Graphic_Single:Init (Verse.GraphicRequest)
Verse.GraphicDatabase:GetInner<Verse.Graphic_Single> (Verse.GraphicRequest)
Verse.GraphicDatabase:Get (System.Type,string,UnityEngine.Shader,UnityEngine.Vector2,UnityEngine.Color,UnityEngine.Color,Verse.GraphicData,System.Collections.Generic.List`1<Verse.ShaderParameter>,string)
Verse.Graphic_Collection:Init (Verse.GraphicRequest)
Verse.GraphicDatabase:GetInner<Verse.Graphic_Random> (Verse.GraphicRequest)
Verse.GraphicDatabase:Get (System.Type,string,UnityEngine.Shader,UnityEngine.Vector2,UnityEngine.Color,UnityEngine.Color,Verse.GraphicData,System.Collections.Generic.List`1<Verse.ShaderParameter>,string)
Verse.GraphicData:Init ()
Verse.GraphicData:get_Graphic ()
Verse.ThingDef:<PostLoad>b__311_0 ()
Verse.LongEventHandler:ExecuteToExecuteWhenFinished ()
Verse.LongEventHandler:UpdateCurrentAsynchronousEvent ()
Verse.LongEventHandler:LongEventsUpdate (bool&)
Verse.Root:Update ()
Verse.Root_Entry:Update ()
Could not load UnityEngine.Texture2D at Things/Building/GreekSculpture/TerrorStatueB in any active mod or in base resources.
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.ContentFinder`1<UnityEngine.Texture2D>:Get (string,bool)
Verse.Graphic_Single:Init (Verse.GraphicRequest)
Verse.GraphicDatabase:GetInner<Verse.Graphic_Single> (Verse.GraphicRequest)
Verse.GraphicDatabase:Get (System.Type,string,UnityEngine.Shader,UnityEngine.Vector2,UnityEngine.Color,UnityEngine.Color,Verse.GraphicData,System.Collections.Generic.List`1<Verse.ShaderParameter>,string)
Verse.Graphic_Collection:Init (Verse.GraphicRequest)
Verse.GraphicDatabase:GetInner<Verse.Graphic_Random> (Verse.GraphicRequest)
Verse.GraphicDatabase:Get (System.Type,string,UnityEngine.Shader,UnityEngine.Vector2,UnityEngine.Color,UnityEngine.Color,Verse.GraphicData,System.Collections.Generic.List`1<Verse.ShaderParameter>,string)
Verse.GraphicData:Init ()
Verse.GraphicData:get_Graphic ()
Verse.ThingDef:<PostLoad>b__311_0 ()
Verse.LongEventHandler:ExecuteToExecuteWhenFinished ()
Verse.LongEventHandler:UpdateCurrentAsynchronousEvent ()
Verse.LongEventHandler:LongEventsUpdate (bool&)
Verse.Root:Update ()
Verse.Root_Entry:Update ()
Could not execute post-long-event action. Exception: System.NullReferenceException: Object reference not set to an instance of an object
at Verse.GlobalTextureAtlasManager.TryInsertStatic (Verse.TextureAtlasGroup group, UnityEngine.Texture2D texture, UnityEngine.Texture2D mask) [0x00000] in <b64badbf3c3d41018b3ca5d3e8c77771>:0
at Verse.Graphic_Single.TryInsertIntoAtlas (Verse.TextureAtlasGroup groupKey) [0x00036] in <b64badbf3c3d41018b3ca5d3e8c77771>:0
at Verse.Graphic_Collection.TryInsertIntoAtlas (Verse.TextureAtlasGroup groupKey) [0x0000b] in <b64badbf3c3d41018b3ca5d3e8c77771>:0
at Verse.ThingDef.<PostLoad>b__311_0 () [0x00043] in <b64badbf3c3d41018b3ca5d3e8c77771>:0
at Verse.LongEventHandler.ExecuteToExecuteWhenFinished () [0x0007c] in <b64badbf3c3d41018b3ca5d3e8c77771>:0
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.LongEventHandler:ExecuteToExecuteWhenFinished ()
Verse.LongEventHandler:UpdateCurrentAsynchronousEvent ()
Verse.LongEventHandler:LongEventsUpdate (bool&)
Verse.Root:Update ()
Verse.Root_Entry:Update ()
Could not load UnityEngine.Texture2D at Things/Building/GreekSculpture/TerrorStatueA in any active mod or in base resources.
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.ContentFinder`1<UnityEngine.Texture2D>:Get (string,bool)
Verse.Graphic_Single:Init (Verse.GraphicRequest)
Verse.GraphicDatabase:GetInner<Verse.Graphic_Single> (Verse.GraphicRequest)
Verse.GraphicDatabase:Get (System.Type,string,UnityEngine.Shader,UnityEngine.Vector2,UnityEngine.Color,UnityEngine.Color,Verse.GraphicData,System.Collections.Generic.List`1<Verse.ShaderParameter>,string)
Verse.Graphic_Collection:Init (Verse.GraphicRequest)
Verse.GraphicDatabase:GetInner<Verse.Graphic_Random> (Verse.GraphicRequest)
Verse.GraphicDatabase:Get (System.Type,string,UnityEngine.Shader,UnityEngine.Vector2,UnityEngine.Color,UnityEngine.Color,Verse.GraphicData,System.Collections.Generic.List`1<Verse.ShaderParameter>,string)
Verse.GraphicData:Init ()
Verse.GraphicData:get_Graphic ()
Verse.ThingDef:<PostLoad>b__311_0 ()
Verse.LongEventHandler:ExecuteToExecuteWhenFinished ()
Verse.LongEventHandler:UpdateCurrentAsynchronousEvent ()
Verse.LongEventHandler:LongEventsUpdate (bool&)
Verse.Root:Update ()
Verse.Root_Entry:Update ()
Could not load UnityEngine.Texture2D at Things/Building/GreekSculpture/TerrorStatueB in any active mod or in base resources.
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.ContentFinder`1<UnityEngine.Texture2D>:Get (string,bool)
Verse.Graphic_Single:Init (Verse.GraphicRequest)
Verse.GraphicDatabase:GetInner<Verse.Graphic_Single> (Verse.GraphicRequest)
Verse.GraphicDatabase:Get (System.Type,string,UnityEngine.Shader,UnityEngine.Vector2,UnityEngine.Color,UnityEngine.Color,Verse.GraphicData,System.Collections.Generic.List`1<Verse.ShaderParameter>,string)
Verse.Graphic_Collection:Init (Verse.GraphicRequest)
Verse.GraphicDatabase:GetInner<Verse.Graphic_Random> (Verse.GraphicRequest)
Verse.GraphicDatabase:Get (System.Type,string,UnityEngine.Shader,UnityEngine.Vector2,UnityEngine.Color,UnityEngine.Color,Verse.GraphicData,System.Collections.Generic.List`1<Verse.ShaderParameter>,string)
Verse.GraphicData:Init ()
Verse.GraphicData:get_Graphic ()
Verse.ThingDef:<PostLoad>b__311_0 ()
Verse.LongEventHandler:ExecuteToExecuteWhenFinished ()
Verse.LongEventHandler:UpdateCurrentAsynchronousEvent ()
Verse.LongEventHandler:LongEventsUpdate (bool&)
Verse.Root:Update ()
Verse.Root_Entry:Update ()
Could not execute post-long-event action. Exception: System.NullReferenceException: Object reference not set to an instance of an object
at Verse.GlobalTextureAtlasManager.TryInsertStatic (Verse.TextureAtlasGroup group, UnityEngine.Texture2D texture, UnityEngine.Texture2D mask) [0x00000] in <b64badbf3c3d41018b3ca5d3e8c77771>:0
at Verse.Graphic_Single.TryInsertIntoAtlas (Verse.TextureAtlasGroup groupKey) [0x00036] in <b64badbf3c3d41018b3ca5d3e8c77771>:0
at Verse.Graphic_Collection.TryInsertIntoAtlas (Verse.TextureAtlasGroup groupKey) [0x0000b] in <b64badbf3c3d41018b3ca5d3e8c77771>:0
at Verse.ThingDef.<PostLoad>b__311_0 () [0x00043] in <b64badbf3c3d41018b3ca5d3e8c77771>:0
at Verse.LongEventHandler.ExecuteToExecuteWhenFinished () [0x0007c] in <b64badbf3c3d41018b3ca5d3e8c77771>:0
UnityEngine.StackTraceUtility:ExtractStackTrace ()
Verse.Log:Error (string)
Verse.LongEventHandler:ExecuteToExecuteWhenFinished ()
Verse.LongEventHandler:UpdateCurrentAsynchronousEvent ()
Verse.LongEventHandler:LongEventsUpdate (bool&)
Verse.Root:Update ()
Verse.Root_Entry:Update ()
And here is my .xml file:
Code Select
<?xml version="1.0" encoding="utf-8"?>
<Defs>
<ThingDef ParentName="SculptureBase">
<defName>GreekSculpture</defName>
<label>Greek Sculpture</label>
<description>A sculpture of the female form not unlike those made by the Ancient Greek more than 5000 years ago.</description>
<graphicData>
<graphicClass>Graphic_Random</graphicClass>
<texPath>Things/Building/GreekSculpture</texPath>
<drawSize>(3,3)</drawSize>
<drawRotated>false</drawRotated>
</graphicData>
<fillPercent>0.5</fillPercent>
<rotatable>false</rotatable>
<statBases>
<MaxHitPoints>150</MaxHitPoints>
<Mass>7</Mass>
<Beauty>100</Beauty>
<WorkToMake>30000</WorkToMake>
</statBases>
<stuffCategories>
<li>Metallic</li>
<li>Woody</li>
<li>Stony</li>
</stuffCategories>
<costStuffCount>100</costStuffCount>
<minifiedDef>MinifiedThing</minifiedDef>
</ThingDef>
<ThingDef ParentName="SculptureBase">
<defName>GreekSculptureTerror</defName>
<label>Greek Terror Sculpture</label>
<description>A person-sized Greek sculpture shaped in a plaintive and oppressive form. Slaves who spend time around it will feel terror, which makes them stay suppressed for longer and thus reduces slave rebellions.</description>
<castEdgeShadows>true</castEdgeShadows>
<graphicData>
<graphicClass>Graphic_Random</graphicClass>
<texPath>Things/Building/GreekSculptureTerror</texPath>
<drawSize>(3,3)</drawSize>
</graphicData>
<fillPercent>0.5</fillPercent>
<rotatable>false</rotatable>
<statBases>
<MaxHitPoints>150</MaxHitPoints>
<Mass>7</Mass>
<Beauty>-5</Beauty>
<WorkToMake>30000</WorkToMake>
<TerrorSource MayRequire="Ludeon.RimWorld.Ideology">0</TerrorSource>
</statBases>
<stuffCategories>
<li>Metallic</li>
<li>Woody</li>
<li>Stony</li>
</stuffCategories>
<costStuffCount>100</costStuffCount>
</ThingDef>
</Defs>Edit 2:After looking at the terror statue texpath and the error, it seems the game isn't looking at the correct folder for the terror statues, why is that?