RELEASED [SMAPI] New machines (flour, sugar, vinegar, rice?)

Discussion in 'Mods' started by Igorious, Mar 31, 2016.

Tags:
  1. Declension

    Declension Cosmic Narwhal

    Hey guys I was wondering what will the modding of this will turn to? As Ape says he plans on putting machines for flour and sugar, what will this mid focus on? Rice and vinegar?


    Sent from my iPhone using Tapatalk
     
    • Ryuuze

      Ryuuze Void-Bound Voyager

      Pretty sure the answer is, it will focus on adding new machines aswell as improving already existing ones. If i'm not mistaken Igorious' mentioned in one of his posts, that if Ape adds a machine that does what one of his machines do, he would possibly make some form of migration... (please bonk me if i'm just delusional)
       
      • Oboromusha

        Oboromusha Pangalactic Porcupine

        Well igorious already said he had no intention of joining New Machine's with KB's Crops on a single mod , so development cycle will be entirely reliant on him and he has college, so unless Ape's 1.1 comes out during summer break, we may only see his stuff when he has free time. Truth is, i'm enjoying the game as is now, fully modded, no major problems in progression and lots of content and exploration to be done, he was kind enough to provide the final piece of the puzzle by issuing a working build a couple of days ago, and the game feels great now. I'll probably go for full playthorugh while No Man's Sky doesn't come out.

        I mentioned this before, but it's relatively frustrating to achieve a full playthrough, when everyone's tinkering with the game and adding features that you really want to try out. So after this playthrough, I'll probably sit this one out, might occasionally help test features, but will not put in more actual dedicated gameplay until I kinda forget about this game entirely and feel that itch to play it again. I can sorta say that it takes about 10 years for me to miss a game I've played before and forget its key events so it's not boring to re-experience it, so yeah.... i'm just happy the game as is already does a crapton of new stuff and introduced the sheer joy of producing a wide inventory of goods for OCD collectors like myself. I'm satisfied.
         
        • sheetcakeghost

          sheetcakeghost Weight of the Sky

          Does the newest update make anyone elses' game lag? Is there a safe way to remove machines you never plan to use and keep the ones you do to maybe cut the lag down?
           
          • melissa3

            melissa3 Space Hobo

            I am feeling like I am really missing something. How do I use the mixer? I've tried juices and wines and can't seem to put anything IN it. Thanks!
             
            • sheetcakeghost

              sheetcakeghost Weight of the Sky

              Make sure you don't have it in a barn or something. I can't get my Ig machines to work in there.
               
              • melissa3

                melissa3 Space Hobo

                It is in the house. Perhaps I should move it outside.
                 
                • melissa3

                  melissa3 Space Hobo

                  I do have the separator and butter sour cream machines in the barn and they work fine. I don't see the advantage in it, profit wise, but I like having the extra things to do!
                   
                  • RoastedCoconutz

                    RoastedCoconutz Pangalactic Porcupine

                    I like this idea a lot! It's too bad that most of the minerals are completely useless after completing the library collection and that the duck feather is only used as a gift. This would make great use of all of them.


                    Whoa, I must have missed the addition of these machines! This mod is getting cooler and cooler.
                     
                      esawa likes this.
                    • Igorious

                      Igorious Sandwich Man

                      Thanks for report.
                      I've created quick fix for this issue:
                      Version 4.1.2
                      I will have more time on weekends to explore this problem.

                      ---

                      I will try to find perfomance issues by Saturday. Thanks for report.
                      To remove all specific machines, go to Farm location and enter in console
                      Code:
                      nmm_machine_demolish ID all
                      where ID is
                      164 for Mill,
                      166 for empty Tank,
                      168 for Vinegar Jug,
                      169 for Dryer,
                      172 for Mixer,
                      179 for Separator,
                      180 for Fermenter,
                      182 for Churn.
                      You can get this list of IDs by using command
                      Code:
                      nmm_out_craftables
                      If all right, you will hear BOOM!
                       
                        Last edited: May 25, 2016
                        taintedwheat likes this.
                      • Toots201

                        Toots201 Big Damn Hero

                        I love this app

                        maybe a machine to make oil from sunflower seeds or corn
                         
                        • Igorious

                          Igorious Sandwich Man

                          Thanks :)
                          But default Oil-Maker can make old from Corn, Sunflower and Sunflower Seeds, just try :D

                          ---

                          Version 4.2.0.
                          Improved performance.

                          I hope, I've broken nothing :)

                          ---

                          Also you can try my Colored Chests Mod.
                           
                          • Lazarae

                            Lazarae Scruffy Nerf-Herder

                            Are you still taking object/recipe suggestions? This is the only mod I know that adds alcohols to suggest to.
                             
                            • Igorious

                              Igorious Sandwich Man

                              Yes, of course :)
                              Will be well, if you also attach picture/sketch, how it should look.
                               
                              • Lazarae

                                Lazarae Scruffy Nerf-Herder

                                The cactus fruits in-game don't look at all like agave but I'm addicted to kegs and was thinking it might be possible to make tequila from them? I'm a fan of the Jose Cuervo 1800 bottles, they're very pretty and recognizable. More Crops' sugar cane could be made into rum. (I can't find a lot of interesting rum bottles that aren't made to look like things so I went with jugs instead. If you dig around you can probably find something if you prefer glass, though!)

                                If you feel like getting really obscure there's chicha, made from corn and traditionally kept in clay jars.
                                 
                                  lannihamm likes this.
                                • Toots201

                                  Toots201 Big Damn Hero

                                  Thank you
                                  everything is working perfectly now
                                   
                                  • BlankSlater

                                    BlankSlater Space Penguin Leader

                                    do you have a guide on how to add new machines? I'd love to add one or two myself.
                                     
                                      taintedwheat likes this.
                                    • Igorious

                                      Igorious Sandwich Man

                                      Do you want use code or just add simple machine for item trasformation?
                                      If the second one, it will be not so hard (but not so easy).

                                      I. Run my mod first time to generate Config files.
                                      II. Open Resources folder and add required images (I'm using Paint.NET as image editor).

                                      Adding sprite for item.
                                      0. Draw nice 16x16 image with transparent background.
                                      0_Image.png
                                      1. Open Items.png.
                                      2. Increase canvas height by 16px. (In Paint.NET: press Ctrl+Shift+R, set Height to 64px, set Anchor to Top, press OK)
                                      1_CanvasSize.png
                                      3. Select background area and delete it. (Select Magic Wand, click to area, press Delete key)
                                      4. Copy your image to free area. (Ctrl+C, Ctrl+V, move sprite by mouse)
                                      3_Copied.png
                                      5. Save file. (Ctrl+S)
                                      6. Find index of your sprite in texture and remember it:
                                      3a_Index.png
                                      In out case it's 45.

                                      Adding sprite for machine.
                                      0. Draw one, two or three nice 32x16 image with transparent background.
                                      You can use one image for each stage: empty machine, working, ready.
                                      4_Machine.png
                                      1. Open Craftables.png.
                                      2. Increase canvas height by 32px.
                                      3. Select background area and delete it.
                                      4. Copy your image to free area.
                                      5_MachineCopied.png
                                      5. Save image.
                                      6. Find index of your sprite in texture and remember it:
                                      5a_Index.png
                                      In out case it's 30.

                                      III. Open Configuration folder.

                                      Registering item.
                                      1. Open Items.json by text editor.
                                      2. Scroll to end of file. Square brackets «[» and «]» mean begin and end of item list. Figure brackets «{» and «}» mean begin and end of item definition.
                                      3. We want to add new item. Enter
                                      Code:
                                      {
                                      
                                      },
                                      4. Now let's add some information. Each item has unique ID, Name and Description. For example, we will use ID=960. Also we should set basic Price of item.
                                      Code:
                                      {
                                        ID: 960,
                                        Name: "Diamond Ring",
                                        Description: "A jewel ring.",
                                        Price: 1500,
                                      },
                                      By default, item has category «Basic». Category of item are displayed with colored text in game.
                                      Items also can have category «ArtisanGoods». Then you will get bonuses of specialization.
                                      If item is meal, you should set properties MealCategory (Food/Drink) and «Edibility» (used for health and energy restoring calculations). You can inspect examples in file.

                                      5. Last required property is «ResourceIndex». It's index of sprite in our texture. In our case it's 45.
                                      Code:
                                      {
                                        ID: 960,
                                        Name: "Diamond Ring",
                                        Description: "A jewel ring.",
                                        Price: 1500,
                                        ResourceIndex: 45,
                                      },
                                      6. We ready to save file.

                                      Registering machine.
                                      Time to create machine!
                                      1. Open SimpleMachines.json.
                                      2. Scroll to end of file.
                                      3. Add basic information:
                                      Code:
                                      {
                                        ID: 194,
                                        Name: "Jewelry Bench",
                                        Description: "Used to create jewelry.",
                                      
                                      },
                                      4. Add information about required skill if need:
                                      Code:
                                        Skill: "Mining",
                                        SkillLevel: 7,
                                      5. Now we should add information about recipe (item name and its count):
                                      Code:
                                        Materials: {
                                         Wood: 50,
                                         Hardwood: 10,
                                         IronBar: 2,
                                        },
                                      You can use names of items in CamelCase-style of IDs.
                                      6. Let's write core of machine: information about input-output transformations.
                                      a) I want trasform Diamonds. So I write next structure:
                                      Code:
                                      Output: {
                                           Items: {
                                              Diamond: {
                                      
                                              },
                                           },
                                        },
                                      b) and I also want use 1 Gold Bar:
                                      Code:
                                              Diamond: {
                                                 And: { ID: "GoldBar", Count: 1 },
                                              }
                                      c) We want get our ring with ID=960:
                                      Code:
                                              Diamond: {
                                                 And: { ID: "GoldBar", Count: 1 },
                                                 ID: 960,
                                              },
                                      It's not in-game item, so you can't use name (like «DiamondRing») instead number in this case.
                                      d) Machine shoud work one day = 1440 minutes. Finally we got:
                                      Code:
                                        Output: {
                                           Items: {
                                              Diamond: {
                                                 And: { ID: "GoldBar", Count: 1 },
                                                 ID: 960,
                                                 MinutesUntilReady: 1440,
                                              },
                                           },
                                        },
                                      7. Let's bind our machine with texture!
                                      a) First of all, we should set index of sprite in texture. As we remember, it's 30.
                                      Code:
                                      ResourceIndex: 30,
                                      b) We use 3 sprites for states. Let's indicate this:
                                      Code:
                                        ResourceLength: 3,
                                      c) Finally, we should bind states with sprites. By default, machine uses sprite from ResourceIndex. But we need ResourceIndex+1 for working state, and ResourceIndex+2 for ready state. In config you should set only index delta (without «+»):
                                      Code:
                                      Draw: { Working: 1, Ready: 2 },
                                      8. After all, we have prepared configuration for machine:
                                      Code:
                                      {
                                        ID: 194,
                                        Name: "Jewelry Bench",
                                        Description: "Used to create jewelry.",
                                        Skill: "Mining",
                                        SkillLevel: 7,
                                        Materials: {
                                          Wood: 50,
                                          Hardwood: 10,
                                          IronBar: 2,
                                        },
                                        Output: {
                                           Items: {
                                              Diamond: {
                                                 And: { ID: "GoldBar", Count: 1 },
                                                 ID: 960,
                                                 MinutesUntilReady: 1440,
                                              },
                                           },
                                        },
                                        ResourceIndex: 30,
                                        ResourceLength: 3,
                                        Draw: { Working: 1, Ready: 2 },
                                      },
                                      9. Save file.

                                      IV. To check config, just run SMAPI.
                                      If something wrong, you will get error:
                                      6_Error.png
                                      Check quotes around text and commas in specified position.
                                      If you have XNA error:
                                      7_Error_XNA.png
                                      check ResourceIndexes.

                                      V. Create machine and process item.
                                      8a_Result.png 8_Result.png

                                      Ufff... :proper:
                                       

                                        Attached Files:

                                        Last edited: May 31, 2016
                                      • taintedwheat

                                        taintedwheat Master Astronaut

                                        Man dude, you are on a roll!
                                         
                                        • BlankSlater

                                          BlankSlater Space Penguin Leader

                                          thanks! is it possible to do it recycling machine style? or to create weapons?
                                           
                                            Last edited: Jun 1, 2016

                                          Share This Page