*** Recipe Updates ***
#11
Hello Everyone.

I have most of the recipes working. I started going down the list and testing recipes to make sure they work, but found some of the default recipes that i copied over from the original file either didn't work or allowed you to cheat which i'll explain below. All my recipes work. So, right now I've created a new recipes.txt file, copied over the recipes I've made, and going down list coding the other recipes by hand. This way I know they work. The original howto instructions for creating recipes were hard to follow so I've rewritten them in the new recipes.txt file. I did this so that others can easily add new recipes when new Minecraft recipes come out.

What recipes will be included upon first release? Currently, every non-exponent recipe is working. The current recipe syntax makes it impossible to add recipes that include item ids with exponents. Examples are Dyes, Colored Wool, and some other recipes like cobblestone slabs and sandstone slabs.

The newest addition to the recipes file as of today is the Enchantment / Brewing section. It includes: Glass Bottle, Cauldron, Brewing Stand, Blaze Powder, Magma Cream, Fermented Spider Eye, Glistering Melon, Gold Nugget, and Enchantment Table. Note that these are recipes only.

Some recipes that were included in the default recipe file were written incorrectly and allowed cheating. For example, a bucket uses 3 iron ingots in the shape of a 'v' however, the default recipe had only 2 iron ingots which used the same recipe as the flint and steel recipe. So it was allowing 2 ingots to create a bucket and adding the 3rd iron ingot broke the recipe and prevented getting the bucket. This is one reason I decided to hand code all the default recipes by hand, to ensure everything works like official Minecraft server.

This will be my last update until the actual file releases. As long as everything goes as plan, the first release of the new recipes.txt and items.ini file should be posted by the end of next week. This gives me time to code and double check everything to make sure there are no errors. Thank you for your patience. I assure you that it will be worth the wait.
Reply
Thanks given by:
#12
Great job. I just hope You don't lose interest before actually posting the files Wink

As for the exponented-recipes, if you can make up a syntax that will work, feel free to let us know and try posting a few such recipes so that we can try it out, we can then implement it in code.

As for releases, MCServer doesn't have any fixed schedule or even fixed definition of a release. The last version that is considered "stable" is a few months old and hopelessly obsoleted; nightbuilds are being compiled and uploaded to my website regularly twice a day (if there are any changes in the sources) so you could say we release almost continuously Smile So whenever's stuff ready, it's there for testing.
Reply
Thanks given by:
#13
Hello!
I have added most of the remaining recipes:
Quote:Piston
Sticky Piston
Glowstone
Stone Brick
Sandstone
Powered Rail
Detector Rail
Repeater
Lamp
Iron Bars
Glass Pane
Bed
Gold Ingot (from Nuggets)
Eye of Ender
Glass Bottle
Cauldron
Brewing Stand
Blaze Powder
Magma Cream
Gold Nugget
Enchantment Table
But still can't add those depending on damage value though Undecided.


Attached Files
.txt   recipes.txt (Size: 9.75 KB / Downloads: 295)
Reply
Thanks given by:
#14
Nice work, I integrated your recipes into Rev 543.

A few things I'd like "recipe contributors" to keep in mind:
- please don't remove the blank lines. They're there for easier orientation
- please don't use Tabs. Tabs in the middle of lines are evil - everyone may have a different Tab width setting and the file becomes Tea party then. Use spaces. Lots of them. Smile Tabs are for indenting at the beginning of lines, which is not used in the recipe file.

Also, you keep whining about damage values; I've already said here before: give us an example syntax that you'd use, and we'll see about implementing it.
Reply
Thanks given by:
#15
(06-03-2012, 05:11 PM)xoft Wrote: Nice work, I integrated your recipes into Rev 543.

A few things I'd like "recipe contributors" to keep in mind:
- please don't remove the blank lines. They're there for easier orientation
- please don't use Tabs. Tabs in the middle of lines are evil - everyone may have a different Tab width setting and the file becomes Tea party then. Use spaces. Lots of them. Smile Tabs are for indenting at the beginning of lines, which is not used in the recipe file.
Ok, sorry about thatTongue

(06-03-2012, 05:11 PM)xoft Wrote: Also, you keep whining about damage values; I've already said here before: give us an example syntax that you'd use, and we'll see about implementing it.
Maybe something like this:
<ingredientN> = x:y:<ItemID>:<Damage>:<Amount>
<result> = <ResultingItemID>:<Damage>:<Amount>

The Lapis Lazuli block recipe for exampe:
3x3,*:*:351:4:1@22:0:1

Also I have a little problem implementing shapeless recipes like Eye of Ender.

I've made it, but i works only in one position (Blaze Powder on top of an Ender Pearl). Is MCServer not supporting shapeless recipes or am I missing some syntax there?
Reply
Thanks given by:
#16
(06-03-2012, 06:13 PM)Luksor Wrote: <ingredientN> = x:y:<ItemID>:<Damage>:<Amount>
<result> = <ResultingItemID>:<Damage>:<Amount>

This would become a nightmare both to parse and to human-read, if you mixed non-damage and damage recipes together.

(06-03-2012, 06:13 PM)Luksor Wrote: Also I have a little problem implementing shapeless recipes like Eye of Ender.

List all the possibilities into the recipe file. There is no built-in support for shapeless recipes. Hoes and Axes already use this approach.
Reply
Thanks given by:
#17
(06-03-2012, 06:46 PM)xoft Wrote: This would become a nightmare both to parse and to human-read, if you mixed non-damage and damage recipes together.
If you have a better idea, go ahead and code it. I will adapt to it.

(06-03-2012, 06:46 PM)xoft Wrote: List all the possibilities into the recipe file. There is no built-in support for shapeless recipes. Hoes and Axes already use this approach.
Yeah... but hoes and axes have 2 possible combinations. There's like 72 for Eye of Ender (if I'm counting right).Undecided

EDIT: Yup. 72 Smile
Reply
Thanks given by:
#18
The Eye of Ender has 6 possibilities, if coded right (use a 2x2 grid only). Still, that's too much.

Now that I've seen the code for the parser, I'm inclined to rewrite it from scratch. So we can adjust the recipe syntax to whatever we want.

My personal favorite is this:
Code:
<Line> = <Recipe>#<Comment>
<Recipe> = <Ingredient1> | <Ingredient2> | ... | <IngredientN> | <Result>
<IngredientN> = <ItemID>, <X1> : <Y1>, <X2> : <Y2>, ..., <Xn> : <Yn>
<ItemID> = <ItemType> [^DamageValue]
<Xn>, <Yn> = "1" .. "3", or "*" for any value (-> shapeless)
<Result> = <ItemType> [^DamageValue] [, <Count>]

ItemType may be a number or an item name (resolved through items.ini).

Examples:
Code:
#Eye of Ender:
EnderPearl, *:* | Blaze powder, *:* | EyeOfEnder

#Stone hoe:
Stick, 2:2, 2:3, Cobblestone: 2:1, *:1 | StoneHoe
# The stone ingredient says one stone has to be at 2:1 and one more has to be anywhere in the top row

#Red wool:
Wool, *:* | Dye^1, *:* | Wool^14

#Sticks:
Planks, *:* | Stick, 4

#TNT:
Gunpowder, 1:1, 3:1, 2:2, 3:1, 3:3 | Sand, 2:1, 1:2, 3:2, 2:3 | TNT

Compare with the old definition of TNT:
Code:
3x3,1:1:289:1,3:1:289:1,2:2:289:1,1:3:289:1,3:3:289:1,2:1:12:1,1:2:12:1,3:2:12:1,2:3:12:1@46:1  # -> TNT

The grid size doesn't matter anymore, since the parser will automatically bound the recipe to correct grid size.

Is anyone against this new syntax? Does anyone see any potential flaws? If I rewrote the recipe parser, would anyone be kind enough to rewrite the current recipes.txt to match this format?
Reply
Thanks given by:
#19
if it was like this:
Quote:=====================================================
1=0
2=280
3=4
333
121
121=stone_pickaxe=1
=====================================================
1=0
2=5,5:1,5:2,5:3
111
121
121=stick=4
=====================================================
then would i try to make all the recipe's
but that is almost impossible isn't it :S
Reply
Thanks given by:
#20
(06-03-2012, 07:30 PM)xoft Wrote: Is anyone against this new syntax? Does anyone see any potential flaws?
I like the new syntax Smile it's much clearer and easier to work with.

(06-03-2012, 07:30 PM)xoft Wrote: If I rewrote the recipe parser, would anyone be kind enough to rewrite the current recipes.txt to match this format?
This will need a lot of work, but I can do it.Wink
Reply
Thanks given by:




Users browsing this thread: 3 Guest(s)