[Solved] Need help translating this error log output.

Started by Igabod, January 23, 2015, 01:25:35 AM

Previous topic - Next topic

Igabod

I've got yet another weird bug that I can't track down the source of. First the screenshot of the debug log info then the description of how it happens.



It happens when a colonists eats the new meal item I've made. This one is a Cherry Pie, but it happens with all of my new pies which are just copies of the Banana Pie which I did first to test it. That first test never included eating the pie though. Anyway, the bug message fires off right at the moment when a pawn would finish eating the meal apparently and in the process they stop eating the meal before they actually finish it (if that makes sense) so the meal is never consumed, they stay hungry, they see a nice cherry pie sitting on the table in front of them and start eating it. Bug message fires off again, stops them from eating, and so on till they die of starvation with a cherry pie sitting on the table in front of them. I've successfully made the first food that will kill you of starvation just by eating it.

Here's the code for the pie object def:


  <ThingDef ParentName="MealRottable">
    <defName>PieCherry</defName>
    <label>Cherry Pie</label>
    <description>A delicious cherry pie made from scratch and endowed with love.</description>
    <graphicPath>Things/Item/Meal/PieCherry</graphicPath>
    <graphicClass>Graphic_Single</graphicClass>
    <statBases>
      <MarketValue>50</MarketValue>
      <WorkToMake>500</WorkToMake>
    </statBases>
    <food>
      <quality>MealFine</quality>
      <nutrition>70</nutrition>
      <eatenDirectThought>AteCherryPie</eatenDirectThought>
      <eatEffect>EatVegetarian</eatEffect>
      <soundEat>Meal_Eat</soundEat>
    </food>
  </ThingDef>


and here is the code for a fine meal which this is copied and edited from


  <ThingDef ParentName="MealRottable">
    <defName>MealFine</defName>
    <label>fine meal</label>
    <description>A complex dish assembled with care from a wide selection of ingredients.</description>
    <graphicPath>Things/Item/Meal/Fine</graphicPath>
    <graphicClass>Graphic_Single</graphicClass>
    <statBases>
      <MarketValue>28</MarketValue>
      <WorkToMake>450</WorkToMake>
    </statBases>
    <food>
      <quality>MealFine</quality>
      <nutrition>90</nutrition>
      <eatenDirectThought>AteFineMeal</eatenDirectThought>
      <eatEffect>EatVegetarian</eatEffect>
      <soundEat>Meal_Eat</soundEat>
    </food>
  </ThingDef>


So to my eyes, it looks like it can't be in the item def for the pie. (Yes, the MealRottable parent def is included at the top of the file along with the mealbase parent def).

The next part involved with the cherry pie is the memory thought which is just a clone of all my other memory thoughts which don't have a problem so I know that's not the issue. And then there is the recipe for it. Here is the code for the recipe.


<RecipeDef>
<defName>CookPieCherry</defName>
<label>Cook Cherry Pie</label>
<description>Cooks a delicious cherry pie.</description>
<jobString>Cooking Cherry Pie.</jobString>
<workSpeedStat>CookSpeed</workSpeedStat>
<effectWorking>Cook</effectWorking>
<soundWorking>Recipe_CookMeal</soundWorking>
<allowMixingIngredients>true</allowMixingIngredients>
<ingredients>
<li>
<filter>
<thingDefs>
<li>CherryFruit</li>
</thingDefs>
</filter>
<count>15</count>
</li>
<li>
<filter>
<thingDefs>
<li>RawSugarCane</li>
</thingDefs>
</filter>
<count>5</count>
</li>
<li>
<filter>
<thingDefs>
<li>CookingOil</li>
</thingDefs>
</filter>
<count>1</count>
</li>
</ingredients>
<products>
<PieCherry>1</PieCherry>
</products>
<fixedIngredientFilter>
<thingDefs>
<li>CherryFruit</li>
<li>RawSugarCane</li>
<li>CookingOil</li>
</thingDefs>
</fixedIngredientFilter>
<defaultIngredientFilter>
<thingDefs>
<li>CherryFruit</li>
<li>RawSugarCane</li>
<li>CookingOil</li>
</thingDefs>
</defaultIngredientFilter>
<skillRequirements>
<li>
<skill>Cooking</skill>
<minLevel>6</minLevel>
</li>
</skillRequirements>
<skillGains>
<Cooking>130</Cooking>
</skillGains>
<recipeUsers>
<li>CookStove</li>
</recipeUsers>
</RecipeDef>


But if there was a problem there it would have produced a bug message during the cooking process I would think.

I can't think of what else it might be. I might just be too sleepy and not seeing something that's obvious.

StorymasterQ

In my country, we have something called a Simalakama Fruit. Please don't make pies from it.
I like how this game can result in quotes that would be quite unnerving when said in public, out of context. - Myself

The dubious quotes list is now public. See it here

Igabod

Quote from: StorymasterQ on January 23, 2015, 01:34:16 AM
In my country, we have something called a Simalakama Fruit. Please don't make pies from it.

You are from Indonesia? I have an Aunt from Indonesia. Aku berbicara sedikit bahasa Indonesia. Saya tidak sangat terampil.

StorymasterQ

Quote from: Igabod on January 23, 2015, 01:40:47 AM
Quote from: StorymasterQ on January 23, 2015, 01:34:16 AM
In my country, we have something called a Simalakama Fruit. Please don't make pies from it.

You are from Indonesia? I have an Aunt from Indonesia. Aku berbicara sedikit bahasa Indonesia. Saya tidak sangat terampil.

Yes, I am. I have an Aunt living in America. If it turns out that we're cousins, that'd be more epic than Epyk's Mod Pack. You can't get much more epic than that.
Also, yes, don't try to make sense of our pronouns :D
I like how this game can result in quotes that would be quite unnerving when said in public, out of context. - Myself

The dubious quotes list is now public. See it here

Rikiki

I remember a similar case where someone tried to make recipes use wood on a campfire.
As the wood (here I suspect your cooking oil) had no nutrition properties, there was a bug when the game parses the meal ingredients to see their effects on the pawn.
I suspect this is used to check there if there is some human meat in the meal to apply the "ate human meat" thought.

So try again removing the cooking oil ingredient.

Igabod

Quote from: StorymasterQ on January 23, 2015, 02:50:39 AM
Quote from: Igabod on January 23, 2015, 01:40:47 AM
Quote from: StorymasterQ on January 23, 2015, 01:34:16 AM
In my country, we have something called a Simalakama Fruit. Please don't make pies from it.

You are from Indonesia? I have an Aunt from Indonesia. Aku berbicara sedikit bahasa Indonesia. Saya tidak sangat terampil.

Yes, I am. I have an Aunt living in America. If it turns out that we're cousins, that'd be more epic than Epyk's Mod Pack. You can't get much more epic than that.
Also, yes, don't try to make sense of our pronouns :D

Lol yes that would be pretty epic. I don't know my aunt's real name. She still has never told it to me because she says I'll just forget it or mispronounce it. She tells me to call her Henny. Or Tantenny (which means Aunt Henny I think).

Igabod

#6
Quote from: Rikiki on January 23, 2015, 03:20:10 AM
I remember a similar case where someone tried to make recipes use wood on a campfire.
As the wood (here I suspect your cooking oil) had no nutrition properties, there was a bug when the game parses the meal ingredients to see their effects on the pawn.
I suspect this is used to check there if there is some human meat in the meal to apply the "ate human meat" thought.

So try again removing the cooking oil ingredient.

Hmm that sounds like it could be it. I'll just have to make the Cooking Oil a food or remove it. If I make it a food item I'll have to make a new food category for it so that it isn't used as the only ingredient in simple meals or anything. Ok, easy fix I guess. Thank you so much Rikiki.

[edit to add] Yep, that fixed it right up for me. Thanks again Rikiki.