-white_block = {
- visible = true;
- texture = "rock-1";
- color = [ 1, 1, 1 ];
- label = "White Block";
- block_light = true;
- collision = true;
- collide_block = true;
- shape = block;
-};
-white_slab = {
- visible = true;
+// default min solidity is 0.5 which marks the border of the solid world
+// anything with less than that will be incredibly common on the surface
+
+white_coarse = {
texture = "rock-1";
- color = [ 1, 1, 1 ];
+ label = "Coarse White";
+ place_sound = "thump";
+ remove_sound = "plop";
+ shape = uniform_block;
+ generate = true;
+ mid_solidity = 0.5;
+ max_solidity = 0.75;
+ max_temperature = 0.0;
+ mid_temperature = -0.5;
+};
+white_smooth = white_coarse {
+ texture = "rock-2";
+ label = "Smooth White";
+ mid_solidity = 0.6;
+ max_solidity = 1.0;
+};
+white_hard = white_coarse {
+ texture = "rock-3";
+ label = "Hard White";
+ min_solidity = 0.7;
+ mid_solidity = 1.0;
+ max_solidity = 1.0;
+};
+white_slab = white_coarse {
label = "White Slab";
- block_light = true;
- collision = true;
- collide_block = true;
- shape = slab;
+ shape = uniform_low_slab;
+ generate = false;
};
-white_stair = {
- visible = true;
- texture = "rock-1";
- color = [ 1, 1, 1 ];
+white_stair = white_coarse {
label = "White Stair";
- block_light = true;
- collision = true;
- collide_block = true;
- shape = stair;
+ shape = uniform_stair;
+ generate = false;
};
-red_block = {
- visible = true;
- texture = "rock-3";
- color = [ 1, 0, 0 ];
- label = "Red Block";
- block_light = true;
- collision = true;
- collide_block = true;
- shape = block;
-};
-red_slab = {
- visible = true;
+red_coarse = white_coarse {
+ rgb_mod = [ 0.8, 0.2, 0.2 ];
+ label = "Coarse Red";
+ min_temperature = 0.0;
+ mid_temperature = 0.5;
+ max_temperature = 1.0;
+ max_humidity = 0.0;
+ mid_humidity = -0.5;
+};
+red_smooth = red_coarse {
+ texture = "rock-2";
+ label = "Smooth Red";
+ mid_solidity = 0.6;
+ max_solidity = 1.0;
+};
+red_hard = red_coarse {
texture = "rock-3";
- color = [ 1, 0, 0 ];
+ label = "Hard Red";
+ min_solidity = 0.7;
+ mid_solidity = 1.0;
+ max_solidity = 1.0;
+};
+red_slab = red_hard {
label = "Red Slab";
- block_light = true;
- collision = true;
- collide_block = true;
- shape = slab;
+ shape = uniform_low_slab;
+ generate = false;
};
-red_stair = {
- visible = true;
- texture = "rock-3";
- color = [ 1, 0, 0 ];
+red_stair = red_hard {
label = "Red Stair";
- block_light = true;
- collision = true;
- collide_block = true;
- shape = stair;
+ shape = uniform_stair;
+ generate = false;
};
-green_block = {
- visible = true;
- texture = "rock-1";
- color = [ 0, 1, 0 ];
- label = "Green Block";
- block_light = true;
- collision = true;
- collide_block = true;
- shape = block;
-};
-green_slab = {
- visible = true;
- texture = "rock-1";
- color = [ 0, 1, 0 ];
+green_coarse = white_coarse {
+ rgb_mod = [ 0.2, 0.8, 0.2 ];
+ label = "Coarse Green";
+ min_temperature = -0.5;
+ mid_temperature = 0.25;
+ max_temperature = 0.75;
+};
+green_smooth = green_coarse {
+ texture = "rock-2";
+ label = "Smooth Green";
+ mid_solidity = 0.6;
+ max_solidity = 1.0;
+};
+green_hard = green_coarse {
+ texture = "rock-3";
+ label = "Hard Green";
+ min_solidity = 0.7;
+ mid_solidity = 1.0;
+ max_solidity = 1.0;
+};
+green_slab = green_coarse {
label = "Green Slab";
- block_light = true;
- collision = true;
- collide_block = true;
- shape = slab;
+ shape = uniform_low_slab;
+ generate = false;
};
-green_stair = {
- visible = true;
- texture = "rock-1";
- color = [ 0, 1, 0 ];
+green_stair = green_coarse {
label = "Green Stair";
- block_light = true;
- collision = true;
- collide_block = true;
- shape = stair;
+ shape = uniform_stair;
+ generate = false;
};
-blue_block = {
- visible = true;
- texture = "rock-3";
- color = [ 0, 0, 1 ];
+blue_coarse = white_coarse {
+ texture = "rock-1";
+ rgb_mod = [ 0.2, 0.2, 0.8 ];
outline = [ 0.75, 0.75, 0.75 ];
- label = "Blue Block";
- block_light = true;
- collision = true;
- collide_block = true;
- shape = block;
-};
-blue_slab = {
- visible = true;
+ label = "Coarse Blue";
+ mid_solidity = 0.5;
+ max_solidity = 0.75;
+ min_humidity = 0.0;
+ mid_humidity = 1.0;
+ min_temperature = -1.0;
+ mid_temperature = 0.0;
+ max_temperature = 1.0;
+};
+blue_smooth = blue_coarse {
+ texture = "rock-2";
+ label = "Smooth Blue";
+ mid_solidity = 0.6;
+ max_solidity = 1.0;
+};
+blue_hard = blue_coarse {
texture = "rock-3";
- color = [ 0, 0, 1 ];
- outline = [ 0.75, 0.75, 0.75 ];
+ label = "Hard Blue";
+ min_solidity = 0.7;
+ mid_solidity = 1.0;
+ max_solidity = 1.0;
+};
+blue_slab = blue_hard {
label = "Blue Slab";
- block_light = true;
- collision = true;
- collide_block = true;
- shape = slab;
+ shape = uniform_low_slab;
+ generate = false;
};
-blue_stair = {
- visible = true;
- texture = "rock-3";
- color = [ 0, 0, 1 ];
- outline = [ 0.75, 0.75, 0.75 ];
+blue_stair = blue_hard {
label = "Blue Stair";
- block_light = true;
- collision = true;
- collide_block = true;
- shape = stair;
+ shape = uniform_stair;
+ generate = false;
+};
+
+// trying out some more "realistic" variants
+dirt = {
+ texture = "grain";
+ rgb_mod = [ 0.5, 0.35, 0.2 ];
+ label = "Dirt";
+ place_sound = "thump";
+ remove_sound = "plop";
+ shape = uniform_block;
+ generate = true;
+ mid_solidity = 0.6;
+ max_solidity = 0.8;
+};
+grass = dirt {
+ rgb_mod = [ 0.0, 0.2, 0 ];
+ label = "Grass";
+ mid_solidity = 0.55;
+ max_solidity = 0.65;
+ min_humidity = 0.1;
+ mid_humidity = 0.8;
+};
+fiber = grass {
+ texture = "lines";
+ label = "Fiber";
+};
+stone = dirt {
+ rgb_mod = [ 0.6, 0.6, 0.6 ];
+ label = "Stone";
+ mid_solidity = 0.75;
+ max_solidity = 1.0;
+};
+stone_panel = stone {
+ texture = "panel";
+ label = "Stone Panel";
+ commonness = 0.75;
+};
+snow = dirt {
+ rgb_mod = [ 0.9, 0.9, 1 ];
+ label = "Snow";
+ mid_solidity = 0.5;
+ max_solidity = 0.7;
+ min_temperature = -0.5;
+ mid_temperature = -0.25;
+ max_temperature = 0.0;
+};
+ice = snow {
+ texture = "panel";
+ label = "Ice";
+ min_solidity = 0.6;
+ mid_solidity = 0.65;
+ max_solidity = 0.75;
+};
+sand = dirt {
+ rgb_mod = [ 0.93, 0.9, 0.66 ];
+ label = "Sand";
+ mid_humidity = -0.9;
+ max_humidity = 0.0;
+ min_solidity = 0.5;
+ mid_solidity = 0.5;
+ max_solidity = 0.65;
+ min_temperature = 0.1;
+ mid_temperature = 0.7;
+};
+sandstone = sand {
+ texture = "panel";
+ label = "Sandstone";
+ min_solidity = 0.55;
+ mid_solidity = 0.7;
+ max_solidity = 0.75;
+};
+
+grav_spherical = {
+ texture = "gravity-neutral";
+ label = "Spherical Gravity";
+ place_sound = "thump";
+ remove_sound = "plop";
+ shape = uniform_block;
+ gravity = Radial(15);
+};
+grav_directed = {
+ textures = [ "gravity-directed", "gravity-neutral" ];
+ label = "Directed Gravity";
+ place_sound = "thump";
+ remove_sound = "plop";
+ shape = pipe_block;
+ // 15x8x15 box with 10 units gravity downwards
+ gravity = CuboidField([ 0, -10, 0 ], [ -7.5, -0.5, -7.5 ], [ 7.5, 7.5, 7.5 ]);
};
light = {
- visible = true;
texture = "rock-2";
- color = [ 1, 1, 0 ];
+ rgb_mod = [ 0.8, 0.8, 0.2 ];
label = "Light";
+ place_sound = "thump";
+ remove_sound = "plop";
luminosity = 15;
- block_light = true;
- collision = true;
- collide_block = true;
- shape = block;
+ shape = uniform_block;
+ generate = true;
+ mid_solidity = 0.5;
+ max_solidity = 0.75;
+ commonness = 0.125;
};
debug = {
- visible = true;
texture = "debug";
- color = [ 1, 1, 1 ];
label = "Debug Cube";
- block_light = true;
- collision = true;
- collide_block = true;
- shape = block;
+ place_sound = "thump";
+ remove_sound = "plop";
+ shape = uniform_block;
};