Giter Club home page Giter Club logo

misode.github.io's Introduction

misode.github.io

Data Pack Generators and Guides for Minecraft Java Edition

https://misode.github.io/

Contributing

This project uses Preact and Vite.

  1. Make sure you have node, npm, and git installed.
  2. Clone the repository.
  3. Start the dev server.
npm run dev
  1. Open the browser in localhost:3000.

Translating

misode.github.io supports multiple languages. If you'd like to help us translate this project to your language, it would be really appreciated! If your language is not on this list, please create an issue for it.

Localization status

  1. Go to the localization website (hosted by SPGoding).
  2. Register by linking your GitHub account (recommended), or using your email.
    • Note that the username and email will be shown in the repository's git commit log.
  3. See the components of misode.github.io here.
  4. Start translating!

misode.github.io's People

Contributors

aeldi avatar apollounknowndev avatar catter1 avatar champsing avatar chencmd avatar dependabot[bot] avatar desbarmitar avatar devtomatocake avatar edayot avatar efekos avatar fedorinanutshell avatar ikafly144 avatar jerozgen avatar just667 avatar lakejason0 avatar maxaxik avatar misode avatar namakemono-san avatar neuneinser avatar neylz avatar non0reo avatar oliviathevampire avatar ry177 avatar sampproject-game avatar smajloslovakian avatar spgoding avatar spweblate avatar theaustudio avatar vianpyro avatar yanisbft avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

misode.github.io's Issues

[Suggestion] Let the user create an array of predicates

Example

[
    {
        "condition": "minecraft:location_check",
        "offsetX": 0,
        "offsetY": 0,
        "offsetZ": 0,
        "predicate": {
            "block": {
                "block": "minecraft:soul_fire"
            }
        }
    },
    {
        "condition": "minecraft:location_check",
        "offsetX": 0,
        "offsetY": -1,
        "offsetZ": 0,
        "predicate": {
            "block": {
                "block": "minecraft:soul_sand"
            }
        }
    }
]

Generator not compatible with the Microsoft Ege browser

The generator behaves differently on the Micorsoft Edge browser.
These are the changes I noticed when comparing the behavior to that when using Mozilla Firefox or Google Chrome:

  • Pressing the "Add Pool" button has no effect.

  • There is no pre-generated pool when the site is opened.

  • The loot table type that is selected when opening the site is set to "Empty" instead of "Generic".

  • Nothing is actually generated.

  • The "Copy" button does not copy the contents of the text field.

  • The "Share" button has no effect.

World Settings Generator changing defauls of nether and end.

When trying to change the generator settings or the dimensions type of the nether and end dimensions it changes all parameters to the overworld default making it difficult to change only one thing, or maintaing the nether and end presets.

Complications with folder layout

I was having trouble with creating a datapack and couldn't find a recent template, so I decided to research and create a little guide for what files and folders are in datapacks.

** This is the text document containing all the folders and files needed:**
Datapack Folder Layout WIP.txt
This is the alternate version of the text document in PNG form as well as containing color coded files and symbols.
Datapack Layout WIP
** I also have created a ZIP containing the layout for easier datapack Creation.**
1.16.3 Datapack Template.zip

table_bonus condition malformed

The table_bonus condition for predicates and loot tables fills in strings instead of numbers in most cases, and the UI is unintuitive:

  • Entering any normally valid integer or float results in the value being converted to string. This does not happen when a number with an invalid amount is entered, which corrects it to be either 0 or 1 as integers instead of strings.
  • Unlike other list-type tags, it does not feature a separate button to add entries but instead requires the user to add commas between the values.

Wrong `boundary` types

Some components use boundary type wrongly:

image
Those in distance predicate.

image
Those in location predicate.

They should be range type instead.

The only component which is really boundary type is the parameter of the limit_count loot table function.

Location -> Feature, format incorrect

For whatever reason putting a minecraft: in front of the feature you wish to detect makes the condition always true, for now maybe remove the minecraft: automatically placed before a feature in your generators till this is fixed?

Tested in release 1.16

Attirbutes should be renamed in 1.16.json

As stated in the article, some attributes should be renamed.

generic.maxHealth -> generic.max_health
zombie.spawnReinforcements -> zombie.spawn_reinforcements
horse.jumpStrength -> horse.jump_strength
generic.followRange -> generic.follow_range
generic.knockbackResistance -> generic.knockback_resistance
generic.movementSpeed -> generic.movement_speed
generic.flyingSpeed -> generic.flying_speed
generic.attackDamage -> generic.attack_damage
generic.attackKnockback -> generic.attack_knockback
generic.attackSpeed -> generic.attack_speed
generic.armorToughness -> generic.armor_toughness

Worldgen does not add coordinate_scale

when creating a custom dimension different from the ones built in to minecraft, the worldgen webpage fails to add the coordinate_scale key. because of this, minecraft throws an error.

I'm using minecraft 1.16.2

Minecraft Screenshot 2020 08 14 - 20 50 43 25

Here is my custom worldgen json file as it was from your webpage

{
  "generate_features": true,
  "bonus_chest": false,
  "seed": 5969146205005384000,
  "dimensions": {
    "minecraft:overworld": {
      "generator": {
        "type": "minecraft:noise",
        "seed": 5969146205005384000,
        "biome_source": {
          "type": "minecraft:vanilla_layered",
          "seed": -1464245863,
          "large_biomes": false
        },
        "settings": "minecraft:overworld"
      },
      "type": "minecraft:overworld"
    },
    "minecraft:the_nether": {
      "generator": {
        "type": "minecraft:noise",
        "seed": 5969146205005384000,
        "biome_source": {
          "type": "minecraft:multi_noise",
          "seed": 5969146205005384000,
          "preset": "minecraft:nether"
        },
        "settings": "minecraft:nether"
      },
      "type": "minecraft:the_nether"
    },
    "minecraft:the_end": {
      "generator": {
        "type": "minecraft:noise",
        "seed": 5969146205005384000,
        "biome_source": {
          "type": "minecraft:the_end",
          "seed": 5969146205005384000
        },
        "settings": "minecraft:end"
      },
      "type": "minecraft:the_end"
    },
    "minecraft:sky_lands": {
      "generator": {
        "type": "minecraft:noise",
        "seed": 5969146205005384000,
        "biome_source": {
          "type": "minecraft:fixed",
          "seed": 5969146205005384000,
          "biome": "minecraft:plains"
        },
        "settings": {
          "bedrock_roof_position": -10,
          "bedrock_floor_position": 0,
          "sea_level": 63,
          "disable_mob_generation": false,
          "default_block": {
            "Name": "minecraft:stone",
            "Properties": {}
          },
          "default_fluid": {
            "Name": "minecraft:water",
            "Properties": {
              "level": "0"
            }
          },
          "noise": {
            "density_factor": 1,
            "density_offset": -0.46875,
            "simplex_surface_noise": true,
            "random_density_offset": true,
            "island_noise_override": false,
            "amplified": false,
            "size_horizontal": 2,
            "size_vertical": 2,
            "height": 256,
            "sampling": {
              "xz_scale": 1,
              "y_scale": 1,
              "xz_factor": 80,
              "y_factor": 160
            },
            "bottom_slide": {
              "target": -30,
              "size": 0,
              "offset": 0
            },
            "top_slide": {
              "target": -10,
              "size": 3,
              "offset": 0
            }
          },
          "structures": {
            "structures": {
              "village": {
                "spacing": 4096,
                "separation": 4095,
                "salt": 10387312
              },
              "desert_pyramid": {
                "spacing": 4096,
                "separation": 4095,
                "salt": 10387312
              },
              "igloo": {
                "spacing": 4096,
                "separation": 4095,
                "salt": 10387312
              },
              "jungle_pyramid": {
                "spacing": 4096,
                "separation": 4095,
                "salt": 10387312
              },
              "swamp_hut": {
                "spacing": 4096,
                "separation": 4095,
                "salt": 10387312
              },
              "pillager_outpost": {
                "spacing": 4096,
                "separation": 4095,
                "salt": 10387312
              },
              "stronghold": {
                "spacing": 4096,
                "separation": 4095,
                "salt": 10387312
              },
              "monument": {
                "spacing": 4096,
                "separation": 4095,
                "salt": 10387312
              },
              "endcity": {
                "spacing": 4096,
                "separation": 4095,
                "salt": 10387312
              },
              "mansion": {
                "spacing": 4096,
                "separation": 4095,
                "salt": 10387312
              },
              "buried_treasure": {
                "spacing": 4096,
                "separation": 4095,
                "salt": 10387312
              },
              "mineshaft": {
                "spacing": 4096,
                "separation": 4095,
                "salt": 10387312
              },
              "shipwreck": {
                "spacing": 4096,
                "separation": 4095,
                "salt": 10387312
              },
              "ocean_ruin": {
                "spacing": 4096,
                "separation": 4095,
                "salt": 10387312
              },
              "bastion_remnant": {
                "spacing": 4096,
                "separation": 4095,
                "salt": 10387312
              },
              "fortress": {
                "spacing": 4096,
                "separation": 4095,
                "salt": 10387312
              },
              "nether_fossil": {
                "spacing": 4096,
                "separation": 4095,
                "salt": 10387312
              }
            }
          }
        }
      },
      "type": {
        "name": "minecraft:sky_lands",
        "ultrawarm": false,
        "natural": true,
        "shrunk": false,
        "piglin_safe": false,
        "respawn_anchor_works": true,
        "bed_works": true,
        "has_raids": false,
        "has_skylight": true,
        "has_ceiling": false,
        "ambient_light": 1,
        "logical_height": 256,
        "infiniburn": "minecraft:infiniburn_overworld"
      }
    }
  }
}

Unintuitive UX with vanilla dimensions

I think it would be easier to make little changes to vanilla dimensions if, when you uncollapse the "Generator Settings" and "Dimension Options", they don't instantly revert to the default settings for "Overworld" and "Default" respectively.
Instead the values that are internally used by those presets should carry over into the custom settings menu, so you can make little changes to the Nether without having to first copy all the Nether values and then paste them over the Overworld values that got defaulted in.

I don't know how the code works on Minecraft's end, if those presets are hardcoded and do more than just change some values then this might not be feasible, but I don't think that's the case.

tool_enchantment condition missing

Loot tables do not give the option of choosing the minecraft:tool_enchantment condition on block loot tables.

This is not an important issue because minecraft:match_tool is supported, but it prevents some loot tables from loading properly and does remove the more direct option and introduces some potential redundancy.

Empty maps generate as as empty object instead of being hidden

Fields of type "map" generate an empty object like this:

{
  "condition": "minecraft:entity_scores",
  "entity": "this",
  "scores": {}
}
{
  "condition": "minecraft:entity_properties",
  "entity": "this",
  "predicate": {
    "location": {
      "light": {}
    },
    "effects": {}
  }
}

When there are no score checks, the object should not exist in the JSON structure.

Allow renaming of map keys

You should be able to rename the keys without re-creating the whole object or editing the output. Instead of this label, an input field would be used.
image

killedByTeam and teamkill

"killedByTeam" and "teamkill" are not statistic types, they can only be used as scoreboard objectives. However, the generators allow for these kinds of "statistics" to be set in the player's statistics tag.

Not clear if for Bedrock or for Java

I poked around, and I'm 90% sure its for java. But it could be more clearer! Even if you have no interest in supporting bedrock (understandable!) it would still be nice if there was some up-front clarity.

Also, I made a version of this for Bedrock using the same library before I realized this exists!

Gives invalid options for setting the weight of an entry

Minecraft only supports setting the weight of an entry to an exact value, so when attempting to fill in a range or a binomial distribution, the resulting loot table causes the error Expected weight to be a Int, was an object in the game output log and makes the entire loot table invalid.

However, the loot table generator does give the option of setting the weight to a range or a binomial distribution. To prevent the generation of invalid loot tables, this option should be removed.

The versions I tested this in were Minecraft 1.14.4 and Minecraft 1.15 Pre-release 7.

Version switcher is available for predicates

When switching to 1.14 or 1.13 on the predicates page, the loot-table schema is loaded. Instead, the 1.13 and 1.14 versions should not be visible.

Preferred solution would not require hard coding this. But loading all version schema's on startup should also be avoided.

Missing loot table function minecraft:set_loot_table

I know why you forgot this one. The wiki said nothing about it and nobody had heard about it. But today I ran the data generator of 1.16.1 and found that it exists. Its parameters are "name" for the loot table name, and "seed" for the loot table seed. I added it to the wiki. I don't blame you for not adding it, nobody knew about it.

Conditions "entered" and "exited" for minecraft:nether_travel advancement trigger are missing

Again, the world needs me to check into the code to find all these hidden stuff... no I am just kidding. It's another fact that no one knew but I found by looking into the code. These two conditions are exactly the same as the "location" condition of the location trigger, but named "entered" and "exited". They control the locations where the player entered and exited the Nether.

Inverting requirement of AND connection causes redundancy

Currently, an AND connection between different conditions is generated by inverting both the result and the inputs of an OR connection.

However, when one of the requirements is the minecraft:inverted condition, that causes the generated text to have and inverted condition within an inverted condition, which is completely redundant.

TODO

Missing Features

  • damage_source_properties condition
  • table_bonus condition
  • enchantments item parameter
  • effects entity parameter
  • distance entity parameter

20w30a and changes for worldgen

A new snapshot (20w30a) has been released! In this snapshot:
Added: Foliage_color, grass_color_modifier, temperature_modifier, creature_spawn_probability and Grass_color parameters.
Changed: sky_color parameter now in the Effects category.
Also changed Configured_feature files.

I think what these changes (and other changed that I could forget) must be added to the Generator for actualization.

Import tables?

Maybe adding a feature that can parse and import pre-existing loot tables onto the generator?
I've been using the generator, but it's difficult if I want to use a vanilla loot table and add a separate pool without either doing everything manually or editing the file itself, possibly making the table malformed.

This may be a bit tricky but can prove a good feature.

Coordinate Scale in Biome Visualizer

It's hard to judge the scale of the generated biome, I find myself ending up generating biome way bigger than what I want because I don't know the scale of the visualizer.

Advancements are missing support for the "requirements" list

When importing the following advancement into the advancement generator, the requirements tag gets removed despite being used by the game and being needed to make OR connections:

{
  "criteria": {
    "c2": {
      "trigger": "minecraft:impossible"
    },
    "c1": {
      "trigger": "minecraft:impossible"
    }
  },
  "requirements": [["c1", "c2"]]
}

armor toughness attribute tag typo

attempting to set up the attribute tag for a shield, I noticed that the armor toughness tag is misspelled Thoughness.

To recreate, simply attempt to set armor toughness as an attribute on an item and check the resulting table entry.

Completely unusable in latest version of release...

I have tried using this generator for a custom dimension and it will not work AT ALL, I tred finding other but this is the only one I could ever find-
I don't know if it's still being worked on and if it isn't, well I guess I'll never use it.

List of help tooltips

A growing list of help tooltips to add. Will be cleared every so often to avoid having a commit for every single one of them.

  • condition.chance A float between 0.0 and 1.0
  • function.skipExistingChunks
  • display.background A texture for the background. Only available for roots.

Sharing is not working

When loading a page with the q parameter, this error appears.

Uncaught TypeError: Cannot read property 'length' of undefined
    at updateSource (model.js:166)
    at model.js:68

Structures not showing.

When trying to change parameters of the structures (like spacing between the structures) at the generator settings, no structures are shown.

Impossible trigger has player condition

In 1.16 all triggers got a player condition except impossible. The bug is that the generator allows the player condition to be added to the impossible trigger too.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.