[SOLVED] Can't get my custom bed to show in Potter Recipes

Hi guys,

I’ve spent 8 hours on this now - and eliminated many silly mistakes. But I’m still missing something. I just made a Rayyan version of a comfy bed but can’t get it to show in the Potter’s recipe list.

I can place it with the debug tool, and its iconic model works fine too.

I just have no idea what I’m missing to make it list as a recipe.

I even looked at the Runes mod as well as the starter mod to see if I made any mistakes but I am stumped.

I have huge modding ambitions, but can’t get this basic one working yet.

furniture_clay_comfy_bed.zip (33.2 KB)

just loaded it up and didn’t get the recipe either, however, checking the .log i found this,

2016-10-22 14:06:14.600481 | server |  1 |                        resources | could not find resource for /furniture_clay_comfy_bed/furniture_clay_comfy_bed/jobs/potter/recipes/recipes.json while processing mixintos for furniture_clay_comfy_bed.  ignoring.

which points to an error in the manifest,

{
   "info": {
      "name": "furniture_clay_comfy_bed",
      "version": 3
   },
   "aliases": {
      "furniture:clay_comfy_bed": "file(entities/furniture/clay_comfy_bed/clay_comfy_bed.json)"
   }, 
   "mixintos" : {
      "stonehearth/jobs/potter/recipes/recipes.json" : "file(furniture_clay_comfy_bed/jobs/potter/recipes/recipes.json)"
   }
}

with the mixins, the path to you’re potters recipes.json should actually look like this,

"file(jobs/potter/recipes/recipes.json)"

hope that helps/makes sense :slight_smile:

1 Like

It works, thanks! But I don’t understand why just adding a / at the start doesn’t force it to read from the mod root folder, as in other places e.g. the portrait path, that is the way it works - I would have expected things to be consistent.

I do have a question on how the descriptions and naming works though. It doesn’t seem to load the display name/recipe correctly, but I’m not sure what I’m doing wrong. I’d like to point everything to a single file the set names and descriptions in instead of setting it everywhere, and i thought that would be the locales folder, en.json - is there documentation somewhere on how this stuff works?

again in the manifest, you just need to add this line,

   "default_locale": "en",

so it should look something like this now,

{
   "info": {
      "name": "furniture_clay_comfy_bed",
      "version": 3
   },

   "default_locale": "en",

   "aliases": {
      "furniture:clay_comfy_bed": "file(entities/furniture/clay_comfy_bed/clay_comfy_bed.json)"
   }, 
   "mixintos" : {
      "stonehearth/jobs/potter/recipes/recipes.json" : "file(furniture_clay_comfy_bed/jobs/potter/recipes/recipes.json)"
   }
}

i made the same mistake when i first localized one of my mods, and i spent hours trying to figure out what was wrong :sweat_smile:

hmm… i’m not certain, i know there has been a lot of suggestions for that, but i don’t know if anyone has actually done it yet :thinking:

I saw u added that in u’r mod and i did same in mine but it didn’t work.

I then figured out that I had an extra comma in my en.json file after one of the fields.

When I removed it, all my names worked 100%.

Thanks crab you’ve been a great help. I can now move on to more and more ambitious stuff, working my way up from the basics.

1 Like

There is two ways to use a path.
Using the “file(abc/def.json)” it will always point to your own mod automatically. So you don’t need to inform it or adding the first slash for root. It always loads relative to where the file is, btw. So when using it in the manifest it is always relative to the mod folder.

The other way is using “your_mod/abc/def.json”. So you need to say which is the mod at the start. It is the absolute path, starting at the mods folder.

Here, a better explanation:

4 Likes