From 17c9634c0f86f234563a4894b7afe8f7fe20592e Mon Sep 17 00:00:00 2001 From: chelsea Date: Sat, 2 May 2026 20:30:12 -0500 Subject: [PATCH] Add wall exteriors and interior access --- worldgen-c/bin/worldgen | Bin 161152 -> 157144 bytes worldgen-c/include/worldgen.h | 6 ++- worldgen-c/src/main.c | 8 +++- worldgen-c/src/worldgen.c | 77 ++++++++++++++++++++++++++++++---- 4 files changed, 81 insertions(+), 10 deletions(-) diff --git a/worldgen-c/bin/worldgen b/worldgen-c/bin/worldgen index 1815d624af8dcc4df33c2e3ecb552f5227d3b4cb..9c38f64f952fdc286c209201e3818f0c2433231e 100755 GIT binary patch delta 61069 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 delta 60249 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℘Q&t*O*6g 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 F{|A(Y?0NtI diff --git a/worldgen-c/include/worldgen.h b/worldgen-c/include/worldgen.h index 4ba75c2..45e3ff8 100644 --- a/worldgen-c/include/worldgen.h +++ b/worldgen-c/include/worldgen.h @@ -57,7 +57,11 @@ BLOCK_SMOOTH_STONE = 44, BLOCK_STONE_BRICKS = 45, BLOCK_BLACKSTONE = 46, - BLOCK_IRON_BARS = 47 + BLOCK_IRON_BARS = 47, + BLOCK_STONE_BRICK_STAIRS_E = 48, + BLOCK_STONE_BRICK_STAIRS_W = 49, + BLOCK_STONE_BRICK_STAIRS_N = 50, + BLOCK_STONE_BRICK_STAIRS_S = 51 }; struct trail_segment; diff --git a/worldgen-c/src/main.c b/worldgen-c/src/main.c index e27a2a5..da5b69a 100644 --- a/worldgen-c/src/main.c +++ b/worldgen-c/src/main.c @@ -86,6 +86,8 @@ static const kv_pair PROPS_WATER[] = {{"level", "0"}}; static const kv_pair PROPS_LEAVES[] = {{"distance", "1"}, {"persistent", "false"}}; static const kv_pair PROPS_STAIRS_E[] = {{"facing", "east"}, {"half", "bottom"}, {"shape", "straight"}, {"waterlogged", "false"}}; static const kv_pair PROPS_STAIRS_W[] = {{"facing", "west"}, {"half", "bottom"}, {"shape", "straight"}, {"waterlogged", "false"}}; +static const kv_pair PROPS_STAIRS_N[] = {{"facing", "north"}, {"half", "bottom"}, {"shape", "straight"}, {"waterlogged", "false"}}; +static const kv_pair PROPS_STAIRS_S[] = {{"facing", "south"}, {"half", "bottom"}, {"shape", "straight"}, {"waterlogged", "false"}}; static const kv_pair PROPS_DOOR_S_LOWER[] = {{"facing", "south"}, {"half", "lower"}, {"hinge", "left"}, {"open", "false"}, {"powered", "false"}}; static const kv_pair PROPS_DOOR_S_UPPER[] = {{"facing", "south"}, {"half", "upper"}, {"hinge", "left"}, {"open", "false"}, {"powered", "false"}}; static const kv_pair PROPS_DOOR_N_LOWER[] = {{"facing", "north"}, {"half", "lower"}, {"hinge", "left"}, {"open", "false"}, {"powered", "false"}}; @@ -148,7 +150,11 @@ static const block_state BLOCK_STATE_TABLE[] = { [BLOCK_SMOOTH_STONE] = {"minecraft:smooth_stone", NULL, 0}, [BLOCK_STONE_BRICKS] = {"minecraft:stone_bricks", NULL, 0}, [BLOCK_BLACKSTONE] = {"minecraft:blackstone", NULL, 0}, - [BLOCK_IRON_BARS] = {"minecraft:iron_bars", NULL, 0} + [BLOCK_IRON_BARS] = {"minecraft:iron_bars", NULL, 0}, + [BLOCK_STONE_BRICK_STAIRS_E] = {"minecraft:stone_brick_stairs", PROPS_STAIRS_E, 4}, + [BLOCK_STONE_BRICK_STAIRS_W] = {"minecraft:stone_brick_stairs", PROPS_STAIRS_W, 4}, + [BLOCK_STONE_BRICK_STAIRS_N] = {"minecraft:stone_brick_stairs", PROPS_STAIRS_N, 4}, + [BLOCK_STONE_BRICK_STAIRS_S] = {"minecraft:stone_brick_stairs", PROPS_STAIRS_S, 4} }; static const block_state *get_block_state(uint16_t id) { diff --git a/worldgen-c/src/worldgen.c b/worldgen-c/src/worldgen.c index 48b9d90..de5f26f 100644 --- a/worldgen-c/src/worldgen.c +++ b/worldgen-c/src/worldgen.c @@ -3558,12 +3558,19 @@ static void generate_chunk_border_wall(worldgen_ctx *ctx, int chunk_x, int chunk if (!ctx->enable_wall) return; if (ctx->wall_min_x > ctx->wall_max_x || ctx->wall_min_z > ctx->wall_max_z) return; - const int wall_depth = 4; + const int exterior_apron = 5; + const int wall_depth = 7; + const int wall_start = exterior_apron; + const int wall_end = wall_start + wall_depth - 1; + const int wall_center = wall_start + wall_depth / 2; const int wall_height = 18; + const int tower_outer = 1; + const int tower_inner = wall_end + 5; const int tower_depth = 9; const int tower_height = 28; const int tower_spacing = 32; const int tower_half_width = 4; + const int gate_spacing = 64; for (int dx = 0; dx < CHUNK_SIZE; ++dx) { for (int dz = 0; dz < CHUNK_SIZE; ++dz) { int world_x = chunk_x * CHUNK_SIZE + dx; @@ -3577,28 +3584,40 @@ static void generate_chunk_border_wall(worldgen_ctx *ctx, int chunk_x, int chunk int dist_max_z = ctx->wall_max_z - world_z; int side_dist = dist_min_x; int along = world_z; + int side = 0; if (dist_max_x < side_dist) { side_dist = dist_max_x; along = world_z; + side = 1; } if (dist_min_z < side_dist) { side_dist = dist_min_z; along = world_x; + side = 2; } if (dist_max_z < side_dist) { side_dist = dist_max_z; along = world_x; + side = 3; } int phase = along % tower_spacing; if (phase < 0) phase += tower_spacing; int tower_offset = phase; if (tower_offset > tower_spacing / 2) tower_offset = tower_spacing - tower_offset; + int gate_phase = along % gate_spacing; + if (gate_phase < 0) gate_phase += gate_spacing; + int gate_offset = gate_phase - gate_spacing / 2; + if (gate_offset < 0) gate_offset = -gate_offset; int near_corner = (dist_min_x < tower_depth || dist_max_x < tower_depth) && (dist_min_z < tower_depth || dist_max_z < tower_depth); - int in_tower = side_dist < tower_depth && (tower_offset <= tower_half_width || near_corner); - int in_wall = side_dist < wall_depth || in_tower; - if (!in_wall) continue; + int in_tower = side_dist >= tower_outer && side_dist <= tower_inner && + (tower_offset <= tower_half_width || near_corner); + int in_wall = (side_dist >= wall_start && side_dist <= wall_end) || in_tower; + int in_gateway = !near_corner && gate_offset <= 2 && + side_dist >= tower_outer && side_dist <= tower_inner; + int in_exterior_apron = side_dist < wall_start && !in_wall; + if (!in_wall && !in_exterior_apron) continue; column_data data = get_column_data(ctx, world_x, world_z); int visible_base = data.height; @@ -3607,9 +3626,33 @@ static void generate_chunk_border_wall(worldgen_ctx *ctx, int chunk_x, int chunk } if (visible_base >= CHUNK_HEIGHT - 1) continue; + if (in_exterior_apron) { + for (int y = data.height + 1; y < CHUNK_HEIGHT; ++y) { + out->blocks[y][dx][dz] = BLOCK_AIR; + } + out->heightmap[dx][dz] = (uint16_t)data.height; + uint32_t rubble_hash = hash_coords(world_x, world_z, (uint32_t)(ctx->world_seed ^ 0x4A7C9B2Du)); + if (side_dist >= wall_start - 3 && (rubble_hash % 5) != 0) { + uint16_t rubble = (rubble_hash % 3 == 0) ? BLOCK_GRAVEL : ((rubble_hash % 3 == 1) ? BLOCK_STONE : BLOCK_STONE_BRICKS); + set_block_with_height(out, dx, dz, visible_base + 1, rubble); + if (side_dist == wall_start - 1 && rubble_hash % 7 == 0) { + set_block_with_height(out, dx, dz, visible_base + 2, BLOCK_STONE); + } + } + continue; + } + int height = in_tower ? tower_height : wall_height; int top = visible_base + height; if (top >= CHUNK_HEIGHT) top = CHUNK_HEIGHT - 1; + uint16_t stair_block = BLOCK_STONE_BRICK_STAIRS_E; + if (side == 1) stair_block = BLOCK_STONE_BRICK_STAIRS_W; + if (side == 2) stair_block = BLOCK_STONE_BRICK_STAIRS_S; + if (side == 3) stair_block = BLOCK_STONE_BRICK_STAIRS_N; + int stair_rel = -1000; + if (in_tower && tower_offset == 2 && side_dist >= tower_outer + 1 && side_dist <= tower_inner - 1) { + stair_rel = 2 + (side_dist - (tower_outer + 1)); + } for (int y = data.height + 1; y < CHUNK_HEIGHT; ++y) { out->blocks[y][dx][dz] = BLOCK_AIR; @@ -3621,20 +3664,38 @@ static void generate_chunk_border_wall(worldgen_ctx *ctx, int chunk_x, int chunk for (int y = start; y <= top; ++y) { int rel_y = y - visible_base; uint16_t block = BLOCK_SMOOTH_STONE; + int in_center_corridor = side_dist >= wall_center - 1 && side_dist <= wall_center + 1 && + rel_y >= 2 && rel_y <= 4 && !in_gateway; + if (in_gateway && rel_y >= 1 && rel_y <= 5) { + continue; + } + if (stair_rel >= 0 && rel_y == stair_rel) { + set_block_with_height(out, dx, dz, y, stair_block); + continue; + } + if (stair_rel >= 0 && rel_y > stair_rel && rel_y <= stair_rel + 3) { + continue; + } + if (in_center_corridor) { + continue; + } if (rel_y <= 2 || rel_y % 6 == 0 || rel_y == height - 1) { block = BLOCK_STONE_BRICKS; } - if (in_tower && side_dist == 0 && rel_y >= 9 && rel_y <= 17 && + if (side_dist >= wall_center - 1 && side_dist <= wall_center + 1 && rel_y == height) { + block = BLOCK_STONE_BRICKS; + } + if (in_tower && side_dist == tower_outer && rel_y >= 9 && rel_y <= 17 && (tower_offset == 0 || (rel_y == 13 && tower_offset <= 3))) { block = BLOCK_BLACKSTONE; - } else if (in_tower && side_dist == 1 && tower_offset == 0 && rel_y >= 4 && rel_y <= 7) { + } else if (in_tower && side_dist == tower_outer + 1 && tower_offset == 0 && rel_y >= 4 && rel_y <= 7) { block = BLOCK_IRON_BARS; - } else if (!in_tower && side_dist == 0 && rel_y >= 7 && rel_y <= 10 && phase % 16 == 8) { + } else if (!in_tower && side_dist == wall_start && rel_y >= 7 && rel_y <= 10 && phase % 16 == 8) { block = BLOCK_IRON_BARS; } set_block_with_height(out, dx, dz, y, block); } - if (top + 1 < CHUNK_HEIGHT && (side_dist == 0 || side_dist == wall_depth - 1 || in_tower) && + if (top + 1 < CHUNK_HEIGHT && (side_dist == wall_start || side_dist == wall_end || in_tower) && phase % 4 < 2) { set_block_with_height(out, dx, dz, top + 1, BLOCK_STONE_BRICKS); }