Compare commits

..

No commits in common. "master" and "v0.1.1" have entirely different histories.

34 changed files with 73 additions and 436 deletions

View file

@ -1,6 +0,0 @@
// Formatter configuration for the KubeJS scripts.
{
tabWidth: 4,
trailingComma: "always",
}

View file

@ -1,3 +0,0 @@
- fixed some tags and recipes
- removed ae2 spatial anchor (broken on fabric)
- added `/rtp` command

View file

@ -40,30 +40,23 @@ pub fn main() !void {
const writer = ArchiveWriter{ .context = zip.? };
var overrides = try std.fs.cwd().openIterableDir("overrides", .{});
var overrides = try std.fs.cwd().openDir("overrides", .{ .iterate = true });
defer overrides.close();
var walker = try overrides.walk(std.heap.c_allocator);
defer walker.deinit();
const stdout = std.io.getStdOut().writer();
while (try walker.next()) |e| {
switch (e.kind) {
.Directory => {
stdout.print(
"Writing Directory\t\x1b[34m{s}/\x1b[0m\n",
.{e.path},
) catch {};
const path = try std.mem.concatWithSentinel(
const path = try std.mem.concat(
std.heap.c_allocator,
u8,
&[_][]const u8{ "minecraft/", e.path },
0,
&[_][]const u8{ "minecraft/", e.path, "/\x00" },
);
defer std.heap.c_allocator.free(path);
try archiveCreateDir(zip.?, entry.?, path.ptr);
},
.File => {
stdout.print("Writing File\t\t\x1b[34m{s}\x1b[0m\n", .{e.path}) catch {};
const path = try std.mem.concatWithSentinel(
std.heap.c_allocator,
u8,
@ -71,14 +64,14 @@ pub fn main() !void {
0,
);
defer std.heap.c_allocator.free(path);
var file = try overrides.dir.openFile(e.path, .{});
var file = try overrides.openFile(e.path, .{});
defer file.close();
try archiveFile(
zip.?,
entry.?,
&buf,
path.ptr,
path,
file,
);
},
@ -88,10 +81,11 @@ pub fn main() !void {
try installMmcPackJson(zip.?, entry.?);
const instance_cfg_data = "InstanceType=OneSix";
c.archive_entry_set_pathname(entry, "instance.cfg");
c.archive_entry_set_size(entry, settings.instance_cfg_data.len);
c.archive_entry_set_size(entry, instance_cfg_data.len);
try handleArchiveErr(c.archive_write_header(zip, entry), zip);
try writer.writeAll(settings.instance_cfg_data);
try writer.writeAll(instance_cfg_data);
var mods_arena = std.heap.ArenaAllocator.init(std.heap.c_allocator);
defer mods_arena.deinit();
@ -138,8 +132,11 @@ fn archiveFile(
try handleArchiveErr(c.archive_write_header(archive, entry), archive);
const writer = ArchiveWriter{ .context = archive };
var fifo = std.fifo.LinearFifo(u8, .Slice).init(buf);
try fifo.pump(file.reader(), writer);
var read = try file.read(buf);
while (read != 0) {
try writer.writeAll(buf[0..read]);
read = try file.read(buf);
}
}
/// `name` must end with '/'!
@ -270,15 +267,8 @@ fn curlWriteCallback(
return realsize;
}
const CurlInfo = struct {
filename: []const u8,
index: usize,
total: usize,
mod_number_width: usize,
};
fn curlInfoCallback(
info: *CurlInfo,
filename: *[]const u8,
dltotal: c.curl_off_t,
dlnow: c.curl_off_t,
ultotal: c.curl_off_t,
@ -287,13 +277,10 @@ fn curlInfoCallback(
_ = ultotal;
_ = ulnow;
std.io.getStdOut().writer().print(
"\r\x1b[34m[{d:[4]}/{d}] \x1b[97m{s} \x1b[32m{}%",
"\x1b[2K\r\x1b[34m{s} \x1b[32m{}%",
.{
info.index,
info.total,
info.filename,
filename.*,
if (dltotal != 0) @divTrunc(dlnow * 100, dltotal) else 0,
info.mod_number_width,
},
) catch {};
return 0;
@ -312,35 +299,21 @@ fn downloadMods(
try handleCurlErr(c.curl_easy_setopt(
curl,
c.CURLOPT_WRITEFUNCTION,
&curlWriteCallback,
curlWriteCallback,
));
try handleCurlErr(c.curl_easy_setopt(
curl,
c.CURLOPT_XFERINFOFUNCTION,
&curlInfoCallback,
curlInfoCallback,
));
try handleCurlErr(c.curl_easy_setopt(curl, c.CURLOPT_NOPROGRESS, @as(c_long, 0)));
try handleCurlErr(c.curl_easy_setopt(curl, c.CURLOPT_FOLLOWLOCATION, @as(c_long, 1)));
const mod_number_width = std.math.log10(mods.len) + 1;
const writer = ArchiveWriter{ .context = zip };
var mod_buf = std.ArrayList(u8).init(std.heap.c_allocator);
defer mod_buf.deinit();
var info = CurlInfo{
.filename = "",
.index = 0,
.total = mods.len,
.mod_number_width = mod_number_width,
};
try handleCurlErr(c.curl_easy_setopt(curl, c.CURLOPT_XFERINFODATA, &info));
// hide cursor
std.io.getStdOut().writeAll("\x1b[?25l") catch {};
// show cursor & reset
defer std.io.getStdOut().writeAll("\x1b[?25h\x1b[0\n") catch {};
defer std.io.getStdOut().writeAll("\x1b[0\n") catch {};
for (mods) |mod| {
info.index += 1;
mod_buf.clearRetainingCapacity();
var splits = std.mem.split(u8, mod, "/");
var filename_esc: ?[]const u8 = null;
@ -369,9 +342,8 @@ fn downloadMods(
}
}
info.filename = filename;
try handleCurlErr(c.curl_easy_setopt(curl, c.CURLOPT_WRITEDATA, &mod_buf));
try handleCurlErr(c.curl_easy_setopt(curl, c.CURLOPT_XFERINFODATA, &filename));
const mod_cstr = try std.cstr.addNullByte(std.heap.c_allocator, mod);
defer std.heap.c_allocator.free(mod_cstr);
@ -379,13 +351,13 @@ fn downloadMods(
try handleCurlErr(c.curl_easy_setopt(
curl,
c.CURLOPT_URL,
mod_cstr.ptr,
@ptrCast([*c]const u8, mod_cstr),
));
try handleCurlErr(c.curl_easy_perform(curl));
std.io.getStdOut().writer().print(
"\r\x1b[34m[{d:[3]}/{d}] \x1b[97m{s} \x1b[31mZipping...",
.{ info.index, info.total, info.filename, mod_number_width },
"\x1b[2K\r\x1b[34m{s} \x1b[31mZipping...",
.{filename},
) catch {};
var archive_path = try std.mem.concatWithSentinel(
@ -401,8 +373,8 @@ fn downloadMods(
try handleArchiveErr(c.archive_write_header(zip, entry), zip);
try writer.writeAll(mod_buf.items);
std.io.getStdOut().writer().print(
"\x1b[2K\r\x1b[34m[{d:[3]}/{d}] \x1b[97m{s}\n",
.{ info.index, info.total, info.filename, mod_number_width },
"\x1b[2K\r\x1b[34m{s}\n",
.{filename},
) catch {};
}
}

View file

@ -14,7 +14,7 @@ https://cdn.modrinth.com/data/pfjLUfGv/versions/1.18.2-433-fabric/Botania-1.18.2
https://cdn.modrinth.com/data/veunMwU3/versions/1.1.0-beta.6/AE2Things-1.1.0-beta.6.jar
https://cdn.modrinth.com/data/uE1WpIAk/versions/1.4-RC-22/Oh_The_Biomes_You%27ll_Go-fabric-1.18.2-1.4-RC-22.jar
https://cdn.modrinth.com/data/uwzLLQUA/versions/1.1.0/qcraft-1.1.0.jar
https://mediafiles.forgecdn.net/files/3672/601/libblockattributes-all-0.10.2.jar
https://cdn.modrinth.com/data/ls90k6B8/versions/0.7.2/simplepipes-all-0.7.2.jar
https://cdn.modrinth.com/data/kXygSBVI/versions/5.0.0-alpha.2/traverse-5.0.0-alpha.2.jar
https://cdn.modrinth.com/data/hvFnDODi/versions/0.1.2/lazydfu-0.1.2.jar
https://cdn.modrinth.com/data/LMEONxlN/versions/1.4.1-BETA+1.18/lifts-1.4.1-BETA%2B1.18.jar
@ -22,20 +22,21 @@ https://cdn.modrinth.com/data/q8MC5tW2/versions/2.6.13/bitsandchisels-2.6.13.jar
https://cdn.modrinth.com/data/eldBwa5V/versions/1.100.6/cc-restitched-1.100.6.jar
https://cdn.modrinth.com/data/yoEkK5RL/versions/2.3.2+fabric-1.18.2/purpeille-2.3.2%2Bfabric-1.18.2.jar
https://cdn.modrinth.com/data/GUwDZ4ZU/versions/2.2.4+quilt/portal_cubed-2.2.4.jar
https://cdn.modrinth.com/data/XKPAmI6u/versions/FABRIC-1.18.2-3.0.1/MTR-fabric-1.18.2-3.0.1.jar
https://cdn.modrinth.com/data/6AQIaxuO/versions/fabric-4.11.0/wthit-fabric-4.11.0.jar
https://cdn.modrinth.com/data/ftdbN0KK/versions/fabric-0.1.2/badpackets-fabric-0.1.2.jar
https://cdn.modrinth.com/data/KZO4S4DO/versions/3.0.0-alpha-fabric/Powah-3.0.0-alpha.jar
https://mediafiles.forgecdn.net/files/3893/734/architectury-4.6.77-fabric.jar
https://cdn.modrinth.com/data/lhGA9TYQ/versions/4.5.74+fabric/architectury-4.5.74-fabric.jar
https://cdn.modrinth.com/data/WuFYdGVB/versions/2.0.10+fabric/flyingfluxery-3.0.10.jar
https://cdn.modrinth.com/data/OrJTMhHF/versions/mc1.18-4.1/sync-mc1.18.2-4.1.jar
https://cdn.modrinth.com/data/34431T56/versions/1.0.6+1.18.2/wthit-plugins-1.0.6%2B1.18.2.jar
# causes crashes
#https://cdn.modrinth.com/data/yn9u3ypm/versions/2.0.3+1.18.2/graves-2.0.3%2B1.18.2.jar
https://cdn.modrinth.com/data/yn9u3ypm/versions/2.0.3+1.18.2/graves-2.0.3%2B1.18.2.jar
# disabled because crash with create
#https://cdn.modrinth.com/data/IKpsG0nF/versions/1.6.8/paradise-lost-1.6.8%2B1.18.2.jar
https://cdn.modrinth.com/data/zgaWtmrV/versions/1.29/arcanus-1.29.jar
https://cdn.modrinth.com/data/F6KTit9k/versions/1.0.12/magitekmechs-fabric-MC1.18-1.0.12.jar
https://cdn.modrinth.com/data/1IjD5062/versions/2.0.0+1.18.2/continuity-2.0.0%2B1.18.2.jar
https://cdn.modrinth.com/data/WbwMfRsz/versions/1.3.4/terramine-1.3.4%2B1.18.2.jar
https://mediafiles.forgecdn.net/files/3759/591/indrev-1.14.0-BETA.jar
https://mediafiles.forgecdn.net/files/3758/209/deepmoblearning-refabricated-1.18.2.jar
https://mediafiles.forgecdn.net/files/3832/920/upc-0.0.2.jar
@ -73,6 +74,7 @@ https://cdn.modrinth.com/data/du3UfiLL/versions/1.3.7/BOMD-1.3.7-1.18.2.jar
https://cdn.modrinth.com/data/4KWv7wbN/versions/1.4.5/chisel-1.4.5%2B1.18.2.jar
https://cdn.modrinth.com/data/nDHcEOt3/versions/0.5.0+Fabric-1.18.2/consistency_plus-0.5.0%2B1.18.2-fabric.jar
https://cdn.modrinth.com/data/D2Q91keW/versions/1.8.0/Earth2Java-1.8.0%2B1.18.2.jar
https://cdn.modrinth.com/data/kCMvEtYh/versions/1.18.2-1.1.2a/earthbounds-1.18.2-1.1.2a.jar
https://cdn.modrinth.com/data/YV7Z5rZ3/versions/7.4.0-beta.4+fabric/expandedstorage-7.4.0-beta.4%2B1.18.2-fabric.jar
https://cdn.modrinth.com/data/KV8SBboh/versions/1.4.0-beta.2+fabric/ellemes-container-library-1.4.0-beta.2%2B1.18.2-fabric.jar
https://cdn.modrinth.com/data/VXtwLg17/versions/1.2.1-BETA+1.18/extra-generators-1.2.1-BETA%2B1.18.jar
@ -83,6 +85,7 @@ https://cdn.modrinth.com/data/t5W7Jfwy/versions/3.3.3+1.14.4-1.19.1/Pehkui-3.3.3
https://cdn.modrinth.com/data/u6AMJBvu/versions/1.13.2/red-bits-1.13.2.jar
https://cdn.modrinth.com/data/4RK1aHVB/versions/1.8.2/redstone-bits-1.8.2%2Bfabric-mc1.18.2.jar
https://cdn.modrinth.com/data/5g7OOxWC/versions/1.2.1+1.18.2/sandwichable-1.2.1%2B1.18.2.jar
https://cdn.modrinth.com/data/7n8PQuhb/versions/1.0.1/grains-of-sand-1.0.1.jar
https://cdn.modrinth.com/data/AKgnrAFj/versions/1.3.1/secretrooms-1.3.1%2B1.18.2.jar
https://cdn.modrinth.com/data/3rc31Hgo/versions/1.4.2/spectrum-1.4.2-1.18.2-chaos_and_exploration.jar
https://mediafiles.forgecdn.net/files/3838/886/architects-palette-fabric-2.2.jar
@ -107,12 +110,3 @@ https://mediafiles.forgecdn.net/files/3683/673/PigPen-Fabric-1.18.2-8.0.1.jar
https://mediafiles.forgecdn.net/files/3830/308/DarkUtilities-Fabric-1.18.2-10.0.5.jar
https://cdn.modrinth.com/data/ccKDOlHs/versions/0.7.2+1.18/owo-lib-0.7.2%2B1.18.jar
https://cdn.modrinth.com/data/umyGl7zF/versions/1802.5.4-build.506+fabric/kubejs-fabric-1802.5.4-build.506.jar
https://mediafiles.forgecdn.net/files/3599/719/ftb-ranks-fabric-1801.1.6-build.22.jar
https://cdn.modrinth.com/data/yM94ont6/versions/4.1.6+1.18.2-fabric/notenoughcrashes-4.1.6%2B1.18.2-fabric.jar
https://cdn.modrinth.com/data/u5Ic2U1u/versions/1.10.2+mc1.18.2/mousewheelie-1.10.2%2Bmc1.18.2.jar
https://mediafiles.forgecdn.net/files/3793/108/polymorph-fabric-0.0.21-1.18.2.jar
https://cdn.modrinth.com/data/sGmHWmeL/versions/1.1.1+1.17/mixintrace-1.1.1%2B1.17.jar
https://cdn.modrinth.com/data/OvlwmUdC/versions/1.9.8-BETA+1.18/kibe-1.9.8-BETA%2B1.18.jar
https://mediafiles.forgecdn.net/files/3875/410/BuildingWands_mc1.18.2-2.6_beta-fabric.jar
https://git.tilera.org/api/packages/tilera/generic/palettefix/1.0.0/palettefix-1.0.0.jar
https://cdn.modrinth.com/data/PTGd6dWp/versions/1.4.2+1.18.2/mostructures-1.4.2%2B1.18.2.jar

View file

@ -1,24 +0,0 @@
{
"emotes": {
"agtech": "kubejs:emotes/agtech.png",
"alec": "kubejs:emotes/alec.png",
"anvil": "kubejs:emotes/anvil.png",
"drogen": "kubejs:emotes/drogen.png",
"gesichtsausdruck": "kubejs:emotes/gesichtsausdruck.png",
"itbyhf": "kubejs:emotes/itbyhf.png",
"jspy": "kubejs:emotes/jspy.png",
"kappa": "kubejs:emotes/kappa.png",
"mztewolf": "kubejs:emotes/mztewolf.png",
"namelessking": "kubejs:emotes/namelessking.png",
"pythno": "kubejs:emotes/pythno.png",
"realtox": "kubejs:emotes/realtox.png",
"sayfettin": "kubejs:emotes/sayfettin.png",
"scheucher": "kubejs:emotes/scheucher.png",
"sponglob": "kubejs:emotes/sponglob.png",
"surstroemming": "kubejs:emotes/surstroemming.png",
"tilera": "kubejs:emotes/tilera.png",
"waaas": "kubejs:emotes/waaas.png",
"leder": "kubejs:emotes/leder.png",
"austri3Fix": "kubejs:emotes/austri3fix.png"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 677 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

View file

@ -1,104 +0,0 @@
function lang(ev) {
const addAll = langs => {
for (kv of langs) {
ev.addLang(kv[0], kv[1]);
}
};
// Alectrolyzer
addAll([
[
"advancements.modern_industrialization.electrolyzer.description",
"Craft an Alectrolyzer",
],
[
"block.modern_industrialization.electrolyzer",
"Alectrolyzer",
],
[
"block.techreborn.industrial_electrolyzer",
"Industrial Alectrolyzer",
],
]);
// Alectronic Circuit
addAll([
[
"advancements.modern_industrialization.electronic_circuit.description",
"Craft an Alectronic Circuit",
],
[
"item.modern_industrialization.electronic_circuit",
"Alectronic Circuit",
],
[
"item.modern_industrialization.electronic_circuit_board",
"Alectronic Circuit Board",
],
[
"item.techreborn.electronic_circuit",
"Electronic Circuit",
],
]);
// Alectrum
addAll([
// Modern Industrialization
["item.modern_industrialization.electrum_cable", "Alectrum Cable"],
["item.modern_industrialization.electrum_double_ingot", "Alectrum Double Ingot"],
["item.modern_industrialization.electrum_dust", "Alectrum Dust"],
["item.modern_industrialization.electrum_fine_wire", "Alectrum Fine Wire"],
["item.modern_industrialization.electrum_ingot", "Alectrum Ingot"],
["item.modern_industrialization.electrum_nugget", "Alectrum Nugget"],
["item.modern_industrialization.electrum_plate", "Alectrum Plate"],
["item.modern_industrialization.electrum_tiny_dust", "Alectrum Tiny Dust"],
["item.modern_industrialization.electrum_wire", "Alectrum Wire"],
// Industrial Revolution
["block.indrev.electrum_block", "Block of Alectrum"],
["item.indrev.electrum_ingot", "Alectrum Ingot"],
["item.indrev.electrum_dust", "Alectrum Dust"],
["item.indrev.electrum_plate", "Alectrum Plate"],
["item.indrev.electrum_gear", "Alectrum Gear"],
["item.indrev.electrum_nugget", "Alectrum Nugget"],
// Tech Reborn
["block.techreborn.electrum_storage_block", "Block of Alectrum"],
["block.techreborn.electrum_storage_block_stairs", "Alectrum Stairs"],
["block.techreborn.electrum_storage_block_slab", "Alectrum Slab"],
["block.techreborn.electrum_storage_block_wall", "Alectrum Wall"],
["item.techreborn.electrum_dust", "Alectrum Dust"],
["item.techreborn.electrum_small_dust", "Small Pile of Alectrum Dust"],
["item.techreborn.electrum_ingot", "Alectrum Ingot"],
["item.techreborn.electrum_nugget", "Alectrum Nugget"],
["item.techreborn.electrum_plate", "Alectrum Plate"],
]);
// Alectrolytic Separator
addAll([
["block.indrev.electrolytic_separator", "Alectrolytic Separator"],
["block.indrev.electrolytic_separator_mk1", "Alectrolytic Separator MK1"],
["block.indrev.electrolytic_separator_mk2", "Alectrolytic Separator MK2"],
["block.indrev.electrolytic_separator_mk3", "Alectrolytic Separator MK3"],
["block.indrev.electrolytic_separator_mk4", "Alectrolytic Separator MK4"],
["block.indrev.electrolytic_separator_creative", "Alectrolytic Separator Creative"],
]);
// Alectric Furnace
addAll([
// Tech Reborn
["block.techreborn.electric_furnace", "Alectric Furnace"],
// Industrial Revolution
["block.indrev.electric_furnace", "Alectric Furnace"],
["block.indrev.electric_furnace_mk1", "Alectric Furnace MK1"],
["block.indrev.electric_furnace_mk2", "Alectric Furnace MK2"],
["block.indrev.electric_furnace_mk3", "Alectric Furnace MK3"],
["block.indrev.electric_furnace_mk4", "Alectric Furnace MK4"],
["block.indrev.electric_furnace_creative", "Alectric Furnace Creative"],
["block.indrev.electric_furnace_factory", "Alectric Furnace Factory"],
["block.indrev.electric_furnace_factory_mk4", "Alectric Furnace Factory MK4"],
]);
}
onEvent("client.generate_assets", lang);

View file

@ -1,5 +0,0 @@
function itemTooltips(ev) {
ev.add("ae2:spatial_anchor", Text.of("Broken on Fabric!").red());
}
onEvent("item.tooltip", itemTooltips);

View file

@ -1 +0,0 @@
title=Anvilcraft 4

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

View file

@ -1,55 +0,0 @@
/// IDs of all waystones.
const waystones = [
"waystones:waystone",
"waystones:desert_waystone",
"waystones:red_desert_waystone",
"waystones:stone_brick_waystone",
"waystones:nether_brick_waystone",
"waystones:red_nether_brick_waystone",
"waystones:end_stone_brick_waystone",
"waystones:deepslate_brick_waystone",
"waystones:blackstone_brick_waystone",
];
const ores_with_missing_tags = {
iron: ["archon:cloud_iron"],
quartz: [
"byg:blue_nether_quartz_ore",
"byg:brimstone_nether_quartz_ore",
],
lapis: ["betternether:nether_lapis_ore"],
redstone: ["betternether:nether_redstone_ore"],
};
function blockTags(ev) {
// this allows players to activate other people's waystones
ev.add("ftbchunks:interact_whitelist", waystones);
for (let [tag, ores] of Object.entries(ores_with_missing_tags)) {
for (ore of ores) {
ev.add(`c:${tag}_ores`, ore);
ev.add(`c:ores/${tag}`, ore);
}
}
}
function addNuggetTags(ev, material, item) {
ev.add(`c:${material}_nuggets`, item);
ev.add(`c:nuggets/${material}`, item);
}
function itemTags(ev) {
// ConsistencyPlus actually doesn't know how tags work
addNuggetTags(ev, "copper", "consistency_plus:copper_nugget");
addNuggetTags(ev, "netherite", "consistency_plus:netherite_nugget");
for (let [tag, ores] of Object.entries(ores_with_missing_tags)) {
for (ore of ores) {
ev.add(`c:${tag}_ores`, ore);
ev.add(`c:ores/${tag}`, ore);
}
}
}
onEvent("tags.blocks", blockTags);
onEvent("tags.items", itemTags);

View file

@ -1,83 +1,27 @@
function recipes(ev) {
// conflicts with copper nuggets
ev.remove({output: "redstonebits:copper_button"});
const removeBrokenGrinderRecipe = metal => {
// This recipe allows to turn ingots back into raw ores,
// allowing infinite duplication.
ev.remove({
type: "techreborn:industrial_grinder",
input: `#c:${metal}_ingots`,
output: `#c:raw_${metal}_ores`
});
};
removeBrokenGrinderRecipe("copper");
removeBrokenGrinderRecipe("gold");
removeBrokenGrinderRecipe("iridium");
removeBrokenGrinderRecipe("iron");
removeBrokenGrinderRecipe("lead");
removeBrokenGrinderRecipe("silver");
removeBrokenGrinderRecipe("tin");
removeBrokenGrinderRecipe("tungsten");
removeBrokenGrinderRecipe("zinc");
// this recipe makes alectrum out of copper. wtf.
ev.remove({
type: "create:mixing",
output: "techreborn:electrum_ingot",
});
ev.custom({
type: "create:mixing",
ingredients: [
Ingredient.of("#c:silver_ingots").toJson(),
Ingredient.of("#c:gold_ingots").toJson(),
],
results: [
Item.of("techreborn:electrum_ingot", 2).toResultJson(),
],
heatRequirement: "heated",
});
ev.shaped("redstonebits:copper_button", [
"CC",
"CC",
ev.remove({output: 'tempad:tempad'})
ev.shaped('tempad:tempad', [
'GGG',
'PCD',
'GGG'
], {
C: "#c:copper_ingots",
});
ev.remove({output: "tempad:tempad"});
ev.shaped("tempad:tempad", [
"GGG",
"PCD",
"GGG",
G: 'minecraft:gold_ingot',
P: 'modern_industrialization:processing_unit',
C: 'powah:ender_core',
D: 'techreborn:digital_display'
})
ev.shaped('tempad:he_who_remains_tempad', [
'UTD',
'NSN',
'DRU'
], {
G: "#c:gold_ingots",
P: "techreborn:data_storage_chip",
C: "powah:ender_core",
D: "techreborn:digital_display",
});
ev.shaped("tempad:he_who_remains_tempad", [
"ITF",
"NSN",
"FRI",
], {
N: "#c:netherite_ingots",
T: "tempad:tempad",
R: "blockus:legacy_nether_reactor_core",
S: "minecraft:nether_star",
I: "dimdoors:infrangible_fiber",
F: "dimdoors:frayed_filament",
});
// broken on fabric
ev.remove({
output: "ae2:spatial_anchor",
});
// duplicate
ev.remove({
id: "techreborn:grinder/nether_lapis_ore",
});
U: 'dimdoors:unravelled_block',
N: 'minecraft:netherite_ingot',
D: 'minecraft:deepslate',
T: 'tempad:tempad',
R: 'blockus:legacy_nether_reactor_core',
S: 'minecraft:nether_star'
})
}
onEvent("recipes", recipes);

View file

@ -1,37 +0,0 @@
const diameter = 1000000;
const y = 200;
function getRandomCoord() {
var n = Math.floor(Math.random() * diameter);
if (Math.round(Math.random())) {
n *= -1;
}
return n;
}
function onRtpExecute(ctx) {
const player = ctx.source.getPlayerOrException().asKJS();
const x = getRandomCoord();
const z = getRandomCoord();
// add slow falling so the player doesn't immediately die
player.potionEffects.add(
"minecraft:slow_falling",
15 * 20, // 15 seconds
);
// teleport
player.setPositionAndRotation(x, y, z, 0, 0);
// 1 = success
return 1;
}
function commandRegistry(ev) {
const { commands: Commands } = ev;
ev.register(Commands.literal("rtp").executes(onRtpExecute));
}
onEvent("command.registry", commandRegistry);

View file

@ -11,16 +11,16 @@ discrete_mouse_scroll:false
invertYMouse:false
realmsNotifications:true
reducedDebugInfo:false
showSubtitles:true
showSubtitles:false
touchscreen:false
fullscreen:true
fullscreen:false
bobView:true
toggleCrouch:false
toggleSprint:false
darkMojangStudiosBackground:false
hideLightningFlashes:false
mouseSensitivity:0.5
fov:0.5
fov:0.0
screenEffectScale:1.0
fovEffectScale:1.0
gamma:1.0
@ -29,15 +29,15 @@ simulationDistance:12
entityDistanceScaling:1.0
guiScale:2
particles:0
maxFps:260
maxFps:120
difficulty:2
graphicsMode:2
ao:2
prioritizeChunkUpdates:0
biomeBlendRadius:2
renderClouds:true
resourcePacks:["vanilla","Fabric Mods","Theinar Language","continuity/default","continuity/glass_pane_culling_fix","computercraft/overhaul"]
incompatibleResourcePacks:["computercraft/overhaul","file/Unity-Modded","file/Unity-Extras"]
resourcePacks:["Fabric Mods","Theinar Language"]
incompatibleResourcePacks:[]
lastServer:
lang:en_us
soundDevice:
@ -47,7 +47,7 @@ chatLineSpacing:0.0
textBackgroundOpacity:0.5
backgroundForChatOnly:true
hideServerAddress:false
advancedItemTooltips:true
advancedItemTooltips:false
pauseOnLostFocus:true
overrideWidth:0
overrideHeight:0
@ -62,14 +62,14 @@ useNativeTransport:true
mainHand:right
attackIndicator:1
narrator:0
tutorialStep:none
tutorialStep:movement
mouseWheelSensitivity:1.0
rawMouseInput:true
glDebugVerbosity:1
skipMultiplayerWarning:true
skipMultiplayerWarning:false
skipRealms32bitWarning:false
hideMatchedNames:true
joinedFirstServer:true
joinedFirstServer:false
hideBundleTutorial:false
syncChunkWrites:false
showAutosaveIndicator:true
@ -108,10 +108,6 @@ key_key.hotbar.6:key.keyboard.6
key_key.hotbar.7:key.keyboard.7
key_key.hotbar.8:key.keyboard.8
key_key.hotbar.9:key.keyboard.9
key_key.ellemes_container_lib.config:key.keyboard.g
key_key.ftbchunks.map:key.keyboard.m
key_key.ftbchunks.minimap.zoomIn:key.keyboard.equal
key_key.ftbchunks.minimap.zoomOut:key.keyboard.minus
key_key.iron-jetpacks.engine:key.keyboard.v
key_key.iron-jetpacks.hover:key.keyboard.g
key_key.iron-jetpacks.descend:key.keyboard.unknown
@ -122,55 +118,24 @@ key_key.ae2.wireless_pattern_encoding_terminal:key.keyboard.unknown
key_key.ae2.wireless_pattern_access_terminal:key.keyboard.unknown
key_key.ae2.ae2wtlib_restock:key.keyboard.unknown
key_key.ae2.ae2wtlib_magnet:key.keyboard.unknown
key_key.agape_space.vehicle_menu:key.keyboard.b
key_key.ftbultimine:key.keyboard.r
key_key.bewitchment.transformation_ability:key.keyboard.unknown
key_key.botania_corporea_request:key.keyboard.c
key_create.keyinfo.toolmenu:key.keyboard.left.alt
key_create.keyinfo.toolbelt:key.keyboard.left.alt
key_key.dankstorage.construction:key.keyboard.i
key_key.dankstorage.lock_slot:key.keyboard.unknown
key_key.dankstorage.pickup_mode:key.keyboard.o
key_key.dml-refabricated.teleport:key.keyboard.v
key_key.dml-refabricated.soul_vision:key.keyboard.b
key_key.indrev.modular:key.keyboard.k
key_key.indrev.gamer_axe_toggle:key.keyboard.g
key_mininggadgets.text.open_gui:key.keyboard.unknown
key_key.modern_industrialization.activate:key.keyboard.v
key_key.mousewheelie.open_config_screen:key.keyboard.unknown
key_key.mousewheelie.sort_inventory:key.mouse.middle
key_key.mousewheelie.scroll_up:key.amecsapi.mouse.scroll.up
key_key.mousewheelie.scroll_down:key.amecsapi.mouse.scroll.down
key_key.mousewheelie.pick_tool:key.keyboard.unknown
key_key.mtmechs.primary:key.keyboard.v
key_key.small_artifacts.ender_sack:key.keyboard.x
key_key.travelersbackpack.inventory:key.keyboard.b
key_key.travelersbackpack.toggle_tank:key.keyboard.n
key_key.travelersbackpack.cycle_tool:key.keyboard.z
key_key.wands.wand_mode:key.keyboard.v
key_key.wands.wand_action:key.keyboard.h
key_key.wands.wand_menu:key.keyboard.y
key_key.wands.wand_orientation:key.keyboard.x
key_key.wands.wand_invert:key.keyboard.i
key_key.wands.wand_fill_circle:key.keyboard.k
key_key.wands.wand_undo:key.keyboard.u
key_key.wands.palette_menu:key.keyboard.j
key_key.wands.wand_palette_mode:key.keyboard.r
key_key.wands.wand_conf:key.keyboard.unknown
key_key.wands.m_inc:key.keyboard.right
key_key.wands.m_dec:key.keyboard.left
key_key.wands.n_inc:key.keyboard.up
key_key.wands.n_dec:key.keyboard.down
key_key.wands.toggle_stair_slab:key.keyboard.period
key_key.wands.area_diagonal_spread:key.keyboard.comma
key_key.wands.inc_sel_block:key.keyboard.z
key_key.mtr.lift_menu:key.keyboard.z
key_key.waila.config:key.keyboard.keypad.0
key_key.waila.show_overlay:key.keyboard.keypad.1
key_key.waila.toggle_liquid:key.keyboard.keypad.2
key_key.waila.show_recipe_input:key.keyboard.keypad.3
key_key.waila.show_recipe_output:key.keyboard.keypad.4
key_key.wthit-plugins.show_author:key.keyboard.unknown
soundCategory_master:0.38245034
key_key.wthit-plugins.show_author:key.keyboard.left.shift
soundCategory_master:1.0
soundCategory_music:0.0
soundCategory_record:1.0
soundCategory_weather:1.0

View file

@ -1,11 +1,8 @@
/// Version number used for the archive name
pub const version = "1.4.1";
// Version number used for the archive name
pub const version = "0.1.0";
pub const build_dir = "build";
pub const minecraft_version = "1.18.2";
pub const fabric_loader_version = "0.14.8";
/// the data for the `instance.cfg` file
pub const instance_cfg_data =
\\InstanceType=OneSix
;
/// zip compression level. 9 is max. ask libarchive why this is a string.
// zip compression level. 9 is max. ask libarchive why this is a string.
pub const compression_level = "9";