Start on worldgen settings generator

This commit is contained in:
Misode
2020-05-20 18:30:23 +02:00
parent 7515088348
commit 40bf1784f3
5 changed files with 245 additions and 3 deletions

View File

@@ -60,6 +60,16 @@
</a>
</div>
</div>
<div class="card bg-secondary mb-3" style="max-width: 400px;">
<a href="worldgen">
<div class="card-body">
<span class="badge badge-danger">Experimental</span>
<span class="badge badge-danger">Unstable</span>
<h5 class="card-title" data-i18n="title.worldgen"></h5>
<p class="card-subtitle">Minecraft 1.16</p>
</div>
</a>
</div>
</div>
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>

View File

@@ -14,7 +14,8 @@ let listeners = [];
const generators = {
'advancement': ['1.15', '1.16'],
'loot-table': ['1.13', '1.14', '1.15', '1.16'],
'predicate': ['1.15', '1.16']
'predicate': ['1.15', '1.16'],
'worldgen': ['worldgen']
}
const params = new URLSearchParams(window.location.search);
@@ -35,7 +36,7 @@ function loadGenerator(generator) {
versions.forEach(v => {
$('#versionList').append(`<a class="dropdown-item" onclick="changeVersion('${generator}', '${v}')">${v}</a>`)
});
const promises = [initShared(), initLng(), loadVersion(generator, '1.16')];
const promises = [initShared(), initLng(), loadVersion(generator, versions[versions.length - 1])];
Promise.all(promises).then(() => {
if (params.has('q')) {
$('#source').val(atob(params.get('q')));

View File

@@ -24,6 +24,10 @@
"attribute_modifier.slot": "Slots",
"attribute_modifier_add": "Add Modifier",
"attribute_modifier_remove": "Remove Modifier",
"biome_source.large_biomes": "Large Biomes",
"biome_source.preset": "Biomes Preset",
"biome_source.seed": "Biomes Seed",
"biome_source.type": "Biome Source",
"child_add": "Add Child",
"condition.block": "Block",
"condition.block_state": "Block State",
@@ -138,6 +142,10 @@
"description.loot-table": "Loot Table Generator for Minecraft",
"description.predicate": "Predicate Generator for Minecraft",
"description.advancement": "Advancement Generator for Minecraft",
"description.worldgen": "Worldgen Settings Generator for Minecraft",
"dimension": "Dimension",
"dimension_add": "Add Dimension",
"dimension_remove": "Remove Dimension",
"dimension.overworld": "Overworld",
"dimension.the_end": "The End",
"dimension.the_nether": "The Nether",
@@ -301,6 +309,9 @@
"gamemode.creative": "Creative",
"gamemode.spectator": "Spectator",
"gamemode.survival": "Survival",
"generator.type": "Type",
"generator.seed": "Dimension Seed",
"generator.settings": "Generator Settings",
"help.condition.time_period": "If present, time will be modulo-divided by this value. For example, if set to 24000, value will operate on a time period of days.",
"help.display": "If present, advancement will be visible in the advancement tabs.",
"help.entry.expand": "If false, entry will return all contents of tag, otherwise entry will behave as multiple item entries",
@@ -360,6 +371,7 @@
"placeholder.advancement": "An advancement ID",
"placeholder.block_state": "A block state key",
"placeholder.criteria": "A criterion ID",
"placeholder.dimension": "A dimension ID",
"placeholder.effect": "An status effect ID",
"placeholder.fluid_state": "A fluid state key",
"placeholder.objective": "An scoreboard objective",
@@ -437,6 +449,7 @@
"title.loot-table": "Loot Table Generator",
"title.predicate": "Predicate Generator",
"title.advancement": "Advancement Generator",
"title.worldgen": "Worldgen Settings Generator",
"trigger.bee_nest_destroyed": "Bee Nest Destroyed",
"trigger.bred_animals": "Bred Animals",
"trigger.brewed_potion": "Brewed Potion",
@@ -479,5 +492,8 @@
"trigger.villager_trade": "Villager Trade",
"trigger.voluntary_exile": "Voluntary Exile",
"true": "True",
"unset": "Unset"
"unset": "Unset",
"world.generate_features": "Generate Features",
"world.bonus_chest": "Spawn Bonus Chest",
"world.seed": "Seed"
}

157
schemas/worldgen.json Normal file
View File

@@ -0,0 +1,157 @@
{
"root": {
"id": "worldgen",
"card": false,
"fields": [
{
"id": "generate_features",
"type": "boolean",
"translate": "world.generate_features"
},
{
"id": "bonus_chest",
"type": "boolean",
"translate": "world.bonus_chest"
},
{
"id": "seed",
"translate": "world.seed",
"type": "int"
},
{
"id": "dimensions",
"translate": "dimension",
"translatePlaceholder": "dimension",
"type": "map",
"values": {
"type": "object",
"value": "dimension"
}
}
],
"default": {
"seed": -1464245863,
"generate_features": true,
"bonus_chest": false,
"dimensions": {
"minecraft:overworld": {
"generator": {
"biome_source": {
"seed": -1464245863,
"large_biomes": false,
"type": "minecraft:vanilla_layered"
},
"seed": -1464245863,
"settings": "minecraft:overworld",
"type": "minecraft:noise"
},
"type": "minecraft:overworld"
},
"minecraft:the_nether": {
"generator": {
"biome_source": {
"seed": -1464245863,
"preset": "minecraft:nether",
"type": "minecraft:multi_noise"
},
"seed": -1464245863,
"settings": "minecraft:nether",
"type": "minecraft:noise"
},
"type": "minecraft:the_nether"
},
"minecraft:the_end": {
"generator": {
"biome_source": {
"seed": -1464245863,
"type": "minecraft:the_end"
},
"seed": -1464245863,
"settings": "minecraft:end",
"type": "minecraft:noise"
},
"type": "minecraft:the_end"
}
}
}
},
"components": [
{
"id": "dimension",
"type": "object",
"color": "success",
"fields": [
{
"id": "generator",
"type": "object",
"card": false,
"fields": [
{
"id": "type",
"translate": "generator.type",
"type": "enum",
"values": [
"minecraft:noise",
"minecraft:flat",
"minecraft:debug"
]
},
{
"id": "seed",
"translate": "generator.seed",
"type": "int"
},
{
"id": "settings",
"translate": "generator.settings",
"type": "enum",
"values": [
"minecraft:overworld",
"minecraft:nether",
"minecraft:end"
]
},
{
"id": "biome_source",
"type": "object",
"color": "dark",
"fields": [
{
"id": "type",
"translate": "biome_source.type",
"type": "enum",
"values": [
"minecraft:fixed",
"minecraft:multi_noise",
"minecraft:checkerboard",
"minecraft:vanilla_layered",
"minecraft:the_end"
]
},
{
"id": "seed",
"translate": "biome_source.seed",
"type": "int"
},
{
"id": "preset",
"translate": "biome_source.preset",
"type": "enum",
"unset": true,
"values": [
"minecraft:nether"
]
},
{
"id": "large_biomes",
"translate": "biome_source.large_biomes",
"type": "boolean"
}
]
}
]
}
]
}
]
}

58
worldgen/index.html Normal file
View File

@@ -0,0 +1,58 @@
<!doctype html>
<html>
<head>
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-73024255-2"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-73024255-2');
</script>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/css/bootstrap.min.css" integrity="sha384-GJzZqFGwb1QTTN6wy59ffF1BuGJpLSa9DkKMp0DgiMDm4iYMj70gZWKYbI706tWS" crossorigin="anonymous">
<link rel="stylesheet" href="../css/custom.css">
<title data-i18n="title.worldgen">Worldgen Settings Generator Minecraft</title>
</head>
<body>
<nav class="navbar navbar-expand-md navbar-dark bg-dark">
<a id="descriptionSpan" class="navbar-brand mb-0 h1" href="../" data-i18n="description.worldgen"></a>
<button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse" data-target="#collapsibleNavbar">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="collapsibleNavbar">
<ul class="navbar-nav mr-md-auto mb-2 mb-md-0">
<li class="nav-item dropdown">
<a id="versionLabel" class="nav-link dropdown-toggle mr-2" href="" role="button" data-toggle="dropdown"></a>
<div id="versionList" class="dropdown-menu"></div>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle mr-2" href="" role="button" data-toggle="dropdown">
🌎 Language
</a>
<div id="lngList" class="dropdown-menu"></div>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="" role="button" data-toggle="dropdown" data-i18n="theme"></a>
<div id="themeList" class="dropdown-menu"></div>
</li>
</ul>
<span class="ml-0 ml-md-2"><a href="https://github.com/misode/misode.github.io" style="color: #ddd;" data-i18n="credit"></a></span>
</div>
</nav>
<div class="container" data-generator="worldgen"></div>
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.6/umd/popper.min.js" integrity="sha384-wHAiFfRlMFy6i5SRaxvfOCifBUQy1xHdJ/yoi7FRNXMRBu5WHdZYu1hA6ZOblgut" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/js/bootstrap.min.js" integrity="sha384-B0UglyR+jN6CkvvICOB2joaf5I4l3gm9GU6Hc1og6Ls7i6U/mkkaduKaBhlAXv9k" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/i18next/17.0.6/i18next.min.js" integrity="sha384-DYhccENVzcHrB30my+vk/NvcnUix2+CCUl8Qg7XEzTE1cFLf2IoN5B6c5C38vABH" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/i18next-browser-languagedetector/3.0.1/i18nextBrowserLanguageDetector.min.js" integrity="sha384-14ws1HmRivxp+u6W816e62Gs33Y19jhG4zSJb6pL0pB+gYc+CgFXXp4ZnGXcaOww" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/i18next-xhr-backend/3.0.0/i18nextXHRBackend.min.js" integrity="sha384-dK+VwLEvPDbpKM7G7D/LtbW6W2zlt99nuVTwoYIkMulAedST9Vj9OCRkv2xV8GjD" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-i18next/1.2.1/jquery-i18next.min.js" integrity="sha384-fLTSt6zHOb152KeFkj7kSiXdkyjKf6fjk5bdzWYLDPDo9evwd9PVs3TKoYYaaxdl" crossorigin="anonymous"></script>
<script src="../js/i18n.js" charset="utf-8"></script>
<script src="../js/model.js" charset="utf-8"></script>
<script src="../js/view.js" charset="utf-8"></script>
</body>
</html>