RimWorld

RimWorld

Humanoid Alien Races
This topic has been locked
Making a new race?
I have corrected every single error brought up by the window when the game starts up. That box doesn't even appear anymore. But the race still does not work.
< >
Showing 1-9 of 9 comments
erdelf  [developer] Oct 9, 2020 @ 6:28pm 
in what way ?
What does "not work" mean in this case exactly ?

Feel free to show up on the discord for more immediate support.
ArmoredAmpharos Oct 9, 2020 @ 8:43pm 
When I start the game there is no box of errors. So everything that box would bring up has been addressed. But when I try to start a new game to begin testing, the world does not fully load. Like it just goes back to the Create World screen. Then(if i am in dev mode) it brings up an error box with this message for every single race settlement that it tried to spawn.

Error while drawing Settlement Turnipwell (tile=7882): System.ArgumentNullException: Value cannot be null.
Parameter name: key
at System.Collections.Generic.Dictionary`2[TKey,TValue].FindEntry (TKey key) [0x00008] in <567df3e0919241ba98db88bec4c6696f>:0
at System.Collections.Generic.Dictionary`2[TKey,TValue].TryGetValue (TKey key, TValue& value) [0x00000] in <567df3e0919241ba98db88bec4c6696f>:0
at Verse.ModContentHolder`1[T].Get (System.String path) [0x00000] in <d72310b4d8f64d25aee502792b58549f>:0
at Verse.ContentFinder`1[T].Get (System.String itemPath, System.Boolean reportFailure) [0x0004c] in <d72310b4d8f64d25aee502792b58549f>:0
at Verse.MaterialPool.MatFrom (System.String texPath, UnityEngine.Shader shader, UnityEngine.Color color, System.Int32 renderQueue) [0x00000] in <d72310b4d8f64d25aee502792b58549f>:0
at RimWorld.Planet.Settlement.get_Material () [0x0002f] in <d72310b4d8f64d25aee502792b58549f>:0
at RimWorld.Planet.WorldObject.get_ExpandingIconColor () [0x00015] in <d72310b4d8f64d25aee502792b58549f>:0
at RimWorld.Planet.ExpandableWorldObjectsUtility.ExpandableWorldObjectsOnGUI () [0x00083] in <d72310b4d8f64d25aee502792b58549f>:0
Verse.Log:Error(String, Boolean)
RimWorld.Planet.ExpandableWorldObjectsUtility:ExpandableWorldObjectsOnGUI()
RimWorld.WorldInterface:WorldInterfaceOnGUI()
Verse.UIRoot_Entry:UIRootOnGUI()
Verse.Root:Verse.Root.OnGUI_Patch1(Root)


If I close that, the world itself has spawned somehow(after backing out of everything as if i am canceling the new game) but without any settlements of my race, though they do still come up under the faction list. If I select a tile to start the game anyway despite the errors and use Prepare Carefully to select my colonists, I am able to select my race. But they have no graphic and their name is always "ERR".

I have checked and double checked my graphic paths, everything seems correct. And I have no other race mods active for it to conflict with.

erdelf  [developer] Oct 10, 2020 @ 3:36am 
the faction of your race either has no icon or the path to it is wrong.

settlementTexturePath is the tag.
ArmoredAmpharos Oct 10, 2020 @ 7:41am 
Ok, so that worked for the factions. The world is spawning now, thank you very much. But the pawn still has no graphic and is named ERR. I have double checked my graphic paths and they look fine to me.

Failed to find any textures at Things/Ampherian/BodyMale_Naked_Male while constructing Multi(initPath=Things/Ampherian/BodyMale_Naked_Male, color=RGBA(1.000, 1.000, 1.000, 1.000), colorTwo=RGBA(1.000, 1.000, 1.000, 1.000))
Verse.Log:Error(String, Boolean)
Verse.Graphic_Multi:Init(GraphicRequest)
Verse.GraphicDatabase:GetInner(GraphicRequest)
Verse.GraphicDatabase:Get(String, Shader, Vector2, Color, Color)
AlienRace.AlienPartGenerator:GetNakedGraphic(BodyTypeDef, Shader, Color, Color, String, String)
AlienRace.HarmonyPatches:ResolveAllGraphicsPrefix(PawnGraphicSet)
Verse.PawnGraphicSet:Verse.PawnGraphicSet.ResolveAllGraphics_Patch1(PawnGraphicSet)
Verse.PawnRenderer:Verse.PawnRenderer.RenderPawnInternal_Patch2(PawnRenderer, Vector3, Single, Boolean, Rot4, Rot4, RotDrawMode, Boolean, Boolean, Boolean)
Verse.PawnRenderer:RenderPortrait()
RimWorld.PortraitRenderer:OnPostRender()
UnityEngine.Camera:Render()
RimWorld.PortraitRenderer:RenderPortrait(Pawn, RenderTexture, Vector3, Single)
RimWorld.PortraitsCache:RenderPortrait(Pawn, RenderTexture, Vector3, Single)
RimWorld.PortraitsCache:Get(Pawn, Vector2, Vector3, Single, Boolean, Boolean)
EdB.PrepareCarefully.CustomPawn:GetPortrait(Vector2)
EdB.PrepareCarefully.PanelPawnList:DrawPanelContent(State)
EdB.PrepareCarefully.PanelBase:Draw(State)
EdB.PrepareCarefully.TabViewPawns:Draw(State, Rect)
EdB.PrepareCarefully.Page_PrepareCarefully:DoWindowContents(Rect)
Verse.Window:InnerWindowOnGUI(Int32)
UnityEngine.GUI:CallWindowDelegate(WindowFunction, Int32, Int32, GUISkin, Int32, Single, Single, GUIStyle)

My alien body types are
<alienbodytypes>
<li>Male</li>
<li>Female</li>
</alienbodytypes>

and my graphic paths are

<graphicPaths>
<li>
<body>Things/Ampherian/Body</body>
<head>Things/Ampherian/Head</head>
<skeleton>Things/Ampherian/Dessicated/</skeleton>
<skull>Things/Ampherian/Skull/</skull>
</li>
</graphicPaths>

The folder paths patch those exactly. and the image files are named Naked_Female_east(and north and south) and Naked_Male_east_and north and south) which is identical if the name of the bodies both in vanilla and in the Ferian race I was using as an example. And the files are PNG files of 128x128 dimensions.






erdelf  [developer] Oct 10, 2020 @ 8:52am 
I mean the error does tell you what the issue is. In this case you most likely forgot to add a slash after the paths
ArmoredAmpharos Oct 10, 2020 @ 9:00am 
It's always the little things, isn't it? Ok, that has been fixed and is working... now the ERR name is the only issue.

Grammar unresolvable. Root 'r_name'

GRAMMAR RESOLUTION TRACE
1 r_name → [femalename] [lastname]
femalename → UNRESOLVABLE
lastname → UNRESOLVABLE
r_name → UNRESOLVABLE

INCLUDES
NamerPersonAmpherianFemale
NamerAmpherian

CUSTOM RULES

Verse.Log:Error(String, Boolean)
Verse.Log:ErrorOnce(String, Int32, Boolean)
Verse.Grammar.GrammarResolver:ResolveUnsafe(String, GrammarRequest, Boolean&, String, Boolean, Boolean, List`1, List`1, Boolean)
Verse.Grammar.GrammarResolver:ResolveUnsafe(String, GrammarRequest, String, Boolean, Boolean, List`1, List`1, Boolean)
Verse.Grammar.GrammarResolver:ResolveUnsafe(String, GrammarRequest, Boolean&, String, Boolean, Boolean, List`1, List`1, Boolean)
Verse.Grammar.GrammarResolver:ResolveUnsafe(String, GrammarRequest, String, Boolean, Boolean, List`1, List`1, Boolean)
Verse.Grammar.GrammarResolver:Resolve(String, GrammarRequest, String, Boolean, String, List`1, List`1, Boolean)
RimWorld.NameGenerator:GenerateName(GrammarRequest, Predicate`1, Boolean, String, String)
RimWorld.NameGenerator:GenerateName(RulePackDef, Predicate`1, Boolean, String, String)
AlienRace.HarmonyPatches:GeneratePawnNamePrefix(Name&, Pawn, NameStyle, String)
RimWorld.PawnBioAndNameGenerator:RimWorld.PawnBioAndNameGenerator.GeneratePawnName_Patch1(Pawn, NameStyle, String)
RimWorld.PawnBioAndNameGenerator:RimWorld.PawnBioAndNameGenerator.GiveShuffledBioTo_Patch0(Pawn, FactionDef, String, List`1)
RimWorld.PawnBioAndNameGenerator:RimWorld.PawnBioAndNameGenerator.GiveAppropriateBioAndNameTo_Patch1(Pawn, String, FactionDef)
Verse.PawnGenerator:Verse.PawnGenerator.TryGenerateNewPawnInternal_Patch0(PawnGenerationRequest&, String&, Boolean, Boolean)
Verse.PawnGenerator:GenerateNewPawnInternal(PawnGenerationRequest&)
Verse.PawnGenerator:GenerateOrRedressPawnInternal(PawnGenerationRequest)
Verse.PawnGenerator:Verse.PawnGenerator.GeneratePawn_Patch1(PawnGenerationRequest)
EdB.PrepareCarefully.Randomizer:AttemptToGeneratePawn(PawnGenerationRequest)
EdB.PrepareCarefully.Randomizer:GeneratePawn(PawnGenerationRequest)
EdB.PrepareCarefully.ControllerPawns:AddFactionPawn(PawnKindDef, Boolean)
EdB.PrepareCarefully.<>c__DisplayClass64_0:<ShowPawnKindDialog>b__1()
EdB.PrepareCarefully.DialogPawnKinds:PostClose()
Verse.WindowStack:TryRemove(Window, Boolean)
Verse.Window:Close(Boolean)
EdB.PrepareCarefully.DialogPawnKinds:Confirm()
EdB.PrepareCarefully.DialogPawnKinds:DoWindowContents(Rect)
Verse.Window:InnerWindowOnGUI(Int32)
UnityEngine.GUI:CallWindowDelegate(WindowFunction, Int32, Int32, GUISkin, Int32, Single, Single, GUIStyle)
ArmoredAmpharos Oct 10, 2020 @ 9:00am 
And thank you SOOOO much for all this help. I really appreciate it.
erdelf  [developer] Oct 10, 2020 @ 9:10am 
That would be your name makers.. but I really don't know much about those, sorry.
ArmoredAmpharos Oct 10, 2020 @ 9:28am 
Alright. Thank you very much for your help. The names are the only thing I have left to fiddle with.
< >
Showing 1-9 of 9 comments
Per page: 1530 50