System Artificial's Recipe System

That's a result of this:
JASS:
//          - When used on an recipe added via the charged recipe thingy
//            the ingredient items won't recieve the amount of items they
//            had when the result was made, but the default amount of charges.
 
DotA's recipe system isn't that weird from what I know. The finest thing in it is that it allows an item type to be used multiple times in a recipe, which is something this system (and many others) allows as well. :p
 
but dota is using items that are used when picked up(like runes, so you can pick them up when your inventory is full)
 
but dota is using items that are used when picked up(like runes, so you can pick them up when your inventory is full)
That's nothing to do with recipes.
Wc3 has runes in the actual game itself.
Play through the campaign. The very first mission has about 20 of them.

DotA didn't make Wc3.
 
but dota is using items that are used when picked up(like runes, so you can pick them up when your inventory is full)

there still a "smart" order when you ordered a hero to pick up item, even his inventory is full.
And it's nothing VERY special, it just checks recipes with the item in the ground and the items in inventory (so there are 7 items to check)

I have made a demo map, check it out.
I modify the Game Interface so there is no "Inventory is full" error message, you should display it by yourself.

And there is one problem, I don't know how to queue a unit's order by trigger :(, anyone know this ?

@Artificial, sorry for modifying your system.

EDIT: removes unnecessary debugs
Fixed a bug that allows 1 item to "self combine" when a recipe has several items of the same type as ingredients. :(
 

Attachments

  • [System] Modified RecipeSYS.w3x
    24.9 KB · Views: 584
One of the most fluent and elaborate recipe systems out there.

Resource approved.


P.S I took the liberty to clean the thread of bumps and double posts.

Andrewgosu
 
Hey guys I am quite new here.. Mm. I am making maps for some time but i never used triggers so i need a little help so that I can add my recipes...
I tried to use this system and I can't enable the trigger..
It says:
Line 217: Expected a function name
What should I do ? Please help me out.

Btw on my map i just made a custom script like this:
call AddRecipe('evtl', 'lhst', 0, 0, 0, 0, 'ward')
 
I was just wondering how do i make it so that only heroes can combine items because in my map units and buildings all have an inventory. Also if i take out the disassembling and disabling a recipe part of the trigger, will it get messed up? Thanks and +rep Artificial!
 
> how do i make it so that only heroes can combine items
Set AUTO_COMBINE to false and then create this trigger:
Trigger:
  • Combine
    • Events
      • Unit - A unit Acquires an item
    • Conditions
      • ((Triggering unit) is A hero) Equal to True
    • Actions
      • Custom script: call RecipeSYS_Combine(GetManipulatedItem(), GetTriggerUnit())


> if i take out the disassembling and disabling a recipe part of the trigger
If you don't want to use those, then you can just not use them anywhere. They aren't called unless you call them somewhere in your code yourself, so there isn't any need to remove them. Eg. if you only have the example trigger shown in the first post (the GUI one), the players won't be able to disassemble/disable recipes.

But anyway, removing the disassembling functions shouldn't do any harm, but removing the 'enabled' member from the struct will cause some syntax errors, so you'd need to edit the system's code in several other places, too (IIRC).
 
what if u just want to combine 2 items?

JASS:
call AddRecipe('B000', 'B001', 0, 0, 0, RESULT)


what do i set the other values too...
 
JASS:

//      If you want the recipe to require less than 6 items, just give
//      zeros as ingredient arguments.

So you'd use
JASS:
call AddRecipe('B000', 'B001', 0, 0, 0, 0, RESULT)

(just had to add one zero there).
 
can someone explain how to convert the code from vJASS to JASS using NewGen? thanks
 
can someone explain how to convert the code from vJASS to JASS using NewGen? thanks
I don't think there is a button for that...
You will need to do it manually, however some features of vJass (eg Structs) are harder to 'convert'.
 
how to make it compatible with Bag system?

for example you carry bag in you inventory that stock item, so in the end you have more than 6 items carried by yourself...:)

is it possible to check all item carried (even in the bags) to create recipe, and if so is it possible to create recipe with more than 6 items?
i guess that would also pose problem with compatibility between the jass code in the bag system and in you code...

but well just asking and maybe giving new ideas on things to implement (like a system combining: recip, bag, and stacking charge) :eek:

well your system look pretty cool so if i manage to use newgen i might use your system, unless i can make an easier one myself that isn't as customizable as yours but would be matching just the need of my map..:shades:
 
I think I made a big mistake.

I'm attempting to import your Recipe System, but cut all of my custom items from the same mould; thus, the rawcode for nearly all of my items is the exact same. Is there a way I can input the Ingredient variable to apply my items?

Danke!
 
@A.Dominion
I guess it would be possible to also check from the bags, but that really depends on the bag system. The reason I didn't make this compatible with bag systems was that I didn't come up with any way that'd work with any given bag system, as I believe they work rather differently. ;p

@Chao
Multiple items cannot have the same rawcode, even if they were based on the same item. When you take the rawcode, you take the four first chars. The custom items' rawcodes in the object editor are like this:base where 'this' is the rawcode of the item itself and 'base' is the rawcode of the base item.

For example when I created a custom item based on Runed Bracers (brac), the rawcode shown in the object editor was I000:brac. The I000 part was the item's rawcode.
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • The Helper The Helper:
    alternatively if you not making at least 23 an hour you could work in an Aldi warehouse
  • Varine Varine:
    Yeah I've been thinking about using AI for shit. I'm on vacation next week so I'm going to spend some time reorganizing everything and getting all my shit back in order
  • Varine Varine:
    lol I technically make less than 23 right now because I'm on salary and am there all the time, but it's a lot more than a normal wage still. I also have a meeting soon to renegotiate my pay because I want about a 25% increase to account for what I'm actually doing or a re-evaluation of our duties so that that my responsibilities are more in line with my pay. Depending on how that goes I'm prepared to give notice and move on, I don't mind taking less money so I'd have time for the rest of my life, but I'd rather they just fucking pay me enough to justify the commitment on my end. Plus right now I hold pretty much all the cards since I'm the only one actually qualified for my position.
    +1
  • Varine Varine:
    The other chef was there before me and got his position by virtue of being the only adult when the old general manager got married and didn't want to deal with the kitchen all the time, and happened to be in the position when the GM quit. New GM is fine with front of house but doesn't know enough about the kitchen side to really do anything or notice that I'm the one primarily maintaining it. Last time I left they hired like 3 people to replace me and there was still a noticeable drop in quality, so I got offered like 6 dollars an hour more and a pretty significant summer bonus to come back
  • Varine Varine:
    So honestly even if I leave I think it would last a couple of months until it's obvious that I am not exactly replaceable and then I would be in an even better position.
  • Varine Varine:
    But as of right now I have two other job offers that are reasonably close to what my hourly equivalency would be, and I would probably have more time for my other projects. The gap would be pretty easy to fill up if I had time to do my side jobs. I use to do some catering and private events, personal lessons, consultations, ect, and I charge like 120 an hour for those. But they aren't consistent enough for a full time job, too small of a town. And I'm not allowed to move for another year until my probation is over
  • Varine Varine:
    I guess I could get it transferred, but that seems like a hassle.
  • Varine Varine:
    Plus I have a storage room full of broken consoles I need to fix. I need to build a little reflow oven so I can manufacture some mod chips still, but it'll get there.
    +1
  • Varine Varine:
    I would like to get out of cooking in general at some point in the next ten years, but for the time being I can make decent money and pump that into savings. I've been taking some engineering classes online, but those aren't exactly career oriented at the moment, but I think getting into electronic or computer engineering of some sort would be ideal. I'm just going to keep taking some classes here and there until there's one that I am really into.
    +2
  • The Helper The Helper:
    There is money in fixing and reselling consoles. Problem is people know that so they are doing it
  • The Helper The Helper:
    If you can find a source of broken consoles though you can make money fixing them - sometimes some big money
  • Varine Varine:
    I was buying them on Ebay, but it's pretty competitive, so more recently I've just been telling the thrift stores to call me and I will come take all their electronics they can't sell. I've volunteered there before and people use them like a dump sometimes, and so they just have a massive amount of broken shit they throw away
  • Varine Varine:
    The local GoodWill was pretty into it, surprisingly the animal shelter store was not. The lady I talked to there seemed to think I was trying to steal stuff or something, she wasn't very nice about it. Like I'm just trying to stop you having to throw a bunch of electronics away, if you can sell it great. I'd probably pay you for the broken shit too if you wanted
  • Varine Varine:
    Then I make posts on Facebook yard sale pages sometimes saying I want your old electronics, but Facebook being Facebook people on there are also wary about why I want it, then want a bunch of money like it's going to be very worth it
  • Varine Varine:
    Sooner than later I'm going to get my archives business going a little more. I need some office space that is kind of hard to get at the moment, but without it, I have to be like "Yeah so go ahead and just leave your family heirlooms and hundred year old photographs here at my shitty apartment and give me a thousand dollars, and next month I'll give you a thumb drive. I promise I'll take care of them!"
    +1
  • Varine Varine:
    I can do some things with them at their home, but when people have thousands of slides and very delicate newspaper clippings and things, not really practical. I
  • Varine Varine:
    I would be there for days, even with my camera set up slides can take a long time, and if they want perfect captures I really need to use my scanners that are professionally made for that. My camera rig works well for what it is, but for enlargements and things it's not as good.
  • Varine Varine:
    I've only had a couple clients with that so far, though. I don't have a website or anything yet though.
  • Varine Varine:
    Console repair can be worthwhile, but it's also not a thing I can do at scale in my house. I just don't have room for the equipment. I need an office that I can segregate out for archival and then electronic restoration.
  • Varine Varine:
    But in order for that to be real, I need more time, and for more time I need to work less, and to work less I need a different job, and for a different job I need more money to fall back on so that I can make enough to just pay like, rent and utilities and use my savings to find these projects
    +1
  • Varine Varine:
    Another couple years. I just need to take it slow and it'll get there.
  • jonas jonas:
    any chance to get that stolen money back?
  • jonas jonas:
    Maybe you can do console repair just as a side thing, especially if there's so much competition business might be slow. Or do you need a lot of special equipment for that?
  • jonas jonas:
    I recently bought a used sauna and the preowner told me some component is broken, I took a look and it was just a burnt fuse, really cheap to fix. I was real proud of my self since I usually have two left hands for this kinda stuff :p
  • tom_mai78101 tom_mai78101:
    I am still playing Shapez 2. What an awful thing to happen, Varine, and hopefully everything has been sorted out soon. Always use multi-factor authentication whenever you have the opportunity to do so.

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top