RMRK is retiring.
Registration is disabled. The site will remain online, but eventually become a read-only archive. More information.

RMRK.net has nothing to do with Blockchains, Cryptocurrency or NFTs. We have been around since the early 2000s, but there is a new group using the RMRK name that deals with those things. We have nothing to do with them.
NFTs are a scam, and if somebody is trying to persuade you to buy or invest in crypto/blockchain/NFT content, please turn them down and save your money. See this video for more information.
[RM2k, RM2k3 & RMXP] Simple cooking system

0 Members and 1 Guest are viewing this topic.

*
Rise From The Ashes!
Rep:
Level 91
"Time to bring the Law!"
Project of the Month winner for September 2009
This was originally a help post, but I thought I could give it a thread of its own. Anyway:

This system has two halves, it can be used perfectly with just the switch section, but the variable side makes it a little more fun.

First, make two switches, both as your ingredients like so;

Switch 1: Bread
Switch 2: Lettuce

Items can be used as the switches also, this will allow to see the items in your Inventory. Thanks AlienSoldier!

Event: If 1 and 2 are on and you press an event, say for instance, a sandwich icon in the menu you will start cooking it and you recieve one sandwich. This is the simple way.

You could add a bit more and use Variables to add a bit of "chance" to it. You can basically make a variable of "If Sandwich is cooking, what are are the odds of it working?", so Variable 1: Sandwich cooking can triggered when you hit the sandwich icon (Along with the Bread and Lettuce switches). When this is done, you can goto the Variable side of things, so "If Variable 1 is on, use random variable numbers for the probability of sandwich cooking succeeding", after this point you can do what you want with the numbers, make it random as shown here:




Change both zeros to the numbers of your liking.

After this, you can use this Conditional Branch:

Code: [Select]
<>Branch if Car [xxxx:Sandwich Cooking] is y or more/less
   <>Message: Failed!
   <>
: Else Handler
   <>Message: SUCCESS!
   <>Change Items: 1 Sandwich Add
   <>
: End
<>

This can seem confusing, but that is the basics.

Just replace "xxxx" with switch number and "y" with the number you want.

Finished product in RMXP from Aliensoldier:

Code: [Select]
@>Text: Do you want to cook with the available ingredients?
@>Show Choice: Yes, No
   : When [Yes]
     @>Text: What would you like to cook?
     @>Show Choice: Sandwich, Nevermind
        : When [Sandwich]
          @>Conditional Branch: [Bread] in inventory
           @>Conditional Branch: [Lettuce] in inventory
            @>Change Item: [Bread], -1
            @>Change Item: [Lettuce], -1
            @>Control Variables: [Sandwich cooking] = Random No. (1...10)
            @>Play SE: "042-Knock03", 80, 100
            @>Wait: 5 frame(s)
            @>Play SE: "042-Knock03", 80, 100
            @>Wait: 5 frame(s)
            @>Play SE: "042-Knock03", 80, 100
            @>Wait: 5 frame(s)
            @>Play SE: "042-Knock03", 80, 100
            @>Wait: 30 frame(s)
            @>Conditional Branch: Variable [0003:Sandwich cooking] >= 5
              @>Play ME: '007-Fanfare01', 100, 100
              @>Text: SUCCESS! (Adquired 1x Sandwich)
              @>
             :Else
              @>Play ME: '005-Defeat', 100, 100
              @>FAILURE!
              @>
             :Branch End
            @>
           :Else
            @>Text: Not enough ingredients.
            @>
           :Branch End
       : When [Nevermind]
         @>
       :Branch End
    :When [No]
      @>
    :Branch End
@>

For the graphic side of things, you will need to do that yourself.

If you are using RMXP, test this and see if it works, I have not tried it in RMXP.

You can use any switch or variable slot as your ingredients and success probability.
« Last Edit: November 05, 2008, 09:44:13 PM by Tezuka »

******
Rep:
Level 89
Let's attack agressively.
A great simple system for a mini-game!  ;D

I have tested it in XP and it works. Also i suggest you use items instead of switches

*
A Random Custom Title
Rep:
Level 96
wah
Yeah. For a check to see if an item is in your inventory. Also, removing one of those items when you make a sammich. :)

****
Bitch
Rep:
Level 87
Bits'n'Pixels
Yeah. For a check to see if an item is in your inventory. Also, removing one of those items when you make a sammich. :)

Agreed.  A check for the items in your inventory, then removing said items always adds to the idea of cooking, actually using ingredients.  I'm usin' somethin' similar in mine :)

******
Rep:
Level 89
Let's attack agressively.
Here's the event i made using the example of Tezuka

Code: [Select]
@>Text: Do you want to cook with the available ingredients?
@>Show Choice: Yes, No
   : When [Yes]
     @>Text: What would you like to cook?
     @>Show Choice: Sandwich, Nevermind
        : When [Sandwich]
          @>Conditional Branch: [Bread] in inventory
           @>Conditional Branch: [Lettuce] in inventory
            @>Change Item: [Bread], -1
            @>Change Item: [Lettuce], -1
            @>Control Variables: [Sandwich cooking] = Random No. (1...10)
            @>Play SE: "042-Knock03", 80, 100
            @>Wait: 5 frame(s)
            @>Play SE: "042-Knock03", 80, 100
            @>Wait: 5 frame(s)
            @>Play SE: "042-Knock03", 80, 100
            @>Wait: 5 frame(s)
            @>Play SE: "042-Knock03", 80, 100
            @>Wait: 30 frame(s)
            @>Conditional Branch: Variable [0003:Sandwich cooking] >= 5
              @>Play ME: '007-Fanfare01', 100, 100
              @>Text: SUCCESS! (Adquired 1x Sandwich)
              @>Change Item: [Sandwich], +1
             :Else
              @>Play ME: '005-Defeat', 100, 100
              @>FAILURE!
              @>
             :Branch End
            @>
           :Else
            @>Text: Not enough ingredients.
            @>
           :Branch End
       : When [Nevermind]
         @>
       :Branch End
    :When [No]
      @>
    :Branch End
@>
« Last Edit: January 10, 2008, 06:17:36 PM by AlienSoldier »

*
Rise From The Ashes!
Rep:
Level 91
"Time to bring the Law!"
Project of the Month winner for September 2009
Just as I planned it out, thanks AlienSoldier! +rep

Also items do seem like the better choice, I'll update the event system.
« Last Edit: January 10, 2008, 01:39:25 PM by Tezuka »

******
Rep:
Level 89
Let's attack agressively.
 ;)

Edit: oops forgot to put below the SUCCESS (Adquired 1x Sandwich) the "Change Items: [Sandwich], +1
« Last Edit: January 10, 2008, 03:01:23 PM by AlienSoldier »

*
Rise From The Ashes!
Rep:
Level 91
"Time to bring the Law!"
Project of the Month winner for September 2009
Yeah I didn't notice that myself, just fixed the "air sandwich" problem. :tpg:

Thanks again, AlienSoldier!

**
Rep: +0/-0Level 85
BEHOLD!!!  Don't just limit the system to cooking.  You can do many things like smelting copper and tin to make bronze or having an alchemy system like on Dragon Quest VIII.  Also if you prepare the string right, you can have multiple choices on different pages from nesting IF statements:

My Hypothesis with minimal demonstration:

You want to have the following choices for meals:  Sandwich, Cabbage Rolls, Green Tea, Next Page, Cake, Nevermind.

@>Text: What would you like to cook?
      @>Conditional Branch: [Sandwich ingredients*] in inventory
           @>Conditional Branch: [Cabbage Rolls ingredients*] in inventory
                @>Conditional Branch: [Green Tea ingredients*] in inventory
                     @>Conditional Branch: [Cake ingredients*] in inventory
                           @>Show Choice: Sandwich, Cabbage Rolls, Green Tea, Next
                                : When [Sandwich]
                       ~~~
                                : When [Next]
                               @>Show Choice: Cake, Previous
                       ~~~
                     Else Show Choice:  Sandwich, Cabbage Rolls, Green Tea, Nevermind


And the less ingredients you have, the less choices you get as well.  It's probably best to just skip this method and for the string of choices just have recipes learned or something but all this is something you could test out.