diff --git a/mods/BLOCKS/modpack.conf b/mods/BLOCKS/modpack.conf
deleted file mode 100644
index 8bc6dd0..0000000
--- a/mods/BLOCKS/modpack.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-name = BLOCKS
-description = Meta-modpack containing the blocks-related mods for Voxelis
\ No newline at end of file
diff --git a/mods/BLOCKS/vox_misc_blocks/mod.conf b/mods/BLOCKS/vox_misc_blocks/mod.conf
deleted file mode 100644
index 1d1fb3f..0000000
--- a/mods/BLOCKS/vox_misc_blocks/mod.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-name = vox_misc_blocks
-description = Voxelis - misc_blocks: General blocks that don't fit in other categories
\ No newline at end of file
diff --git a/mods/BLOCKS/vox_overworld_blocks/init.lua b/mods/BLOCKS/vox_overworld_blocks/init.lua
deleted file mode 100644
index d462b06..0000000
--- a/mods/BLOCKS/vox_overworld_blocks/init.lua
+++ /dev/null
@@ -1,723 +0,0 @@
----------------------------------------------------------------------------
--- Voxelis - Voxel survival sandbox for Luanti
--- Copyright (C) 2024 Mad Star Studio LLC
---
--- This program is free software; you can redistribute it and/or modify
--- it under the terms of the GNU General Public License as published by
--- the Free Software Foundation; either version 3 of the License, or
--- (at your option) any later version.
---
--- You should have received a copy of the GNU General Public License along
--- with this program; if not, see .
----------------------------------------------------------------------------
-
--- -------------------------------------------------------------------------- --
--- Blocks --
--- -------------------------------------------------------------------------- --
-
--- ----------------------------- Terrain Surface ---------------------------- --
-
--- Grass
-core.register_node("vox_overworld_blocks:grass", {
- description = "Grass Block",
- tiles = {"vox_grass.png"},
- groups = {cracky = 3}
-})
-core.register_alias("grass", "vox_overworld_blocks:grass")
-core.register_alias("default:dirt_with_grass" , "vox_overworld_blocks:grass")
-
--- Dirt
-core.register_node("vox_overworld_blocks:dirt", {
- description = "Dirt",
- tiles = {"vox_dirt.png"},
- groups = {crumbly = 3}
-})
-core.register_alias("dirt", "vox_overworld_blocks:dirt")
-core.register_alias("default:dirt", "vox_overworld_blocks:dirt")
-
--- Sand
--- (I don't like sand. It's coarse and rough and irritating and it gets everywhere.)
-core.register_node("vox_overworld_blocks:sand", {
- description = "Sand",
- tiles = {"vox_sand.png"},
- groups = {crumbly = 3}
-})
-core.register_alias("sand", "vox_overworld_blocks:sand")
-core.register_alias("default:sand", "vox_overworld_blocks:sand")
-
--- Desert Sand
-core.register_node("vox_overworld_blocks:desert_sand", {
- description = "Desert Sand",
- tiles = {"vox_desert_sand.png"},
- groups = {crumbly = 3}
-})
-core.register_alias("desert_sand", "vox_overworld_blocks:desert_sand")
-core.register_alias("default:desert_sand", "vox_overworld_blocks:desert_sand")
-
--- Snow
-core.register_node("vox_overworld_blocks:snow", {
- description = "Snow",
- tiles = {"vox_snow.png"},
- groups = {crumbly = 3}
-})
-core.register_alias("snow", "vox_overworld_blocks:snow")
-core.register_alias("default:snow", "vox_overworld_blocks:snow")
-
--- Ice
-core.register_node("vox_overworld_blocks:ice", {
- description = "Ice",
- tiles = {"vox_ice.png"},
- groups = {crumbly = 3}
-})
-core.register_alias("ice", "vox_overworld_blocks:ice")
-core.register_alias("default:ice", "vox_overworld_blocks:ice")
-
--- ---------------------------- Terrain Subsurface --------------------------- --
-
--- Gravel
-core.register_node("vox_overworld_blocks:gravel", {
- description = "Gravel",
- tiles = {"vox_gravel.png"},
- groups = {crumbly = 2}
-})
-core.register_alias("gravel", "vox_overworld_blocks:gravel")
-core.register_alias("default:gravel", "vox_overworld_blocks:gravel")
-
--- Stone
-core.register_node("vox_overworld_blocks:stone", {
- description = "Stone",
- tiles = {"vox_stone.png"},
- groups = {cracky = 2}
-})
-core.register_alias("stone", "vox_overworld_blocks:stone")
-core.register_alias("mapgen_stone", "vox_overworld_blocks:stone")
--- core.register_alias("default:stone", "vox_overworld_blocks:stone")
-
--- Cobblestone
-core.register_node("vox_overworld_blocks:cobblestone", {
- description = "Cobblestone",
- tiles = {"vox_cobblestone.png"},
- groups = {cracky = 2}
-})
-core.register_alias("cobblestone", "vox_overworld_blocks:cobblestone")
-core.register_alias("default:cobble", "vox_overworld_blocks:cobblestone")
-
--- Sandstone
-core.register_node("vox_overworld_blocks:sandstone", {
- description = "Sandstone",
- tiles = {"vox_sandstone.png"},
- groups = {cracky = 2}
-})
-core.register_alias("sandstone", "vox_overworld_blocks:sandstone")
-core.register_alias("default:sandstone", "vox_overworld_blocks:sandstone")
-
--- Red Sandstone
-core.register_node("vox_overworld_blocks:red_sandstone", {
- description = "Red Sandstone",
- tiles = {"vox_red_sandstone.png"},
- groups = {cracky = 2}
-})
-core.register_alias("red_sandstone", "vox_overworld_blocks:red_sandstone")
-core.register_alias("default:red_sandstone", "vox_overworld_blocks:red_sandstone")
-
--- Clay
-core.register_node("vox_overworld_blocks:clay", {
- description = "Clay",
- tiles = {"vox_clay.png"},
- groups = {crumbly = 3}
-})
-core.register_alias("clay", "vox_overworld_blocks:clay")
-core.register_alias("default:clay", "vox_overworld_blocks:clay")
-
--- Hardened Clay
-core.register_node("vox_overworld_blocks:hardened_clay", {
- description = "Hardened Clay",
- tiles = {"vox_hardened_clay.png"},
- groups = {cracky = 2}
-})
-core.register_alias("hardened_clay", "vox_overworld_blocks:hardened_clay")
-core.register_alias("default:hardened_clay", "vox_overworld_blocks:hardened_clay")
-
--- Mud
-core.register_node("vox_overworld_blocks:mud", {
- description = "Mud",
- tiles = {"vox_mud.png"},
- groups = {crumbly = 3}
-})
-core.register_alias("mud", "vox_overworld_blocks:mud")
-
--- More stone types: Granite, Diorite, Andesite, Basalt, Obsidian, Marble, Chalk, Limestone, Shale, Slate, Gneiss, Schist, Soapstone, Tuff, Pumice
-core.register_node("vox_overworld_blocks:granite", {
- description = "Granite",
- tiles = {"vox_granite.png"},
- groups = {cracky = 2}
-})
-core.register_alias("granite", "vox_overworld_blocks:granite")
-core.register_alias("default:granite", "vox_overworld_blocks:granite")
-
-core.register_node("vox_overworld_blocks:diorite", {
- description = "Diorite",
- tiles = {"vox_diorite.png"},
- groups = {cracky = 2}
-})
-core.register_alias("diorite", "vox_overworld_blocks:diorite")
-core.register_alias("default:diorite", "vox_overworld_blocks:diorite")
-
-core.register_node("vox_overworld_blocks:andesite", {
- description = "Andesite",
- tiles = {"vox_andesite.png"},
- groups = {cracky = 2}
-})
-core.register_alias("andesite", "vox_overworld_blocks:andesite")
-core.register_alias("default:andesite", "vox_overworld_blocks:andesite")
-
-core.register_node("vox_overworld_blocks:basalt", {
- description = "Basalt",
- tiles = {"vox_basalt.png"},
- groups = {cracky = 2}
-})
-core.register_alias("basalt", "vox_overworld_blocks:basalt")
-core.register_alias("default:basalt", "vox_overworld_blocks:basalt")
-
-core.register_node("vox_overworld_blocks:obsidian", {
- description = "Obsidian",
- tiles = {"vox_obsidian.png"},
- groups = {cracky = 2}
-})
-core.register_alias("obsidian", "vox_overworld_blocks:obsidian")
-core.register_alias("default:obsidian", "vox_overworld_blocks:obsidian")
-
-core.register_node("vox_overworld_blocks:marble", {
- description = "Marble",
- tiles = {"vox_marble.png"},
- groups = {cracky = 2}
-})
-core.register_alias("marble", "vox_overworld_blocks:marble")
-core.register_alias("default:marble", "vox_overworld_blocks:marble")
-
-core.register_node("vox_overworld_blocks:chalk", {
- description = "Chalk",
- tiles = {"vox_chalk.png"},
- groups = {cracky = 2}
-})
-core.register_alias("chalk", "vox_overworld_blocks:chalk")
-core.register_alias("default:chalk", "vox_overworld_blocks:chalk")
-
-core.register_node("vox_overworld_blocks:limestone", {
- description = "Limestone",
- tiles = {"vox_limestone.png"},
- groups = {cracky = 2}
-})
-core.register_alias("limestone", "vox_overworld_blocks:limestone")
-core.register_alias("default:limestone", "vox_overworld_blocks:limestone")
-
-
--- -------------------------------------------------------------------------- --
--- Liquids --
--- -------------------------------------------------------------------------- --
-
-
--- Water
-core.register_node("vox_overworld_blocks:water_source", {
- description = "Water Source",
- drawtype = "liquid",
- tiles = {
- {
- name = "vox_water.png",
- animation = {
- type = "vertical_frames",
- aspect_w = 16,
- aspect_h = 16,
- length = 2.0
- }
- }
- },
- alpha = 128,
- paramtype = "light",
- walkable = false,
- pointable = false,
- diggable = false,
- buildable_to = true,
- liquidtype = "source",
- liquid_alternative_flowing = "vox_overworld_blocks:water_flowing",
- liquid_alternative_source = "vox_overworld_blocks:water_source",
- liquid_viscosity = 1,
- post_effect_color = {a = 103, r = 30, g = 60, b = 90}
-})
-core.register_alias("water_source", "vox_overworld_blocks:water_source")
-core.register_alias("default:river_water", "vox_overworld_blocks:water_source")
-core.register_alias("mapgen_water_source", "vox_overworld_blocks:water_source")
-
-core.register_node("vox_overworld_blocks:water_flowing", {
- description = "Flowing Water",
- drawtype = "flowingliquid",
- tiles = {"vox_water.png"},
- special_tiles = {
- {
- name = "vox_water.png",
- backface_culling = false,
- animation = {
- type = "vertical_frames",
- aspect_w = 16,
- aspect_h = 16,
- length = 0.8
- }
- }
- },
- alpha = 160,
- paramtype = "light",
- walkable = false,
- pointable = false,
- diggable = false,
- buildable_to = true,
- liquidtype = "flowing",
- liquid_alternative_flowing = "vox_overworld_blocks:water_flowing",
- liquid_alternative_source = "vox_overworld_blocks:water_source",
- liquid_viscosity = 1,
- post_effect_color = {a = 103, r = 30, g = 60, b = 90}
-})
-core.register_alias("water_flowing", "vox_overworld_blocks:water_flowing")
-core.register_alias("default:river_water_flowing", "vox_overworld_blocks:water_flowing")
-core.register_alias("mapgen_water_flowing", "vox_overworld_blocks:water_flowing")
-
--- Lava
-core.register_node("vox_overworld_blocks:lava_source", {
- description = "Lava Source",
- drawtype = "liquid",
- tiles = {
- {
- name = "vox_lava.png",
- animation = {
- type = "vertical_frames",
- aspect_w = 16,
- aspect_h = 16,
- length = 2.0
- }
- }
- },
- alpha = 255,
- paramtype = "light",
- walkable = false,
- pointable = false,
- diggable = false,
- buildable_to = true,
- liquidtype = "source",
- liquid_alternative_flowing = "vox_overworld_blocks:lava_flowing",
- liquid_alternative_source = "vox_overworld_blocks:lava_source",
- liquid_viscosity = 7,
- post_effect_color = {a = 255, r = 255, g = 0, b = 0}
-})
-core.register_alias("lava_source", "vox_overworld_blocks:lava_source")
-core.register_alias("default:lava_source", "vox_overworld_blocks:lava_source")
-core.register_alias("mapgen_lava_source", "vox_overworld_blocks:lava_source")
-
-core.register_node("vox_overworld_blocks:lava_flowing", {
- description = "Flowing Lava",
- drawtype = "flowingliquid",
- tiles = {"vox_lava.png"},
- special_tiles = {
- {
- name = "vox_lava.png",
- backface_culling = false,
- animation = {
- type = "vertical_frames",
- aspect_w = 16,
- aspect_h = 16,
- length = 2.0
- }
- }
- },
- alpha = 255,
- paramtype = "light",
- walkable = false,
- pointable = false,
- diggable = false,
- buildable_to = true,
- liquidtype = "flowing",
- liquid_alternative_flowing = "vox_overworld_blocks:lava_flowing",
- liquid_alternative_source = "vox_overworld_blocks:lava_source",
- liquid_viscosity = 7,
- post_effect_color = {a = 255, r = 255, g = 0, b = 0}
-})
-core.register_alias("lava_flowing", "vox_overworld_blocks:lava_flowing")
-core.register_alias("default:lava_flowing", "vox_overworld_blocks:lava_flowing")
-core.register_alias("mapgen_lava_flowing", "vox_overworld_blocks:lava_flowing")
-
--- -------------------------------------------------------------------------- --
--- Ores --
--- -------------------------------------------------------------------------- --
-
-
--- Fuel: Coal, Uranium
-core.register_node("vox_overworld_blocks:coal_ore", {
- description = "Coal Ore",
- tiles = {"vox_coal_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("coal_ore", "vox_overworld_blocks:coal_ore")
-core.register_alias("default:stone_with_coal", "vox_overworld_blocks:coal_ore")
-
-core.register_node("vox_overworld_blocks:uranium_ore", {
- description = "Uranium Ore",
- tiles = {"vox_uranium_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("uranium_ore", "vox_overworld_blocks:uranium_ore")
-core.register_alias("default:stone_with_uranium", "vox_overworld_blocks:uranium_ore")
-
--- Minerals: Bone, Sulfur, Salt
-core.register_node("vox_overworld_blocks:bone_ore", {
- description = "Bone Ore",
- tiles = {"vox_bone_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("bone_ore", "vox_overworld_blocks:bone_ore")
-core.register_alias("default:stone_with_bone", "vox_overworld_blocks:bone_ore")
-
-core.register_node("vox_overworld_blocks:sulfur_ore", {
- description = "Sulfur Ore",
- tiles = {"vox_sulfur_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("sulfur_ore", "vox_overworld_blocks:sulfur_ore")
-core.register_alias("default:stone_with_sulfur", "vox_overworld_blocks:sulfur_ore")
-
-core.register_node("vox_overworld_blocks:salt_ore", {
- description = "Salt Ore",
- tiles = {"vox_salt_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("salt_ore", "vox_overworld_blocks:salt_ore")
-core.register_alias("default:stone_with_salt", "vox_overworld_blocks:salt_ore")
-
-
--- Metals: Copper, Tin, Iron, Gold, Silver, Platinum, Lead, Zinc, Nickel, Cobalt, Titanium, Tungsten
-core.register_node("vox_overworld_blocks:copper_ore", {
- description = "Copper Ore",
- tiles = {"vox_copper_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("copper_ore", "vox_overworld_blocks:copper_ore")
-core.register_alias("default:stone_with_copper", "vox_overworld_blocks:copper_ore")
-
-core.register_node("vox_overworld_blocks:tin_ore", {
- description = "Tin Ore",
- tiles = {"vox_tin_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("tin_ore", "vox_overworld_blocks:tin_ore")
-core.register_alias("default:stone_with_tin", "vox_overworld_blocks:tin_ore")
-
-core.register_node("vox_overworld_blocks:iron_ore", {
- description = "Iron Ore",
- tiles = {"vox_iron_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("iron_ore", "vox_overworld_blocks:iron_ore")
-core.register_alias("default:stone_with_iron", "vox_overworld_blocks:iron_ore")
-
-core.register_node("vox_overworld_blocks:gold_ore", {
- description = "Gold Ore",
- tiles = {"vox_gold_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("gold_ore", "vox_overworld_blocks:gold_ore")
-core.register_alias("default:stone_with_gold", "vox_overworld_blocks:gold_ore")
-
-core.register_node("vox_overworld_blocks:silver_ore", {
- description = "Silver Ore",
- tiles = {"vox_silver_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("silver_ore", "vox_overworld_blocks:silver_ore")
-core.register_alias("default:stone_with_silver", "vox_overworld_blocks:silver_ore")
-
-core.register_node("vox_overworld_blocks:platinum_ore", {
- description = "Platinum Ore",
- tiles = {"vox_platinum_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("platinum_ore", "vox_overworld_blocks:platinum_ore")
-core.register_alias("default:stone_with_platinum", "vox_overworld_blocks:platinum_ore")
-
-core.register_node("vox_overworld_blocks:lead_ore", {
- description = "Lead Ore",
- tiles = {"vox_lead_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("lead_ore", "vox_overworld_blocks:lead_ore")
-core.register_alias("default:stone_with_lead", "vox_overworld_blocks:lead_ore")
-
-core.register_node("vox_overworld_blocks:zinc_ore", {
- description = "Zinc Ore",
- tiles = {"vox_zinc_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("zinc_ore", "vox_overworld_blocks:zinc_ore")
-core.register_alias("default:stone_with_zinc", "vox_overworld_blocks:zinc_ore")
-
-core.register_node("vox_overworld_blocks:nickel_ore", {
- description = "Nickel Ore",
- tiles = {"vox_nickel_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("nickel_ore", "vox_overworld_blocks:nickel_ore")
-core.register_alias("default:stone_with_nickel", "vox_overworld_blocks:nickel_ore")
-
-core.register_node("vox_overworld_blocks:cobalt_ore", {
- description = "Cobalt Ore",
- tiles = {"vox_cobalt_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("cobalt_ore", "vox_overworld_blocks:cobalt_ore")
-core.register_alias("default:stone_with_cobalt", "vox_overworld_blocks:cobalt_ore")
-
-core.register_node("vox_overworld_blocks:titanium_ore", {
- description = "Titanium Ore",
- tiles = {"vox_titanium_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("titanium_ore", "vox_overworld_blocks:titanium_ore")
-core.register_alias("default:stone_with_titanium", "vox_overworld_blocks:titanium_ore")
-
-core.register_node("vox_overworld_blocks:tungsten_ore", {
- description = "Tungsten Ore",
- tiles = {"vox_tungsten_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("tungsten_ore", "vox_overworld_blocks:tungsten_ore")
-core.register_alias("default:stone_with_tungsten", "vox_overworld_blocks:tungsten_ore")
-
-
--- Gems: Diamond, Emerald, Ruby, Sapphire, Topaz, Amethyst, Opal, Onyx, Garnet, Peridot, Aquamarine, Citrine, Tourmaline, Zircon, Tanzanite, Spinel, Lapis Lazuli, Malachite, Azurite, Turquoise, Amber, Moonstone, Sunstone, Bloodstone, Agate, Jasper, Chalcedony, Chrysoprase, Carnelian, Sardonyx, Heliotrope, Alexandrite, Tiger's Eye, Serpentine, Rhodonite
-core.register_node("vox_overworld_blocks:diamond_ore", {
- description = "Diamond Ore",
- tiles = {"vox_diamond_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("diamond_ore", "vox_overworld_blocks:diamond_ore")
-core.register_alias("default:stone_with_diamond", "vox_overworld_blocks:diamond_ore")
-
-core.register_node("vox_overworld_blocks:emerald_ore", {
- description = "Emerald Ore",
- tiles = {"vox_emerald_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("emerald_ore", "vox_overworld_blocks:emerald_ore")
-core.register_alias("default:stone_with_emerald", "vox_overworld_blocks:emerald_ore")
-
-core.register_node("vox_overworld_blocks:ruby_ore", {
- description = "Ruby Ore",
- tiles = {"vox_ruby_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("ruby_ore", "vox_overworld_blocks:ruby_ore")
-core.register_alias("default:stone_with_ruby", "vox_overworld_blocks:ruby_ore")
-
-core.register_node("vox_overworld_blocks:sapphire_ore", {
- description = "Sapphire Ore",
- tiles = {"vox_sapphire_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("sapphire_ore", "vox_overworld_blocks:sapphire_ore")
-core.register_alias("default:stone_with_sapphire", "vox_overworld_blocks:sapphire_ore")
-
-core.register_node("vox_overworld_blocks:topaz_ore", {
- description = "Topaz Ore",
- tiles = {"vox_topaz_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("topaz_ore", "vox_overworld_blocks:topaz_ore")
-core.register_alias("default:stone_with_topaz", "vox_overworld_blocks:topaz_ore")
-
-core.register_node("vox_overworld_blocks:amethyst_ore", {
- description = "Amethyst Ore",
- tiles = {"vox_amethyst_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("amethyst_ore", "vox_overworld_blocks:amethyst_ore")
-core.register_alias("default:stone_with_amethyst", "vox_overworld_blocks:amethyst_ore")
-
-core.register_node("vox_overworld_blocks:opal_ore", {
- description = "Opal Ore",
- tiles = {"vox_opal_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("opal_ore", "vox_overworld_blocks:opal_ore")
-core.register_alias("default:stone_with_opal", "vox_overworld_blocks:opal_ore")
-
-core.register_node("vox_overworld_blocks:onyx_ore", {
- description = "Onyx Ore",
- tiles = {"vox_onyx_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("onyx_ore", "vox_overworld_blocks:onyx_ore")
-core.register_alias("default:stone_with_onyx", "vox_overworld_blocks:onyx_ore")
-
-core.register_node("vox_overworld_blocks:garnet_ore", {
- description = "Garnet Ore",
- tiles = {"vox_garnet_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("garnet_ore", "vox_overworld_blocks:garnet_ore")
-core.register_alias("default:stone_with_garnet", "vox_overworld_blocks:garnet_ore")
-
-core.register_node("vox_overworld_blocks:peridot_ore", {
- description = "Peridot Ore",
- tiles = {"vox_peridot_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("peridot_ore", "vox_overworld_blocks:peridot_ore")
-core.register_alias("default:stone_with_peridot", "vox_overworld_blocks:peridot_ore")
-
-core.register_node("vox_overworld_blocks:aquamarine_ore", {
- description = "Aquamarine Ore",
- tiles = {"vox_aquamarine_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("aquamarine_ore", "vox_overworld_blocks:aquamarine_ore")
-core.register_alias("default:stone_with_aquamarine", "vox_overworld_blocks:aquamarine_ore")
-
-core.register_node("vox_overworld_blocks:citrine_ore", {
- description = "Citrine Ore",
- tiles = {"vox_citrine_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("citrine_ore", "vox_overworld_blocks:citrine_ore")
-core.register_alias("default:stone_with_citrine", "vox_overworld_blocks:citrine_ore")
-
-core.register_node("vox_overworld_blocks:tourmaline_ore", {
- description = "Tourmaline Ore",
- tiles = {"vox_tourmaline_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("tourmaline_ore", "vox_overworld_blocks:tourmaline_ore")
-core.register_alias("default:stone_with_tourmaline", "vox_overworld_blocks:tourmaline_ore")
-
-core.register_node("vox_overworld_blocks:zircon_ore", {
- description = "Zircon Ore",
- tiles = {"vox_zircon_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("zircon_ore", "vox_overworld_blocks:zircon_ore")
-core.register_alias("default:stone_with_zircon", "vox_overworld_blocks:zircon_ore")
-
-core.register_node("vox_overworld_blocks:tanzanite_ore", {
- description = "Tanzanite Ore",
- tiles = {"vox_tanzanite_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("tanzanite_ore", "vox_overworld_blocks:tanzanite_ore")
-core.register_alias("default:stone_with_tanzanite", "vox_overworld_blocks:tanzanite_ore")
-
-core.register_node("vox_overworld_blocks:spinel_ore", {
- description = "Spinel Ore",
- tiles = {"vox_spinel_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("spinel_ore", "vox_overworld_blocks:spinel_ore")
-core.register_alias("default:stone_with_spinel", "vox_overworld_blocks:spinel_ore")
-
-core.register_node("vox_overworld_blocks:lapis_lazuli_ore", {
- description = "Lapis Lazuli Ore",
- tiles = {"vox_lapis_lazuli_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("lapis_lazuli_ore", "vox_overworld_blocks:lapis_lazuli_ore")
-core.register_alias("default:stone_with_lapis_lazuli", "vox_overworld_blocks:lapis_lazuli_ore")
-
-core.register_node("vox_overworld_blocks:malachite_ore", {
- description = "Malachite Ore",
- tiles = {"vox_malachite_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("malachite_ore", "vox_overworld_blocks:malachite_ore")
-core.register_alias("default:stone_with_malachite", "vox_overworld_blocks:malachite_ore")
-
-core.register_node("vox_overworld_blocks:azurite_ore", {
- description = "Azurite Ore",
- tiles = {"vox_azurite_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("azurite_ore", "vox_overworld_blocks:azurite_ore")
-core.register_alias("default:stone_with_azurite", "vox_overworld_blocks:azurite_ore")
-
-core.register_node("vox_overworld_blocks:turquoise_ore", {
- description = "Turquoise Ore",
- tiles = {"vox_turquoise_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("turquoise_ore", "vox_overworld_blocks:turquoise_ore")
-core.register_alias("default:stone_with_turquoise", "vox_overworld_blocks:turquoise_ore")
-
-core.register_node("vox_overworld_blocks:amber_ore", {
- description = "Amber Ore",
- tiles = {"vox_amber_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("amber_ore", "vox_overworld_blocks:amber_ore")
-core.register_alias("default:stone_with_amber", "vox_overworld_blocks:amber_ore")
-
-core.register_node("vox_overworld_blocks:moonstone_ore", {
- description = "Moonstone Ore",
- tiles = {"vox_moonstone_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("moonstone_ore", "vox_overworld_blocks:moonstone_ore")
-core.register_alias("default:stone_with_moonstone", "vox_overworld_blocks:moonstone_ore")
-
-core.register_node("vox_overworld_blocks:sunstone_ore", {
- description = "Sunstone Ore",
- tiles = {"vox_sunstone_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("sunstone_ore", "vox_overworld_blocks:sunstone_ore")
-core.register_alias("default:stone_with_sunstone", "vox_overworld_blocks:sunstone_ore")
-
-core.register_node("vox_overworld_blocks:bloodstone_ore", {
- description = "Bloodstone Ore",
- tiles = {"vox_bloodstone_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("bloodstone_ore", "vox_overworld_blocks:bloodstone_ore")
-core.register_alias("default:stone_with_bloodstone", "vox_overworld_blocks:bloodstone_ore")
-
-core.register_node("vox_overworld_blocks:agate_ore", {
- description = "Agate Ore",
- tiles = {"vox_agate_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("agate_ore", "vox_overworld_blocks:agate_ore")
-core.register_alias("default:stone_with_agate", "vox_overworld_blocks:agate_ore")
-
-core.register_node("vox_overworld_blocks:jasper_ore", {
- description = "Jasper Ore",
- tiles = {"vox_jasper_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("jasper_ore", "vox_overworld_blocks:jasper_ore")
-core.register_alias("default:stone_with_jasper", "vox_overworld_blocks:jasper_ore")
-
-core.register_node("vox_overworld_blocks:chalcedony_ore", {
- description = "Chalcedony Ore",
- tiles = {"vox_chalcedony_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("chalcedony_ore", "vox_overworld_blocks:chalcedony_ore")
-core.register_alias("default:stone_with_chalcedony", "vox_overworld_blocks:chalcedony_ore")
-
-core.register_node("vox_overworld_blocks:chrysoprase_ore", {
- description = "Chrysoprase Ore",
- tiles = {"vox_chrysoprase_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("chrysoprase_ore", "vox_overworld_blocks:chrysoprase_ore")
-core.register_alias("default:stone_with_chrysoprase", "vox_overworld_blocks:chrysoprase_ore")
-
-core.register_node("vox_overworld_blocks:carnelian_ore", {
- description = "Carnelian Ore",
- tiles = {"vox_carnelian_ore.png"},
- groups = {cracky = 2}
-})
-core.register_alias("carnelian_ore", "vox_overworld_blocks:carnelian_ore")
-core.register_alias("default:stone_with_carnelian", "vox_overworld_blocks:carnelian_ore")
diff --git a/mods/BLOCKS/vox_overworld_blocks/mod.conf b/mods/BLOCKS/vox_overworld_blocks/mod.conf
deleted file mode 100644
index 93ca1f8..0000000
--- a/mods/BLOCKS/vox_overworld_blocks/mod.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-name = vox_overworld_blocks
-description = Voxelis - overworld_blocks: General Overworld blocks
\ No newline at end of file
diff --git a/mods/CORE/vox_init/init.lua b/mods/CORE/vox_init/init.lua
index 49e95d0..bd0d71c 100644
--- a/mods/CORE/vox_init/init.lua
+++ b/mods/CORE/vox_init/init.lua
@@ -10,5 +10,3 @@
-- You should have received a copy of the GNU General Public License along
-- with this program; if not, see .
---------------------------------------------------------------------------
-
--- This file is intended as the primary entry point (init) for the game.
\ No newline at end of file
diff --git a/mods/BLOCKS/vox_misc_blocks/init.lua b/mods/ITEMS/vox_armor/init.lua
similarity index 56%
rename from mods/BLOCKS/vox_misc_blocks/init.lua
rename to mods/ITEMS/vox_armor/init.lua
index f6a2d4d..c80925b 100644
--- a/mods/BLOCKS/vox_misc_blocks/init.lua
+++ b/mods/ITEMS/vox_armor/init.lua
@@ -11,10 +11,4 @@
-- with this program; if not, see .
---------------------------------------------------------------------------
--- -------------------------------------------------------------------------- --
--- Blocks --
--- -------------------------------------------------------------------------- --
-
--- -------------------------------------------------------------------------- --
--- Liquids --
--- -------------------------------------------------------------------------- --
+vox_armor = { }
\ No newline at end of file
diff --git a/mods/ITEMS/vox_armor/mod.conf b/mods/ITEMS/vox_armor/mod.conf
new file mode 100644
index 0000000..84b024b
--- /dev/null
+++ b/mods/ITEMS/vox_armor/mod.conf
@@ -0,0 +1,2 @@
+name = vox_armor
+description = Voxelis - armor: Adds armor to the game.
\ No newline at end of file
diff --git a/mods/ITEMS/vox_materials/init.lua b/mods/ITEMS/vox_materials/init.lua
new file mode 100644
index 0000000..272baab
--- /dev/null
+++ b/mods/ITEMS/vox_materials/init.lua
@@ -0,0 +1,14 @@
+---------------------------------------------------------------------------
+-- Voxelis - Voxel survival sandbox for Luanti
+-- Copyright (C) 2024 Mad Star Studio LLC
+--
+-- This program is free software; you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation; either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- You should have received a copy of the GNU General Public License along
+-- with this program; if not, see .
+---------------------------------------------------------------------------
+
+vox_materials = { }
\ No newline at end of file
diff --git a/mods/ITEMS/vox_materials/mod.conf b/mods/ITEMS/vox_materials/mod.conf
new file mode 100644
index 0000000..5acffe5
--- /dev/null
+++ b/mods/ITEMS/vox_materials/mod.conf
@@ -0,0 +1,2 @@
+name = vox_materials
+description = Voxelis - materials: Adds materials to the game.
\ No newline at end of file
diff --git a/mods/ITEMS/vox_tools/init.lua b/mods/ITEMS/vox_tools/init.lua
new file mode 100644
index 0000000..32ed640
--- /dev/null
+++ b/mods/ITEMS/vox_tools/init.lua
@@ -0,0 +1,14 @@
+---------------------------------------------------------------------------
+-- Voxelis - Voxel survival sandbox for Luanti
+-- Copyright (C) 2024 Mad Star Studio LLC
+--
+-- This program is free software; you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation; either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- You should have received a copy of the GNU General Public License along
+-- with this program; if not, see .
+---------------------------------------------------------------------------
+
+vox_tools = { }
\ No newline at end of file
diff --git a/mods/ITEMS/vox_tools/mod.conf b/mods/ITEMS/vox_tools/mod.conf
new file mode 100644
index 0000000..25171e3
--- /dev/null
+++ b/mods/ITEMS/vox_tools/mod.conf
@@ -0,0 +1,2 @@
+name = vox_tools
+description = Voxelis - tools: Adds tools to the game.
\ No newline at end of file
diff --git a/mods/ITEMS/vox_worldblocks/init.lua b/mods/ITEMS/vox_worldblocks/init.lua
new file mode 100644
index 0000000..3e4dde9
--- /dev/null
+++ b/mods/ITEMS/vox_worldblocks/init.lua
@@ -0,0 +1,732 @@
+---------------------------------------------------------------------------
+-- Voxelis - Voxel survival sandbox for Luanti
+-- Copyright (C) 2024 Mad Star Studio LLC
+--
+-- This program is free software; you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation; either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- You should have received a copy of the GNU General Public License along
+-- with this program; if not, see .
+---------------------------------------------------------------------------
+
+-- -------------------------------------------------------------------------- --
+-- Blocks --
+-- -------------------------------------------------------------------------- --
+
+-- ----------------------------- Terrain Surface ---------------------------- --
+
+-- Grass
+core.register_node("vox_worldblocks:grass", {
+ description = "Grass Block",
+ tiles = {"vox_grass.png"},
+ groups = {cracky = 3}
+})
+core.register_alias("grass", "vox_worldblocks:grass")
+core.register_alias("default:dirt_with_grass" , "vox_worldblocks:grass")
+
+-- Dirt
+core.register_node("vox_worldblocks:dirt", {
+ description = "Dirt",
+ tiles = {"vox_dirt.png"},
+ groups = {crumbly = 3}
+})
+core.register_alias("dirt", "vox_worldblocks:dirt")
+core.register_alias("default:dirt", "vox_worldblocks:dirt")
+
+-- Sand
+-- (I don't like sand. It's coarse and rough and irritating and it gets everywhere.)
+core.register_node("vox_worldblocks:sand", {
+ description = "Sand",
+ tiles = {"vox_sand.png"},
+ groups = {crumbly = 3}
+})
+core.register_alias("sand", "vox_worldblocks:sand")
+core.register_alias("default:sand", "vox_worldblocks:sand")
+
+-- Desert Sand
+core.register_node("vox_worldblocks:desert_sand", {
+ description = "Desert Sand",
+ tiles = {"vox_desert_sand.png"},
+ groups = {crumbly = 3}
+})
+core.register_alias("desert_sand", "vox_worldblocks:desert_sand")
+core.register_alias("default:desert_sand", "vox_worldblocks:desert_sand")
+
+-- Snow
+core.register_node("vox_worldblocks:snow", {
+ description = "Snow",
+ tiles = {"vox_snow.png"},
+ groups = {crumbly = 3}
+})
+core.register_alias("snow", "vox_worldblocks:snow")
+core.register_alias("default:snow", "vox_worldblocks:snow")
+
+-- Ice
+core.register_node("vox_worldblocks:ice", {
+ description = "Ice",
+ tiles = {"vox_ice.png"},
+ groups = {crumbly = 3}
+})
+core.register_alias("ice", "vox_worldblocks:ice")
+core.register_alias("default:ice", "vox_worldblocks:ice")
+
+-- ---------------------------- Terrain Subsurface --------------------------- --
+
+-- Bedrock
+core.register_node("vox_worldblocks:bedrock", {
+ description = "Bedrock",
+ tiles = {"vox_bedrock.png"},
+ groups = {cracky = 1}
+})
+core.register_alias("bedrock", "vox_worldblocks:bedrock")
+core.register_alias("default:bedrock", "vox_worldblocks:bedrock")
+
+-- Gravel
+core.register_node("vox_worldblocks:gravel", {
+ description = "Gravel",
+ tiles = {"vox_gravel.png"},
+ groups = {crumbly = 2}
+})
+core.register_alias("gravel", "vox_worldblocks:gravel")
+core.register_alias("default:gravel", "vox_worldblocks:gravel")
+
+-- Stone
+core.register_node("vox_worldblocks:stone", {
+ description = "Stone",
+ tiles = {"vox_stone.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("stone", "vox_worldblocks:stone")
+core.register_alias("mapgen_stone", "vox_worldblocks:stone")
+-- core.register_alias("default:stone", "vox_worldblocks:stone")
+
+-- Cobblestone
+core.register_node("vox_worldblocks:cobblestone", {
+ description = "Cobblestone",
+ tiles = {"vox_cobblestone.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("cobblestone", "vox_worldblocks:cobblestone")
+core.register_alias("default:cobble", "vox_worldblocks:cobblestone")
+
+-- Sandstone
+core.register_node("vox_worldblocks:sandstone", {
+ description = "Sandstone",
+ tiles = {"vox_sandstone.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("sandstone", "vox_worldblocks:sandstone")
+core.register_alias("default:sandstone", "vox_worldblocks:sandstone")
+
+-- Red Sandstone
+core.register_node("vox_worldblocks:red_sandstone", {
+ description = "Red Sandstone",
+ tiles = {"vox_red_sandstone.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("red_sandstone", "vox_worldblocks:red_sandstone")
+core.register_alias("default:red_sandstone", "vox_worldblocks:red_sandstone")
+
+-- Clay
+core.register_node("vox_worldblocks:clay", {
+ description = "Clay",
+ tiles = {"vox_clay.png"},
+ groups = {crumbly = 3}
+})
+core.register_alias("clay", "vox_worldblocks:clay")
+core.register_alias("default:clay", "vox_worldblocks:clay")
+
+-- Hardened Clay
+core.register_node("vox_worldblocks:hardened_clay", {
+ description = "Hardened Clay",
+ tiles = {"vox_hardened_clay.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("hardened_clay", "vox_worldblocks:hardened_clay")
+core.register_alias("default:hardened_clay", "vox_worldblocks:hardened_clay")
+
+-- Mud
+core.register_node("vox_worldblocks:mud", {
+ description = "Mud",
+ tiles = {"vox_mud.png"},
+ groups = {crumbly = 3}
+})
+core.register_alias("mud", "vox_worldblocks:mud")
+
+-- More stone types: Granite, Diorite, Andesite, Basalt, Obsidian, Marble, Chalk, Limestone, Shale, Slate, Gneiss, Schist, Soapstone, Tuff, Pumice
+core.register_node("vox_worldblocks:granite", {
+ description = "Granite",
+ tiles = {"vox_granite.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("granite", "vox_worldblocks:granite")
+core.register_alias("default:granite", "vox_worldblocks:granite")
+
+core.register_node("vox_worldblocks:diorite", {
+ description = "Diorite",
+ tiles = {"vox_diorite.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("diorite", "vox_worldblocks:diorite")
+core.register_alias("default:diorite", "vox_worldblocks:diorite")
+
+core.register_node("vox_worldblocks:andesite", {
+ description = "Andesite",
+ tiles = {"vox_andesite.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("andesite", "vox_worldblocks:andesite")
+core.register_alias("default:andesite", "vox_worldblocks:andesite")
+
+core.register_node("vox_worldblocks:basalt", {
+ description = "Basalt",
+ tiles = {"vox_basalt.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("basalt", "vox_worldblocks:basalt")
+core.register_alias("default:basalt", "vox_worldblocks:basalt")
+
+core.register_node("vox_worldblocks:obsidian", {
+ description = "Obsidian",
+ tiles = {"vox_obsidian.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("obsidian", "vox_worldblocks:obsidian")
+core.register_alias("default:obsidian", "vox_worldblocks:obsidian")
+
+core.register_node("vox_worldblocks:marble", {
+ description = "Marble",
+ tiles = {"vox_marble.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("marble", "vox_worldblocks:marble")
+core.register_alias("default:marble", "vox_worldblocks:marble")
+
+core.register_node("vox_worldblocks:chalk", {
+ description = "Chalk",
+ tiles = {"vox_chalk.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("chalk", "vox_worldblocks:chalk")
+core.register_alias("default:chalk", "vox_worldblocks:chalk")
+
+core.register_node("vox_worldblocks:limestone", {
+ description = "Limestone",
+ tiles = {"vox_limestone.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("limestone", "vox_worldblocks:limestone")
+core.register_alias("default:limestone", "vox_worldblocks:limestone")
+
+
+-- -------------------------------------------------------------------------- --
+-- Liquids --
+-- -------------------------------------------------------------------------- --
+
+
+-- Water
+core.register_node("vox_worldblocks:water_source", {
+ description = "Water Source",
+ drawtype = "liquid",
+ tiles = {
+ {
+ name = "vox_water.png",
+ animation = {
+ type = "vertical_frames",
+ aspect_w = 16,
+ aspect_h = 16,
+ length = 2.0
+ }
+ }
+ },
+ alpha = 128,
+ paramtype = "light",
+ walkable = false,
+ pointable = false,
+ diggable = false,
+ buildable_to = true,
+ liquidtype = "source",
+ liquid_alternative_flowing = "vox_worldblocks:water_flowing",
+ liquid_alternative_source = "vox_worldblocks:water_source",
+ liquid_viscosity = 1,
+ post_effect_color = {a = 103, r = 30, g = 60, b = 90}
+})
+core.register_alias("water_source", "vox_worldblocks:water_source")
+core.register_alias("default:river_water", "vox_worldblocks:water_source")
+core.register_alias("mapgen_water_source", "vox_worldblocks:water_source")
+
+core.register_node("vox_worldblocks:water_flowing", {
+ description = "Flowing Water",
+ drawtype = "flowingliquid",
+ tiles = {"vox_water.png"},
+ special_tiles = {
+ {
+ name = "vox_water.png",
+ backface_culling = false,
+ animation = {
+ type = "vertical_frames",
+ aspect_w = 16,
+ aspect_h = 16,
+ length = 0.8
+ }
+ }
+ },
+ alpha = 160,
+ paramtype = "light",
+ walkable = false,
+ pointable = false,
+ diggable = false,
+ buildable_to = true,
+ liquidtype = "flowing",
+ liquid_alternative_flowing = "vox_worldblocks:water_flowing",
+ liquid_alternative_source = "vox_worldblocks:water_source",
+ liquid_viscosity = 1,
+ post_effect_color = {a = 103, r = 30, g = 60, b = 90}
+})
+core.register_alias("water_flowing", "vox_worldblocks:water_flowing")
+core.register_alias("default:river_water_flowing", "vox_worldblocks:water_flowing")
+core.register_alias("mapgen_water_flowing", "vox_worldblocks:water_flowing")
+
+-- Lava
+core.register_node("vox_worldblocks:lava_source", {
+ description = "Lava Source",
+ drawtype = "liquid",
+ tiles = {
+ {
+ name = "vox_lava.png",
+ animation = {
+ type = "vertical_frames",
+ aspect_w = 16,
+ aspect_h = 16,
+ length = 2.0
+ }
+ }
+ },
+ alpha = 255,
+ paramtype = "light",
+ walkable = false,
+ pointable = false,
+ diggable = false,
+ buildable_to = true,
+ liquidtype = "source",
+ liquid_alternative_flowing = "vox_worldblocks:lava_flowing",
+ liquid_alternative_source = "vox_worldblocks:lava_source",
+ liquid_viscosity = 7,
+ post_effect_color = {a = 255, r = 255, g = 0, b = 0}
+})
+core.register_alias("lava_source", "vox_worldblocks:lava_source")
+core.register_alias("default:lava_source", "vox_worldblocks:lava_source")
+core.register_alias("mapgen_lava_source", "vox_worldblocks:lava_source")
+
+core.register_node("vox_worldblocks:lava_flowing", {
+ description = "Flowing Lava",
+ drawtype = "flowingliquid",
+ tiles = {"vox_lava.png"},
+ special_tiles = {
+ {
+ name = "vox_lava.png",
+ backface_culling = false,
+ animation = {
+ type = "vertical_frames",
+ aspect_w = 16,
+ aspect_h = 16,
+ length = 2.0
+ }
+ }
+ },
+ alpha = 255,
+ paramtype = "light",
+ walkable = false,
+ pointable = false,
+ diggable = false,
+ buildable_to = true,
+ liquidtype = "flowing",
+ liquid_alternative_flowing = "vox_worldblocks:lava_flowing",
+ liquid_alternative_source = "vox_worldblocks:lava_source",
+ liquid_viscosity = 7,
+ post_effect_color = {a = 255, r = 255, g = 0, b = 0}
+})
+core.register_alias("lava_flowing", "vox_worldblocks:lava_flowing")
+core.register_alias("default:lava_flowing", "vox_worldblocks:lava_flowing")
+core.register_alias("mapgen_lava_flowing", "vox_worldblocks:lava_flowing")
+
+-- -------------------------------------------------------------------------- --
+-- Ores --
+-- -------------------------------------------------------------------------- --
+
+
+-- Fuel: Coal, Uranium
+core.register_node("vox_worldblocks:coal_ore", {
+ description = "Coal Ore",
+ tiles = {"vox_coal_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("coal_ore", "vox_worldblocks:coal_ore")
+core.register_alias("default:stone_with_coal", "vox_worldblocks:coal_ore")
+
+core.register_node("vox_worldblocks:uranium_ore", {
+ description = "Uranium Ore",
+ tiles = {"vox_uranium_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("uranium_ore", "vox_worldblocks:uranium_ore")
+core.register_alias("default:stone_with_uranium", "vox_worldblocks:uranium_ore")
+
+-- Minerals: Bone, Sulfur, Salt
+core.register_node("vox_worldblocks:bone_ore", {
+ description = "Bone Ore",
+ tiles = {"vox_bone_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("bone_ore", "vox_worldblocks:bone_ore")
+core.register_alias("default:stone_with_bone", "vox_worldblocks:bone_ore")
+
+core.register_node("vox_worldblocks:sulfur_ore", {
+ description = "Sulfur Ore",
+ tiles = {"vox_sulfur_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("sulfur_ore", "vox_worldblocks:sulfur_ore")
+core.register_alias("default:stone_with_sulfur", "vox_worldblocks:sulfur_ore")
+
+core.register_node("vox_worldblocks:salt_ore", {
+ description = "Salt Ore",
+ tiles = {"vox_salt_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("salt_ore", "vox_worldblocks:salt_ore")
+core.register_alias("default:stone_with_salt", "vox_worldblocks:salt_ore")
+
+
+-- Metals: Copper, Tin, Iron, Gold, Silver, Platinum, Lead, Zinc, Nickel, Cobalt, Titanium, Tungsten
+core.register_node("vox_worldblocks:copper_ore", {
+ description = "Copper Ore",
+ tiles = {"vox_copper_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("copper_ore", "vox_worldblocks:copper_ore")
+core.register_alias("default:stone_with_copper", "vox_worldblocks:copper_ore")
+
+core.register_node("vox_worldblocks:tin_ore", {
+ description = "Tin Ore",
+ tiles = {"vox_tin_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("tin_ore", "vox_worldblocks:tin_ore")
+core.register_alias("default:stone_with_tin", "vox_worldblocks:tin_ore")
+
+core.register_node("vox_worldblocks:iron_ore", {
+ description = "Iron Ore",
+ tiles = {"vox_iron_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("iron_ore", "vox_worldblocks:iron_ore")
+core.register_alias("default:stone_with_iron", "vox_worldblocks:iron_ore")
+
+core.register_node("vox_worldblocks:gold_ore", {
+ description = "Gold Ore",
+ tiles = {"vox_gold_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("gold_ore", "vox_worldblocks:gold_ore")
+core.register_alias("default:stone_with_gold", "vox_worldblocks:gold_ore")
+
+core.register_node("vox_worldblocks:silver_ore", {
+ description = "Silver Ore",
+ tiles = {"vox_silver_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("silver_ore", "vox_worldblocks:silver_ore")
+core.register_alias("default:stone_with_silver", "vox_worldblocks:silver_ore")
+
+core.register_node("vox_worldblocks:platinum_ore", {
+ description = "Platinum Ore",
+ tiles = {"vox_platinum_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("platinum_ore", "vox_worldblocks:platinum_ore")
+core.register_alias("default:stone_with_platinum", "vox_worldblocks:platinum_ore")
+
+core.register_node("vox_worldblocks:lead_ore", {
+ description = "Lead Ore",
+ tiles = {"vox_lead_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("lead_ore", "vox_worldblocks:lead_ore")
+core.register_alias("default:stone_with_lead", "vox_worldblocks:lead_ore")
+
+core.register_node("vox_worldblocks:zinc_ore", {
+ description = "Zinc Ore",
+ tiles = {"vox_zinc_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("zinc_ore", "vox_worldblocks:zinc_ore")
+core.register_alias("default:stone_with_zinc", "vox_worldblocks:zinc_ore")
+
+core.register_node("vox_worldblocks:nickel_ore", {
+ description = "Nickel Ore",
+ tiles = {"vox_nickel_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("nickel_ore", "vox_worldblocks:nickel_ore")
+core.register_alias("default:stone_with_nickel", "vox_worldblocks:nickel_ore")
+
+core.register_node("vox_worldblocks:cobalt_ore", {
+ description = "Cobalt Ore",
+ tiles = {"vox_cobalt_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("cobalt_ore", "vox_worldblocks:cobalt_ore")
+core.register_alias("default:stone_with_cobalt", "vox_worldblocks:cobalt_ore")
+
+core.register_node("vox_worldblocks:titanium_ore", {
+ description = "Titanium Ore",
+ tiles = {"vox_titanium_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("titanium_ore", "vox_worldblocks:titanium_ore")
+core.register_alias("default:stone_with_titanium", "vox_worldblocks:titanium_ore")
+
+core.register_node("vox_worldblocks:tungsten_ore", {
+ description = "Tungsten Ore",
+ tiles = {"vox_tungsten_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("tungsten_ore", "vox_worldblocks:tungsten_ore")
+core.register_alias("default:stone_with_tungsten", "vox_worldblocks:tungsten_ore")
+
+
+-- Gems: Diamond, Emerald, Ruby, Sapphire, Topaz, Amethyst, Opal, Onyx, Garnet, Peridot, Aquamarine, Citrine, Tourmaline, Zircon, Tanzanite, Spinel, Lapis Lazuli, Malachite, Azurite, Turquoise, Amber, Moonstone, Sunstone, Bloodstone, Agate, Jasper, Chalcedony, Chrysoprase, Carnelian, Sardonyx, Heliotrope, Alexandrite, Tiger's Eye, Serpentine, Rhodonite
+core.register_node("vox_worldblocks:diamond_ore", {
+ description = "Diamond Ore",
+ tiles = {"vox_diamond_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("diamond_ore", "vox_worldblocks:diamond_ore")
+core.register_alias("default:stone_with_diamond", "vox_worldblocks:diamond_ore")
+
+core.register_node("vox_worldblocks:emerald_ore", {
+ description = "Emerald Ore",
+ tiles = {"vox_emerald_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("emerald_ore", "vox_worldblocks:emerald_ore")
+core.register_alias("default:stone_with_emerald", "vox_worldblocks:emerald_ore")
+
+core.register_node("vox_worldblocks:ruby_ore", {
+ description = "Ruby Ore",
+ tiles = {"vox_ruby_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("ruby_ore", "vox_worldblocks:ruby_ore")
+core.register_alias("default:stone_with_ruby", "vox_worldblocks:ruby_ore")
+
+core.register_node("vox_worldblocks:sapphire_ore", {
+ description = "Sapphire Ore",
+ tiles = {"vox_sapphire_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("sapphire_ore", "vox_worldblocks:sapphire_ore")
+core.register_alias("default:stone_with_sapphire", "vox_worldblocks:sapphire_ore")
+
+core.register_node("vox_worldblocks:topaz_ore", {
+ description = "Topaz Ore",
+ tiles = {"vox_topaz_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("topaz_ore", "vox_worldblocks:topaz_ore")
+core.register_alias("default:stone_with_topaz", "vox_worldblocks:topaz_ore")
+
+core.register_node("vox_worldblocks:amethyst_ore", {
+ description = "Amethyst Ore",
+ tiles = {"vox_amethyst_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("amethyst_ore", "vox_worldblocks:amethyst_ore")
+core.register_alias("default:stone_with_amethyst", "vox_worldblocks:amethyst_ore")
+
+core.register_node("vox_worldblocks:opal_ore", {
+ description = "Opal Ore",
+ tiles = {"vox_opal_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("opal_ore", "vox_worldblocks:opal_ore")
+core.register_alias("default:stone_with_opal", "vox_worldblocks:opal_ore")
+
+core.register_node("vox_worldblocks:onyx_ore", {
+ description = "Onyx Ore",
+ tiles = {"vox_onyx_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("onyx_ore", "vox_worldblocks:onyx_ore")
+core.register_alias("default:stone_with_onyx", "vox_worldblocks:onyx_ore")
+
+core.register_node("vox_worldblocks:garnet_ore", {
+ description = "Garnet Ore",
+ tiles = {"vox_garnet_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("garnet_ore", "vox_worldblocks:garnet_ore")
+core.register_alias("default:stone_with_garnet", "vox_worldblocks:garnet_ore")
+
+core.register_node("vox_worldblocks:peridot_ore", {
+ description = "Peridot Ore",
+ tiles = {"vox_peridot_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("peridot_ore", "vox_worldblocks:peridot_ore")
+core.register_alias("default:stone_with_peridot", "vox_worldblocks:peridot_ore")
+
+core.register_node("vox_worldblocks:aquamarine_ore", {
+ description = "Aquamarine Ore",
+ tiles = {"vox_aquamarine_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("aquamarine_ore", "vox_worldblocks:aquamarine_ore")
+core.register_alias("default:stone_with_aquamarine", "vox_worldblocks:aquamarine_ore")
+
+core.register_node("vox_worldblocks:citrine_ore", {
+ description = "Citrine Ore",
+ tiles = {"vox_citrine_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("citrine_ore", "vox_worldblocks:citrine_ore")
+core.register_alias("default:stone_with_citrine", "vox_worldblocks:citrine_ore")
+
+core.register_node("vox_worldblocks:tourmaline_ore", {
+ description = "Tourmaline Ore",
+ tiles = {"vox_tourmaline_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("tourmaline_ore", "vox_worldblocks:tourmaline_ore")
+core.register_alias("default:stone_with_tourmaline", "vox_worldblocks:tourmaline_ore")
+
+core.register_node("vox_worldblocks:zircon_ore", {
+ description = "Zircon Ore",
+ tiles = {"vox_zircon_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("zircon_ore", "vox_worldblocks:zircon_ore")
+core.register_alias("default:stone_with_zircon", "vox_worldblocks:zircon_ore")
+
+core.register_node("vox_worldblocks:tanzanite_ore", {
+ description = "Tanzanite Ore",
+ tiles = {"vox_tanzanite_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("tanzanite_ore", "vox_worldblocks:tanzanite_ore")
+core.register_alias("default:stone_with_tanzanite", "vox_worldblocks:tanzanite_ore")
+
+core.register_node("vox_worldblocks:spinel_ore", {
+ description = "Spinel Ore",
+ tiles = {"vox_spinel_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("spinel_ore", "vox_worldblocks:spinel_ore")
+core.register_alias("default:stone_with_spinel", "vox_worldblocks:spinel_ore")
+
+core.register_node("vox_worldblocks:lapis_lazuli_ore", {
+ description = "Lapis Lazuli Ore",
+ tiles = {"vox_lapis_lazuli_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("lapis_lazuli_ore", "vox_worldblocks:lapis_lazuli_ore")
+core.register_alias("default:stone_with_lapis_lazuli", "vox_worldblocks:lapis_lazuli_ore")
+
+core.register_node("vox_worldblocks:malachite_ore", {
+ description = "Malachite Ore",
+ tiles = {"vox_malachite_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("malachite_ore", "vox_worldblocks:malachite_ore")
+core.register_alias("default:stone_with_malachite", "vox_worldblocks:malachite_ore")
+
+core.register_node("vox_worldblocks:azurite_ore", {
+ description = "Azurite Ore",
+ tiles = {"vox_azurite_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("azurite_ore", "vox_worldblocks:azurite_ore")
+core.register_alias("default:stone_with_azurite", "vox_worldblocks:azurite_ore")
+
+core.register_node("vox_worldblocks:turquoise_ore", {
+ description = "Turquoise Ore",
+ tiles = {"vox_turquoise_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("turquoise_ore", "vox_worldblocks:turquoise_ore")
+core.register_alias("default:stone_with_turquoise", "vox_worldblocks:turquoise_ore")
+
+core.register_node("vox_worldblocks:amber_ore", {
+ description = "Amber Ore",
+ tiles = {"vox_amber_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("amber_ore", "vox_worldblocks:amber_ore")
+core.register_alias("default:stone_with_amber", "vox_worldblocks:amber_ore")
+
+core.register_node("vox_worldblocks:moonstone_ore", {
+ description = "Moonstone Ore",
+ tiles = {"vox_moonstone_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("moonstone_ore", "vox_worldblocks:moonstone_ore")
+core.register_alias("default:stone_with_moonstone", "vox_worldblocks:moonstone_ore")
+
+core.register_node("vox_worldblocks:sunstone_ore", {
+ description = "Sunstone Ore",
+ tiles = {"vox_sunstone_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("sunstone_ore", "vox_worldblocks:sunstone_ore")
+core.register_alias("default:stone_with_sunstone", "vox_worldblocks:sunstone_ore")
+
+core.register_node("vox_worldblocks:bloodstone_ore", {
+ description = "Bloodstone Ore",
+ tiles = {"vox_bloodstone_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("bloodstone_ore", "vox_worldblocks:bloodstone_ore")
+core.register_alias("default:stone_with_bloodstone", "vox_worldblocks:bloodstone_ore")
+
+core.register_node("vox_worldblocks:agate_ore", {
+ description = "Agate Ore",
+ tiles = {"vox_agate_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("agate_ore", "vox_worldblocks:agate_ore")
+core.register_alias("default:stone_with_agate", "vox_worldblocks:agate_ore")
+
+core.register_node("vox_worldblocks:jasper_ore", {
+ description = "Jasper Ore",
+ tiles = {"vox_jasper_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("jasper_ore", "vox_worldblocks:jasper_ore")
+core.register_alias("default:stone_with_jasper", "vox_worldblocks:jasper_ore")
+
+core.register_node("vox_worldblocks:chalcedony_ore", {
+ description = "Chalcedony Ore",
+ tiles = {"vox_chalcedony_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("chalcedony_ore", "vox_worldblocks:chalcedony_ore")
+core.register_alias("default:stone_with_chalcedony", "vox_worldblocks:chalcedony_ore")
+
+core.register_node("vox_worldblocks:chrysoprase_ore", {
+ description = "Chrysoprase Ore",
+ tiles = {"vox_chrysoprase_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("chrysoprase_ore", "vox_worldblocks:chrysoprase_ore")
+core.register_alias("default:stone_with_chrysoprase", "vox_worldblocks:chrysoprase_ore")
+
+core.register_node("vox_worldblocks:carnelian_ore", {
+ description = "Carnelian Ore",
+ tiles = {"vox_carnelian_ore.png"},
+ groups = {cracky = 2}
+})
+core.register_alias("carnelian_ore", "vox_worldblocks:carnelian_ore")
+core.register_alias("default:stone_with_carnelian", "vox_worldblocks:carnelian_ore")
diff --git a/mods/ITEMS/vox_worldblocks/mod.conf b/mods/ITEMS/vox_worldblocks/mod.conf
new file mode 100644
index 0000000..7665977
--- /dev/null
+++ b/mods/ITEMS/vox_worldblocks/mod.conf
@@ -0,0 +1,2 @@
+name = vox_worldblocks
+description = Voxelis - worldblocks: General Overworld blocks
\ No newline at end of file
diff --git a/mods/BLOCKS/vox_overworld_blocks/textures/vox_cobblestone.png b/mods/ITEMS/vox_worldblocks/textures/vox_cobblestone.png
similarity index 100%
rename from mods/BLOCKS/vox_overworld_blocks/textures/vox_cobblestone.png
rename to mods/ITEMS/vox_worldblocks/textures/vox_cobblestone.png
diff --git a/mods/BLOCKS/vox_overworld_blocks/textures/vox_dirt.png b/mods/ITEMS/vox_worldblocks/textures/vox_dirt.png
similarity index 100%
rename from mods/BLOCKS/vox_overworld_blocks/textures/vox_dirt.png
rename to mods/ITEMS/vox_worldblocks/textures/vox_dirt.png
diff --git a/mods/BLOCKS/vox_overworld_blocks/textures/vox_grass.png b/mods/ITEMS/vox_worldblocks/textures/vox_grass.png
similarity index 100%
rename from mods/BLOCKS/vox_overworld_blocks/textures/vox_grass.png
rename to mods/ITEMS/vox_worldblocks/textures/vox_grass.png
diff --git a/mods/BLOCKS/vox_overworld_blocks/textures/vox_gravel.png b/mods/ITEMS/vox_worldblocks/textures/vox_gravel.png
similarity index 100%
rename from mods/BLOCKS/vox_overworld_blocks/textures/vox_gravel.png
rename to mods/ITEMS/vox_worldblocks/textures/vox_gravel.png
diff --git a/mods/BLOCKS/vox_overworld_blocks/textures/vox_sand.png b/mods/ITEMS/vox_worldblocks/textures/vox_sand.png
similarity index 100%
rename from mods/BLOCKS/vox_overworld_blocks/textures/vox_sand.png
rename to mods/ITEMS/vox_worldblocks/textures/vox_sand.png
diff --git a/mods/BLOCKS/vox_overworld_blocks/textures/vox_stone.png b/mods/ITEMS/vox_worldblocks/textures/vox_stone.png
similarity index 100%
rename from mods/BLOCKS/vox_overworld_blocks/textures/vox_stone.png
rename to mods/ITEMS/vox_worldblocks/textures/vox_stone.png
diff --git a/mods/BLOCKS/vox_overworld_blocks/textures/vox_water.png b/mods/ITEMS/vox_worldblocks/textures/vox_water.png
similarity index 100%
rename from mods/BLOCKS/vox_overworld_blocks/textures/vox_water.png
rename to mods/ITEMS/vox_worldblocks/textures/vox_water.png
diff --git a/mods/MAPGEN/vox_mapgen_core/init.lua b/mods/MAPGEN/vox_mapgen_core/init.lua
index 380b050..072ea52 100644
--- a/mods/MAPGEN/vox_mapgen_core/init.lua
+++ b/mods/MAPGEN/vox_mapgen_core/init.lua
@@ -13,5 +13,56 @@
vox_mapgen_core = { }
--- Variables
+-- Also run...
+dofile(minetest.get_modpath("vox_mapgen_core").."/ores.lua")
+
+-- Disable minetest dungeons. We're making our own with blackjack and hookers.
+minetest.set_mapgen_setting("mg_flags", "dungeons", false)
+
+-- Some adjustments based on different generators.
+-- For now we allow v7, and haven't looked at the other generators.
+if mg_name == "v7" then
+ minetest.set_mapgen_setting("mg7_cavern_threshold", 0.2, true)
+ minetest.set_mapgen_setting("mg_flags", "dungeons", false)
+end
+
+-- And some superflat tweaks.
+if superflat then
+ -- Disable caves
+ minetest.set_mapgen_setting("mg_flags", "caves", false)
+ -- Disable dungeons
+ minetest.set_mapgen_setting("mg_flags", "dungeons", false)
+ -- Disable decorations
+ minetest.set_mapgen_setting("mg_flags", "decoration", false)
+ minetest.set_mapgen_setting("mgflat_spflags", "nocaves,nohills", true)
+end
+
+
+-- Generate flat bedrock at the lowest point of the world, -10000.
+local function generate_bedrock(minp, maxp, data)
+ local vi = 0
+ for z = minp.z, maxp.z do
+ for x = minp.x, maxp.x do
+ for y = -10000, -10000 do
+ local c_air = minetest.get_content_id("air")
+ data[vi] = c_air
+ vi = vi + 1
+ end
+ end
+ end
+end
+
+-- Put air/void beneath bedrock
+local function generate_void(minp, maxp, data)
+ local vi = 0
+ for z = minp.z, maxp.z do
+ for x = minp.x, maxp.x do
+ for y = -10001, -31000 do
+ local c_air = minetest.get_content_id("air")
+ data[vi] = c_air
+ vi = vi + 1
+ end
+ end
+ end
+end
diff --git a/mods/MAPGEN/vox_mapgen_core/ores.lua b/mods/MAPGEN/vox_mapgen_core/ores.lua
new file mode 100644
index 0000000..a8271db
--- /dev/null
+++ b/mods/MAPGEN/vox_mapgen_core/ores.lua
@@ -0,0 +1,7 @@
+
+
+-- Clay
+minetest.register_ore({
+ ore_type = "blob",
+ ore = "vox"
+})
\ No newline at end of file