From ee2fbf8288b572bd11bd51887482ebf95cfd104c Mon Sep 17 00:00:00 2001 From: MewMew <=> Date: Fri, 28 Sep 2018 11:17:17 +0200 Subject: [PATCH] map_functions.lua; labyrinth ore spill reduction as difficulty increases; new ore generation for labyrinth; labyrinth has trash chests on southern islands; player_list fixes; poll fixes --- maps/labyrinth.lua | 100 +++++------- maps/labyrinth_unique_rooms.lua | 265 ++++++++++++++++---------------- maps/spaghettorio.lua | 72 +++++++-- maps/tools/map_functions.lua | 98 ++++++++++++ player_list.lua | 16 +- poll.lua | 19 +-- 6 files changed, 349 insertions(+), 221 deletions(-) create mode 100644 maps/tools/map_functions.lua diff --git a/maps/labyrinth.lua b/maps/labyrinth.lua index 54ef60bc..94f0f89c 100644 --- a/maps/labyrinth.lua +++ b/maps/labyrinth.lua @@ -1,5 +1,6 @@ --labyrinth-- mewmew made this -- require "maps.labyrinth_map_intro" +local map_functions = require "maps.tools.map_functions" local simplex_noise = require 'utils.simplex_noise' simplex_noise = simplex_noise.d2 local event = require 'utils.event' @@ -31,42 +32,6 @@ local function shuffle(tbl) return tbl end -local function create_cluster(name, pos, size, surface, spread, resource_amount) - local p = {x = pos.x, y = pos.y} - local math_random = math.random - local original_pos = {x = pos.x, y = pos.y} - local entity_has_been_placed = false - for z = 1, size, 1 do - entity_has_been_placed = false - local y = 1 - if spread then y = math_random(1, spread) end - local modifier_raffle = {{0,y*-1},{y*-1,0},{y,0},{0,y},{y*-1,y*-1},{y,y},{y,y*-1},{y*-1,y}} - modifier_raffle = shuffle(modifier_raffle) - for x = 1, 8, 1 do - local m = modifier_raffle[x] - local pos = {x = p.x + m[1], y = p.y + m[2]} - if resource_amount then - if surface.can_place_entity({name=name, position=pos, amount=resource_amount}) then - surface.create_entity {name=name, position=pos, amount=resource_amount} - p = {x = pos.x, y = pos.y} - entity_has_been_placed = true - break - end - else - if surface.can_place_entity({name=name, position=pos}) then - surface.create_entity {name=name, position=pos} - p = {x = pos.x, y = pos.y} - entity_has_been_placed = true - break - end - end - end - if entity_has_been_placed == false then - p = {x = original_pos.x, y = original_pos.y} - end - end -end - local function get_entity_chunk_position(entity_position) local chunk_position = {} entity_position.x = math.floor(entity_position.x, 0) @@ -134,7 +99,7 @@ worm_raffle[7] = {"medium-worm-turret", "medium-worm-turret", "medium-worm-turre worm_raffle[8] = {"medium-worm-turret", "medium-worm-turret", "medium-worm-turret", "medium-worm-turret", "big-worm-turret", "big-worm-turret"} worm_raffle[9] = {"medium-worm-turret", "medium-worm-turret", "medium-worm-turret", "big-worm-turret", "big-worm-turret", "big-worm-turret"} worm_raffle[10] = {"medium-worm-turret", "medium-worm-turret", "medium-worm-turret", "big-worm-turret", "big-worm-turret", "big-worm-turret"} -local rock_raffle = {"sand-rock-big","sand-rock-big","rock-big","rock-big","rock-big","rock-big","rock-big","rock-big","rock-big","rock-huge"} +local rock_raffle = {"sand-rock-big","sand-rock-big","sand-rock-big","rock-big","rock-big","rock-big","rock-big","rock-big","rock-big","rock-big","rock-big","rock-huge"} local ore_spawn_raffle = {"iron-ore","iron-ore","iron-ore","copper-ore","copper-ore","copper-ore","coal","coal","stone","stone","uranium-ore","crude-oil"} local room_layouts = {"quad_rocks", "single_center_rock", "three_horizontal_rocks", "three_vertical_rocks", "tree_and_lake", "forest", "forest_fence"} local biter_raffle = { @@ -169,7 +134,7 @@ local room_enemy_weights = { {"spawners", 7}, {"only_worms", 5}, {"worms_and_spawners", 5}, - {"gun_turrets", 4}, + {"gun_turrets", 3}, {"allied_entities", 2}, {"allied_entities_mixed", 2} } @@ -250,7 +215,7 @@ local function grow_cell(chunk_position, surface) local enemies = room_enemies[math_random(1,#room_enemies)] local unique_room = true - if global.labyrinth_size > 12 and math_random(1,40) == 1 then + if global.labyrinth_size > 12 and math_random(1,44) == 1 then layout = nil enemies = nil unique_room = unique_room_raffle[math_random(1,#unique_room_raffle)] @@ -459,8 +424,8 @@ local function grow_cell(chunk_position, surface) end for _, p in pairs(entities_to_place.worms) do - local i = math.ceil(global.labyrinth_size / 25, 0) - local raffle = worm_raffle[i] + local evolution = math.ceil(game.forces.enemy.evolution_factor * 10, 0) + local raffle = worm_raffle[evolution] local n = raffle[math.random(1,#raffle)] if surface.can_place_entity({name = n, position = p}) then surface.create_entity {name = n, position = p} end end @@ -517,7 +482,7 @@ local function treasure_chest(position, surface) {{name = "cannon-shell", count = math_random(16,32)}, weight = 5, evolution_min = 0.4, evolution_max = 0.7}, {{name = "explosive-uranium-cannon-shell", count = math_random(16,32)}, weight = 5, evolution_min = 0.6, evolution_max = 1}, {{name = "explosive-cannon-shell", count = math_random(16,32)}, weight = 5, evolution_min = 0.4, evolution_max = 0.8}, - {{name = "shotgun", count = 1}, weight = 5, evolution_min = 0.0, evolution_max = 0.2}, + {{name = "shotgun", count = 1}, weight = 2, evolution_min = 0.0, evolution_max = 0.2}, {{name = "shotgun-shell", count = math_random(16,32)}, weight = 5, evolution_min = 0.0, evolution_max = 0.2}, {{name = "combat-shotgun", count = 1}, weight = 10, evolution_min = 0.3, evolution_max = 0.8}, {{name = "piercing-shotgun-shell", count = math_random(16,32)}, weight = 10, evolution_min = 0.2, evolution_max = 1}, @@ -588,9 +553,9 @@ local function treasure_chest(position, surface) {{name = "steel-chest", count = math_random(25,50)}, weight = 3, evolution_min = 0.3, evolution_max = 1}, {{name = "small-lamp", count = math_random(8,50)}, weight = 3, evolution_min = 0.1, evolution_max = 0.3}, {{name = "rail", count = math_random(50,100)}, weight = 3, evolution_min = 0.1, evolution_max = 0.6}, - {{name = "assembling-machine-1", count = math_random(4,16)}, weight = 3, evolution_min = 0.0, evolution_max = 0.3}, - {{name = "assembling-machine-2", count = math_random(4,16)}, weight = 3, evolution_min = 0.2, evolution_max = 0.8}, - {{name = "assembling-machine-3", count = math_random(4,16)}, weight = 3, evolution_min = 0.5, evolution_max = 1}, + {{name = "assembling-machine-1", count = math_random(4,8)}, weight = 3, evolution_min = 0.0, evolution_max = 0.3}, + {{name = "assembling-machine-2", count = math_random(4,8)}, weight = 3, evolution_min = 0.2, evolution_max = 0.8}, + {{name = "assembling-machine-3", count = math_random(4,8)}, weight = 3, evolution_min = 0.5, evolution_max = 1}, {{name = "accumulator", count = math_random(8,16)}, weight = 3, evolution_min = 0.4, evolution_max = 1}, {{name = "offshore-pump", count = math_random(4,8)}, weight = 2, evolution_min = 0.0, evolution_max = 0.1}, {{name = "beacon", count = math_random(4,8)}, weight = 3, evolution_min = 0.7, evolution_max = 1}, @@ -709,13 +674,13 @@ biter_building_inhabitants[9] = {{"medium-biter",2,3},{"big-biter",7,9}} biter_building_inhabitants[10] = {{"big-biter",4,8},{"behemoth-biter",3,4}} local entity_drop_amount = { - ['small-biter'] = {low = 1, high = 20}, - ['small-spitter'] = {low = 1, high = 20}, - ['medium-spitter'] = {low = 10, high = 30}, + ['small-biter'] = {low = 10, high = 20}, + ['small-spitter'] = {low = 10, high = 20}, + ['medium-spitter'] = {low = 15, high = 30}, ['big-spitter'] = {low = 20, high = 40}, ['behemoth-spitter'] = {low = 30, high = 50}, - ['biter-spawner'] = {low = 40, high = 50}, - ['spitter-spawner'] = {low = 40, high = 50} + ['biter-spawner'] = {low = 50, high = 100}, + ['spitter-spawner'] = {low = 50, high = 100} } local ore_spill_raffle = {"iron-ore","iron-ore","iron-ore","iron-ore","iron-ore","copper-ore","copper-ore","copper-ore","coal","coal","stone","uranium-ore", "landfill", "landfill", "landfill"} local ore_spawn_raffle = {"iron-ore","iron-ore","iron-ore","copper-ore","copper-ore","coal","coal","stone","uranium-ore","crude-oil","crude-oil"} @@ -743,7 +708,10 @@ local function on_entity_died(event) end if entity_drop_amount[event.entity.name] then - event.entity.surface.spill_item_stack(event.entity.position,{name = ore_spill_raffle[math.random(1,#ore_spill_raffle)], count = math.random(entity_drop_amount[event.entity.name].low, entity_drop_amount[event.entity.name].high)},true) + if game.forces.enemy.evolution_factor < 0.5 then + local amount = math.ceil(math.random(entity_drop_amount[event.entity.name].low, entity_drop_amount[event.entity.name].high) * (0.5 - game.forces.enemy.evolution_factor) * 2, 0) + event.entity.surface.spill_item_stack(event.entity.position,{name = ore_spill_raffle[math.random(1,#ore_spill_raffle)], count = amount},true) + end return end @@ -754,11 +722,11 @@ local function on_entity_died(event) if event.entity.name == "rock-big" then treasure_chest(pos, surface) end if event.entity.name == "sand-rock-big" then local n = ore_spawn_raffle[math.random(1,#ore_spawn_raffle)] - local amount_modifier = 1 + global.labyrinth_size / 25 - if n == "crude-oil" then - create_cluster(n, pos, math.random(3,6), surface, 10, math.random(300000 * amount_modifier, 400000 * amount_modifier)) + local amount_modifier = 1 + ((global.labyrinth_size / labyrinth_difficulty_curve) * 10) + if n == "crude-oil" then + map_functions.draw_oil_circle(pos, n, surface, 10, 100000 * amount_modifier) else - create_cluster(n, pos, math.random(125,175), surface, 1, math.random(math.floor(550 * amount_modifier, 0), math.floor(650 * amount_modifier, 0))) + map_functions.draw_smoothed_out_ore_circle(pos, n, surface, 10, 750 * amount_modifier) end end event.entity.destroy() @@ -829,8 +797,22 @@ local function on_chunk_generated(event) if pos.y >= 196 + noise * 20 then local noise = get_noise("island", pos) if noise > 0.85 then tile_to_insert = "grass-1" end - if noise > 0.88 then - if math_random(1,15) == 1 then surface.create_entity {name="tree-05", position=pos} end + if noise > 0.88 then + if math_random(1,50) == 1 then + local a = { + left_top = {x = pos.x - 100, y = pos.y - 100}, + right_bottom = {x = pos.x + 100, y = pos.y + 100} + } + if surface.count_entities_filtered{area = a, name = "infinity-chest", limit = 1} == 0 then + local e = surface.create_entity {name="infinity-chest", position = pos, force = "player"} + e.minable = false + e.destructible = false + e.operable = false + e.remove_unfiltered_items = true + end + else + if math_random(1,15) == 1 then surface.create_entity {name="tree-05", position=pos} end + end end end end @@ -895,7 +877,7 @@ local function on_player_joined_game(event) --game.forces["player"].set_ammo_damage_modifier("flamethrower", -0.95) --game.forces["player"].set_turret_attack_modifier("flamethrower-turret", -0.95) - game.forces["player"].set_turret_attack_modifier("gun-turret", -0.25) + --game.forces["player"].set_turret_attack_modifier("gun-turret", -0.25) --game.forces["player"].set_turret_attack_modifier("laser-turret", -0.75) if not global.labyrinth_size then global.labyrinth_size = 1 end @@ -1061,7 +1043,7 @@ function cheat_mode() surface.freeze_daytime = 1 game.player.force.research_all_technologies() --game.forces["enemy"].evolution_factor = 0.2 - local chart = 200 + local chart = 500 local surface = game.surfaces["labyrinth"] game.forces["player"].chart(surface, {lefttop = {x = chart*-1, y = chart*-1}, rightbottom = {x = chart, y = chart}}) end diff --git a/maps/labyrinth_unique_rooms.lua b/maps/labyrinth_unique_rooms.lua index 92b0a112..a8399135 100644 --- a/maps/labyrinth_unique_rooms.lua +++ b/maps/labyrinth_unique_rooms.lua @@ -1789,10 +1789,10 @@ local unique_rooms = { {position = {x = 0, y = 9}, name = "water"}, {position = {x = 0, y = 10}, name = "water"}, {position = {x = 0, y = 11}, name = "water"}, - {position = {x = 0, y = 12}, name = "grass-3"}, + {position = {x = 0, y = 12}, name = "dirt-5"}, {position = {x = 0, y = 13}, name = "deepwater"}, {position = {x = 0, y = 14}, name = "deepwater"}, - {position = {x = 0, y = 15}, name = "grass-3"}, + {position = {x = 0, y = 15}, name = "dirt-5"}, {position = {x = 0, y = 16}, name = "water"}, {position = {x = 0, y = 17}, name = "deepwater"}, {position = {x = 0, y = 18}, name = "water"}, @@ -1821,10 +1821,10 @@ local unique_rooms = { {position = {x = 1, y = 9}, name = "water"}, {position = {x = 1, y = 10}, name = "water"}, {position = {x = 1, y = 11}, name = "water"}, - {position = {x = 1, y = 12}, name = "grass-3"}, + {position = {x = 1, y = 12}, name = "dirt-5"}, {position = {x = 1, y = 13}, name = "grass-2"}, {position = {x = 1, y = 14}, name = "grass-2"}, - {position = {x = 1, y = 15}, name = "grass-3"}, + {position = {x = 1, y = 15}, name = "dirt-5"}, {position = {x = 1, y = 16}, name = "water"}, {position = {x = 1, y = 17}, name = "deepwater"}, {position = {x = 1, y = 18}, name = "water"}, @@ -1853,10 +1853,10 @@ local unique_rooms = { {position = {x = 2, y = 9}, name = "water"}, {position = {x = 2, y = 10}, name = "water"}, {position = {x = 2, y = 11}, name = "water"}, - {position = {x = 2, y = 12}, name = "grass-3"}, + {position = {x = 2, y = 12}, name = "dirt-5"}, {position = {x = 2, y = 13}, name = "grass-2"}, {position = {x = 2, y = 14}, name = "grass-2"}, - {position = {x = 2, y = 15}, name = "grass-3"}, + {position = {x = 2, y = 15}, name = "dirt-5"}, {position = {x = 2, y = 16}, name = "water"}, {position = {x = 2, y = 17}, name = "deepwater"}, {position = {x = 2, y = 18}, name = "water"}, @@ -1885,10 +1885,10 @@ local unique_rooms = { {position = {x = 3, y = 9}, name = "water"}, {position = {x = 3, y = 10}, name = "water"}, {position = {x = 3, y = 11}, name = "water"}, - {position = {x = 3, y = 12}, name = "grass-3"}, - {position = {x = 3, y = 13}, name = "grass-3"}, - {position = {x = 3, y = 14}, name = "grass-3"}, - {position = {x = 3, y = 15}, name = "grass-3"}, + {position = {x = 3, y = 12}, name = "dirt-5"}, + {position = {x = 3, y = 13}, name = "dirt-5"}, + {position = {x = 3, y = 14}, name = "dirt-5"}, + {position = {x = 3, y = 15}, name = "dirt-5"}, {position = {x = 3, y = 16}, name = "water"}, {position = {x = 3, y = 17}, name = "deepwater"}, {position = {x = 3, y = 18}, name = "water"}, @@ -1916,11 +1916,11 @@ local unique_rooms = { {position = {x = 4, y = 8}, name = "water"}, {position = {x = 4, y = 9}, name = "water"}, {position = {x = 4, y = 10}, name = "water"}, - {position = {x = 4, y = 11}, name = "grass-3"}, + {position = {x = 4, y = 11}, name = "dirt-5"}, {position = {x = 4, y = 12}, name = "water"}, {position = {x = 4, y = 13}, name = "water"}, {position = {x = 4, y = 14}, name = "water"}, - {position = {x = 4, y = 15}, name = "grass-3"}, + {position = {x = 4, y = 15}, name = "dirt-5"}, {position = {x = 4, y = 16}, name = "water"}, {position = {x = 4, y = 17}, name = "deepwater"}, {position = {x = 4, y = 18}, name = "water"}, @@ -1947,13 +1947,13 @@ local unique_rooms = { {position = {x = 5, y = 7}, name = "water"}, {position = {x = 5, y = 8}, name = "water"}, {position = {x = 5, y = 9}, name = "water"}, - {position = {x = 5, y = 10}, name = "grass-3"}, - {position = {x = 5, y = 11}, name = "grass-3"}, + {position = {x = 5, y = 10}, name = "dirt-5"}, + {position = {x = 5, y = 11}, name = "dirt-5"}, {position = {x = 5, y = 12}, name = "water"}, {position = {x = 5, y = 13}, name = "water"}, {position = {x = 5, y = 14}, name = "water"}, - {position = {x = 5, y = 15}, name = "grass-3"}, - {position = {x = 5, y = 16}, name = "grass-3"}, + {position = {x = 5, y = 15}, name = "dirt-5"}, + {position = {x = 5, y = 16}, name = "dirt-5"}, {position = {x = 5, y = 17}, name = "water"}, {position = {x = 5, y = 18}, name = "deepwater"}, {position = {x = 5, y = 19}, name = "water"}, @@ -1979,13 +1979,13 @@ local unique_rooms = { {position = {x = 6, y = 7}, name = "water"}, {position = {x = 6, y = 8}, name = "water"}, {position = {x = 6, y = 9}, name = "water"}, - {position = {x = 6, y = 10}, name = "grass-3"}, + {position = {x = 6, y = 10}, name = "dirt-5"}, {position = {x = 6, y = 11}, name = "water"}, {position = {x = 6, y = 12}, name = "water"}, {position = {x = 6, y = 13}, name = "water"}, {position = {x = 6, y = 14}, name = "water"}, {position = {x = 6, y = 15}, name = "water"}, - {position = {x = 6, y = 16}, name = "grass-3"}, + {position = {x = 6, y = 16}, name = "dirt-5"}, {position = {x = 6, y = 17}, name = "water"}, {position = {x = 6, y = 18}, name = "deepwater"}, {position = {x = 6, y = 19}, name = "deepwater"}, @@ -2010,7 +2010,7 @@ local unique_rooms = { {position = {x = 7, y = 6}, name = "water"}, {position = {x = 7, y = 7}, name = "water"}, {position = {x = 7, y = 8}, name = "water"}, - {position = {x = 7, y = 9}, name = "grass-3"}, + {position = {x = 7, y = 9}, name = "dirt-5"}, {position = {x = 7, y = 10}, name = "water"}, {position = {x = 7, y = 11}, name = "water"}, {position = {x = 7, y = 12}, name = "water"}, @@ -2018,7 +2018,7 @@ local unique_rooms = { {position = {x = 7, y = 14}, name = "water"}, {position = {x = 7, y = 15}, name = "water"}, {position = {x = 7, y = 16}, name = "water"}, - {position = {x = 7, y = 17}, name = "grass-3"}, + {position = {x = 7, y = 17}, name = "dirt-5"}, {position = {x = 7, y = 18}, name = "water"}, {position = {x = 7, y = 19}, name = "water"}, {position = {x = 7, y = 20}, name = "deepwater"}, @@ -2041,8 +2041,8 @@ local unique_rooms = { {position = {x = 8, y = 5}, name = "water"}, {position = {x = 8, y = 6}, name = "water"}, {position = {x = 8, y = 7}, name = "water"}, - {position = {x = 8, y = 8}, name = "grass-3"}, - {position = {x = 8, y = 9}, name = "grass-3"}, + {position = {x = 8, y = 8}, name = "dirt-5"}, + {position = {x = 8, y = 9}, name = "dirt-5"}, {position = {x = 8, y = 10}, name = "deepwater"}, {position = {x = 8, y = 11}, name = "water"}, {position = {x = 8, y = 12}, name = "water"}, @@ -2050,8 +2050,8 @@ local unique_rooms = { {position = {x = 8, y = 14}, name = "water"}, {position = {x = 8, y = 15}, name = "water"}, {position = {x = 8, y = 16}, name = "water"}, - {position = {x = 8, y = 17}, name = "grass-3"}, - {position = {x = 8, y = 18}, name = "grass-3"}, + {position = {x = 8, y = 17}, name = "dirt-5"}, + {position = {x = 8, y = 18}, name = "dirt-5"}, {position = {x = 8, y = 19}, name = "water"}, {position = {x = 8, y = 20}, name = "water"}, {position = {x = 8, y = 21}, name = "deepwater"}, @@ -2072,9 +2072,9 @@ local unique_rooms = { {position = {x = 9, y = 4}, name = "water"}, {position = {x = 9, y = 5}, name = "water"}, {position = {x = 9, y = 6}, name = "water"}, - {position = {x = 9, y = 7}, name = "grass-3"}, - {position = {x = 9, y = 8}, name = "grass-3"}, - {position = {x = 9, y = 9}, name = "grass-3"}, + {position = {x = 9, y = 7}, name = "dirt-5"}, + {position = {x = 9, y = 8}, name = "dirt-5"}, + {position = {x = 9, y = 9}, name = "dirt-5"}, {position = {x = 9, y = 10}, name = "deepwater"}, {position = {x = 9, y = 11}, name = "water"}, {position = {x = 9, y = 12}, name = "water"}, @@ -2084,8 +2084,8 @@ local unique_rooms = { {position = {x = 9, y = 16}, name = "water"}, {position = {x = 9, y = 17}, name = "water"}, {position = {x = 9, y = 18}, name = "water"}, - {position = {x = 9, y = 19}, name = "grass-3"}, - {position = {x = 9, y = 20}, name = "grass-3"}, + {position = {x = 9, y = 19}, name = "dirt-5"}, + {position = {x = 9, y = 20}, name = "dirt-5"}, {position = {x = 9, y = 21}, name = "water"}, {position = {x = 9, y = 22}, name = "water"}, {position = {x = 9, y = 23}, name = "deepwater"}, @@ -2103,10 +2103,10 @@ local unique_rooms = { {position = {x = 10, y = 3}, name = "water"}, {position = {x = 10, y = 4}, name = "water"}, {position = {x = 10, y = 5}, name = "water"}, - {position = {x = 10, y = 6}, name = "grass-3"}, + {position = {x = 10, y = 6}, name = "dirt-5"}, {position = {x = 10, y = 7}, name = "water"}, {position = {x = 10, y = 8}, name = "water"}, - {position = {x = 10, y = 9}, name = "grass-3"}, + {position = {x = 10, y = 9}, name = "dirt-5"}, {position = {x = 10, y = 10}, name = "water"}, {position = {x = 10, y = 11}, name = "deepwater"}, {position = {x = 10, y = 12}, name = "water"}, @@ -2116,10 +2116,10 @@ local unique_rooms = { {position = {x = 10, y = 16}, name = "water"}, {position = {x = 10, y = 17}, name = "water"}, {position = {x = 10, y = 18}, name = "water"}, - {position = {x = 10, y = 19}, name = "grass-3"}, + {position = {x = 10, y = 19}, name = "dirt-5"}, {position = {x = 10, y = 20}, name = "water"}, - {position = {x = 10, y = 21}, name = "grass-3"}, - {position = {x = 10, y = 22}, name = "grass-3"}, + {position = {x = 10, y = 21}, name = "dirt-5"}, + {position = {x = 10, y = 22}, name = "dirt-5"}, {position = {x = 10, y = 23}, name = "water"}, {position = {x = 10, y = 24}, name = "deepwater"}, {position = {x = 10, y = 25}, name = "deepwater"}, @@ -2135,11 +2135,11 @@ local unique_rooms = { {position = {x = 11, y = 3}, name = "water"}, {position = {x = 11, y = 4}, name = "water"}, {position = {x = 11, y = 5}, name = "water"}, - {position = {x = 11, y = 6}, name = "grass-3"}, + {position = {x = 11, y = 6}, name = "dirt-5"}, {position = {x = 11, y = 7}, name = "water"}, {position = {x = 11, y = 8}, name = "water"}, {position = {x = 11, y = 9}, name = "water"}, - {position = {x = 11, y = 10}, name = "grass-3"}, + {position = {x = 11, y = 10}, name = "dirt-5"}, {position = {x = 11, y = 11}, name = "water"}, {position = {x = 11, y = 12}, name = "deepwater"}, {position = {x = 11, y = 13}, name = "deepwater"}, @@ -2147,12 +2147,12 @@ local unique_rooms = { {position = {x = 11, y = 15}, name = "water"}, {position = {x = 11, y = 16}, name = "water"}, {position = {x = 11, y = 17}, name = "water"}, - {position = {x = 11, y = 18}, name = "grass-3"}, + {position = {x = 11, y = 18}, name = "dirt-5"}, {position = {x = 11, y = 19}, name = "water"}, {position = {x = 11, y = 20}, name = "water"}, {position = {x = 11, y = 21}, name = "water"}, - {position = {x = 11, y = 22}, name = "grass-3"}, - {position = {x = 11, y = 23}, name = "grass-3"}, + {position = {x = 11, y = 22}, name = "dirt-5"}, + {position = {x = 11, y = 23}, name = "dirt-5"}, {position = {x = 11, y = 24}, name = "water"}, {position = {x = 11, y = 25}, name = "water"}, {position = {x = 11, y = 26}, name = "deepwater"}, @@ -2166,26 +2166,26 @@ local unique_rooms = { {position = {x = 12, y = 2}, name = "water"}, {position = {x = 12, y = 3}, name = "water"}, {position = {x = 12, y = 4}, name = "water"}, - {position = {x = 12, y = 5}, name = "grass-3"}, + {position = {x = 12, y = 5}, name = "dirt-5"}, {position = {x = 12, y = 6}, name = "water"}, {position = {x = 12, y = 7}, name = "water"}, {position = {x = 12, y = 8}, name = "water"}, {position = {x = 12, y = 9}, name = "water"}, {position = {x = 12, y = 10}, name = "water"}, - {position = {x = 12, y = 11}, name = "grass-3"}, + {position = {x = 12, y = 11}, name = "dirt-5"}, {position = {x = 12, y = 12}, name = "water"}, {position = {x = 12, y = 13}, name = "water"}, {position = {x = 12, y = 14}, name = "deepwater"}, {position = {x = 12, y = 15}, name = "water"}, {position = {x = 12, y = 16}, name = "water"}, {position = {x = 12, y = 17}, name = "water"}, - {position = {x = 12, y = 18}, name = "grass-3"}, + {position = {x = 12, y = 18}, name = "dirt-5"}, {position = {x = 12, y = 19}, name = "water"}, {position = {x = 12, y = 20}, name = "water"}, {position = {x = 12, y = 21}, name = "water"}, {position = {x = 12, y = 22}, name = "water"}, {position = {x = 12, y = 23}, name = "water"}, - {position = {x = 12, y = 24}, name = "grass-3"}, + {position = {x = 12, y = 24}, name = "dirt-5"}, {position = {x = 12, y = 25}, name = "water"}, {position = {x = 12, y = 26}, name = "deepwater"}, {position = {x = 12, y = 27}, name = "deepwater"}, @@ -2197,7 +2197,7 @@ local unique_rooms = { {position = {x = 13, y = 1}, name = "deepwater"}, {position = {x = 13, y = 2}, name = "deepwater"}, {position = {x = 13, y = 3}, name = "water"}, - {position = {x = 13, y = 4}, name = "grass-3"}, + {position = {x = 13, y = 4}, name = "dirt-5"}, {position = {x = 13, y = 5}, name = "water"}, {position = {x = 13, y = 6}, name = "water"}, {position = {x = 13, y = 7}, name = "water"}, @@ -2205,12 +2205,12 @@ local unique_rooms = { {position = {x = 13, y = 9}, name = "water"}, {position = {x = 13, y = 10}, name = "water"}, {position = {x = 13, y = 11}, name = "water"}, - {position = {x = 13, y = 12}, name = "grass-3"}, + {position = {x = 13, y = 12}, name = "dirt-5"}, {position = {x = 13, y = 13}, name = "water"}, {position = {x = 13, y = 14}, name = "water"}, {position = {x = 13, y = 15}, name = "deepwater"}, - {position = {x = 13, y = 16}, name = "grass-3"}, - {position = {x = 13, y = 17}, name = "grass-3"}, + {position = {x = 13, y = 16}, name = "dirt-5"}, + {position = {x = 13, y = 17}, name = "dirt-5"}, {position = {x = 13, y = 18}, name = "water"}, {position = {x = 13, y = 19}, name = "water"}, {position = {x = 13, y = 20}, name = "water"}, @@ -2218,17 +2218,17 @@ local unique_rooms = { {position = {x = 13, y = 22}, name = "water"}, {position = {x = 13, y = 23}, name = "water"}, {position = {x = 13, y = 24}, name = "water"}, - {position = {x = 13, y = 25}, name = "grass-3"}, - {position = {x = 13, y = 26}, name = "grass-3"}, - {position = {x = 13, y = 27}, name = "grass-3"}, + {position = {x = 13, y = 25}, name = "dirt-5"}, + {position = {x = 13, y = 26}, name = "dirt-5"}, + {position = {x = 13, y = 27}, name = "dirt-5"}, {position = {x = 13, y = 28}, name = "water"}, {position = {x = 13, y = 29}, name = "deepwater"}, {position = {x = 13, y = 30}, name = "deepwater"}, {position = {x = 13, y = 31}, name = "deepwater"}, - {position = {x = 14, y = 0}, name = "grass-3"}, - {position = {x = 14, y = 1}, name = "grass-3"}, - {position = {x = 14, y = 2}, name = "grass-3"}, - {position = {x = 14, y = 3}, name = "grass-3"}, + {position = {x = 14, y = 0}, name = "dirt-5"}, + {position = {x = 14, y = 1}, name = "dirt-5"}, + {position = {x = 14, y = 2}, name = "dirt-5"}, + {position = {x = 14, y = 3}, name = "dirt-5"}, {position = {x = 14, y = 4}, name = "water"}, {position = {x = 14, y = 5}, name = "deepwater"}, {position = {x = 14, y = 6}, name = "water"}, @@ -2239,9 +2239,9 @@ local unique_rooms = { {position = {x = 14, y = 11}, name = "water"}, {position = {x = 14, y = 12}, name = "water"}, {position = {x = 14, y = 13}, name = "dirt-4"}, - {position = {x = 14, y = 14}, name = "grass-3"}, + {position = {x = 14, y = 14}, name = "dirt-5"}, {position = {x = 14, y = 15}, name = "grass-2"}, - {position = {x = 14, y = 16}, name = "grass-3"}, + {position = {x = 14, y = 16}, name = "dirt-5"}, {position = {x = 14, y = 17}, name = "water"}, {position = {x = 14, y = 18}, name = "water"}, {position = {x = 14, y = 19}, name = "water"}, @@ -2252,15 +2252,15 @@ local unique_rooms = { {position = {x = 14, y = 24}, name = "water"}, {position = {x = 14, y = 25}, name = "water"}, {position = {x = 14, y = 26}, name = "water"}, - {position = {x = 14, y = 27}, name = "grass-3"}, - {position = {x = 14, y = 28}, name = "grass-3"}, - {position = {x = 14, y = 29}, name = "grass-3"}, - {position = {x = 14, y = 30}, name = "grass-3"}, - {position = {x = 14, y = 31}, name = "grass-3"}, + {position = {x = 14, y = 27}, name = "dirt-5"}, + {position = {x = 14, y = 28}, name = "dirt-5"}, + {position = {x = 14, y = 29}, name = "dirt-5"}, + {position = {x = 14, y = 30}, name = "dirt-5"}, + {position = {x = 14, y = 31}, name = "dirt-5"}, {position = {x = 15, y = 0}, name = "deepwater"}, {position = {x = 15, y = 1}, name = "grass-2"}, - {position = {x = 15, y = 2}, name = "grass-3"}, - {position = {x = 15, y = 3}, name = "grass-3"}, + {position = {x = 15, y = 2}, name = "dirt-5"}, + {position = {x = 15, y = 3}, name = "dirt-5"}, {position = {x = 15, y = 4}, name = "water"}, {position = {x = 15, y = 5}, name = "deepwater"}, {position = {x = 15, y = 6}, name = "water"}, @@ -2271,8 +2271,8 @@ local unique_rooms = { {position = {x = 15, y = 11}, name = "water"}, {position = {x = 15, y = 12}, name = "water"}, {position = {x = 15, y = 13}, name = "water"}, - {position = {x = 15, y = 14}, name = "grass-3"}, - {position = {x = 15, y = 15}, name = "grass-3"}, + {position = {x = 15, y = 14}, name = "dirt-5"}, + {position = {x = 15, y = 15}, name = "dirt-5"}, {position = {x = 15, y = 16}, name = "grass-2"}, {position = {x = 15, y = 17}, name = "water"}, {position = {x = 15, y = 18}, name = "deepwater"}, @@ -2285,14 +2285,14 @@ local unique_rooms = { {position = {x = 15, y = 25}, name = "water"}, {position = {x = 15, y = 26}, name = "water"}, {position = {x = 15, y = 27}, name = "water"}, - {position = {x = 15, y = 28}, name = "grass-3"}, - {position = {x = 15, y = 29}, name = "grass-3"}, + {position = {x = 15, y = 28}, name = "dirt-5"}, + {position = {x = 15, y = 29}, name = "dirt-5"}, {position = {x = 15, y = 30}, name = "grass-2"}, {position = {x = 15, y = 31}, name = "deepwater"}, {position = {x = 16, y = 0}, name = "deepwater"}, {position = {x = 16, y = 1}, name = "grass-2"}, - {position = {x = 16, y = 2}, name = "grass-3"}, - {position = {x = 16, y = 3}, name = "grass-3"}, + {position = {x = 16, y = 2}, name = "dirt-5"}, + {position = {x = 16, y = 3}, name = "dirt-5"}, {position = {x = 16, y = 4}, name = "water"}, {position = {x = 16, y = 5}, name = "deepwater"}, {position = {x = 16, y = 6}, name = "deepwater"}, @@ -2305,7 +2305,7 @@ local unique_rooms = { {position = {x = 16, y = 13}, name = "water"}, {position = {x = 16, y = 14}, name = "dirt-4"}, {position = {x = 16, y = 15}, name = "dirt-4"}, - {position = {x = 16, y = 16}, name = "grass-3"}, + {position = {x = 16, y = 16}, name = "dirt-5"}, {position = {x = 16, y = 17}, name = "water"}, {position = {x = 16, y = 18}, name = "deepwater"}, {position = {x = 16, y = 19}, name = "deepwater"}, @@ -2317,15 +2317,15 @@ local unique_rooms = { {position = {x = 16, y = 25}, name = "water"}, {position = {x = 16, y = 26}, name = "water"}, {position = {x = 16, y = 27}, name = "water"}, - {position = {x = 16, y = 28}, name = "grass-3"}, - {position = {x = 16, y = 29}, name = "grass-3"}, + {position = {x = 16, y = 28}, name = "dirt-5"}, + {position = {x = 16, y = 29}, name = "dirt-5"}, {position = {x = 16, y = 30}, name = "grass-2"}, {position = {x = 16, y = 31}, name = "deepwater"}, - {position = {x = 17, y = 0}, name = "grass-3"}, - {position = {x = 17, y = 1}, name = "grass-3"}, - {position = {x = 17, y = 2}, name = "grass-3"}, - {position = {x = 17, y = 3}, name = "grass-3"}, - {position = {x = 17, y = 4}, name = "grass-3"}, + {position = {x = 17, y = 0}, name = "dirt-5"}, + {position = {x = 17, y = 1}, name = "dirt-5"}, + {position = {x = 17, y = 2}, name = "dirt-5"}, + {position = {x = 17, y = 3}, name = "dirt-5"}, + {position = {x = 17, y = 4}, name = "dirt-5"}, {position = {x = 17, y = 5}, name = "water"}, {position = {x = 17, y = 6}, name = "deepwater"}, {position = {x = 17, y = 7}, name = "deepwater"}, @@ -2335,10 +2335,10 @@ local unique_rooms = { {position = {x = 17, y = 11}, name = "water"}, {position = {x = 17, y = 12}, name = "water"}, {position = {x = 17, y = 13}, name = "water"}, - {position = {x = 17, y = 14}, name = "grass-3"}, + {position = {x = 17, y = 14}, name = "dirt-5"}, {position = {x = 17, y = 15}, name = "water"}, {position = {x = 17, y = 16}, name = "water"}, - {position = {x = 17, y = 17}, name = "grass-3"}, + {position = {x = 17, y = 17}, name = "dirt-5"}, {position = {x = 17, y = 18}, name = "water"}, {position = {x = 17, y = 19}, name = "water"}, {position = {x = 17, y = 20}, name = "deepwater"}, @@ -2349,30 +2349,30 @@ local unique_rooms = { {position = {x = 17, y = 25}, name = "water"}, {position = {x = 17, y = 26}, name = "water"}, {position = {x = 17, y = 27}, name = "water"}, - {position = {x = 17, y = 28}, name = "grass-3"}, - {position = {x = 17, y = 29}, name = "grass-3"}, - {position = {x = 17, y = 30}, name = "grass-3"}, - {position = {x = 17, y = 31}, name = "grass-3"}, + {position = {x = 17, y = 28}, name = "dirt-5"}, + {position = {x = 17, y = 29}, name = "dirt-5"}, + {position = {x = 17, y = 30}, name = "dirt-5"}, + {position = {x = 17, y = 31}, name = "dirt-5"}, {position = {x = 18, y = 0}, name = "water"}, {position = {x = 18, y = 1}, name = "water"}, {position = {x = 18, y = 2}, name = "water"}, {position = {x = 18, y = 3}, name = "water"}, {position = {x = 18, y = 4}, name = "water"}, - {position = {x = 18, y = 5}, name = "grass-3"}, + {position = {x = 18, y = 5}, name = "dirt-5"}, {position = {x = 18, y = 6}, name = "water"}, {position = {x = 18, y = 7}, name = "deepwater"}, {position = {x = 18, y = 8}, name = "deepwater"}, {position = {x = 18, y = 9}, name = "water"}, {position = {x = 18, y = 10}, name = "water"}, {position = {x = 18, y = 11}, name = "water"}, - {position = {x = 18, y = 12}, name = "grass-3"}, - {position = {x = 18, y = 13}, name = "grass-3"}, + {position = {x = 18, y = 12}, name = "dirt-5"}, + {position = {x = 18, y = 13}, name = "dirt-5"}, {position = {x = 18, y = 14}, name = "water"}, {position = {x = 18, y = 15}, name = "water"}, {position = {x = 18, y = 16}, name = "water"}, {position = {x = 18, y = 17}, name = "water"}, - {position = {x = 18, y = 18}, name = "grass-3"}, - {position = {x = 18, y = 19}, name = "grass-3"}, + {position = {x = 18, y = 18}, name = "dirt-5"}, + {position = {x = 18, y = 19}, name = "dirt-5"}, {position = {x = 18, y = 20}, name = "water"}, {position = {x = 18, y = 21}, name = "deepwater"}, {position = {x = 18, y = 22}, name = "deepwater"}, @@ -2380,7 +2380,7 @@ local unique_rooms = { {position = {x = 18, y = 24}, name = "water"}, {position = {x = 18, y = 25}, name = "water"}, {position = {x = 18, y = 26}, name = "water"}, - {position = {x = 18, y = 27}, name = "grass-3"}, + {position = {x = 18, y = 27}, name = "dirt-5"}, {position = {x = 18, y = 28}, name = "water"}, {position = {x = 18, y = 29}, name = "water"}, {position = {x = 18, y = 30}, name = "water"}, @@ -2391,12 +2391,12 @@ local unique_rooms = { {position = {x = 19, y = 3}, name = "water"}, {position = {x = 19, y = 4}, name = "water"}, {position = {x = 19, y = 5}, name = "water"}, - {position = {x = 19, y = 6}, name = "grass-3"}, + {position = {x = 19, y = 6}, name = "dirt-5"}, {position = {x = 19, y = 7}, name = "water"}, {position = {x = 19, y = 8}, name = "deepwater"}, {position = {x = 19, y = 9}, name = "deepwater"}, {position = {x = 19, y = 10}, name = "water"}, - {position = {x = 19, y = 11}, name = "grass-3"}, + {position = {x = 19, y = 11}, name = "dirt-5"}, {position = {x = 19, y = 12}, name = "water"}, {position = {x = 19, y = 13}, name = "water"}, {position = {x = 19, y = 14}, name = "water"}, @@ -2405,13 +2405,13 @@ local unique_rooms = { {position = {x = 19, y = 17}, name = "water"}, {position = {x = 19, y = 18}, name = "water"}, {position = {x = 19, y = 19}, name = "water"}, - {position = {x = 19, y = 20}, name = "grass-3"}, - {position = {x = 19, y = 21}, name = "grass-3"}, + {position = {x = 19, y = 20}, name = "dirt-5"}, + {position = {x = 19, y = 21}, name = "dirt-5"}, {position = {x = 19, y = 22}, name = "water"}, {position = {x = 19, y = 23}, name = "deepwater"}, {position = {x = 19, y = 24}, name = "deepwater"}, - {position = {x = 19, y = 25}, name = "grass-3"}, - {position = {x = 19, y = 26}, name = "grass-3"}, + {position = {x = 19, y = 25}, name = "dirt-5"}, + {position = {x = 19, y = 26}, name = "dirt-5"}, {position = {x = 19, y = 27}, name = "water"}, {position = {x = 19, y = 28}, name = "water"}, {position = {x = 19, y = 29}, name = "water"}, @@ -2423,11 +2423,11 @@ local unique_rooms = { {position = {x = 20, y = 3}, name = "water"}, {position = {x = 20, y = 4}, name = "water"}, {position = {x = 20, y = 5}, name = "water"}, - {position = {x = 20, y = 6}, name = "grass-3"}, - {position = {x = 20, y = 7}, name = "grass-3"}, + {position = {x = 20, y = 6}, name = "dirt-5"}, + {position = {x = 20, y = 7}, name = "dirt-5"}, {position = {x = 20, y = 8}, name = "water"}, {position = {x = 20, y = 9}, name = "water"}, - {position = {x = 20, y = 10}, name = "grass-3"}, + {position = {x = 20, y = 10}, name = "dirt-5"}, {position = {x = 20, y = 11}, name = "water"}, {position = {x = 20, y = 12}, name = "water"}, {position = {x = 20, y = 13}, name = "water"}, @@ -2439,9 +2439,9 @@ local unique_rooms = { {position = {x = 20, y = 19}, name = "water"}, {position = {x = 20, y = 20}, name = "water"}, {position = {x = 20, y = 21}, name = "water"}, - {position = {x = 20, y = 22}, name = "grass-3"}, + {position = {x = 20, y = 22}, name = "dirt-5"}, {position = {x = 20, y = 23}, name = "water"}, - {position = {x = 20, y = 24}, name = "grass-3"}, + {position = {x = 20, y = 24}, name = "dirt-5"}, {position = {x = 20, y = 25}, name = "water"}, {position = {x = 20, y = 26}, name = "water"}, {position = {x = 20, y = 27}, name = "water"}, @@ -2457,9 +2457,9 @@ local unique_rooms = { {position = {x = 21, y = 5}, name = "water"}, {position = {x = 21, y = 6}, name = "water"}, {position = {x = 21, y = 7}, name = "water"}, - {position = {x = 21, y = 8}, name = "grass-3"}, - {position = {x = 21, y = 9}, name = "grass-3"}, - {position = {x = 21, y = 10}, name = "grass-3"}, + {position = {x = 21, y = 8}, name = "dirt-5"}, + {position = {x = 21, y = 9}, name = "dirt-5"}, + {position = {x = 21, y = 10}, name = "dirt-5"}, {position = {x = 21, y = 11}, name = "deepwater"}, {position = {x = 21, y = 12}, name = "water"}, {position = {x = 21, y = 13}, name = "water"}, @@ -2471,8 +2471,8 @@ local unique_rooms = { {position = {x = 21, y = 19}, name = "water"}, {position = {x = 21, y = 20}, name = "water"}, {position = {x = 21, y = 21}, name = "water"}, - {position = {x = 21, y = 22}, name = "grass-3"}, - {position = {x = 21, y = 23}, name = "grass-3"}, + {position = {x = 21, y = 22}, name = "dirt-5"}, + {position = {x = 21, y = 23}, name = "dirt-5"}, {position = {x = 21, y = 24}, name = "water"}, {position = {x = 21, y = 25}, name = "water"}, {position = {x = 21, y = 26}, name = "water"}, @@ -2490,7 +2490,7 @@ local unique_rooms = { {position = {x = 22, y = 6}, name = "water"}, {position = {x = 22, y = 7}, name = "water"}, {position = {x = 22, y = 8}, name = "water"}, - {position = {x = 22, y = 9}, name = "grass-3"}, + {position = {x = 22, y = 9}, name = "dirt-5"}, {position = {x = 22, y = 10}, name = "water"}, {position = {x = 22, y = 11}, name = "deepwater"}, {position = {x = 22, y = 12}, name = "water"}, @@ -2502,7 +2502,7 @@ local unique_rooms = { {position = {x = 22, y = 18}, name = "water"}, {position = {x = 22, y = 19}, name = "water"}, {position = {x = 22, y = 20}, name = "water"}, - {position = {x = 22, y = 21}, name = "grass-3"}, + {position = {x = 22, y = 21}, name = "dirt-5"}, {position = {x = 22, y = 22}, name = "water"}, {position = {x = 22, y = 23}, name = "water"}, {position = {x = 22, y = 24}, name = "water"}, @@ -2522,7 +2522,7 @@ local unique_rooms = { {position = {x = 23, y = 6}, name = "water"}, {position = {x = 23, y = 7}, name = "water"}, {position = {x = 23, y = 8}, name = "water"}, - {position = {x = 23, y = 9}, name = "grass-3"}, + {position = {x = 23, y = 9}, name = "dirt-5"}, {position = {x = 23, y = 10}, name = "water"}, {position = {x = 23, y = 11}, name = "deepwater"}, {position = {x = 23, y = 12}, name = "deepwater"}, @@ -2533,8 +2533,8 @@ local unique_rooms = { {position = {x = 23, y = 17}, name = "water"}, {position = {x = 23, y = 18}, name = "water"}, {position = {x = 23, y = 19}, name = "water"}, - {position = {x = 23, y = 20}, name = "grass-3"}, - {position = {x = 23, y = 21}, name = "grass-3"}, + {position = {x = 23, y = 20}, name = "dirt-5"}, + {position = {x = 23, y = 21}, name = "dirt-5"}, {position = {x = 23, y = 22}, name = "water"}, {position = {x = 23, y = 23}, name = "water"}, {position = {x = 23, y = 24}, name = "water"}, @@ -2555,7 +2555,7 @@ local unique_rooms = { {position = {x = 24, y = 7}, name = "water"}, {position = {x = 24, y = 8}, name = "water"}, {position = {x = 24, y = 9}, name = "water"}, - {position = {x = 24, y = 10}, name = "grass-3"}, + {position = {x = 24, y = 10}, name = "dirt-5"}, {position = {x = 24, y = 11}, name = "water"}, {position = {x = 24, y = 12}, name = "deepwater"}, {position = {x = 24, y = 13}, name = "water"}, @@ -2564,8 +2564,8 @@ local unique_rooms = { {position = {x = 24, y = 16}, name = "water"}, {position = {x = 24, y = 17}, name = "water"}, {position = {x = 24, y = 18}, name = "water"}, - {position = {x = 24, y = 19}, name = "grass-3"}, - {position = {x = 24, y = 20}, name = "grass-3"}, + {position = {x = 24, y = 19}, name = "dirt-5"}, + {position = {x = 24, y = 20}, name = "dirt-5"}, {position = {x = 24, y = 21}, name = "water"}, {position = {x = 24, y = 22}, name = "water"}, {position = {x = 24, y = 23}, name = "water"}, @@ -2588,14 +2588,14 @@ local unique_rooms = { {position = {x = 25, y = 8}, name = "water"}, {position = {x = 25, y = 9}, name = "water"}, {position = {x = 25, y = 10}, name = "water"}, - {position = {x = 25, y = 11}, name = "grass-3"}, + {position = {x = 25, y = 11}, name = "dirt-5"}, {position = {x = 25, y = 12}, name = "water"}, {position = {x = 25, y = 13}, name = "deepwater"}, {position = {x = 25, y = 14}, name = "water"}, {position = {x = 25, y = 15}, name = "water"}, {position = {x = 25, y = 16}, name = "water"}, {position = {x = 25, y = 17}, name = "water"}, - {position = {x = 25, y = 18}, name = "grass-3"}, + {position = {x = 25, y = 18}, name = "dirt-5"}, {position = {x = 25, y = 19}, name = "water"}, {position = {x = 25, y = 20}, name = "water"}, {position = {x = 25, y = 21}, name = "water"}, @@ -2620,13 +2620,13 @@ local unique_rooms = { {position = {x = 26, y = 8}, name = "water"}, {position = {x = 26, y = 9}, name = "water"}, {position = {x = 26, y = 10}, name = "water"}, - {position = {x = 26, y = 11}, name = "grass-3"}, + {position = {x = 26, y = 11}, name = "dirt-5"}, {position = {x = 26, y = 12}, name = "water"}, {position = {x = 26, y = 13}, name = "deepwater"}, {position = {x = 26, y = 14}, name = "deepwater"}, {position = {x = 26, y = 15}, name = "water"}, {position = {x = 26, y = 16}, name = "water"}, - {position = {x = 26, y = 17}, name = "grass-3"}, + {position = {x = 26, y = 17}, name = "dirt-5"}, {position = {x = 26, y = 18}, name = "deepwater"}, {position = {x = 26, y = 19}, name = "water"}, {position = {x = 26, y = 20}, name = "water"}, @@ -2652,12 +2652,12 @@ local unique_rooms = { {position = {x = 27, y = 8}, name = "water"}, {position = {x = 27, y = 9}, name = "water"}, {position = {x = 27, y = 10}, name = "water"}, - {position = {x = 27, y = 11}, name = "grass-3"}, - {position = {x = 27, y = 12}, name = "grass-3"}, + {position = {x = 27, y = 11}, name = "dirt-5"}, + {position = {x = 27, y = 12}, name = "dirt-5"}, {position = {x = 27, y = 13}, name = "water"}, {position = {x = 27, y = 14}, name = "water"}, {position = {x = 27, y = 15}, name = "deepwater"}, - {position = {x = 27, y = 16}, name = "grass-3"}, + {position = {x = 27, y = 16}, name = "dirt-5"}, {position = {x = 27, y = 17}, name = "deepwater"}, {position = {x = 27, y = 18}, name = "deepwater"}, {position = {x = 27, y = 19}, name = "water"}, @@ -2685,10 +2685,10 @@ local unique_rooms = { {position = {x = 28, y = 9}, name = "water"}, {position = {x = 28, y = 10}, name = "water"}, {position = {x = 28, y = 11}, name = "water"}, - {position = {x = 28, y = 12}, name = "grass-3"}, - {position = {x = 28, y = 13}, name = "grass-3"}, - {position = {x = 28, y = 14}, name = "grass-3"}, - {position = {x = 28, y = 15}, name = "grass-3"}, + {position = {x = 28, y = 12}, name = "dirt-5"}, + {position = {x = 28, y = 13}, name = "dirt-5"}, + {position = {x = 28, y = 14}, name = "dirt-5"}, + {position = {x = 28, y = 15}, name = "dirt-5"}, {position = {x = 28, y = 16}, name = "water"}, {position = {x = 28, y = 17}, name = "deepwater"}, {position = {x = 28, y = 18}, name = "water"}, @@ -2717,10 +2717,10 @@ local unique_rooms = { {position = {x = 29, y = 9}, name = "water"}, {position = {x = 29, y = 10}, name = "water"}, {position = {x = 29, y = 11}, name = "water"}, - {position = {x = 29, y = 12}, name = "grass-3"}, - {position = {x = 29, y = 13}, name = "grass-3"}, - {position = {x = 29, y = 14}, name = "grass-3"}, - {position = {x = 29, y = 15}, name = "grass-3"}, + {position = {x = 29, y = 12}, name = "dirt-5"}, + {position = {x = 29, y = 13}, name = "dirt-5"}, + {position = {x = 29, y = 14}, name = "dirt-5"}, + {position = {x = 29, y = 15}, name = "dirt-5"}, {position = {x = 29, y = 16}, name = "water"}, {position = {x = 29, y = 17}, name = "deepwater"}, {position = {x = 29, y = 18}, name = "water"}, @@ -2749,10 +2749,10 @@ local unique_rooms = { {position = {x = 30, y = 9}, name = "water"}, {position = {x = 30, y = 10}, name = "water"}, {position = {x = 30, y = 11}, name = "water"}, - {position = {x = 30, y = 12}, name = "grass-3"}, + {position = {x = 30, y = 12}, name = "dirt-5"}, {position = {x = 30, y = 13}, name = "grass-2"}, {position = {x = 30, y = 14}, name = "grass-2"}, - {position = {x = 30, y = 15}, name = "grass-3"}, + {position = {x = 30, y = 15}, name = "dirt-5"}, {position = {x = 30, y = 16}, name = "water"}, {position = {x = 30, y = 17}, name = "deepwater"}, {position = {x = 30, y = 18}, name = "water"}, @@ -2781,10 +2781,10 @@ local unique_rooms = { {position = {x = 31, y = 9}, name = "water"}, {position = {x = 31, y = 10}, name = "water"}, {position = {x = 31, y = 11}, name = "water"}, - {position = {x = 31, y = 12}, name = "grass-3"}, + {position = {x = 31, y = 12}, name = "dirt-5"}, {position = {x = 31, y = 13}, name = "deepwater"}, {position = {x = 31, y = 14}, name = "deepwater"}, - {position = {x = 31, y = 15}, name = "grass-3"}, + {position = {x = 31, y = 15}, name = "dirt-5"}, {position = {x = 31, y = 16}, name = "water"}, {position = {x = 31, y = 17}, name = "deepwater"}, {position = {x = 31, y = 18}, name = "water"}, @@ -5680,6 +5680,7 @@ local unique_rooms = { railway_roundabout = { entities = { + {position = {x = 15.5, y = 13.5}, name = "accumulator", direction = 0, force = "player"}, {position = {x = 0.5, y = 1.5}, name = "stone-wall", direction = 0, force = "player"}, {position = {x = 0.5, y = 0.5}, name = "stone-wall", direction = 0, force = "player"}, {position = {x = 1.5, y = 0.5}, name = "stone-wall", direction = 0, force = "player"}, diff --git a/maps/spaghettorio.lua b/maps/spaghettorio.lua index a0956c7d..523b9536 100644 --- a/maps/spaghettorio.lua +++ b/maps/spaghettorio.lua @@ -1,9 +1,53 @@ --spaghettorio-- mewmew made this -- inspired by redlabel -require "maps.labyrinth_map_intro" + +require "maps.spaghettorio_map_intro" local simplex_noise = require 'utils.simplex_noise' simplex_noise = simplex_noise.d2 local event = require 'utils.event' +local function on_player_joined_game(event) + local player = game.players[event.player_index] + if not global.map_init_done then + local map_gen_settings = {} + map_gen_settings.water = "none" + map_gen_settings.cliff_settings = {cliff_elevation_interval = 50, cliff_elevation_0 = 50} + map_gen_settings.autoplace_controls = { + ["coal"] = {frequency = "none", size = "none", richness = "none"}, + ["stone"] = {frequency = "none", size = "none", richness = "none"}, + ["copper-ore"] = {frequency = "none", size = "none", richness = "none"}, + ["iron-ore"] = {frequency = "none", size = "none", richness = "none"}, + ["crude-oil"] = {frequency = "none", size = "none", richness = "none"}, + ["trees"] = {frequency = "none", size = "none", richness = "none"}, + ["enemy-base"] = {frequency = "none", size = "none", richness = "none"}, + ["grass"] = {frequency = "none", size = "none", richness = "none"}, + ["sand"] = {frequency = "none", size = "none", richness = "none"}, + ["desert"] = {frequency = "none", size = "none", richness = "none"}, + ["dirt"] = {frequency = "none", size = "none", richness = "none"} + } + game.map_settings.pollution.pollution_restored_per_tree_damage = 0 + game.create_surface("spaghettorio", map_gen_settings) + game.forces["player"].set_spawn_position({16,16},game.surfaces["spaghettorio"]) + local surface = game.surfaces["spaghettorio"] + + if not global.spaghettorio_size then global.spaghettorio_size = 1 end + global.map_init_done = true + end + local surface = game.surfaces["spaghettorio"] + if player.online_time < 5 and surface.is_chunk_generated({0,0}) then + player.teleport(surface.find_non_colliding_position("player", {16,16}, 2, 1), "spaghettorio") + else + if player.online_time < 5 then + player.teleport({16,16}, "spaghettorio") + end + end + if player.online_time < 10 then + player.insert {name = 'raw-fish', count = 3} + player.insert {name = 'iron-axe', count = 1} + player.insert {name = 'pistol', count = 1} + player.insert {name = 'firearm-magazine', count = 32} + end +end + local function on_chunk_generated(event) local surface = game.surfaces[1] if event.surface.name ~= surface then return end @@ -13,23 +57,27 @@ end ---kyte local function on_player_rotated_entity(event) - if event.entity.type ~= "inserter" then return end - local surface = game.surfaces[1] - local tiles = {} - if event.entity.position.x == 459 and event.entity.position.y == 1 then - for x = -11, 21, 1 do - for y = -4, 0, 1 do - table.insert(tiles, {name = "dirt-6", position = {x = event.entity.position.x + x, y = event.entity.position.y + y}}) + if event.entity.type ~= "loader" then return end + local surface = game.surfaces[1] + local tiles = {} + if not global.trainpath_1 then + if event.entity.position.x == 448.5 and event.entity.position.y == -191 then + game.print("Trainpath to rewards of level 1 unlocked!") + global.trainpath_1 = true + for x = -11, 21, 1 do + for y = -4, 0, 1 do + table.insert(tiles, {name = "dirt-6", position = {x = event.entity.position.x + x, y = event.entity.position.y + y}}) + end end + surface.set_tiles(tiles, true) end - surface.set_tiles(tiles, true) - end + end end function cheat_mode() local cheat_mode_enabed = false if cheat_mode_enabed == true then - local surface = game.surfaces["labyrinth"] + local surface = game.surfaces["spaghettorio"] game.player.cheat_mode=true game.players[1].insert({name="power-armor-mk2"}) game.players[1].insert({name="fusion-reactor-equipment", count=4}) @@ -42,7 +90,7 @@ function cheat_mode() game.player.force.research_all_technologies() game.forces["enemy"].evolution_factor = 0.2 local chart = 200 - local surface = game.surfaces["labyrinth"] + local surface = game.surfaces["spaghettorio"] game.forces["player"].chart(surface, {lefttop = {x = chart*-1, y = chart*-1}, rightbottom = {x = chart, y = chart}}) end end diff --git a/maps/tools/map_functions.lua b/maps/tools/map_functions.lua new file mode 100644 index 00000000..4b546899 --- /dev/null +++ b/maps/tools/map_functions.lua @@ -0,0 +1,98 @@ +local simplex_noise = require 'utils.simplex_noise' +simplex_noise = simplex_noise.d2 +local f = {} + +f.draw_oil_circle = function(position, name, surface, radius, richness) + if not position then return end + if not name then return end + if not surface then return end + if not radius then return end + if not richness then return end + local math_random = math.random + local count = 0 + local max_count = 0 + while count < radius and max_count < 100000 do + for y = radius * -1, radius, 1 do + for x = radius * -1, radius, 1 do + if math_random(1, 200) == 1 then + local pos = {x = x + position.x, y = y + position.y} + local a = math_random(richness * 0.5, richness * 1.5) + local distance_to_center = math.sqrt(x^2 + y^2) + if distance_to_center < radius then + if surface.can_place_entity({name = name, position = pos, amount = a}) then + surface.create_entity{name = name, position = pos, amount = a} + count = count + 1 + end + end + end + end + end + max_count = max_count + 1 + end +end + +f.draw_smoothed_out_ore_circle = function(position, name, surface, radius, richness) + if not position then return end + if not name then return end + if not surface then return end + if not radius then return end + if not richness then return end + local math_random = math.random + local seed = game.surfaces[1].map_gen_settings.seed + local noise_seed_add = 25000 + local richness_part = richness / radius + for y = radius*-1, radius, 1 do + for x = radius*-1, radius, 1 do + local pos = {x = x + position.x, y = y + position.y} + local noise_1 = simplex_noise(pos.x * 0.05, pos.y * 0.05, seed) + seed = seed + noise_seed_add + local noise_2 = simplex_noise(pos.x * 0.1, pos.y * 0.1, seed) + local noise = noise_1 + noise_2 * 0.2 + local distance_to_center = math.sqrt(x^2 + y^2) + local a = richness - richness_part * distance_to_center + if distance_to_center + ((1 + noise) * 3) < radius then + if surface.can_place_entity({name = name, position = pos, amount = a}) then + surface.create_entity{name = name, position = pos, amount = a} + end + end + end + end +end + +f.create_cluster = function(name, pos, size, surface, spread, resource_amount) + local p = {x = pos.x, y = pos.y} + local math_random = math.random + local original_pos = {x = pos.x, y = pos.y} + local entity_has_been_placed = false + for z = 1, size, 1 do + entity_has_been_placed = false + local y = 1 + if spread then y = math_random(1, spread) end + local modifier_raffle = {{0,y*-1},{y*-1,0},{y,0},{0,y},{y*-1,y*-1},{y,y},{y,y*-1},{y*-1,y}} + modifier_raffle = shuffle(modifier_raffle) + for x = 1, 8, 1 do + local m = modifier_raffle[x] + local pos = {x = p.x + m[1], y = p.y + m[2]} + if resource_amount then + if surface.can_place_entity({name=name, position=pos, amount=resource_amount}) then + surface.create_entity {name=name, position=pos, amount=resource_amount} + p = {x = pos.x, y = pos.y} + entity_has_been_placed = true + break + end + else + if surface.can_place_entity({name=name, position=pos}) then + surface.create_entity {name=name, position=pos} + p = {x = pos.x, y = pos.y} + entity_has_been_placed = true + break + end + end + end + if entity_has_been_placed == false then + p = {x = original_pos.x, y = original_pos.y} + end + end +end + +return f \ No newline at end of file diff --git a/player_list.lua b/player_list.lua index 26a2037b..42758c5c 100644 --- a/player_list.lua +++ b/player_list.lua @@ -166,16 +166,24 @@ local function get_sorted_list(sort_by) player_list[i2] = a end end - if sort_by == "name_asc" then - if player_list[i].name > player_list[i2].name then + if sort_by == "name_asc" then + local str_byte_1 = string.byte(player_list[i].name, 1) + local str_byte_2 = string.byte(player_list[i2].name, 1) + if str_byte_1 < 97 then str_byte_1 = str_byte_1 + 32 end + if str_byte_2 < 97 then str_byte_2 = str_byte_2 + 32 end + if str_byte_1 > str_byte_2 then local a = player_list[i] local b = player_list[i2] player_list[i] = b player_list[i2] = a end end - if sort_by == "name_desc" then - if player_list[i].name < player_list[i2].name then + if sort_by == "name_desc" then + local str_byte_1 = string.byte(player_list[i].name, 1) + local str_byte_2 = string.byte(player_list[i2].name, 1) + if str_byte_1 < 97 then str_byte_1 = str_byte_1 + 32 end + if str_byte_2 < 97 then str_byte_2 = str_byte_2 + 32 end + if str_byte_1 < str_byte_2 then local a = player_list[i] local b = player_list[i2] player_list[i] = b diff --git a/poll.lua b/poll.lua index 3cd6537b..5776fe07 100644 --- a/poll.lua +++ b/poll.lua @@ -104,20 +104,11 @@ local function poll(player) local frame = player.gui.left["poll-assembler"] frame = frame.table_poll_assembler - global.poll_question = "" - global.poll_question = frame.textfield_question.text - if (global.poll_question == "") then - return - end + if frame.textfield_question.text == "" then return end + if frame.textfield_answer_1.text == "" and frame.textfield_answer_2.text == "" and frame.textfield_answer_3.text == "" then return end - - global.poll_answers = {"","",""} - global.poll_answers[1] = frame.textfield_answer_1.text - global.poll_answers[2] = frame.textfield_answer_2.text - global.poll_answers[3] = frame.textfield_answer_3.text - if (global.poll_answers[3] .. global.poll_answers[2] .. global.poll_answers[1] == "") then - return - end + global.poll_question = frame.textfield_question.text + global.poll_answers = {frame.textfield_answer_1.text, frame.textfield_answer_2.text, frame.textfield_answer_3.text} local msg = player.name msg = msg .. " has created a new Poll!" @@ -147,7 +138,7 @@ local function poll(player) poll_show(player) end - player.print(msg) + player.print(msg, { r=0.22, g=0.99, b=0.99}) x = x + 1 end