Skip to content

Instantly share code, notes, and snippets.

import os
for dir in os.walk("."):
if not dir[0].startswith(r".\gm4_"):
continue
if not dir[0].endswith(r"\data"):
continue
for namespace in dir[1]:
if namespace in ["load", "minecraft"]:
continue
import os
commands = 0
for root, dirs, files in os.walk("."):
for filename in [f for f in files if f.endswith(".mcfunction")]:
with open(os.path.join(root, filename)) as f:
commands += len([l for l in f.readlines() if l[0].isalpha()])
print(commands)

⚡ = Advancement trigger
✨ = Enchantment effect
▶️ = Commands run

  • MinecraftServer::tickServer
    • 🕑 Update /tick rate manager
    • ServerFunctionManager::tick
      • ▶️ Run #load function tag if a reload happened
      • ▶️ Run #tick function tag
    • ServerLevel::tick (per dimension)

Critical

  • MC-215946 Game fatally crashed while exploring chunks (PalettedContainer)
  • MC-197860 Deleting a custom dimension in a datapack deletes Nether and End
  • MC-202036 Adding a biome to a datapack shifts biome IDs in existing chunks

Missing features

  • MC-197128 If a custom biome uses multiple configured structure features of the same type, only one of them can generate
  • MC-186626 /weather not working in custom dimensions
  • MC-195717 Custom Dimensions JSON Requires Seed
  • MC-226687 Sea Level is assumed to be Y 63 in numerous parts of Minecraft

Quality of life

key.jump
key.sneak
key.sprint
key.left
key.right
key.back
key.forward
key.attack
key.pickItem
key.use
@misode
misode / WorldgenExporter.java
Created August 10, 2021 23:44
Fabric mod using Mojang mappings to export worldgen settings, only tested on the 1.18 experimental snapshots.
package net.misode.worldgenexporter;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.mojang.serialization.Codec;
import com.mojang.serialization.DynamicOps;
import com.mojang.serialization.JsonOps;
import net.fabricmc.api.ModInitializer;

command | Added the /jfr command, along with the --jfrProfile startup option

text font | Added illageralt rule-like font from Minecraft Dungeons

loot item-modifier | The set_contents and set_loot_table functions now require a type field with a valid block entity type

pack-format | Data pack format has been increased to 8

command scoreboard | Removed length limits for scoreboard objectives, score holders (fake players), and team names

Loot Context

Uses

Functions

  • looting_enchant: killer_entity
  • set_name only if entity is set: this_entity, killer_entity, direct_killer_entity, or last_damage_player
  • exploration_map: origin
  • copy_name depending on the value of source: this_entity, killer_entity, last_damage_player, or block_entity
  • apply_bonus: tool
PROPS = {
"instrument": [
"harp",
"basedrum",
"snare",
"hat",
"bass",
"flute",
"bell",
"guitar",
@misode
misode / full_noise.jsonc
Last active February 16, 2022 23:09
Density functions in 22w07a
{
"type": "min",
"input_1": {
"type": "squeeze",
"input": {
"type": "mul",
"input_1": {
"type": "interpolated",
"input": {
"type": "blend",