Customizing symbols - AndroidQuazar/VanillaExpandedFramework GitHub Wiki

Let's say you exported a building with cryptosleep caskets. By default, they will be filled with a random pawn. If you want, you can create a new custom SymbolDef and customize the content of the casket. Then add it to the layout (search and replace make it easy!).

Pawn container

If you're planning to use a building which can contain pawn, you may need to create a custom symbol. For example:

<KCSG.SymbolDef>
  <defName>Wiki_MyCasket_West</defName>
  <thing>CryptosleepCasket</thing>
  <rotation>West</rotation>
  <!-- All the possible pawnKindDefs -->
  <containPawnKindAnyOf>
    <li>pawn1</li>
    <li>pawn2</li>
  </containPawnKindAnyOf>
  <!-- If the map faction is Player, those pawnkinds are used -->
  <containPawnKindForPlayerAnyOf>
    <li>pawnforPlayer1</li>
    <li>pawnforPlayer2</li>
  </containPawnKindForPlayerAnyOf>
  <!-- 1 if pawn should always spawn inside -->
  <chanceToContainPawn>0.1</chanceToContainPawn>
  <!-- Pawn is spawned part of it's parent faction -->
  <spawnPartOfFaction>true</spawnPartOfFaction>
</KCSG.SymbolDef>

Item container

<KCSG.SymbolDef>
  <defName>Wiki_MyCrate_North</defName>
  <thing>AncientHermeticCrate</thing>
  <rotation>North</rotation>
  <!-- Can be any thingSetMakerDef -->
  <thingSetMakerDef>MapGen_AncientComplex_SecurityCrate</thingSetMakerDef>
  <!-- Same thing as above, used when the map faction is Player -->
  <thingSetMakerDefForPlayer>...</thingSetMakerDefForPlayer>
  <!-- default is 1, will not spawn stack bigger than the item maxStackSize -->
  <crateStackMultiplier>5</crateStackMultiplier>
</KCSG.SymbolDef>

Pawn symbol

<KCSG.SymbolDef>
  <defName>PawnSymbol</defName>
  <pawnKindDef>Drifter</pawnKindDef>
  <!-- Default:false -->
  <isSlave>false</isSlave>
  <!-- To spawn part of map faction Default:true -->
  <spawnPartOfFaction>false</spawnPartOfFaction>
  <!-- Null for wild pawn, or map faction if spawnPartOfFaction is true -->
  <faction>OutlanderRough</faction>
  <numberToSpawn>1</numberToSpawn>
  <!-- Default:false -->
  <spawnDead>false</spawnDead>
  <!-- Default:false -->
  <spawnRotten>false</spawnRotten>
  <!-- Default:false -->
  <spawnFilthAround>false</spawnFilthAround>
  <!-- Default:false -->
  <defendSpawnPoint>true</defendSpawnPoint>
</KCSG.SymbolDef>
⚠️ **GitHub.com Fallback** ⚠️