Immersive Engineering

Immersive Engineering

134M Downloads

Helping with the 1.14 update

malte0811 opened this issue ยท 4 comments

commented

The update to 1.14 involves quite a few repetitive tasks that don't require much modding experience. If you are interested in working on one of these or would like some additional information put a comment below or contact me in the IE discord. Some of the tasks below are pretty big and will take a lot of work, so pull requests resolving only part of a task are welcome as well.

  • Multiblocks: @Kobayen is working on this.
    Multiblocks will be defined using vanilla structure blocks in 1.14 (at least the ones added by IE, which have a static structure). The structure files need to be created by placing the multiblock structures facing north and exporting them into appropiately named files. This needs to be done in 1.14 as worlds and structures created in 1.12 and below are not compatible with 1.14+.

  • Manual (involves reading smallpieces of code and writing text and JSON files): @SuperSecretSettings and @JStocke12 are working on this
    The manual has been changed to be a lot more data-driven in 1.14. This means that creating an online version of the manual will be much easier (it was effectively impossible before). It also means that all manual entries need to be changed from this and this to this and this. In the old format all text and "special elements" (e.g. recipes, multiblock previews) were on specified pages, ignoring how long the text actually was in the font and language used. In 1.14 you add "anchors" to the manual entry (<&wire_recipe>) and specify that a certain element (e.g. recipes for all wire coils) should be on the same page as the anchor (or on a specified page relative to the anchor). The elements themselves are specified in a JSON file independent of the used language.

  • Data Generators (involves writing (mostly simple) Java code)
    Starting in 1.8 a lot of things were moved from code to JSON files (models, recipes, advancements, etc). This is a good thing in general, as it makes changing these things in data packs possible. However, manually creating these files is annoying and error prone. In 1.14 Mojang included the utility they use to automatically generate the JSONs in Minecraft, which makes it easy for modders to use the same system. Mojang's system includes generators for recipes, loottables and tags, as well as some other things that are not relevant to IE. I added generators for blockstates and models in IE, but they shouldn't be used too much in their current state since there are plans to add something like them to Forge. See this directory for examples.

    • Recipe generators: Most of the old recipe files are invalid now since nearly all item names changed in 1.14 (flattening). They need to be added to the data generator. Tags should be used as much as possible.
    • Loot table generators: For all blocks that drop something special (all others will be automatically registered as dropping themselves).
    • Tag generators: Add IE items/blocks to the appropriate vanilla/forge tags and create new tags for the IE items/blocks where appropriate. Fluids as well.
    • Advancement generators

I'll probably add more items to the list later, if I do I'll post a comment as well.

commented

Hei, I could help with some of the data generators,

I will have time from Christmas on, since I have my cyber security exams for the university in a few weeks.

commented

I could help with the manual

Status:

commented

@SuperSecretSettings JStocke (no GitHub account yet) already volunteered for the manual on Discord, but I'm pretty sure there's enough manual entries for both of you. If you join the Discord server I linked above it would simplify organizing who works on which entries.

commented

Welcome aboard @JStocke12