1
0
mirror of https://github.com/ComfyFactory/ComfyFactorio.git synced 2025-02-19 19:10:35 +02:00

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

This commit is contained in:
MewMew 2018-09-28 11:17:17 +02:00
parent a62519d018
commit ee2fbf8288
6 changed files with 349 additions and 221 deletions

View File

@ -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

View File

@ -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"},

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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