Quick Reply
Search this Thread
Test Subject
Original Poster
#1 Old 15th Sep 2025 at 3:39 PM Last edited by Ezuu : 15th Sep 2025 at 8:09 PM.
Default Help: Adding custom ingredients
Hey all! Today I decided to do something I thought was fairly simple: add flour and sugar as ingredients in the game. So I decided to edit the package file for a mod that I have that already adds new ingredients (Cooking And Ingredients Overhaul) and I just added my two extra ingredients at the bottom of the "Ingredients" XML and then added those ingredients to some of the recipes in the game.

Now everything works perfectly (ingredients can be bought from the grocery store and used in recipes) but while the flour shows up fine in the game, the sugar ingredient doesn't show its name, it's just blank. I tried adding extra ingredients, changing names, changing the order, etc. but it all shows up without a name in the game with the exception of the flour, which no matter what always shows its name just fine. I'm probably supposed to edit the strings in the STBL but how do I connect the ingredient with the string?

This is how I'm doing it also:
Code:
<Data>
  <Ingredient_Key>Sugar</Ingredient_Key>
  <Ingredient_Name>Sugar</Ingredient_Name>
  <UiTab>Misc</UiTab>
  <Parent>Ingredient</Parent>
  <Model_Name>measuringCup</Model_Name>
  <Fertilizer_Value>5</Fertilizer_Value>
  <Fertilizer_Days>6</Fertilizer_Days>
  <Nectar_Value>3</Nectar_Value>
  <DrinkQuality_Min>0.005</DrinkQuality_Min>
  <DrinkQuality_Max>0.05</DrinkQuality_Max>
  <Price>20</Price>
  <CanBuyFromStore>True</CanBuyFromStore>
  <PetSpeciesThatCanEatOffGround>AllDogs</PetSpeciesThatCanEatOffGround>
  <IsMushrooms>False</IsMushrooms>
  <SpawnAtNightOnly>False</SpawnAtNightOnly>
  <IsEdible>True</IsEdible>
 </Data>
<Data>
  <Ingredient_Key>Flour</Ingredient_Key>
  <Ingredient_Name>Flour</Ingredient_Name>
  <UiTab>Bread</UiTab>
  <Parent>Ingredient</Parent>
  <Model_Name>bagFlour</Model_Name>
  <Fertilizer_Value>5</Fertilizer_Value>
  <Fertilizer_Days>6</Fertilizer_Days>
  <Nectar_Value>3</Nectar_Value>
  <DrinkQuality_Min>0.005</DrinkQuality_Min>
  <DrinkQuality_Max>0.05</DrinkQuality_Max>
  <Price>20</Price>
  <CanBuyFromStore>True</CanBuyFromStore>
  <PetSpeciesThatCanEatOffGround>AllDogs</PetSpeciesThatCanEatOffGround>
  <IsMushrooms>False</IsMushrooms>
  <SpawnAtNightOnly>False</SpawnAtNightOnly>
  <IsEdible>True</IsEdible>
 </Data>
Screenshots
Inventor
#2 Old 16th Sep 2025 at 11:06 AM
STBL are hashed with a key, which is Gameplay/Excel/Ingredients/Data: followed by the Ingredient_Name for Ingredients.

For example, the FNV64 hash of Gameplay/Excel/Ingredients/Data:Rice is 0xFC8032CCE3249A4C - which, if you look at the STBL for Cooking and Ingredients Overhaul, is the ID for the 'Rice' string.
And at the bottom of the STBL list, whadda y'know, there's an unused string for Flour already. Conveniently, to confuse you

When you're flying blind and don't know what EA's original key was, https://www.nraas.net/community/UntranslatedKey comes to the rescue. Instead of just being blank, it displays the name of the key that doesn't exist yet.

Cardinal has been taken by a fey mood!
Test Subject
Original Poster
#3 Old 16th Sep 2025 at 2:17 PM
Quote: Originally posted by CardinalSims
STBL are hashed with a key, which is Gameplay/Excel/Ingredients/Data: followed by the Ingredient_Name for Ingredients.

For example, the FNV64 hash of Gameplay/Excel/Ingredients/Data:Rice is 0xFC8032CCE3249A4C - which, if you look at the STBL for Cooking and Ingredients Overhaul, is the ID for the 'Rice' string.
And at the bottom of the STBL list, whadda y'know, there's an unused string for Flour already. Conveniently, to confuse you

When you're flying blind and don't know what EA's original key was, https://www.nraas.net/community/UntranslatedKey comes to the rescue. Instead of just being blank, it displays the name of the key that doesn't exist yet.


I finally got it! Thank you so much, I spent such a long time yesterday googling and scratching my head and the solution was so simple!
Back to top