Well, you have the idea already. Pretty much copy what vanilla does. You need to make a block that extends BlockCrops. Then you should go through all the methods in BlockCrops and see if there is anything you want to change. For example, the canSustainBush() method in vanilla looks for FARMLAND, but maybe you want your crop to grow in a different type of soil so you would change that. the canBlockStay() method also refers to the block below to check if it recognizes your plant using its canSustainPlant() method so you probably want to change that to also check for your soil preference. You will definitely want to override the getSeed() and getCrop() methods as they default to wheat. That's probably it.
Then you need to make the seed item. Depending on what you want you should extend ItemSeedFood or ItemSeeds. Again just go through the methods and override the ones that need to be changed for what you need.
Of course you also need to register your block and item and also make sure you have all the blockstate, model and texture assets in proper locations. Again look at an existing crop to get ideas on what should go into those files.
Now, all the of the above will make a regular crop that is 1 block high. To make a crop that is 2 blocks high takes a little bit of thought. There are a few ways to do it, but probably good to follow the way that double tall grass does it. This block is called BlockDoublePlant so you should look at that code. In that code you'll notice that there is an additional property called HALF which indicates whether the block is the bottom or the top half. So you need to add a similar property to your block.
Then, basically you use the property as follows:
- initially when planted the first block should have the HALF property set to bottom. So you would do this in your ItemSeedFood code, when the block is set you make sure the state is set correctly.
- in your block's grow() method, you should check the HALF property. If it is bottom and there is still more grow stages left, then just grow it. But once you have reached max grow stage the grow method should place another block above it, this time with the HALF property set to top.
- in your block's harvest-related methods you should look at BlockDoublePlant for ideas on how to code yours. Basically, it you harvest the top block it should also destroy the bottom block.
That's mostly it. Just follow the vanilla code as example, change what you need to change, and combine the properties from the BlockCrops with BlockDoublePlant.
1
There actually is no forge release for 1.13 yet, so the newest version the mod could be made for would be 1.12 for now.
1
1.14 is an upcoming update for Minecraft planned to be released before the end of this year. This update contains several changes as well as some new additions to the game.
Pandas
Little is known about pandas at this time, but we do know:
Bamboo
Scafolding Block
Cats
While "cats" have been available by taming ocelots, they are now being split into their own mob.
This is all the latest information available so far, if you see anything that i missed, is outdated, or incorrect, feel free to message me and let me know.
1
As for the question of "would it run?", yes it almost certainly would, but it will be extremely laggy and most likely crash as soon as someone attempts to login (if not before). The main problem is the fact that a RaspberryPi has a very small cpu along with very limited ram.
1
This was a known, and as of 1.13 pre-1, fixed bug. See MC-130489 for more information.
1
They changed the ench nbt tag to enchantments, as well as remove numerical id's for enchantments, so simply use /give @p minecraft:diamond_sword{Enchantments:[{id:"minecraft:sharpness",lvl:10}]} .
1
Wolftopia a few things in the main post are out of date:
This is everything i see so far that needs to be updated as to keep up with recent changes.
1
Because if you want to power the dispensers twice you will need to pull the lever three to four times, where with a button you will only need to press it twice.
1
The seeds appear to be fundamentally the same between the two versions, but it is still somewhat to early to tell since things are still prone to sudden and unexpected change.
1
This is a bug though and as far as i know is (or will be very soon) fixed.
1
as far as i know mojang relatively recently decommissioned the authentication servers that handled logging into beta servers, it should still work with online-mode=false though.