• If you have a mod, tool or prefab, please use the Resources section. Click Mods at the top of the forums.

Working Oven a17 Stable

Untested but this should get you going.

Code:
<property class="Workstation">
       <property name="Modules" value="tools,output,fuel,input"/>
       <property name="Collide" value="melee,bullet,arrow,rocket"/>
       <property name="CraftingAreaRecipes" value="PlayerOven,campfire"/>    <!-- ADD THIS LINE -->
   </property>
 
Last edited by a moderator:
Untested but this should get you going.

Code:
<property class="Workstation">
       <property name="Modules" value="tools,output,fuel,input"/>
       <property name="Collide" value="melee,bullet,arrow,rocket"/>
       <property name="CraftingAreaRecipes" value="PlayerOven,campfire"/>    <!-- ADD THIS LINE -->
   </property>
Yep, that was it. I knew it had to be something simple I was overlooking, but after a long day at work I just couldn't think anymore. :p

Download updated in OP.

 
Yep, that was it. I knew it had to be something simple I was overlooking, but after a long day at work I just couldn't think anymore. :p
Download updated in OP.
great now I just need the sink :smile-new:

 
great now I just need the sink :smile-new:
Working Sinks, Faucets and Fridge for water, Can add more, but I did these on mine and tested with the Fridge for example and Sinks, right click with an empty bottle fills with Murky Water, It can be done to Empty Cans I just didn't code that part yet

Just add this to your items.xml modlet

Code:
<!-- Water from sinks, fridge, faucets -->
<append xpath="/items/item[@name='drinkJarEmpty']/property[@class='Action1']">
	<property name="Focused_blockname_6" value="cntCabinetOldSink" />
	<property name="Focused_blockname_7" value="cntGraniteSink" />
	<property name="Focused_blockname_8" value="utilitySink" />
	<property name="Focused_blockname_9" value="wallHungSink" />
	<property name="Focused_blockname_10" value="cntFridgeTop" />
	<property name="Focused_blockname_11" value="faucet02" />
	<property name="Focused_blockname_12" value="faucet04" />
</append>
 
Here is the Empty Can one as well

Code:
<append xpath="/items/item[@name='drinkCanEmpty']/property[@class='Action1']">
	<property name="Focused_blockname_6" value="cntCabinetOldSink" />
	<property name="Focused_blockname_7" value="cntGraniteSink" />
	<property name="Focused_blockname_8" value="utilitySink" />
	<property name="Focused_blockname_9" value="wallHungSink" />
	<property name="Focused_blockname_10" value="cntFridgeTop" />
	<property name="Focused_blockname_11" value="faucet02" />
	<property name="Focused_blockname_12" value="faucet04" />
</append>
 
Working Sinks, Faucets and Fridge for water, Can add more, but I did these on mine and tested with the Fridge for example and Sinks, right click with an empty bottle fills with Murky Water, It can be done to Empty Cans I just didn't code that part yet
Just add this to your items.xml modlet

Code:
<!-- Water from sinks, fridge, faucets -->
<append xpath="/items/item[@name='drinkJarEmpty']/property[@class='Action1']">
	<property name="Focused_blockname_6" value="cntCabinetOldSink" />
	<property name="Focused_blockname_7" value="cntGraniteSink" />
	<property name="Focused_blockname_8" value="utilitySink" />
	<property name="Focused_blockname_9" value="wallHungSink" />
	<property name="Focused_blockname_10" value="cntFridgeTop" />
	<property name="Focused_blockname_11" value="faucet02" />
	<property name="Focused_blockname_12" value="faucet04" />
</append>

Here is the Empty Can one as well

Code:
<append xpath="/items/item[@name='drinkCanEmpty']/property[@class='Action1']">
	<property name="Focused_blockname_6" value="cntCabinetOldSink" />
	<property name="Focused_blockname_7" value="cntGraniteSink" />
	<property name="Focused_blockname_8" value="utilitySink" />
	<property name="Focused_blockname_9" value="wallHungSink" />
	<property name="Focused_blockname_10" value="cntFridgeTop" />
	<property name="Focused_blockname_11" value="faucet02" />
	<property name="Focused_blockname_12" value="faucet04" />
</append>
Great job, I love you

 
Updated modlet to include the sinks.
console error!

Code:
2018-11-30T16:00:21 108.977 ERR Failed loading and parsing XML (recipes.xml):
2018-11-30T16:00:21 108.977 EXC a name did not start with a legal character 45 (-)  Line 10, position 5.
XmlException: a name did not start with a legal character 45 (-)  Line 10, position 5.
 at Mono.Xml2.XmlTextReader.ReadName (System.String& prefix, System.String& localName) [0x00000] in <filename unknown>:0 
 at Mono.Xml2.XmlTextReader.ReadStartTag () [0x00000] in <filename unknown>:0 
 at Mono.Xml2.XmlTextReader.ReadContent () [0x00000] in <filename unknown>:0 
 at Mono.Xml2.XmlTextReader.Read () [0x00000] in <filename unknown>:0 
 at System.Xml.XmlTextReader.Read () [0x00000] in <filename unknown>:0 
 at System.Xml.XmlDocument.ReadNodeCore (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
 at System.Xml.XmlDocument.ReadNodeCore (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
 at System.Xml.XmlDocument.ReadNodeCore (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
 at System.Xml.XmlDocument.ReadNodeCore (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
 at System.Xml.XmlDocument.ReadNode (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
 at System.Xml.XmlDocument.Load (System.Xml.XmlReader xmlReader) [0x00000] in <filename unknown>:0 
 at System.Xml.XmlDocument.LoadXml (System.String xml) [0x00000] in <filename unknown>:0 
 at XmlFile.toXml (System.String _data, System.String _filename) [0x00000] in <filename unknown>:0 
UnityEngine.DebugLogHandler:Internal_LogException(Exception, Object)
UnityEngine.DebugLogHandler:LogException(Exception, Object)
UnityEngine.Logger:LogException(Exception, Object)
UnityEngine.Debug:LogException(Exception)
Logger:masterLogException(Exception)
Logger:Exception(Exception)
Log:Exception(Exception)
XmlFile:toXml(String, String)
XmlFile:.ctor(String, String, String)
XmlPatcher:LoadAndPatchConfig(String)
<loadSingleXml>c__Iterator1:MoveNext()
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)

(Filename:  Line: -1)

2018-11-30T16:00:21 108.978 ERR XML loader: Patching 'recipes.xml' from mod 'Working Ovens' failed
2018-11-30T16:00:21 108.978 EXC Object reference not set to an instance of an object
NullReferenceException: Object reference not set to an instance of an object
 at XmlPatcher.PatchXml (.XmlFile _xmlFile, .XmlFile _patchXml, System.String _patchName) [0x00000] in <filename unknown>:0 
 at XmlPatcher.LoadAndPatchConfig (System.String _configName) [0x00000] in <filename unknown>:0 
UnityEngine.DebugLogHandler:Internal_LogException(Exception, Object)
UnityEngine.DebugLogHandler:LogException(Exception, Object)
UnityEngine.Logger:LogException(Exception, Object)
UnityEngine.Debug:LogException(Exception)
Logger:masterLogException(Exception)
Logger:Exception(Exception)
Log:Exception(Exception)
XmlPatcher:LoadAndPatchConfig(String)
<loadSingleXml>c__Iterator1:MoveNext()
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)

(Filename:  Line: -1)
 
console error!

Code:
2018-11-30T16:00:21 108.977 ERR Failed loading and parsing XML (recipes.xml):
2018-11-30T16:00:21 108.977 EXC a name did not start with a legal character 45 (-)  Line 10, position 5.
XmlException: a name did not start with a legal character 45 (-)  Line 10, position 5.
 at Mono.Xml2.XmlTextReader.ReadName (System.String& prefix, System.String& localName) [0x00000] in <filename unknown>:0 
 at Mono.Xml2.XmlTextReader.ReadStartTag () [0x00000] in <filename unknown>:0 
 at Mono.Xml2.XmlTextReader.ReadContent () [0x00000] in <filename unknown>:0 
 at Mono.Xml2.XmlTextReader.Read () [0x00000] in <filename unknown>:0 
 at System.Xml.XmlTextReader.Read () [0x00000] in <filename unknown>:0 
 at System.Xml.XmlDocument.ReadNodeCore (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
 at System.Xml.XmlDocument.ReadNodeCore (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
 at System.Xml.XmlDocument.ReadNodeCore (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
 at System.Xml.XmlDocument.ReadNodeCore (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
 at System.Xml.XmlDocument.ReadNode (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
 at System.Xml.XmlDocument.Load (System.Xml.XmlReader xmlReader) [0x00000] in <filename unknown>:0 
 at System.Xml.XmlDocument.LoadXml (System.String xml) [0x00000] in <filename unknown>:0 
 at XmlFile.toXml (System.String _data, System.String _filename) [0x00000] in <filename unknown>:0 
UnityEngine.DebugLogHandler:Internal_LogException(Exception, Object)
UnityEngine.DebugLogHandler:LogException(Exception, Object)
UnityEngine.Logger:LogException(Exception, Object)
UnityEngine.Debug:LogException(Exception)
Logger:masterLogException(Exception)
Logger:Exception(Exception)
Log:Exception(Exception)
XmlFile:toXml(String, String)
XmlFile:.ctor(String, String, String)
XmlPatcher:LoadAndPatchConfig(String)
<loadSingleXml>c__Iterator1:MoveNext()
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)

(Filename:  Line: -1)

2018-11-30T16:00:21 108.978 ERR XML loader: Patching 'recipes.xml' from mod 'Working Ovens' failed
2018-11-30T16:00:21 108.978 EXC Object reference not set to an instance of an object
NullReferenceException: Object reference not set to an instance of an object
 at XmlPatcher.PatchXml (.XmlFile _xmlFile, .XmlFile _patchXml, System.String _patchName) [0x00000] in <filename unknown>:0 
 at XmlPatcher.LoadAndPatchConfig (System.String _configName) [0x00000] in <filename unknown>:0 
UnityEngine.DebugLogHandler:Internal_LogException(Exception, Object)
UnityEngine.DebugLogHandler:LogException(Exception, Object)
UnityEngine.Logger:LogException(Exception, Object)
UnityEngine.Debug:LogException(Exception)
Logger:masterLogException(Exception)
Logger:Exception(Exception)
Log:Exception(Exception)
XmlPatcher:LoadAndPatchConfig(String)
<loadSingleXml>c__Iterator1:MoveNext()
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)

(Filename:  Line: -1)
Would just figure I pulled the wrong build when I did this at lunch.

Uploaded new file. It was missing the ! to comment out that line. I just removed it. (Had 6 items in craft, but only 5 show in the default client.)

 
Full List if you want implement it !!

Code:
<configs>

       <append xpath="/items/item[@name='drinkCanEmpty']/property[@class='Action1']">
       <property name="Focused_blockname_6" value="cntGraniteSink"/>
       <property name="Focused_blockname_7" value="faucet02"/>
       <property name="Focused_blockname_8" value="faucet04"/>
       <property name="Focused_blockname_9" value="faucetBrass02"/>
       <property name="Focused_blockname_10" value="faucetBrass04"/>
       <property name="Focused_blockname_11" value="cntToilet01"/>
       <property name="Focused_blockname_12" value="fountain"/>
       <property name="Focused_blockname_13" value="cntCabinetOldSink"/>
       <property name="Focused_blockname_14" value="utilitySink" />
       <property name="Focused_blockname_15" value="wallHungSink" />
       <property name="Focused_blockname_16" value="cntFridgeTop" />
   </append>

   <append xpath="/items/item[@name='drinkJarEmpty']/property[@class='Action1']">
       <property name="Focused_blockname_6" value="cntGraniteSink"/>
       <property name="Focused_blockname_7" value="faucet02"/>
       <property name="Focused_blockname_8" value="faucet04"/>
       <property name="Focused_blockname_9" value="faucetBrass02"/>
       <property name="Focused_blockname_10" value="faucetBrass04"/>
       <property name="Focused_blockname_11" value="cntToilet01"/>
       <property name="Focused_blockname_12" value="fountain"/>
       <property name="Focused_blockname_13" value="cntCabinetOldSink"/>
       <property name="Focused_blockname_14" value="utilitySink" />
       <property name="Focused_blockname_15" value="wallHungSink" />
       <property name="Focused_blockname_16" value="cntFridgeTop" />
   </append>

   <append xpath="/items/item[@name='bucketEmpty']/property[@class='Action1']">
       <property name="Focused_blockname_6" value="cntGraniteSink"/>
   <!--    <property name="Focused_blockname_7" value="faucet02"/>
       <property name="Focused_blockname_8" value="faucet04"/>
       <property name="Focused_blockname_9" value="faucetBrass02"/>
       <property name="Focused_blockname_10" value="faucetBrass04"/> -->
       <property name="Focused_blockname_11" value="cntToilet01"/>
       <property name="Focused_blockname_12" value="fountain"/>
       <property name="Focused_blockname_13" value="cntCabinetOldSink"/>
       <property name="Focused_blockname_14" value="utilitySink" />
       <property name="Focused_blockname_15" value="wallHungSink" />
 <!-- <property name="Focused_blockname_16" value="cntFridgeTop" /> -->
   </append>


</configs>
 
How do you install this?
What I did was make a folder called Working Oven and Sinks. Then I unzipped the files into that folder. I then put that folder in a Mods Folder I had made in my 7 Days To Die root directory.

So in your game folder where the 7DayToDie.exe file is you should have a Mods folder. In the Mods folder there should be a folder called Working Oven and Sinks. In the Working Oven and Sinks folder there should be a folder called Config and a file called ModInfo. In folder called Config there should be a folder called XUi and 3 files called blocks, items and recipes. In XUi folder there should be a file called xui.

That being said, SyleThunder, I have run into one little problem. When I open a campfire or an oven I get double items in them. Not sure if yours and another mod has conflicts or not. If I remove your mod then the player oven disappears (as it should I suppose) and the campfire has the correct number of items. Could it be a problem with the xui file?

 
Last edited by a moderator:
I have the same here, double up of all the campfire recipes. I just looked at the xml's now, and I think its because the recipe.xml uses the append command and lists all the campfire recipes. Doesnt look like they are connected to the oven, instead the oven is classed a campfire.

Sorry for poor explanation, I havent learned the xpath system yet..

 
What I did was make a folder called Working Oven and Sinks. Then I unzipped the files into that folder. I then put that folder in a Mods Folder I had made in my 7 Days To Die root directory.
So in your game folder where the 7DayToDie.exe file is you should have a Mods folder. In the Mods folder there should be a folder called Working Oven and Sinks. In the Working Oven and Sinks folder there should be a folder called Config and a file called ModInfo. In folder called Config there should be a folder called XUi and 3 files called blocks, items and recipes. In XUi folder there should be a file called xui.

That being said, SyleThunder, I have run into one little problem. When I open a campfire or an oven I get double items in them. Not sure if yours and another mod has conflicts or not. If I remove your mod then the player oven disappears (as it should I suppose) and the campfire has the correct number of items. Could it be a problem with the xui file?
You shouldn't require to add any recipe that the camp fire has already as your oven will look for the recipes attached to camp fire. Adding them to the oven will give duplicates

 
You shouldn't require to add any recipe that the camp fire has already as your oven will look for the recipes attached to camp fire. Adding them to the oven will give duplicates
Thats what I found out by loking at this mod. I removed the recipes for everything but the oven itself from the recipes.xml, and that worked :)

I would love to make the oven run on electricity tho, but have no idea where to start. I'm guessing properties like RunTimeSwitch and RequiredPower is needed, but beyond that... Might be time to start going through all the tutorials, and also trying to learn the basics of xml :)

 
Back
Top