Merge branch 'aperx' into main

This commit is contained in:
2024-12-31 13:48:39 +09:00
committed by GitHub
27 changed files with 532 additions and 599 deletions

5
.gitignore vendored
View File

@@ -3,3 +3,8 @@ node_modules/
package-lock.json package-lock.json
pnpm-lock.yaml pnpm-lock.yaml
.vscode .vscode
exp_util/node-compile-cache/
exp_commands/node-compile-cache/
exp_groups/node-compile-cache/
exp_legacy/node-compile-cache/
exp_scenario/node-compile-cache/

View File

@@ -27,6 +27,7 @@ force=Invalid Force Name.
surface=Invalid Surface Name. surface=Invalid Surface Name.
planet=Invalid Planet Name. planet=Invalid Planet Name.
color=Invalid Color Name. color=Invalid Color Name.
role=Invalid Role Name.
[exp-commands-authorities] [exp-commands-authorities]
character-only=This command can not be used in remote view. character-only=This command can not be used in remote view.

View File

@@ -27,6 +27,7 @@ force=勢力名稱錯誤。
surface=地表名稱錯誤。 surface=地表名稱錯誤。
planet=星球名稱錯誤。 planet=星球名稱錯誤。
color=顏色名稱錯誤。 color=顏色名稱錯誤。
role=權限組名稱錯誤。
[exp-commands-authorities] [exp-commands-authorities]
character-only=該命令不能在遠端視圖中使用。 character-only=該命令不能在遠端視圖中使用。

View File

@@ -27,6 +27,7 @@ force=勢力名稱錯誤。
surface=地表名稱錯誤。 surface=地表名稱錯誤。
planet=星球名稱錯誤。 planet=星球名稱錯誤。
color=顏色名稱錯誤。 color=顏色名稱錯誤。
role=權限組名稱錯誤。
[exp-commands-authorities] [exp-commands-authorities]
character-only=該命令不能在遠端視圖中使用。 character-only=該命令不能在遠端視圖中使用。

View File

@@ -13,9 +13,9 @@ return {
"modules.addons.advanced-start", "modules.addons.advanced-start",
"modules.addons.spawn-area", "modules.addons.spawn-area",
"modules.addons.compilatron", "modules.addons.compilatron",
"modules.addons.scorched-earth", --"modules.addons.scorched-earth",
"modules.addons.pollution-grading", --"modules.addons.pollution-grading",
"modules.addons.station-auto-name", --"modules.addons.station-auto-name",
"modules.addons.discord-alerts", "modules.addons.discord-alerts",
"modules.addons.chat-reply", "modules.addons.chat-reply",
"modules.addons.tree-decon", "modules.addons.tree-decon",

View File

@@ -4,7 +4,7 @@
--- These are called factories because they return another function --- These are called factories because they return another function
-- use these as a simple methods of adding new items -- use these as a simple methods of adding new items
-- they will do most of the work for you -- they will do most of the work for you
-- ['item-name'] = factory(params) -- ["item-name"] = factory(params)
-- luacheck:ignore 212/amount_made 212/items_made 212/player -- luacheck:ignore 212/amount_made 212/items_made 212/player
-- Use these to adjust for ticks ie game.tick < 5*minutes -- Use these to adjust for ticks ie game.tick < 5*minutes
@@ -12,7 +12,7 @@
local seconds, minutes, hours = 60, 3600, 216000 local seconds, minutes, hours = 60, 3600, 216000
--- Use to make a split point for the number of items given based on time --- Use to make a split point for the number of items given based on time
-- ['stone-furnace']=cutoff_time(5*minutes, 4,0) -- before 5 minutes give four items after 5 minutes give none -- ["stone-furnace"]=cutoff_time(5*minutes, 4,0) -- before 5 minutes give four items after 5 minutes give none
local function cutoff_time(time, before, after) local function cutoff_time(time, before, after)
return function(amount_made, items_made, player) return function(amount_made, items_made, player)
if game.tick < time then if game.tick < time then
@@ -24,7 +24,8 @@ local function cutoff_time(time, before, after)
end end
--- Use to make a split point for the number of items given based on amount made --- Use to make a split point for the number of items given based on amount made
-- ['firearm-magazine']=cutoff_amount_made(100, 10, 0) -- give 10 items until 100 items have been made -- ["firearm-magazine"]=cutoff_amount_made(100, 10, 0) -- give 10 items until 100 items have been made
--[[
local function cutoff_amount_made(amount, before, after) local function cutoff_amount_made(amount, before, after)
return function(amount_made, items_made, player) return function(amount_made, items_made, player)
if amount_made < amount then if amount_made < amount then
@@ -34,9 +35,11 @@ local function cutoff_amount_made(amount, before, after)
end end
end end
end end
]]
--- Same as above but will not give any items if x amount has been made of another item, useful for tiers --- Same as above but will not give any items if x amount has been made of another item, useful for tiers
-- ['light-armor']=cutoff_amount_made_unless(5, 0,1,'heavy-armor',5) -- give light armor once 5 have been made unless 5 heavy armor has been made -- ["light-armor"]=cutoff_amount_made_unless(5, 0,1,"heavy-armor",5) -- give light armor once 5 have been made unless 5 heavy armor has been made
--[[
local function cutoff_amount_made_unless(amount, before, after, second_item, second_amount) local function cutoff_amount_made_unless(amount, before, after, second_item, second_amount)
return function(amount_made, items_made, player) return function(amount_made, items_made, player)
if items_made(second_item) < second_amount then if items_made(second_item) < second_amount then
@@ -50,9 +53,11 @@ local function cutoff_amount_made_unless(amount, before, after, second_item, sec
end end
end end
end end
]]
-- Use for mass production items where you want the amount to change based on the amount already made -- Use for mass production items where you want the amount to change based on the amount already made
-- ['iron-plate']=scale_amount_made(5*minutes, 10, 10) -- for first 5 minutes give 10 items then after apply a factor of 10 -- ["iron-plate"]=scale_amount_made(5*minutes, 10, 10) -- for first 5 minutes give 10 items then after apply a factor of 10
--[[
local function scale_amount_made(amount, before, scalar) local function scale_amount_made(amount, before, scalar)
return function(amount_made, items_made, player) return function(amount_made, items_made, player)
if amount_made < amount then if amount_made < amount then
@@ -62,12 +67,13 @@ local function scale_amount_made(amount, before, scalar)
end end
end end
end end
]]
--[[ --[[
Common values Common values
game.tick is the amount of time the game has been on for game.tick is the amount of time the game has been on for
amount_made is the amount of that item which has been made amount_made is the amount of that item which has been made
items_made('item-name') will return the amount of any item made items_made("item-name") will return the amount of any item made
player is the player who just spawned player is the player who just spawned
hours, minutes, seconds are the number of ticks in each unit of time hours, minutes, seconds are the number of ticks in each unit of time
]] ]]
@@ -79,33 +85,28 @@ return {
enemy_expansion = false, --- @setting enemy_expansion a catch all for in case the map settings file fails to load enemy_expansion = false, --- @setting enemy_expansion a catch all for in case the map settings file fails to load
chart_radius = 10 * 32, --- @setting chart_radius the number of tiles that will be charted when the map starts chart_radius = 10 * 32, --- @setting chart_radius the number of tiles that will be charted when the map starts
items = { --- @setting items items and there condition for being given items = { --- @setting items items and there condition for being given
-- ['item-name'] = function(amount_made, production_stats, player) return <Number> end -- 0 means no items given ["iron-ore"] = cutoff_time(20 * minutes, 80, 0),
-- Plates ["stone"] = cutoff_time(20 * minutes, 20, 0),
["iron-plate"] = scale_amount_made(100, 10, 10), ["coal"] = cutoff_time(20 * minutes, 20, 0),
["copper-plate"] = scale_amount_made(100, 0, 8), -- ["burner-mining-drill"]=cutoff_time(20 * minutes, 8, 0),
["steel-plate"] = scale_amount_made(100, 0, 4), -- ["stone-furnace"]=cutoff_time(20 * minutes, 8, 0),
-- Secondary Items ["submachine-gun"] = 1,
["electronic-circuit"] = scale_amount_made(1000, 0, 6), ["piercing-rounds-magazine"] = 20,
["iron-gear-wheel"] = scale_amount_made(1000, 0, 6), ["construction-robot"] = 10,
-- Starting Items ["modular-armor"] = 1,
["burner-mining-drill"] = cutoff_time(10 * minutes, 4, 0), ["solar-panel-equipment"] = 16,
["stone-furnace"] = cutoff_time(10 * minutes, 4, 0), ["belt-immunity-equipment"] = 1,
-- Armor ["battery-equipment"] = 2,
["light-armor"] = cutoff_amount_made_unless(5, 0, 1, "heavy-armor", 5), ["personal-roboport-equipment"] = 1
["heavy-armor"] = cutoff_amount_made(5, 0, 1),
-- Weapon
["pistol"] = cutoff_amount_made_unless(0, 1, 1, "submachine-gun", 5),
["submachine-gun"] = cutoff_amount_made(5, 0, 1),
-- Ammo
["firearm-magazine"] = cutoff_amount_made_unless(100, 10, 0, "piercing-rounds-magazine", 100),
["piercing-rounds-magazine"] = cutoff_amount_made(100, 0, 10),
--[[ --[[
['construction-robot'] = 10, ["construction-robot"] = 50,
['modular-armor'] = 1, ["spidertron"] = 1,
['solar-panel-equipment'] = 16, ["spidertron-remote"] = 1,
['belt-immunity-equipment'] = 1, ["modular-armor"] = 1,
['battery-equipment'] = 2, ["solar-panel-equipment"] = 60,
['personal-roboport-equipment'] = 1 ["belt-immunity-equipment"] = 1,
["battery-equipment"] = 6,
["personal-roboport-equipment"] = 5
]] ]]
} }
} }

View File

@@ -10,14 +10,26 @@ return {
Base point is equal to the amount of standard value in each parameter. Base point is equal to the amount of standard value in each parameter.
CMMS CRS CCS CISB CHB CRDB PBR CMMS CRS CCS CISB CHB CRDB PBR
STD 30 90 32 20 16 12 60 STD 20 60 24 12 8 8 40
= 260 = 172
MAX 60 180 64 40 32 24 120 MAX 40 120 48 24 16 16 80
= 480 = 344
]] ]]
pts = { pts = {
base = 260, rate = {
["Senior Administrator"] = 1.5,
["Administrator"] = 1.4,
["Senior Moderator"] = 1.3,
["Moderator"] = 1.2,
["Trainee Moderator"] = 1.2,
["Board Member"] = 1.1,
["Supporter"] = 1.1,
["Partner"] = 1.1,
["Senior Member"] = 1.1,
["Member"] = 1,
},
base = 172
}, },
gui_display_width = { gui_display_width = {
half = 150, half = 150,
@@ -33,65 +45,65 @@ return {
["chb"] = "character_health_bonus", ["chb"] = "character_health_bonus",
["crdb"] = "character_reach_distance_bonus", ["crdb"] = "character_reach_distance_bonus",
--[[ --[[
['cpdb'] = 'character_item_pickup_distance_bonus' ["cpdb"] = "character_item_pickup_distance_bonus"
]] ]]
}, },
player_special_bonus_rate = 300, player_special_bonus_rate = 300,
player_special_bonus = { player_special_bonus = {
["personal_battery_recharge"] = { ["personal_battery_recharge"] = {
-- 1 MW -- 1 MW
value = 6, value = 4,
max = 12, max = 8,
scale = 1, scale = 0.5,
cost_scale = 4, cost_scale = 1,
cost = 40, cost = 10,
is_percentage = false, is_percentage = false,
}, },
}, },
player_bonus = { player_bonus = {
["character_mining_speed_modifier"] = { ["character_mining_speed_modifier"] = {
value = 3, value = 2,
max = 6, max = 4,
scale = 0.5, scale = 0.5,
cost_scale = 1, cost_scale = 1,
cost = 10, cost = 10,
is_percentage = true, is_percentage = true,
}, },
["character_running_speed_modifier"] = { ["character_running_speed_modifier"] = {
value = 1.5, value = 1,
max = 3, max = 2,
scale = 0.25, scale = 0.25,
cost_scale = 1, cost_scale = 1,
cost = 60, cost = 60,
is_percentage = true, is_percentage = true,
}, },
["character_crafting_speed_modifier"] = { ["character_crafting_speed_modifier"] = {
value = 8, value = 6,
max = 16, max = 12,
scale = 1, scale = 0.5,
cost_scale = 1, cost_scale = 1,
cost = 4, cost = 4,
is_percentage = true, is_percentage = true,
}, },
["character_inventory_slots_bonus"] = { ["character_inventory_slots_bonus"] = {
value = 100, value = 60,
max = 200, max = 120,
scale = 10, scale = 5,
cost_scale = 10, cost_scale = 10,
cost = 2, cost = 2,
is_percentage = false, is_percentage = false,
}, },
["character_health_bonus"] = { ["character_health_bonus"] = {
value = 200, value = 100,
max = 400, max = 200,
scale = 50, scale = 25,
cost_scale = 50, cost_scale = 25,
cost = 4, cost = 2,
is_percentage = false, is_percentage = false,
}, },
["character_reach_distance_bonus"] = { ["character_reach_distance_bonus"] = {
value = 12, value = 8,
max = 24, max = 16,
scale = 2, scale = 2,
cost_scale = 1, cost_scale = 1,
cost = 1, cost = 1,
@@ -102,74 +114,74 @@ return {
}, },
}, },
--[[ --[[
['character_item_pickup_distance_bonus'] = { ["character_item_pickup_distance_bonus"] = {
value = 0, value = 0,
max = 20, max = 20,
scale = 1, scale = 1,
cost_scale = 1, cost_scale = 1,
cost = 1, cost = 1,
is_percentage = false is_percentage = false,
}, },
['character_loot_pickup_distance_bonus'] = { ["character_loot_pickup_distance_bonus"] = {
value = 0, value = 0,
max = 20, max = 20,
scale = 1, scale = 1,
cost_scale = 1, cost_scale = 1,
cost = 1, cost = 1,
is_percentage = false is_percentage = false,
}, },
['character_item_drop_distance_bonus'] = { ["character_item_drop_distance_bonus"] = {
value = 0, value = 0,
max = 20, max = 20,
scale = 1, scale = 1,
cost_scale = 1, cost_scale = 1,
cost = 1, cost = 1,
is_percentage = false is_percentage = false,
} },
]] ]]
}, },
force_bonus = { force_bonus = {
--[[ --[[
['character_mining_speed_modifier'] = { ["character_mining_speed_modifier"] = {
value = 0, value = 0,
max = 6, max = 6,
scale = 0.5, scale = 0.5,
cost_scale = 1, cost_scale = 1,
cost = 10, cost = 10,
is_percentage = true is_percentage = true,
}, },
['character_running_speed_modifier'] = { ["character_running_speed_modifier"] = {
value = 0, value = 0,
max = 3, max = 3,
scale = 0.25, scale = 0.25,
cost_scale = 1, cost_scale = 1,
cost = 40, cost = 40,
is_percentage = true is_percentage = true,
}, },
['character_crafting_speed_modifier'] = { ["character_crafting_speed_modifier"] = {
value = 0, value = 0,
max = 16, max = 16,
scale = 1, scale = 1,
cost_scale = 1, cost_scale = 1,
cost = 4, cost = 4,
is_percentage = true is_percentage = true,
}, },
['character_inventory_slots_bonus'] = { ["character_inventory_slots_bonus"] = {
value = 0, value = 0,
max = 200, max = 200,
scale = 10, scale = 10,
cost_scale = 100, cost_scale = 100,
cost = 2, cost = 2,
is_percentage = false is_percentage = false,
}, },
['character_health_bonus'] = { ["character_health_bonus"] = {
value = 0, value = 0,
max = 400, max = 400,
scale = 50, scale = 50,
cost = 4, cost = 4,
is_percentage = false is_percentage = false,
}, },
['character_reach_distance_bonus'] = { ["character_reach_distance_bonus"] = {
value = 0, value = 0,
max = 24, max = 24,
scale = 2, scale = 2,
@@ -177,17 +189,17 @@ return {
cost = 1, cost = 1,
is_percentage = false, is_percentage = false,
combined_bonus = { combined_bonus = {
'character_resource_reach_distance_bonus', "character_resource_reach_distance_bonus",
'character_build_distance_bonus' "character_build_distance_bonus",
} },
}, },
['worker_robots_speed_modifier'] = { ["worker_robots_speed_modifier"] = {
value = 0, value = 0,
max = 0, max = 0,
scale = 0, scale = 0,
cost_scale = 1, cost_scale = 1,
cost = 1, cost = 1,
is_percentage = false is_percentage = false,
}, },
]] ]]
["worker_robots_battery_modifier"] = { ["worker_robots_battery_modifier"] = {
@@ -215,106 +227,106 @@ return {
is_percentage = false, is_percentage = false,
}, },
--[[ --[[
['character_item_pickup_distance_bonus'] = { ["character_item_pickup_distance_bonus"] = {
value = 0, value = 0,
max = 20, max = 20,
scale = 1, scale = 1,
cost_scale = 1, cost_scale = 1,
cost = 1, cost = 1,
is_percentage = false is_percentage = false,
}, },
['character_loot_pickup_distance_bonus'] = { ["character_loot_pickup_distance_bonus"] = {
value = 0, value = 0,
max = 20, max = 20,
scale = 1, scale = 1,
cost_scale = 1, cost_scale = 1,
cost = 1, cost = 1,
is_percentage = false is_percentage = false,
}, },
['character_item_drop_distance_bonus'] = { ["character_item_drop_distance_bonus"] = {
value = 0, value = 0,
max = 20, max = 20,
scale = 1, scale = 1,
cost_scale = 1, cost_scale = 1,
cost = 1, cost = 1,
is_percentage = false is_percentage = false,
}, },
['character_trash_slot_count'] = { ["character_trash_slot_count"] = {
value = 0, value = 0,
max = 0, max = 0,
scale = 0, scale = 0,
cost_scale = 1, cost_scale = 1,
cost = 1, cost = 1,
is_percentage = false is_percentage = false,
}, },
['mining_drill_productivity_bonus'] = { ["mining_drill_productivity_bonus"] = {
value = 0, value = 0,
max = 0, max = 0,
scale = 0, scale = 0,
cost_scale = 1, cost_scale = 1,
cost = 1, cost = 1,
is_percentage = false is_percentage = false,
}, },
['train_braking_force_bonus'] = { ["train_braking_force_bonus"] = {
value = 0, value = 0,
max = 0, max = 0,
scale = 0, scale = 0,
cost_scale = 1, cost_scale = 1,
cost = 1, cost = 1,
is_percentage = false is_percentage = false,
}, },
['laboratory_speed_modifier'] = { ["laboratory_speed_modifier"] = {
value = 0, value = 0,
max = 0, max = 0,
scale = 0, scale = 0,
cost_scale = 1, cost_scale = 1,
cost = 1, cost = 1,
is_percentage = false is_percentage = false,
}, },
['laboratory_productivity_bonus'] = { ["laboratory_productivity_bonus"] = {
value = 0, value = 0,
max = 0, max = 0,
scale = 0, scale = 0,
cost_scale = 1, cost_scale = 1,
cost = 1, cost = 1,
is_percentage = false is_percentage = false,
}, },
['inserter_stack_size_bonus'] = { ["inserter_stack_size_bonus"] = {
value = 0, value = 0,
max = 0, max = 0,
scale = 0, scale = 0,
cost_scale = 1, cost_scale = 1,
cost = 1, cost = 1,
is_percentage = false is_percentage = false,
}, },
['stack_inserter_capacity_bonus'] = { ["stack_inserter_capacity_bonus"] = {
value = 0, value = 0,
max = 0, max = 0,
scale = 0, scale = 0,
cost_scale = 1, cost_scale = 1,
cost = 1, cost = 1,
is_percentage = false is_percentage = false,
}, },
['artillery_range_modifier'] = { ["artillery_range_modifier"] = {
value = 0, value = 0,
max = 0, max = 0,
scale = 0, scale = 0,
cost_scale = 1, cost_scale = 1,
cost = 1, cost = 1,
is_percentage = false is_percentage = false,
} },
]] ]]
}, },
surface_bonus = { surface_bonus = {
--[[ --[[
['solar_power_multiplier'] = { ["solar_power_multiplier"] = {
value = 1, value = 1,
max = 1000, max = 1000,
scale = 1, scale = 1,
cost_scale = 1, cost_scale = 1,
cost = 1, cost = 1,
is_percentage = false is_percentage = false,
} },
]] ]]
}, },
} }

View File

@@ -11,15 +11,16 @@ return {
player_kicks = true, player_kicks = true,
player_promotes = false, player_promotes = false,
player_jail = true, player_jail = true,
["config"] = true, ['config']=false,
["purge"] = true, ['purge']=false,
["c"] = true, ['c']=false,
["command"] = true, ['sc']=false,
["silent-command"] = true, ['command']=false,
["measured-command"] = true, ['silent-command']=false,
["banlist"] = true, ['measured-command']=false,
["permissions"] = true, ['banlist']=false,
["editor"] = true, ['permissions']=false,
["cheat"] = true, ['editor']=false,
["open"] = false, ['cheat']=false,
['open']=false
} }

View File

@@ -9,20 +9,23 @@ local Groups = require("modules.exp_legacy.expcore.permission_groups") --- @dep
Groups.new_group("Admin") Groups.new_group("Admin")
:allow_all() :allow_all()
Groups.new_group('Mod')
:allow_all()
:disallow{ :disallow{
"add_permission_group", -- admin 'add_permission_group', -- admin
"delete_permission_group", 'delete_permission_group',
"edit_permission_group", 'edit_permission_group',
"import_permissions_string", 'import_permissions_string',
"map_editor_action", 'map_editor_action',
"toggle_map_editor", 'toggle_map_editor',
"change_multiplayer_config", 'change_multiplayer_config',
"set_heat_interface_mode", 'set_heat_interface_mode',
"set_heat_interface_temperature", 'set_heat_interface_temperature',
"set_infinity_container_filter_item", 'set_infinity_container_filter_item',
"set_infinity_container_remove_unfiltered_items", 'set_infinity_container_remove_unfiltered_items',
"set_infinity_pipe_filter", 'set_infinity_pipe_filter'
} }
Groups.new_group("Trusted") Groups.new_group("Trusted")
:allow_all() :allow_all()
@@ -59,9 +62,8 @@ Groups.new_group("Standard")
"set_infinity_pipe_filter", "set_infinity_pipe_filter",
"admin_action", -- trusted "admin_action", -- trusted
"change_programmable_speaker_alert_parameters", -- standard "change_programmable_speaker_alert_parameters", -- standard
"drop_item",
"open_new_platform_button_from_rocket_silo", "open_new_platform_button_from_rocket_silo",
"set_rocket_silo_send_to_orbit_automated_mode", "set_rocket_silo_send_to_orbit_automated_mode"
} }
Groups.new_group("Guest") Groups.new_group("Guest")

View File

@@ -37,12 +37,7 @@ Roles.new_role("Senior Administrator", "SAdmin")
:set_flag("report-immune") :set_flag("report-immune")
:set_flag("instant-respawn") :set_flag("instant-respawn")
:set_parent("Administrator") :set_parent("Administrator")
:allow{ :set_allow_all()
"command/_rcon",
"command/debug",
"command/set-cheat-mode",
"command/research-all",
}
Roles.new_role("Administrator", "Admin") Roles.new_role("Administrator", "Admin")
:set_permission_group("Admin") :set_permission_group("Admin")
@@ -51,63 +46,52 @@ Roles.new_role("Administrator", "Admin")
:set_flag("is_spectator") :set_flag("is_spectator")
:set_flag("report-immune") :set_flag("report-immune")
:set_flag("instant-respawn") :set_flag("instant-respawn")
:set_parent("Senior Moderator")
:allow{
"command/_rcon",
"command/debug",
"command/set-cheat-mode",
"command/research-all"
}
Roles.new_role("Senior Moderator", "SMod")
:set_permission_group("Mod")
:set_custom_color{ r = 0, g = 170, b = 0 }
:set_flag("is_admin")
:set_flag("is_system")
:set_flag("is_spectator")
:set_flag("report-immune")
:set_flag("instant-respawn")
:set_parent("Moderator") :set_parent("Moderator")
:allow{ :allow{
"gui/warp-list/bypass-proximity", "gui/warp-list/bypass-proximity",
"gui/warp-list/bypass-cooldown", "gui/warp-list/bypass-cooldown",
"command/connect-all", "command/connect-all"
} }
Roles.new_role("Moderator", "Mod") Roles.new_role("Moderator", "Mod")
:set_permission_group("Admin") :set_permission_group("Mod")
:set_custom_color{ r = 0, g = 170, b = 0 } :set_custom_color{ r = 0, g = 170, b = 0 }
:set_flag("is_admin") :set_flag("is_admin")
:set_flag("is_spectator") :set_flag("is_spectator")
:set_flag("report-immune") :set_flag("report-immune")
:set_flag("instant-respawn") :set_flag("instant-respawn")
:set_parent("Trainee") :set_parent("Trainee Moderator")
:allow{ :allow{
"command/assign-role",
"command/unassign-role",
"command/repair",
"command/kill/always",
"command/clear-tag/always",
"command/spawn/always",
"command/clear-reports",
"command/clear-warnings",
"command/clear-script-warnings",
"command/clear-last-warnings",
"command/clear-inventory",
"command/kill-enemies",
"command/remove-enemies",
--'command/bonus',
"command/home",
"command/set-home",
"command/get-home",
"command/return",
"command/connect-player",
"command/set-bot-queue",
"command/set-game-speed",
"command/set-friendly-fire",
"command/set-always-day",
"command/set-pollution-enabled",
"command/clear-pollution",
"gui/rocket-info/toggle-active",
"gui/rocket-info/remote_launch",
"gui/bonus",
"fast-tree-decon",
} }
Roles.new_role("Trainee", "TrMod") Roles.new_role("Trainee Moderator", "Trainee")
:set_permission_group("Admin") :set_permission_group("Mod")
:set_custom_color{ r = 0, g = 170, b = 0 } :set_custom_color{ r = 0, g = 170, b = 0 }
:set_flag("is_admin") :set_flag("is_admin")
:set_flag("is_spectator") :set_flag("is_spectator")
:set_flag("report-immune") :set_flag("report-immune")
:set_parent("Veteran") :set_parent("Board Member")
:allow{ :allow{
"command/assign-role",
"command/unassign-role",
"command/admin-chat", "command/admin-chat",
"command/goto", "command/protect-tag",
"command/teleport", "command/teleport",
"command/bring", "command/bring",
"command/create-warning", "command/create-warning",
@@ -115,19 +99,30 @@ Roles.new_role("Trainee", "TrMod")
"command/get-reports", "command/get-reports",
"command/protect-entity", "command/protect-entity",
"command/protect-area", "command/protect-area",
"command/protect-tag",
"command/jail",
"command/unjail",
"command/kick", "command/kick",
"command/ban", "command/ban",
"command/spectate",
"command/follow",
"command/search", "command/search",
"command/search-online", "command/search-online",
"command/search-amount", "command/search-amount",
"command/search-recent", "command/search-recent",
"command/clear-blueprints", "command/clear-pollution",
"gui/playerdata", "command/set-pollution-enabled",
"command/set-bot-queue",
"command/set-game-speed",
"command/kill-enemies",
"command/remove-enemies",
"command/set-friendly-fire",
"command/set-always-day",
"command/clear-reports",
"command/clear-warnings",
"command/clear-script-warnings",
"command/clear-last-warnings",
"command/clear-inventory",
"command/connect-player",
"command/kill/always",
-- "command/clear-tag/always",
"command/spawn/always",
"gui/playerdata"
} }
--- Trusted Roles --- Trusted Roles
@@ -137,81 +132,85 @@ Roles.new_role("Board Member", "Board")
:set_flag("is_spectator") :set_flag("is_spectator")
:set_flag("report-immune") :set_flag("report-immune")
:set_flag("instant-respawn") :set_flag("instant-respawn")
:set_parent("Sponsor")
:allow{
"command/goto",
"command/repair",
"command/spectate",
"command/follow",
"gui/playerdata",
}
Roles.new_role("Senior Backer", "Backer")
:set_permission_group("Trusted")
:set_custom_color{ r = 238, g = 172, b = 44 }
:set_flag("is_spectator")
:set_flag("report-immune")
:set_flag("instant-respawn")
:set_parent("Sponsor")
:allow{
}
Roles.new_role("Sponsor", "Spon")
:set_permission_group("Trusted")
:set_custom_color{ r = 238, g = 172, b = 44 }
:set_flag("is_spectator")
:set_flag("report-immune")
:set_flag("instant-respawn")
:set_parent("Supporter") :set_parent("Supporter")
:allow{ :allow{
"gui/rocket-info/toggle-active",
"gui/rocket-info/remote_launch",
"gui/bonus",
--"command/bonus",
"command/home",
"command/set-home",
"command/get-home",
"command/return",
"fast-tree-decon",
} }
Roles.new_role("Supporter", "Sup") Roles.new_role("Supporter", "Sup")
:set_permission_group("Trusted") :set_permission_group("Trusted")
:set_custom_color{ r = 230, g = 99, b = 34 } :set_custom_color{ r = 230, g = 99, b = 34 }
:set_flag("is_spectator") :set_flag("is_spectator")
:set_parent("Veteran") :set_parent("Partner")
:allow{ :allow{
"command/tag-color",
"command/jail",
"command/unjail",
"command/set-join-message",
"command/remove-join-message",
} }
Roles.new_role("Partner", "Part") Roles.new_role("Partner", "Part")
:set_permission_group("Trusted") :set_permission_group("Trusted")
:set_custom_color{ r = 140, g = 120, b = 200 } :set_custom_color{ r = 24, g = 172, b = 188 }
:set_flag("is_spectator") :set_flag("is_spectator")
:set_parent("Veteran") :set_parent("Senior Member")
:allow{ :allow{
"command/jail",
"command/unjail",
} }
local hours10, hours250 = 10 * 216000, 250 * 60 Roles.new_role("Senior Member", "SMem")
:set_permission_group("Trusted")
:set_custom_color{ r = 24, g = 172, b = 188 }
:set_flag("is_spectator")
:set_parent("Member")
:allow{
"command/set-join-message",
"command/remove-join-message",
"command/goto",
"command/jail",
"command/unjail",
"command/spectate",
"command/follow",
"command/repair"
}
--- Standard User Roles
Roles.new_role("Member", "Mem")
:set_permission_group("Trusted")
:set_custom_color{ r = 24, g = 172, b = 188 }
:set_flag("deconlog-bypass")
:set_parent("Veteran")
:allow{
"gui/vlayer-edit",
"gui/rocket-info/toggle-active",
"gui/rocket-info/remote_launch",
"gui/tool",
-- "command/tag-color",
"command/clear-blueprints",
--"command/bonus",
"gui/bonus",
"command/personal-logistic",
"command/home",
"command/set-home",
"command/get-home",
"command/return",
"fast-tree-decon"
}
local hours6, hours250 = 6 * 216000, 250 * 60
Roles.new_role("Veteran", "Vet") Roles.new_role("Veteran", "Vet")
:set_permission_group("Trusted") :set_permission_group("Trusted")
:set_custom_color{ r = 140, g = 120, b = 200 } :set_custom_color{ r = 140, g = 120, b = 200 }
:set_parent("Member") :set_parent("Regular")
:allow{ :allow{
"gui/surveillance",
"gui/warp-list/add",
"gui/warp-list/edit",
"command/chat-bot", "command/chat-bot",
"command/clear-ground-items", "command/clear-ground-items",
"command/clear-blueprints-radius", "command/clear-blueprints-radius",
"command/set-trains-to-automatic", "command/set-trains-to-automatic",
"command/set-auto-research", "command/set-auto-research",
"command/lawnmower",
"command/waterfill",
"command/artillery"
} }
:set_auto_assign_condition(function(player) :set_auto_assign_condition(function(player)
if player.online_time >= hours10 then if player.online_time >= hours6 then
return true return true
else else
local stats = Statistics:get(player, {}) local stats = Statistics:get(player, {})
@@ -220,44 +219,25 @@ Roles.new_role("Veteran", "Vet")
end end
end) end)
--- Standard User Roles local hours1, hours15 = 1 * 216000, 15 * 60
Roles.new_role("Member", "Mem")
:set_permission_group("Standard")
:set_custom_color{ r = 24, g = 172, b = 188 }
:set_flag("deconlog-bypass")
:set_parent("Regular")
:allow{
"gui/task-list/add",
"gui/task-list/edit",
"gui/warp-list/add",
"gui/warp-list/edit",
"gui/surveillance",
"gui/vlayer-edit",
"gui/tool",
"command/save-quickbar",
"command/vlayer-info",
"command/personal-logistic",
"command/lawnmower",
"command/waterfill",
"command/artillery",
}
local hours3, hours15 = 3 * 216000, 15 * 60
Roles.new_role("Regular", "Reg") Roles.new_role("Regular", "Reg")
:set_permission_group("Standard") :set_permission_group("Standard")
:set_custom_color{ r = 79, g = 155, b = 163 } :set_custom_color{ r = 79, g = 155, b = 163 }
:set_parent("Guest") :set_parent("Guest")
:allow{ :allow{
"gui/task-list/add",
"gui/task-list/edit",
"command/kill", "command/kill",
"command/rainbow", "command/rainbow",
"command/spawn", "command/spawn",
"command/me", "command/me",
"command/vlayer-info",
"standard-decon", "standard-decon",
"bypass-entity-protection", "bypass-entity-protection",
"bypass-nukeprotect", "bypass-nukeprotect"
} }
:set_auto_assign_condition(function(player) :set_auto_assign_condition(function(player)
if player.online_time >= hours3 then if player.online_time >= hours1 then
return true return true
else else
local stats = Statistics:get(player, {}) local stats = Statistics:get(player, {})
@@ -271,8 +251,8 @@ local default = Roles.new_role("Guest", "")
:set_permission_group("Guest") :set_permission_group("Guest")
:set_custom_color{ r = 185, g = 187, b = 160 } :set_custom_color{ r = 185, g = 187, b = 160 }
:allow{ :allow{
"command/tag", -- "command/tag",
"command/tag-clear", -- "command/tag-clear",
"command/commands", "command/commands",
"command/get-role", "command/get-role",
"command/locate", "command/locate",
@@ -280,6 +260,7 @@ local default = Roles.new_role("Guest", "")
"command/ratio", "command/ratio",
"command/server-ups", "command/server-ups",
"command/save-data", "command/save-data",
"command/save-quickbar",
"command/data-preference", "command/data-preference",
"command/connect", "command/connect",
"gui/player-list", "gui/player-list",
@@ -312,57 +293,63 @@ Roles.define_role_order{
"System", -- Best to keep root at top "System", -- Best to keep root at top
"Senior Administrator", "Senior Administrator",
"Administrator", "Administrator",
"Senior Moderator",
"Moderator", "Moderator",
"Trainee", "Trainee Moderator",
"Board Member", "Board Member",
"Senior Backer",
"Sponsor",
"Supporter", "Supporter",
"Partner", "Partner",
"Veteran", "Senior Member",
"Member", "Member",
"Veteran",
"Regular", "Regular",
"Jail", "Jail",
"Guest", -- Default must be last if you want to apply restrictions to other roles "Guest" -- Default must be last if you want to apply restrictions to other roles
} }
Roles.override_player_roles{ Roles.override_player_roles{
["PHIDIAS0303"] = { "Moderator", "Board Member", "Member" }, ["PHIDIAS0303"] = { "Senior Administrator" },
["aldldl"] = { "Administrator", "Moderator", "Member" }, ["majoro"] = { "Trainee Moderator" },
["arty714"] = { "Senior Administrator", "Moderator", "Member" }, ["konohaScarlet_"] = { "Trainee Moderator" },
["Cooldude2606"] = { "Senior Administrator", "Moderator", "Member" }, ["hihicome3"] = { "Trainee Moderator" },
["Drahc_pro"] = { "Administrator", "Moderator", "Member" }, ["Athenaa"] = { "Trainee Moderator" },
["mark9064"] = { "Administrator", "Moderator", "Member" }, ["rongli"] = { "Trainee Moderator" },
["7h3w1z4rd"] = { "Moderator", "Member" }, ["JamesJung"] = { "Trainee Moderator" },
["FlipHalfling90"] = { "Moderator", "Member" }, ["aldldl"] = { "Moderator" },
["hamsterbryan"] = { "Moderator", "Member" }, ["arty714"] = { "Moderator" },
["HunterOfGames"] = { "Moderator", "Member" }, ["Cooldude2606"] = { "Moderator" },
["NextIdea"] = { "Moderator", "Member" }, ["Drahc_pro"] = { "Moderator" },
["TheKernel32"] = { "Moderator", "Member" }, ["mark9064"] = { "Moderator" },
["TheKernel64"] = { "Moderator", "Member" }, ["7h3w1z4rd"] = { "Moderator" },
["tovernaar123"] = { "Moderator", "Member" }, ["FlipHalfling90"] = { "Moderator" },
["UUBlueFire"] = { "Moderator", "Member" }, ["hamsterbryan"] = { "Moderator" },
["AssemblyStorm"] = { "Moderator", "Member" }, ["HunterOfGames"] = { "Moderator" },
["banakeg"] = { "Moderator", "Member" }, ["NextIdea"] = { "Moderator" },
["connormkii"] = { "Moderator", "Member" }, ["TheKernel32"] = { "Moderator" },
["cydes"] = { "Moderator", "Member" }, ["TheKernel64"] = { "Moderator" },
["darklich14"] = { "Moderator", "Member" }, ["tovernaar123"] = { "Moderator" },
["facere"] = { "Moderator", "Member" }, ["UUBlueFire"] = { "Moderator" },
["freek18"] = { "Moderator", "Member" }, ["AssemblyStorm"] = { "Moderator" },
["Gizan"] = { "Moderator", "Member" }, ["banakeg"] = { "Moderator" },
["LoicB"] = { "Moderator", "Member" }, ["connormkii"] = { "Moderator" },
["M74132"] = { "Moderator", "Member" }, ["cydes"] = { "Moderator" },
["mafisch3"] = { "Moderator", "Member" }, ["darklich14"] = { "Moderator" },
["maplesyrup01"] = { "Moderator", "Member" }, ["facere"] = { "Moderator" },
["ookl"] = { "Moderator", "Member" }, ["freek18"] = { "Moderator" },
["Phoenix27833"] = { "Moderator", "Member" }, ["Gizan"] = { "Moderator" },
["porelos"] = { "Moderator", "Member" }, ["LoicB"] = { "Moderator" },
["Ruuyji"] = { "Moderator", "Member" }, ["M74132"] = { "Moderator" },
["samy115"] = { "Moderator", "Member" }, ["mafisch3"] = { "Moderator" },
["SilentLog"] = { "Moderator", "Member" }, ["maplesyrup01"] = { "Moderator" },
["Tcheko"] = { "Moderator", "Member" }, ["ookl"] = { "Moderator" },
["thadius856"] = { "Moderator", "Member" }, ["Phoenix27833"] = { "Moderator" },
["whoami32"] = { "Moderator", "Member" }, ["porelos"] = { "Moderator" },
["Windbomb"] = { "Moderator", "Member" }, ["Ruuyji"] = { "Moderator" },
["XenoCyber"] = { "Moderator", "Member" }, ["samy115"] = { "Moderator" },
["SilentLog"] = { "Moderator" },
["Tcheko"] = { "Moderator" },
["thadius856"] = { "Moderator" },
["whoami32"] = { "Moderator" },
["Windbomb"] = { "Moderator" },
["XenoCyber"] = { "Moderator" }
} }

View File

@@ -1,8 +1,2 @@
return { return {
Cooldude2606 = "Lua lets you set metatables on numbers, did you know that? Cooldude2606 knows this.",
samy115 = "Tremble in fear as the banhammer is now here, its owner: samy115",
XenoCyber = '"Fire Fire Fire" oops wrong game, have no fear XenoCyber is here',
HunterOfGames = "Unable to support HunterOfGames. You must construct additional miners.",
ookl = 'ookl says: "Pineapples are amazing, hello everyone!"',
arty714 = "Arty\'s Potato made it!",
} }

View File

@@ -4,180 +4,80 @@
return { return {
spawn_area = { --- @setting spawn_area Settings relating to the whole spawn area spawn_area = { --- @setting spawn_area Settings relating to the whole spawn area
-- Enable predefined patches: 128, else: 32 -- Enable predefined patches: 128, else: 32
deconstruction_radius = 20, -- @setting deconstruction_radius All entities within this radius will be removed deconstruction_radius = 12, -- @setting deconstruction_radius All entities within this radius will be removed
tile_radius = 20, deconstruction_tile = 'refined-concrete', --- @setting deconstruction_tile Tile to be placed in the deconstruction radius, use nil for map gen
deconstruction_tile = "concrete", --- @setting deconstruction_tile Tile to be placed in the deconstruction radius, use nil for map gen tile_radius = 14,
landfill_radius = 50, --- @setting pattern_radius All water within this radius will be land filled landfill_radius = 16, --- @setting pattern_radius All water within this radius will be land filled
}, },
turrets = { --- @setting turrets Settings relating to adding turrets to spawn turrets = { --- @setting turrets Settings relating to adding turrets to spawn
enabled = true, --- @setting enabled Whether turrets will be added to spawn enabled = true, --- @setting enabled Whether turrets will be added to spawn
ammo_type = "uranium-rounds-magazine", --- @setting ammo_type The ammo type that will be used during refills ammo_type = 'uranium-rounds-magazine', --- @setting ammo_type The ammo type that will be used during refills
refill_time = 60 * 60 * 5, --- @setting refill_time The time in ticks between each refill of the turrets, only change if having lag issues refill_time = 60*60*5, --- @setting refill_time The time in ticks between each refill of the turrets, only change if having lag issues
offset = { x = 0, y = 0 }, --- @setting offset The position offset to apply to turrets offset = {x=0, y=0}, --- @setting offset The position offset to apply to turrets
locations = { --- @setting locations The locations of all turrets, this list can change during runtime locations = { --- @setting locations The locations of all turrets, this list can change during runtime
{ surface = 1, position = { x = -3, y = -3 } }, {surface=1, position={x=2, y=2}},
{ surface = 1, position = { x = 3, y = -3 } }, {surface=1, position={x=2, y=-2}},
{ surface = 1, position = { x = -3, y = 3 } }, {surface=1, position={x=-2, y=2}},
{ surface = 1, position = { x = 3, y = 3 } }, {surface=1, position={x=-2, y=-2}},
}, }
}, },
afk_belts = { --- @setting afk_belts Settings relating to adding afk belts to spawn afk_belts = { --- @setting afk_belts Settings relating to adding afk belts to spawn
enabled = true, --- @setting enabled Whether afk belts will be added to spawn enabled = true, --- @setting enabled Whether afk belts will be added to spawn
belt_type = "transport-belt", --- @setting belt_type The belt to be used as afk belts belt_type = 'transport-belt', --- @setting belt_type The belt to be used as afk belts
protected = true, --- @setting protected Whether belts will be protected from player interaction protected = true, --- @setting protected Whether belts will be protected from player interaction
offset = { x = 0, y = 0 }, --- @setting offset The position offset to apply to afk belts offset = {x=0, y=0}, --- @setting offset The position offset to apply to afk belts
locations = { --- @setting locations The locations to spawn afk belts at, given as the top left position locations={ --- @setting locations The locations to spawn afk belts at, given as the top left position
{ -5, -5 }, { 5, -5 }, {4, 4},
{ -5, 5 }, { 5, 5 }, {4, -4},
}, {-4, 4},
{-4, -4}
}
}, },
water = { --- @setting water Settings relating to adding water to spawn water = { --- @setting water Settings relating to adding water to spawn
enabled = true, --- @setting enabled Whether water tiles will be added to spawn enabled = true, --- @setting enabled Whether water tiles will be added to spawn
water_tile = "water-mud", --- @setting water_tile The tile to be used as the water tile water_tile = 'water-mud', --- @setting water_tile The tile to be used as the water tile
offset = { x = 0, y = 0 }, --- @setting offset The position offset to apply to water tiles offset = {x=0, y=0}, --- @setting offset The position offset to apply to water tiles
locations = { --- @setting locations The location of the water tiles {x,y} locations = { --- @setting locations The location of the water tiles {x,y}
-- Each is a 3x3 with the closest tile to 0,0 removed -- Each is a 3x3 with the closest tile to 0,0 removed
{ 7, 8 }, { 7, 9 }, { 8, 7 }, { 8, 8 }, { 8, 9 }, { 9, 7 }, { 9, 8 }, { 9, 9 }, -- Bottom Right {5, 6}, {5, 7}, {6, 5}, {6, 6}, {6, 7}, {7, 5}, {7, 6}, {7, 7},
{ 7, -9 }, { 7, -10 }, { 8, -8 }, { 8, -9 }, { 8, -10 }, { 9, -8 }, { 9, -9 }, { 9, -10 }, -- Top Right {5, -7}, {5, -8}, {6, -6}, {6, -7}, {6, -8}, {7, -6}, {7, -7}, {7, -8},
{ -8, -9 }, { -8, -10 }, { -9, -8 }, { -9, -9 }, { -9, -10 }, { -10, -8 }, { -10, -9 }, { -10, -10 }, -- Top Left {-6, 6}, {-6, 7}, {-7, 5}, {-7, 6}, {-7, 7}, {-8, 5}, {-8, 6}, {-8, 7},
{ -8, 8 }, { -8, 9 }, { -9, 7 }, { -9, 8 }, { -9, 9 }, { -10, 7 }, { -10, 8 }, { -10, 9 }, -- Bottom Left {-6, -7}, {-6, -8}, {-7, -6}, {-7, -7}, {-7, -8}, {-8, -6}, {-8, -7}, {-8, -8},
}, }
}, },
entities = { --- @setting entities Settings relating to adding entities to spawn entities = { --- @setting entities Settings relating to adding entities to spawn
enabled = true, --- @setting enabled Whether entities will be added to spawn enabled = true, --- @setting enabled Whether entities will be added to spawn
protected = true, --- @setting protected Whether entities will be protected from player interaction protected = true, --- @setting protected Whether entities will be protected from player interaction
operable = true, --- @setting operable Whether entities can be opened by players, must be true if chests are used operable = true, --- @setting operable Whether entities can be opened by players, must be true if chests are used
offset = { x = 0, y = -2 }, --- @setting offset The position offset to apply to entities offset = {x=0, y=0}, --- @setting offset The position offset to apply to entities
locations = { --- @setting locations The location and names of entities {name,x,y} locations = { --- @setting locations The location and names of entities {name,x,y}
{ "stone-wall", -10, -5 }, { "stone-wall", -10, -4 }, { "stone-wall", -10, -3 }, { "stone-wall", -10, -2 }, { "stone-wall", -10, -1 }, { "stone-wall", -10, 0 }, { "stone-wall", -10, 3 }, { "stone-wall", -10, 4 }, { "stone-wall", -10, 5 }, {'steel-chest', 1, 3}, {'steel-chest', 1, 4}, {'steel-chest', 1, 5},
{ "stone-wall", -10, 6 }, { "stone-wall", -10, 7 }, { "stone-wall", -10, 8 }, { "small-lamp", -8, -4 }, { "small-lamp", -8, -1 }, { "iron-chest", -8, 0 }, { "iron-chest", -8, 3 }, { "small-lamp", -8, 4 }, {'steel-chest', 3, 1}, {'steel-chest', 4, 1}, {'steel-chest', 5, 1},
{ "small-lamp", -8, 7 }, { "stone-wall", -7, -8 }, { "small-electric-pole", -7, -2 }, { "iron-chest", -7, 0 }, { "iron-chest", -7, 3 }, { "small-electric-pole", -7, 5 }, { "stone-wall", -7, 11 }, { "stone-wall", -6, -8 }, { "small-lamp", -6, -6 }, {'steel-chest', 1, -4}, {'steel-chest', 1, -5}, {'steel-chest', 1, -6},
{ "iron-chest", -6, 0 }, { "iron-chest", -6, 3 }, { "small-lamp", -6, 9 }, { "stone-wall", -6, 11 }, { "stone-wall", -5, -8 }, { "small-lamp", -5, -1 }, { "iron-chest", -5, 0 }, { "iron-chest", -5, 3 }, { "small-lamp", -5, 4 }, { "stone-wall", -5, 11 }, {'steel-chest', 3, -2}, {'steel-chest', 4, -2}, {'steel-chest', 5, -2},
{ "stone-wall", -4, -8 }, { "small-electric-pole", -4, -5 }, { "iron-chest", -4, 0 }, { "iron-chest", -4, 3 }, { "small-electric-pole", -4, 8 }, { "stone-wall", -4, 11 }, { "stone-wall", -3, -8 }, { "small-lamp", -3, -6 }, { "small-lamp", -3, -3 }, { "small-lamp", -3, 6 }, {'steel-chest', -2, 3}, {'steel-chest', -2, 4}, {'steel-chest', -2, 5},
{ "small-lamp", -3, 9 }, { "stone-wall", -3, 11 }, { "stone-wall", -2, -8 }, { "iron-chest", -2, -6 }, { "iron-chest", -2, -5 }, { "iron-chest", -2, -4 }, { "iron-chest", -2, -3 }, { "iron-chest", -2, -2 }, { "iron-chest", -2, 5 }, { "iron-chest", -2, 6 }, {'steel-chest', -4, 1}, {'steel-chest', -5, 1}, {'steel-chest', -6, 1},
{ "iron-chest", -2, 7 }, { "iron-chest", -2, 8 }, { "iron-chest", -2, 9 }, { "stone-wall", -2, 11 }, { "stone-wall", 1, -8 }, { "iron-chest", 1, -6 }, {'steel-chest', -2, -4}, {'steel-chest', -2, -5}, {'steel-chest', -2, -6},
{ "iron-chest", 1, -5 }, { "iron-chest", 1, -4 }, { "iron-chest", 1, -3 }, { "iron-chest", 1, -2 }, { "iron-chest", 1, 5 }, { "iron-chest", 1, 6 }, { "iron-chest", 1, 7 }, { "iron-chest", 1, 8 }, { "iron-chest", 1, 9 }, { "stone-wall", 1, 11 }, {'steel-chest', -4, -2}, {'steel-chest', -5, -2}, {'steel-chest', -6, -2},
{ "stone-wall", 2, -8 }, { "small-lamp", 2, -6 }, { "small-lamp", 2, -3 }, { "small-lamp", 2, 6 }, { "small-lamp", 2, 9 }, { "stone-wall", 2, 11 }, { "stone-wall", 3, -8 }, { "small-electric-pole", 3, -5 }, { "iron-chest", 3, 0 }, { "iron-chest", 3, 3 }, {'medium-electric-pole', 2, 3}, {'medium-electric-pole', 2, -4}, {'medium-electric-pole', -3, 3}, {'medium-electric-pole', -3, -4},
{ "small-electric-pole", 3, 8 }, { "stone-wall", 3, 11 }, { "stone-wall", 4, -8 }, { "small-lamp", 4, -1 }, { "iron-chest", 4, 0 }, { "iron-chest", 4, 3 }, { "small-lamp", 4, 4 }, { "stone-wall", 4, 11 }, { "stone-wall", 5, -8 }, { "small-lamp", 5, -6 }, {'small-lamp', 2, 4}, {'small-lamp', 2, -5}, {'small-lamp', -3, 4}, {'small-lamp', -3, -5},
{ "iron-chest", 5, 0 }, { "iron-chest", 5, 3 }, { "small-lamp", 5, 9 }, { "stone-wall", 5, 11 }, { "stone-wall", 6, -8 }, { "small-electric-pole", 6, -2 }, { "iron-chest", 6, 0 }, { "iron-chest", 6, 3 }, { "small-electric-pole", 6, 5 }, { "stone-wall", 6, 11 }, {'small-lamp', 4, 2}, {'small-lamp', 4, -3}, {'small-lamp', -5, 2}, {'small-lamp', -5, -3},
{ "small-lamp", 7, -4 }, { "small-lamp", 7, -1 }, { "iron-chest", 7, 0 }, { "iron-chest", 7, 3 }, { "small-lamp", 7, 4 }, { "small-lamp", 7, 7 }, { "stone-wall", 9, -5 }, {'stone-wall', 1, 7}, {'stone-wall', 2, 7}, {'stone-wall', 3, 7}, {'stone-wall', 4, 7},
{ "stone-wall", 9, -4 }, { "stone-wall", 9, -3 }, { "stone-wall", 9, -2 }, { "stone-wall", 9, -1 }, { "stone-wall", 9, 0 }, { "stone-wall", 9, 3 }, { "stone-wall", 9, 4 }, { "stone-wall", 9, 5 }, { "stone-wall", 9, 6 }, { "stone-wall", 9, 7 }, {'stone-wall', 7, 1}, {'stone-wall', 7, 2}, {'stone-wall', 7, 3}, {'stone-wall', 7, 4},
{ "stone-wall", 9, 8 }, {'stone-wall', 1, -8}, {'stone-wall', 2, -8}, {'stone-wall', 3, -8}, {'stone-wall', 4, -8},
}, {'stone-wall', 7, -2}, {'stone-wall', 7, -3}, {'stone-wall', 7, -4}, {'stone-wall', 7, -5},
{'stone-wall', -2, 7}, {'stone-wall', -3, 7}, {'stone-wall', -4, 7}, {'stone-wall', -5, 7},
{'stone-wall', -8, 1}, {'stone-wall', -8, 2}, {'stone-wall', -8, 3}, {'stone-wall', -8, 4},
{'stone-wall', -2, -8}, {'stone-wall', -3, -8}, {'stone-wall', -4, -8}, {'stone-wall', -5, -8},
{'stone-wall', -8, -2}, {'stone-wall', -8, -3}, {'stone-wall', -8, -4}, {'stone-wall', -8, -5},
}
}, },
pattern = { pattern = {
enabled = true, --- @setting enabled Whether pattern tiles will be added to spawn enabled = false, --- @setting enabled Whether pattern tiles will be added to spawn
pattern_tile = "stone-path", --- @setting pattern_tile The tile to be used for the pattern pattern_tile = 'refined-concrete', --- @setting pattern_tile The tile to be used for the pattern
offset = { x = 0, y = -2 }, --- @setting offset The position offset to apply to pattern tiles offset = {x=0, y=0}, --- @setting offset The position offset to apply to pattern tiles
locations = { --- @setting locations The location of the pattern tiles {x,y} locations = { --- @setting locations The location of the pattern tiles {x,y}
{ -49, -3 }, { -49, -2 }, { -49, 1 }, { -49, 2 }, { -49, 5 }, { -49, 6 }, { -48, -4 }, { -48, -3 }, { -48, -2 }, { -48, 1 }, { -48, 2 }, { -48, 5 }, { -48, 6 }, { -48, 7 }, { -47, -7 }, { -47, -6 }, { -47, -5 }, { -47, -4 }, { -47, -3 }, { -47, -2 }, { -47, 5 }, { -47, 6 }, { -47, 7 }, { -47, 8 }, { -47, 9 }, { -47, 10 }, { -46, -8 }, { -46, -7 }, { -46, -6 }, { -46, -5 }, }
{ -46, -4 }, { -46, -3 }, { -46, -2 }, { -46, -1 }, { -46, 4 }, { -46, 5 }, { -46, 6 }, { -46, 7 }, { -46, 8 }, { -46, 9 }, { -46, 10 }, { -46, 11 }, { -45, -17 }, { -45, -16 }, { -45, -15 }, { -45, -14 }, { -45, -13 }, { -45, -12 }, { -45, -9 }, { -45, -8 }, { -45, -7 }, { -45, -2 }, { -45, -1 }, { -45, 0 }, { -45, 1 }, { -45, 2 }, { -45, 3 }, { -45, 4 }, { -45, 5 }, { -45, 10 },
{ -45, 11 }, { -45, 12 }, { -45, 15 }, { -45, 16 }, { -45, 17 }, { -45, 18 }, { -45, 19 }, { -45, 20 }, { -44, -18 }, { -44, -17 }, { -44, -16 }, { -44, -15 }, { -44, -14 }, { -44, -13 }, { -44, -12 }, { -44, -9 }, { -44, -8 }, { -44, -1 }, { -44, 0 }, { -44, 1 }, { -44, 2 }, { -44, 3 }, { -44, 4 }, { -44, 11 }, { -44, 12 }, { -44, 15 }, { -44, 16 }, { -44, 17 }, { -44, 18 }, { -44, 19 },
{ -44, 20 }, { -44, 21 }, { -43, -19 }, { -43, -18 }, { -43, -17 }, { -43, -1 }, { -43, 0 }, { -43, 1 }, { -43, 2 }, { -43, 3 }, { -43, 4 }, { -43, 20 }, { -43, 21 }, { -43, 22 }, { -42, -19 }, { -42, -18 }, { -42, -1 }, { -42, 0 }, { -42, 1 }, { -42, 2 }, { -42, 3 }, { -42, 4 }, { -42, 21 }, { -42, 22 }, { -41, -25 }, { -41, -24 }, { -41, -19 }, { -41, -18 }, { -41, -13 }, { -41, -12 },
{ -41, -11 }, { -41, -10 }, { -41, -5 }, { -41, -4 }, { -41, 7 }, { -41, 8 }, { -41, 13 }, { -41, 14 }, { -41, 15 }, { -41, 16 }, { -41, 21 }, { -41, 22 }, { -41, 27 }, { -41, 28 }, { -40, -26 }, { -40, -25 }, { -40, -24 }, { -40, -20 }, { -40, -19 }, { -40, -18 }, { -40, -13 }, { -40, -12 }, { -40, -11 }, { -40, -10 }, { -40, -5 }, { -40, -4 }, { -40, 7 }, { -40, 8 }, { -40, 13 }, { -40, 14 },
{ -40, 15 }, { -40, 16 }, { -40, 21 }, { -40, 22 }, { -40, 23 }, { -40, 27 }, { -40, 28 }, { -40, 29 }, { -39, -27 }, { -39, -26 }, { -39, -25 }, { -39, -24 }, { -39, -21 }, { -39, -20 }, { -39, -19 }, { -39, -13 }, { -39, -12 }, { -39, -5 }, { -39, -4 }, { -39, -3 }, { -39, -2 }, { -39, -1 }, { -39, 0 }, { -39, 1 }, { -39, 2 }, { -39, 3 }, { -39, 4 }, { -39, 5 }, { -39, 6 }, { -39, 7 },
{ -39, 8 }, { -39, 15 }, { -39, 16 }, { -39, 22 }, { -39, 23 }, { -39, 24 }, { -39, 27 }, { -39, 28 }, { -39, 29 }, { -39, 30 }, { -38, -27 }, { -38, -26 }, { -38, -25 }, { -38, -24 }, { -38, -21 }, { -38, -20 }, { -38, -13 }, { -38, -12 }, { -38, -5 }, { -38, -4 }, { -38, -3 }, { -38, -2 }, { -38, -1 }, { -38, 0 }, { -38, 1 }, { -38, 2 }, { -38, 3 }, { -38, 4 }, { -38, 5 }, { -38, 6 },
{ -38, 7 }, { -38, 8 }, { -38, 15 }, { -38, 16 }, { -38, 23 }, { -38, 24 }, { -38, 27 }, { -38, 28 }, { -38, 29 }, { -38, 30 }, { -37, -17 }, { -37, -16 }, { -37, -13 }, { -37, -12 }, { -37, -11 }, { -37, -10 }, { -37, -4 }, { -37, -3 }, { -37, -2 }, { -37, -1 }, { -37, 0 }, { -37, 3 }, { -37, 4 }, { -37, 5 }, { -37, 6 }, { -37, 7 }, { -37, 13 }, { -37, 14 }, { -37, 15 }, { -37, 16 },
{ -37, 19 }, { -37, 20 }, { -36, -17 }, { -36, -16 }, { -36, -13 }, { -36, -12 }, { -36, -11 }, { -36, -10 }, { -36, -9 }, { -36, -3 }, { -36, -2 }, { -36, -1 }, { -36, 0 }, { -36, 3 }, { -36, 4 }, { -36, 5 }, { -36, 6 }, { -36, 12 }, { -36, 13 }, { -36, 14 }, { -36, 15 }, { -36, 16 }, { -36, 19 }, { -36, 20 }, { -35, -29 }, { -35, -28 }, { -35, -23 }, { -35, -22 }, { -35, -17 }, { -35, -16 },
{ -35, -12 }, { -35, -11 }, { -35, -10 }, { -35, -9 }, { -35, -8 }, { -35, 11 }, { -35, 12 }, { -35, 13 }, { -35, 14 }, { -35, 15 }, { -35, 19 }, { -35, 20 }, { -35, 25 }, { -35, 26 }, { -35, 31 }, { -35, 32 }, { -34, -30 }, { -34, -29 }, { -34, -28 }, { -34, -23 }, { -34, -22 }, { -34, -17 }, { -34, -16 }, { -34, -15 }, { -34, -11 }, { -34, -10 }, { -34, -9 }, { -34, -8 }, { -34, 11 }, { -34, 12 },
{ -34, 13 }, { -34, 14 }, { -34, 18 }, { -34, 19 }, { -34, 20 }, { -34, 25 }, { -34, 26 }, { -34, 31 }, { -34, 32 }, { -34, 33 }, { -33, -31 }, { -33, -30 }, { -33, -29 }, { -33, -28 }, { -33, -23 }, { -33, -22 }, { -33, -16 }, { -33, -15 }, { -33, -14 }, { -33, -5 }, { -33, -4 }, { -33, -1 }, { -33, 0 }, { -33, 3 }, { -33, 4 }, { -33, 7 }, { -33, 8 }, { -33, 17 }, { -33, 18 }, { -33, 19 },
{ -33, 25 }, { -33, 26 }, { -33, 31 }, { -33, 32 }, { -33, 33 }, { -33, 34 }, { -32, -32 }, { -32, -31 }, { -32, -30 }, { -32, -29 }, { -32, -28 }, { -32, -27 }, { -32, -23 }, { -32, -22 }, { -32, -21 }, { -32, -15 }, { -32, -14 }, { -32, -6 }, { -32, -5 }, { -32, -4 }, { -32, -1 }, { -32, 0 }, { -32, 3 }, { -32, 4 }, { -32, 7 }, { -32, 8 }, { -32, 9 }, { -32, 17 }, { -32, 18 }, { -32, 24 },
{ -32, 25 }, { -32, 26 }, { -32, 30 }, { -32, 31 }, { -32, 32 }, { -32, 33 }, { -32, 34 }, { -32, 35 }, { -31, -33 }, { -31, -32 }, { -31, -31 }, { -31, -30 }, { -31, -29 }, { -31, -28 }, { -31, -27 }, { -31, -26 }, { -31, -22 }, { -31, -21 }, { -31, -20 }, { -31, -19 }, { -31, -18 }, { -31, -11 }, { -31, -10 }, { -31, -9 }, { -31, -8 }, { -31, -7 }, { -31, -6 }, { -31, -5 }, { -31, -1 }, { -31, 0 },
{ -31, 1 }, { -31, 2 }, { -31, 3 }, { -31, 4 }, { -31, 8 }, { -31, 9 }, { -31, 10 }, { -31, 11 }, { -31, 12 }, { -31, 13 }, { -31, 14 }, { -31, 21 }, { -31, 22 }, { -31, 23 }, { -31, 24 }, { -31, 25 }, { -31, 29 }, { -31, 30 }, { -31, 31 }, { -31, 32 }, { -31, 33 }, { -31, 34 }, { -31, 35 }, { -31, 36 }, { -30, -33 }, { -30, -32 }, { -30, -31 }, { -30, -30 }, { -30, -29 }, { -30, -28 },
{ -30, -27 }, { -30, -26 }, { -30, -21 }, { -30, -20 }, { -30, -19 }, { -30, -18 }, { -30, -11 }, { -30, -10 }, { -30, -9 }, { -30, -8 }, { -30, -7 }, { -30, -6 }, { -30, -1 }, { -30, 0 }, { -30, 1 }, { -30, 2 }, { -30, 3 }, { -30, 4 }, { -30, 9 }, { -30, 10 }, { -30, 11 }, { -30, 12 }, { -30, 13 }, { -30, 14 }, { -30, 21 }, { -30, 22 }, { -30, 23 }, { -30, 24 }, { -30, 29 }, { -30, 30 },
{ -30, 31 }, { -30, 32 }, { -30, 33 }, { -30, 34 }, { -30, 35 }, { -30, 36 }, { -29, -37 }, { -29, -36 }, { -29, -30 }, { -29, -29 }, { -29, -28 }, { -29, -27 }, { -29, -26 }, { -29, -15 }, { -29, -14 }, { -29, -10 }, { -29, -9 }, { -29, -8 }, { -29, -7 }, { -29, 10 }, { -29, 11 }, { -29, 12 }, { -29, 13 }, { -29, 17 }, { -29, 18 }, { -29, 29 }, { -29, 30 }, { -29, 31 }, { -29, 32 }, { -29, 33 },
{ -29, 39 }, { -29, 40 }, { -28, -38 }, { -28, -37 }, { -28, -36 }, { -28, -29 }, { -28, -28 }, { -28, -27 }, { -28, -26 }, { -28, -16 }, { -28, -15 }, { -28, -14 }, { -28, -9 }, { -28, -8 }, { -28, 11 }, { -28, 12 }, { -28, 17 }, { -28, 18 }, { -28, 19 }, { -28, 29 }, { -28, 30 }, { -28, 31 }, { -28, 32 }, { -28, 39 }, { -28, 40 }, { -28, 41 }, { -27, -39 }, { -27, -38 }, { -27, -37 }, { -27, -36 },
{ -27, -23 }, { -27, -22 }, { -27, -19 }, { -27, -18 }, { -27, -17 }, { -27, -16 }, { -27, -15 }, { -27, -5 }, { -27, -4 }, { -27, -1 }, { -27, 0 }, { -27, 1 }, { -27, 2 }, { -27, 3 }, { -27, 4 }, { -27, 7 }, { -27, 8 }, { -27, 18 }, { -27, 19 }, { -27, 20 }, { -27, 21 }, { -27, 22 }, { -27, 25 }, { -27, 26 }, { -27, 39 }, { -27, 40 }, { -27, 41 }, { -27, 42 }, { -26, -39 }, { -26, -38 },
{ -26, -37 }, { -26, -36 }, { -26, -24 }, { -26, -23 }, { -26, -22 }, { -26, -19 }, { -26, -18 }, { -26, -17 }, { -26, -16 }, { -26, -6 }, { -26, -5 }, { -26, -4 }, { -26, -1 }, { -26, 0 }, { -26, 1 }, { -26, 2 }, { -26, 3 }, { -26, 4 }, { -26, 7 }, { -26, 8 }, { -26, 9 }, { -26, 19 }, { -26, 20 }, { -26, 21 }, { -26, 22 }, { -26, 25 }, { -26, 26 }, { -26, 27 }, { -26, 39 }, { -26, 40 },
{ -26, 41 }, { -26, 42 }, { -25, -33 }, { -25, -32 }, { -25, -31 }, { -25, -30 }, { -25, -25 }, { -25, -24 }, { -25, -23 }, { -25, -22 }, { -25, -19 }, { -25, -18 }, { -25, -17 }, { -25, -9 }, { -25, -8 }, { -25, -7 }, { -25, -6 }, { -25, -5 }, { -25, -4 }, { -25, -1 }, { -25, 0 }, { -25, 1 }, { -25, 2 }, { -25, 3 }, { -25, 4 }, { -25, 7 }, { -25, 8 }, { -25, 9 }, { -25, 10 }, { -25, 11 },
{ -25, 12 }, { -25, 20 }, { -25, 21 }, { -25, 22 }, { -25, 25 }, { -25, 26 }, { -25, 27 }, { -25, 28 }, { -25, 33 }, { -25, 34 }, { -25, 35 }, { -25, 36 }, { -24, -33 }, { -24, -32 }, { -24, -31 }, { -24, -30 }, { -24, -29 }, { -24, -25 }, { -24, -24 }, { -24, -23 }, { -24, -22 }, { -24, -19 }, { -24, -18 }, { -24, -9 }, { -24, -8 }, { -24, -7 }, { -24, -6 }, { -24, -5 }, { -24, -4 }, { -24, -1 },
{ -24, 0 }, { -24, 1 }, { -24, 2 }, { -24, 3 }, { -24, 4 }, { -24, 7 }, { -24, 8 }, { -24, 9 }, { -24, 10 }, { -24, 11 }, { -24, 12 }, { -24, 21 }, { -24, 22 }, { -24, 25 }, { -24, 26 }, { -24, 27 }, { -24, 28 }, { -24, 32 }, { -24, 33 }, { -24, 34 }, { -24, 35 }, { -24, 36 }, { -23, -37 }, { -23, -36 }, { -23, -30 }, { -23, -29 }, { -23, -28 }, { -23, -19 }, { -23, -18 }, { -23, -15 },
{ -23, -14 }, { -23, -9 }, { -23, -8 }, { -23, -7 }, { -23, -6 }, { -23, -5 }, { -23, 0 }, { -23, 1 }, { -23, 2 }, { -23, 3 }, { -23, 8 }, { -23, 9 }, { -23, 10 }, { -23, 11 }, { -23, 12 }, { -23, 17 }, { -23, 18 }, { -23, 21 }, { -23, 22 }, { -23, 31 }, { -23, 32 }, { -23, 33 }, { -23, 39 }, { -23, 40 }, { -22, -38 }, { -22, -37 }, { -22, -36 }, { -22, -29 }, { -22, -28 }, { -22, -19 },
{ -22, -18 }, { -22, -15 }, { -22, -14 }, { -22, -13 }, { -22, -9 }, { -22, -8 }, { -22, -7 }, { -22, -6 }, { -22, 1 }, { -22, 2 }, { -22, 9 }, { -22, 10 }, { -22, 11 }, { -22, 12 }, { -22, 16 }, { -22, 17 }, { -22, 18 }, { -22, 21 }, { -22, 22 }, { -22, 31 }, { -22, 32 }, { -22, 39 }, { -22, 40 }, { -22, 41 }, { -21, -41 }, { -21, -40 }, { -21, -39 }, { -21, -38 }, { -21, -37 }, { -21, -29 },
{ -21, -28 }, { -21, -25 }, { -21, -24 }, { -21, -23 }, { -21, -22 }, { -21, -21 }, { -21, -20 }, { -21, -19 }, { -21, -18 }, { -21, -15 }, { -21, -14 }, { -21, -13 }, { -21, -12 }, { -21, -3 }, { -21, -2 }, { -21, 5 }, { -21, 6 }, { -21, 15 }, { -21, 16 }, { -21, 17 }, { -21, 18 }, { -21, 21 }, { -21, 22 }, { -21, 23 }, { -21, 24 }, { -21, 25 }, { -21, 26 }, { -21, 27 }, { -21, 28 }, { -21, 31 },
{ -21, 32 }, { -21, 40 }, { -21, 41 }, { -21, 42 }, { -21, 43 }, { -21, 44 }, { -20, -42 }, { -20, -41 }, { -20, -40 }, { -20, -39 }, { -20, -38 }, { -20, -29 }, { -20, -28 }, { -20, -25 }, { -20, -24 }, { -20, -23 }, { -20, -22 }, { -20, -21 }, { -20, -20 }, { -20, -19 }, { -20, -18 }, { -20, -15 }, { -20, -14 }, { -20, -13 }, { -20, -12 }, { -20, -3 }, { -20, -2 }, { -20, -1 }, { -20, 4 }, { -20, 5 },
{ -20, 6 }, { -20, 15 }, { -20, 16 }, { -20, 17 }, { -20, 18 }, { -20, 21 }, { -20, 22 }, { -20, 23 }, { -20, 24 }, { -20, 25 }, { -20, 26 }, { -20, 27 }, { -20, 28 }, { -20, 31 }, { -20, 32 }, { -20, 41 }, { -20, 42 }, { -20, 43 }, { -20, 44 }, { -20, 45 }, { -19, -43 }, { -19, -42 }, { -19, -41 }, { -19, -35 }, { -19, -34 }, { -19, -33 }, { -19, -32 }, { -19, -25 }, { -19, -24 }, { -19, -23 },
{ -19, -15 }, { -19, -14 }, { -19, -13 }, { -19, -9 }, { -19, -8 }, { -19, -7 }, { -19, -6 }, { -19, -2 }, { -19, -1 }, { -19, 0 }, { -19, 1 }, { -19, 2 }, { -19, 3 }, { -19, 4 }, { -19, 5 }, { -19, 9 }, { -19, 10 }, { -19, 11 }, { -19, 12 }, { -19, 16 }, { -19, 17 }, { -19, 18 }, { -19, 26 }, { -19, 27 }, { -19, 28 }, { -19, 35 }, { -19, 36 }, { -19, 37 }, { -19, 38 }, { -19, 44 },
{ -19, 45 }, { -19, 46 }, { -18, -43 }, { -18, -42 }, { -18, -35 }, { -18, -34 }, { -18, -33 }, { -18, -32 }, { -18, -31 }, { -18, -26 }, { -18, -25 }, { -18, -24 }, { -18, -15 }, { -18, -14 }, { -18, -10 }, { -18, -9 }, { -18, -8 }, { -18, -7 }, { -18, -6 }, { -18, -1 }, { -18, 0 }, { -18, 1 }, { -18, 2 }, { -18, 3 }, { -18, 4 }, { -18, 9 }, { -18, 10 }, { -18, 11 }, { -18, 12 }, { -18, 13 },
{ -18, 17 }, { -18, 18 }, { -18, 27 }, { -18, 28 }, { -18, 29 }, { -18, 34 }, { -18, 35 }, { -18, 36 }, { -18, 37 }, { -18, 38 }, { -18, 45 }, { -18, 46 }, { -17, -43 }, { -17, -42 }, { -17, -32 }, { -17, -31 }, { -17, -30 }, { -17, -27 }, { -17, -26 }, { -17, -25 }, { -17, -21 }, { -17, -20 }, { -17, -19 }, { -17, -18 }, { -17, -17 }, { -17, -16 }, { -17, -15 }, { -17, -14 }, { -17, -11 }, { -17, -10 },
{ -17, -9 }, { -17, -8 }, { -17, -7 }, { -17, -6 }, { -17, 0 }, { -17, 1 }, { -17, 2 }, { -17, 3 }, { -17, 9 }, { -17, 10 }, { -17, 11 }, { -17, 12 }, { -17, 13 }, { -17, 14 }, { -17, 17 }, { -17, 18 }, { -17, 19 }, { -17, 20 }, { -17, 21 }, { -17, 22 }, { -17, 23 }, { -17, 24 }, { -17, 28 }, { -17, 29 }, { -17, 30 }, { -17, 33 }, { -17, 34 }, { -17, 35 }, { -17, 45 }, { -17, 46 },
{ -16, -43 }, { -16, -42 }, { -16, -31 }, { -16, -30 }, { -16, -27 }, { -16, -26 }, { -16, -21 }, { -16, -20 }, { -16, -19 }, { -16, -18 }, { -16, -17 }, { -16, -16 }, { -16, -15 }, { -16, -14 }, { -16, -11 }, { -16, -10 }, { -16, -9 }, { -16, -8 }, { -16, -7 }, { -16, -6 }, { -16, 1 }, { -16, 2 }, { -16, 9 }, { -16, 10 }, { -16, 11 }, { -16, 12 }, { -16, 13 }, { -16, 14 }, { -16, 17 }, { -16, 18 },
{ -16, 19 }, { -16, 20 }, { -16, 21 }, { -16, 22 }, { -16, 23 }, { -16, 24 }, { -16, 29 }, { -16, 30 }, { -16, 33 }, { -16, 34 }, { -16, 45 }, { -16, 46 }, { -15, -43 }, { -15, -42 }, { -15, -39 }, { -15, -38 }, { -15, -37 }, { -15, -36 }, { -15, -35 }, { -15, -34 }, { -15, -20 }, { -15, -19 }, { -15, -18 }, { -15, -17 }, { -15, -10 }, { -15, -9 }, { -15, -8 }, { -15, -7 }, { -15, -3 }, { -15, -2 },
{ -15, 1 }, { -15, 2 }, { -15, 5 }, { -15, 6 }, { -15, 10 }, { -15, 11 }, { -15, 12 }, { -15, 13 }, { -15, 20 }, { -15, 21 }, { -15, 22 }, { -15, 23 }, { -15, 37 }, { -15, 38 }, { -15, 39 }, { -15, 40 }, { -15, 41 }, { -15, 42 }, { -15, 45 }, { -15, 46 }, { -14, -43 }, { -14, -42 }, { -14, -39 }, { -14, -38 }, { -14, -37 }, { -14, -36 }, { -14, -35 }, { -14, -34 }, { -14, -33 }, { -14, -19 },
{ -14, -18 }, { -14, -9 }, { -14, -8 }, { -14, -4 }, { -14, -3 }, { -14, -2 }, { -14, 1 }, { -14, 2 }, { -14, 5 }, { -14, 6 }, { -14, 7 }, { -14, 11 }, { -14, 12 }, { -14, 21 }, { -14, 22 }, { -14, 36 }, { -14, 37 }, { -14, 38 }, { -14, 39 }, { -14, 40 }, { -14, 41 }, { -14, 42 }, { -14, 45 }, { -14, 46 }, { -13, -39 }, { -13, -38 }, { -13, -35 }, { -13, -34 }, { -13, -33 }, { -13, -32 },
{ -13, -29 }, { -13, -28 }, { -13, -15 }, { -13, -14 }, { -13, -5 }, { -13, -4 }, { -13, -3 }, { -13, -2 }, { -13, 5 }, { -13, 6 }, { -13, 7 }, { -13, 8 }, { -13, 17 }, { -13, 18 }, { -13, 31 }, { -13, 32 }, { -13, 35 }, { -13, 36 }, { -13, 37 }, { -13, 38 }, { -13, 41 }, { -13, 42 }, { -12, -39 }, { -12, -38 }, { -12, -35 }, { -12, -34 }, { -12, -33 }, { -12, -32 }, { -12, -29 }, { -12, -28 },
{ -12, -27 }, { -12, -16 }, { -12, -15 }, { -12, -14 }, { -12, -13 }, { -12, -5 }, { -12, -4 }, { -12, -3 }, { -12, -2 }, { -12, 5 }, { -12, 6 }, { -12, 7 }, { -12, 8 }, { -12, 16 }, { -12, 17 }, { -12, 18 }, { -12, 19 }, { -12, 30 }, { -12, 31 }, { -12, 32 }, { -12, 35 }, { -12, 36 }, { -12, 37 }, { -12, 38 }, { -12, 41 }, { -12, 42 }, { -11, -43 }, { -11, -42 }, { -11, -34 }, { -11, -33 },
{ -11, -32 }, { -11, -29 }, { -11, -28 }, { -11, -27 }, { -11, -26 }, { -11, -23 }, { -11, -22 }, { -11, -21 }, { -11, -20 }, { -11, -17 }, { -11, -16 }, { -11, -15 }, { -11, -14 }, { -11, -13 }, { -11, -12 }, { -11, -9 }, { -11, -8 }, { -11, 1 }, { -11, 2 }, { -11, 11 }, { -11, 12 }, { -11, 15 }, { -11, 16 }, { -11, 17 }, { -11, 18 }, { -11, 19 }, { -11, 20 }, { -11, 23 }, { -11, 24 }, { -11, 25 },
{ -11, 26 }, { -11, 29 }, { -11, 30 }, { -11, 31 }, { -11, 32 }, { -11, 35 }, { -11, 36 }, { -11, 37 }, { -11, 45 }, { -11, 46 }, { -10, -44 }, { -10, -43 }, { -10, -42 }, { -10, -33 }, { -10, -32 }, { -10, -29 }, { -10, -28 }, { -10, -27 }, { -10, -26 }, { -10, -23 }, { -10, -22 }, { -10, -21 }, { -10, -20 }, { -10, -17 }, { -10, -16 }, { -10, -15 }, { -10, -14 }, { -10, -13 }, { -10, -12 }, { -10, -9 },
{ -10, -8 }, { -10, -7 }, { -10, 0 }, { -10, 1 }, { -10, 2 }, { -10, 3 }, { -10, 10 }, { -10, 11 }, { -10, 12 }, { -10, 15 }, { -10, 16 }, { -10, 17 }, { -10, 18 }, { -10, 19 }, { -10, 20 }, { -10, 23 }, { -10, 24 }, { -10, 25 }, { -10, 26 }, { -10, 29 }, { -10, 30 }, { -10, 31 }, { -10, 32 }, { -10, 35 }, { -10, 36 }, { -10, 45 }, { -10, 46 }, { -10, 47 }, { -9, -45 }, { -9, -44 },
{ -9, -43 }, { -9, -29 }, { -9, -28 }, { -9, -27 }, { -9, -23 }, { -9, -22 }, { -9, -21 }, { -9, -20 }, { -9, -17 }, { -9, -16 }, { -9, -15 }, { -9, -14 }, { -9, -13 }, { -9, -8 }, { -9, -7 }, { -9, -6 }, { -9, -5 }, { -9, -1 }, { -9, 0 }, { -9, 1 }, { -9, 2 }, { -9, 3 }, { -9, 4 }, { -9, 8 }, { -9, 9 }, { -9, 10 }, { -9, 11 }, { -9, 16 }, { -9, 17 }, { -9, 18 },
{ -9, 19 }, { -9, 20 }, { -9, 23 }, { -9, 24 }, { -9, 25 }, { -9, 26 }, { -9, 30 }, { -9, 31 }, { -9, 32 }, { -9, 46 }, { -9, 47 }, { -9, 48 }, { -8, -45 }, { -8, -44 }, { -8, -30 }, { -8, -29 }, { -8, -28 }, { -8, -24 }, { -8, -23 }, { -8, -22 }, { -8, -21 }, { -8, -20 }, { -8, -17 }, { -8, -16 }, { -8, -15 }, { -8, -14 }, { -8, -7 }, { -8, -6 }, { -8, -5 }, { -8, -4 },
{ -8, -1 }, { -8, 0 }, { -8, 1 }, { -8, 2 }, { -8, 3 }, { -8, 4 }, { -8, 7 }, { -8, 8 }, { -8, 9 }, { -8, 10 }, { -8, 17 }, { -8, 18 }, { -8, 19 }, { -8, 20 }, { -8, 23 }, { -8, 24 }, { -8, 25 }, { -8, 26 }, { -8, 27 }, { -8, 31 }, { -8, 32 }, { -8, 33 }, { -8, 47 }, { -8, 48 }, { -7, -45 }, { -7, -44 }, { -7, -39 }, { -7, -38 }, { -7, -37 }, { -7, -36 },
{ -7, -31 }, { -7, -30 }, { -7, -29 }, { -7, -25 }, { -7, -24 }, { -7, -23 }, { -7, -22 }, { -7, -21 }, { -7, -11 }, { -7, -10 }, { -7, -7 }, { -7, -6 }, { -7, -5 }, { -7, -4 }, { -7, 7 }, { -7, 8 }, { -7, 9 }, { -7, 10 }, { -7, 13 }, { -7, 14 }, { -7, 24 }, { -7, 25 }, { -7, 26 }, { -7, 27 }, { -7, 28 }, { -7, 32 }, { -7, 33 }, { -7, 34 }, { -7, 39 }, { -7, 40 },
{ -7, 41 }, { -7, 42 }, { -7, 47 }, { -7, 48 }, { -6, -46 }, { -6, -45 }, { -6, -44 }, { -6, -39 }, { -6, -38 }, { -6, -37 }, { -6, -36 }, { -6, -35 }, { -6, -31 }, { -6, -30 }, { -6, -25 }, { -6, -24 }, { -6, -23 }, { -6, -22 }, { -6, -12 }, { -6, -11 }, { -6, -10 }, { -6, -6 }, { -6, -5 }, { -6, 8 }, { -6, 9 }, { -6, 13 }, { -6, 14 }, { -6, 15 }, { -6, 25 }, { -6, 26 },
{ -6, 27 }, { -6, 28 }, { -6, 33 }, { -6, 34 }, { -6, 38 }, { -6, 39 }, { -6, 40 }, { -6, 41 }, { -6, 42 }, { -6, 47 }, { -6, 48 }, { -6, 49 }, { -5, -47 }, { -5, -46 }, { -5, -45 }, { -5, -44 }, { -5, -37 }, { -5, -36 }, { -5, -35 }, { -5, -34 }, { -5, -19 }, { -5, -18 }, { -5, -13 }, { -5, -12 }, { -5, -11 }, { -5, -10 }, { -5, -1 }, { -5, 0 }, { -5, 1 }, { -5, 2 },
{ -5, 3 }, { -5, 4 }, { -5, 13 }, { -5, 14 }, { -5, 15 }, { -5, 16 }, { -5, 21 }, { -5, 22 }, { -5, 37 }, { -5, 38 }, { -5, 39 }, { -5, 40 }, { -5, 47 }, { -5, 48 }, { -5, 49 }, { -5, 50 }, { -4, -47 }, { -4, -46 }, { -4, -45 }, { -4, -44 }, { -4, -43 }, { -4, -37 }, { -4, -36 }, { -4, -35 }, { -4, -34 }, { -4, -19 }, { -4, -18 }, { -4, -17 }, { -4, -13 }, { -4, -12 },
{ -4, -11 }, { -4, -10 }, { -4, -2 }, { -4, -1 }, { -4, 0 }, { -4, 1 }, { -4, 2 }, { -4, 3 }, { -4, 4 }, { -4, 5 }, { -4, 13 }, { -4, 14 }, { -4, 15 }, { -4, 16 }, { -4, 20 }, { -4, 21 }, { -4, 22 }, { -4, 37 }, { -4, 38 }, { -4, 39 }, { -4, 40 }, { -4, 46 }, { -4, 47 }, { -4, 48 }, { -4, 49 }, { -4, 50 }, { -3, -44 }, { -3, -43 }, { -3, -42 }, { -3, -41 },
{ -3, -40 }, { -3, -37 }, { -3, -36 }, { -3, -35 }, { -3, -34 }, { -3, -31 }, { -3, -30 }, { -3, -29 }, { -3, -28 }, { -3, -25 }, { -3, -24 }, { -3, -23 }, { -3, -22 }, { -3, -18 }, { -3, -17 }, { -3, -16 }, { -3, -7 }, { -3, -6 }, { -3, -3 }, { -3, -2 }, { -3, -1 }, { -3, 0 }, { -3, 3 }, { -3, 4 }, { -3, 5 }, { -3, 6 }, { -3, 9 }, { -3, 10 }, { -3, 19 }, { -3, 20 },
{ -3, 21 }, { -3, 25 }, { -3, 26 }, { -3, 27 }, { -3, 28 }, { -3, 31 }, { -3, 32 }, { -3, 33 }, { -3, 34 }, { -3, 37 }, { -3, 38 }, { -3, 39 }, { -3, 40 }, { -3, 43 }, { -3, 44 }, { -3, 45 }, { -3, 46 }, { -3, 47 }, { -2, -43 }, { -2, -42 }, { -2, -41 }, { -2, -40 }, { -2, -37 }, { -2, -36 }, { -2, -35 }, { -2, -34 }, { -2, -31 }, { -2, -30 }, { -2, -29 }, { -2, -28 },
{ -2, -25 }, { -2, -24 }, { -2, -23 }, { -2, -22 }, { -2, -21 }, { -2, -17 }, { -2, -16 }, { -2, -15 }, { -2, -8 }, { -2, -7 }, { -2, -6 }, { -2, -3 }, { -2, -2 }, { -2, -1 }, { -2, 0 }, { -2, 3 }, { -2, 4 }, { -2, 5 }, { -2, 6 }, { -2, 9 }, { -2, 10 }, { -2, 11 }, { -2, 18 }, { -2, 19 }, { -2, 20 }, { -2, 24 }, { -2, 25 }, { -2, 26 }, { -2, 27 }, { -2, 28 },
{ -2, 31 }, { -2, 32 }, { -2, 33 }, { -2, 34 }, { -2, 37 }, { -2, 38 }, { -2, 39 }, { -2, 40 }, { -2, 43 }, { -2, 44 }, { -2, 45 }, { -2, 46 }, { -1, -47 }, { -1, -46 }, { -1, -43 }, { -1, -42 }, { -1, -41 }, { -1, -40 }, { -1, -37 }, { -1, -36 }, { -1, -29 }, { -1, -28 }, { -1, -25 }, { -1, -24 }, { -1, -23 }, { -1, -22 }, { -1, -21 }, { -1, -20 }, { -1, -17 }, { -1, -16 },
{ -1, -15 }, { -1, -14 }, { -1, -13 }, { -1, -12 }, { -1, -9 }, { -1, -8 }, { -1, -7 }, { -1, -6 }, { -1, -3 }, { -1, -2 }, { -1, 5 }, { -1, 6 }, { -1, 9 }, { -1, 10 }, { -1, 11 }, { -1, 12 }, { -1, 15 }, { -1, 16 }, { -1, 17 }, { -1, 18 }, { -1, 19 }, { -1, 20 }, { -1, 23 }, { -1, 24 }, { -1, 25 }, { -1, 26 }, { -1, 27 }, { -1, 28 }, { -1, 31 }, { -1, 32 },
{ -1, 39 }, { -1, 40 }, { -1, 43 }, { -1, 44 }, { -1, 45 }, { -1, 46 }, { -1, 49 }, { -1, 50 }, { 0, -47 }, { 0, -46 }, { 0, -43 }, { 0, -42 }, { 0, -41 }, { 0, -40 }, { 0, -37 }, { 0, -36 }, { 0, -29 }, { 0, -28 }, { 0, -25 }, { 0, -24 }, { 0, -23 }, { 0, -22 }, { 0, -21 }, { 0, -20 }, { 0, -17 }, { 0, -16 }, { 0, -15 }, { 0, -14 }, { 0, -13 }, { 0, -12 },
{ 0, -9 }, { 0, -8 }, { 0, -7 }, { 0, -6 }, { 0, -3 }, { 0, -2 }, { 0, 5 }, { 0, 6 }, { 0, 9 }, { 0, 10 }, { 0, 11 }, { 0, 12 }, { 0, 15 }, { 0, 16 }, { 0, 17 }, { 0, 18 }, { 0, 19 }, { 0, 20 }, { 0, 23 }, { 0, 24 }, { 0, 25 }, { 0, 26 }, { 0, 27 }, { 0, 28 }, { 0, 31 }, { 0, 32 }, { 0, 39 }, { 0, 40 }, { 0, 43 }, { 0, 44 },
{ 0, 45 }, { 0, 46 }, { 0, 49 }, { 0, 50 }, { 1, -43 }, { 1, -42 }, { 1, -41 }, { 1, -40 }, { 1, -37 }, { 1, -36 }, { 1, -35 }, { 1, -34 }, { 1, -31 }, { 1, -30 }, { 1, -29 }, { 1, -28 }, { 1, -25 }, { 1, -24 }, { 1, -23 }, { 1, -22 }, { 1, -21 }, { 1, -17 }, { 1, -16 }, { 1, -15 }, { 1, -8 }, { 1, -7 }, { 1, -6 }, { 1, -3 }, { 1, -2 }, { 1, -1 },
{ 1, 0 }, { 1, 3 }, { 1, 4 }, { 1, 5 }, { 1, 6 }, { 1, 9 }, { 1, 10 }, { 1, 11 }, { 1, 18 }, { 1, 19 }, { 1, 20 }, { 1, 24 }, { 1, 25 }, { 1, 26 }, { 1, 27 }, { 1, 28 }, { 1, 31 }, { 1, 32 }, { 1, 33 }, { 1, 34 }, { 1, 37 }, { 1, 38 }, { 1, 39 }, { 1, 40 }, { 1, 43 }, { 1, 44 }, { 1, 45 }, { 1, 46 }, { 2, -44 }, { 2, -43 },
{ 2, -42 }, { 2, -41 }, { 2, -40 }, { 2, -37 }, { 2, -36 }, { 2, -35 }, { 2, -34 }, { 2, -31 }, { 2, -30 }, { 2, -29 }, { 2, -28 }, { 2, -25 }, { 2, -24 }, { 2, -23 }, { 2, -22 }, { 2, -18 }, { 2, -17 }, { 2, -16 }, { 2, -7 }, { 2, -6 }, { 2, -3 }, { 2, -2 }, { 2, -1 }, { 2, 0 }, { 2, 3 }, { 2, 4 }, { 2, 5 }, { 2, 6 }, { 2, 9 }, { 2, 10 },
{ 2, 19 }, { 2, 20 }, { 2, 21 }, { 2, 25 }, { 2, 26 }, { 2, 27 }, { 2, 28 }, { 2, 31 }, { 2, 32 }, { 2, 33 }, { 2, 34 }, { 2, 37 }, { 2, 38 }, { 2, 39 }, { 2, 40 }, { 2, 43 }, { 2, 44 }, { 2, 45 }, { 2, 46 }, { 2, 47 }, { 3, -47 }, { 3, -46 }, { 3, -45 }, { 3, -44 }, { 3, -43 }, { 3, -37 }, { 3, -36 }, { 3, -35 }, { 3, -34 }, { 3, -19 },
{ 3, -18 }, { 3, -17 }, { 3, -13 }, { 3, -12 }, { 3, -11 }, { 3, -10 }, { 3, -2 }, { 3, -1 }, { 3, 0 }, { 3, 1 }, { 3, 2 }, { 3, 3 }, { 3, 4 }, { 3, 5 }, { 3, 13 }, { 3, 14 }, { 3, 15 }, { 3, 16 }, { 3, 20 }, { 3, 21 }, { 3, 22 }, { 3, 37 }, { 3, 38 }, { 3, 39 }, { 3, 40 }, { 3, 46 }, { 3, 47 }, { 3, 48 }, { 3, 49 }, { 3, 50 },
{ 4, -47 }, { 4, -46 }, { 4, -45 }, { 4, -44 }, { 4, -37 }, { 4, -36 }, { 4, -35 }, { 4, -34 }, { 4, -19 }, { 4, -18 }, { 4, -13 }, { 4, -12 }, { 4, -11 }, { 4, -10 }, { 4, -1 }, { 4, 0 }, { 4, 1 }, { 4, 2 }, { 4, 3 }, { 4, 4 }, { 4, 13 }, { 4, 14 }, { 4, 15 }, { 4, 16 }, { 4, 21 }, { 4, 22 }, { 4, 37 }, { 4, 38 }, { 4, 39 }, { 4, 40 },
{ 4, 47 }, { 4, 48 }, { 4, 49 }, { 4, 50 }, { 5, -46 }, { 5, -45 }, { 5, -44 }, { 5, -39 }, { 5, -38 }, { 5, -37 }, { 5, -36 }, { 5, -35 }, { 5, -31 }, { 5, -30 }, { 5, -25 }, { 5, -24 }, { 5, -23 }, { 5, -22 }, { 5, -12 }, { 5, -11 }, { 5, -10 }, { 5, -6 }, { 5, -5 }, { 5, 8 }, { 5, 9 }, { 5, 13 }, { 5, 14 }, { 5, 15 }, { 5, 25 }, { 5, 26 },
{ 5, 27 }, { 5, 28 }, { 5, 33 }, { 5, 34 }, { 5, 38 }, { 5, 39 }, { 5, 40 }, { 5, 41 }, { 5, 42 }, { 5, 47 }, { 5, 48 }, { 5, 49 }, { 6, -45 }, { 6, -44 }, { 6, -39 }, { 6, -38 }, { 6, -37 }, { 6, -36 }, { 6, -31 }, { 6, -30 }, { 6, -29 }, { 6, -25 }, { 6, -24 }, { 6, -23 }, { 6, -22 }, { 6, -21 }, { 6, -11 }, { 6, -10 }, { 6, -7 }, { 6, -6 },
{ 6, -5 }, { 6, -4 }, { 6, 7 }, { 6, 8 }, { 6, 9 }, { 6, 10 }, { 6, 13 }, { 6, 14 }, { 6, 24 }, { 6, 25 }, { 6, 26 }, { 6, 27 }, { 6, 28 }, { 6, 32 }, { 6, 33 }, { 6, 34 }, { 6, 39 }, { 6, 40 }, { 6, 41 }, { 6, 42 }, { 6, 47 }, { 6, 48 }, { 7, -45 }, { 7, -44 }, { 7, -30 }, { 7, -29 }, { 7, -28 }, { 7, -24 }, { 7, -23 }, { 7, -22 },
{ 7, -21 }, { 7, -20 }, { 7, -17 }, { 7, -16 }, { 7, -15 }, { 7, -14 }, { 7, -7 }, { 7, -6 }, { 7, -5 }, { 7, -4 }, { 7, -1 }, { 7, 0 }, { 7, 1 }, { 7, 2 }, { 7, 3 }, { 7, 4 }, { 7, 7 }, { 7, 8 }, { 7, 9 }, { 7, 10 }, { 7, 17 }, { 7, 18 }, { 7, 19 }, { 7, 20 }, { 7, 23 }, { 7, 24 }, { 7, 25 }, { 7, 26 }, { 7, 27 }, { 7, 31 },
{ 7, 32 }, { 7, 33 }, { 7, 47 }, { 7, 48 }, { 8, -45 }, { 8, -44 }, { 8, -43 }, { 8, -29 }, { 8, -28 }, { 8, -27 }, { 8, -23 }, { 8, -22 }, { 8, -21 }, { 8, -20 }, { 8, -17 }, { 8, -16 }, { 8, -15 }, { 8, -14 }, { 8, -13 }, { 8, -8 }, { 8, -7 }, { 8, -6 }, { 8, -5 }, { 8, -1 }, { 8, 0 }, { 8, 1 }, { 8, 2 }, { 8, 3 }, { 8, 4 }, { 8, 8 },
{ 8, 9 }, { 8, 10 }, { 8, 11 }, { 8, 16 }, { 8, 17 }, { 8, 18 }, { 8, 19 }, { 8, 20 }, { 8, 23 }, { 8, 24 }, { 8, 25 }, { 8, 26 }, { 8, 30 }, { 8, 31 }, { 8, 32 }, { 8, 46 }, { 8, 47 }, { 8, 48 }, { 9, -44 }, { 9, -43 }, { 9, -42 }, { 9, -33 }, { 9, -32 }, { 9, -29 }, { 9, -28 }, { 9, -27 }, { 9, -26 }, { 9, -23 }, { 9, -22 }, { 9, -21 },
{ 9, -20 }, { 9, -17 }, { 9, -16 }, { 9, -15 }, { 9, -14 }, { 9, -13 }, { 9, -12 }, { 9, -9 }, { 9, -8 }, { 9, -7 }, { 9, 0 }, { 9, 1 }, { 9, 2 }, { 9, 3 }, { 9, 10 }, { 9, 11 }, { 9, 12 }, { 9, 15 }, { 9, 16 }, { 9, 17 }, { 9, 18 }, { 9, 19 }, { 9, 20 }, { 9, 23 }, { 9, 24 }, { 9, 25 }, { 9, 26 }, { 9, 29 }, { 9, 30 }, { 9, 31 },
{ 9, 32 }, { 9, 35 }, { 9, 36 }, { 9, 45 }, { 9, 46 }, { 9, 47 }, { 10, -43 }, { 10, -42 }, { 10, -34 }, { 10, -33 }, { 10, -32 }, { 10, -29 }, { 10, -28 }, { 10, -27 }, { 10, -26 }, { 10, -23 }, { 10, -22 }, { 10, -21 }, { 10, -20 }, { 10, -17 }, { 10, -16 }, { 10, -15 }, { 10, -14 }, { 10, -13 }, { 10, -12 }, { 10, -9 }, { 10, -8 }, { 10, 1 }, { 10, 2 }, { 10, 11 },
{ 10, 12 }, { 10, 15 }, { 10, 16 }, { 10, 17 }, { 10, 18 }, { 10, 19 }, { 10, 20 }, { 10, 23 }, { 10, 24 }, { 10, 25 }, { 10, 26 }, { 10, 29 }, { 10, 30 }, { 10, 31 }, { 10, 32 }, { 10, 35 }, { 10, 36 }, { 10, 37 }, { 10, 45 }, { 10, 46 }, { 11, -39 }, { 11, -38 }, { 11, -35 }, { 11, -34 }, { 11, -33 }, { 11, -32 }, { 11, -29 }, { 11, -28 }, { 11, -27 }, { 11, -16 },
{ 11, -15 }, { 11, -14 }, { 11, -13 }, { 11, -5 }, { 11, -4 }, { 11, -3 }, { 11, -2 }, { 11, 5 }, { 11, 6 }, { 11, 7 }, { 11, 8 }, { 11, 16 }, { 11, 17 }, { 11, 18 }, { 11, 19 }, { 11, 30 }, { 11, 31 }, { 11, 32 }, { 11, 35 }, { 11, 36 }, { 11, 37 }, { 11, 38 }, { 11, 41 }, { 11, 42 }, { 12, -39 }, { 12, -38 }, { 12, -35 }, { 12, -34 }, { 12, -33 }, { 12, -32 },
{ 12, -29 }, { 12, -28 }, { 12, -15 }, { 12, -14 }, { 12, -5 }, { 12, -4 }, { 12, -3 }, { 12, -2 }, { 12, 5 }, { 12, 6 }, { 12, 7 }, { 12, 8 }, { 12, 17 }, { 12, 18 }, { 12, 31 }, { 12, 32 }, { 12, 35 }, { 12, 36 }, { 12, 37 }, { 12, 38 }, { 12, 41 }, { 12, 42 }, { 13, -43 }, { 13, -42 }, { 13, -39 }, { 13, -38 }, { 13, -37 }, { 13, -36 }, { 13, -35 }, { 13, -34 },
{ 13, -33 }, { 13, -19 }, { 13, -18 }, { 13, -9 }, { 13, -8 }, { 13, -4 }, { 13, -3 }, { 13, -2 }, { 13, 1 }, { 13, 2 }, { 13, 5 }, { 13, 6 }, { 13, 7 }, { 13, 11 }, { 13, 12 }, { 13, 21 }, { 13, 22 }, { 13, 36 }, { 13, 37 }, { 13, 38 }, { 13, 39 }, { 13, 40 }, { 13, 41 }, { 13, 42 }, { 13, 45 }, { 13, 46 }, { 14, -43 }, { 14, -42 }, { 14, -39 }, { 14, -38 },
{ 14, -37 }, { 14, -36 }, { 14, -35 }, { 14, -34 }, { 14, -20 }, { 14, -19 }, { 14, -18 }, { 14, -17 }, { 14, -10 }, { 14, -9 }, { 14, -8 }, { 14, -7 }, { 14, -3 }, { 14, -2 }, { 14, 1 }, { 14, 2 }, { 14, 5 }, { 14, 6 }, { 14, 10 }, { 14, 11 }, { 14, 12 }, { 14, 13 }, { 14, 20 }, { 14, 21 }, { 14, 22 }, { 14, 23 }, { 14, 37 }, { 14, 38 }, { 14, 39 }, { 14, 40 },
{ 14, 41 }, { 14, 42 }, { 14, 45 }, { 14, 46 }, { 15, -43 }, { 15, -42 }, { 15, -31 }, { 15, -30 }, { 15, -27 }, { 15, -26 }, { 15, -21 }, { 15, -20 }, { 15, -19 }, { 15, -18 }, { 15, -17 }, { 15, -16 }, { 15, -15 }, { 15, -14 }, { 15, -11 }, { 15, -10 }, { 15, -9 }, { 15, -8 }, { 15, -7 }, { 15, -6 }, { 15, 1 }, { 15, 2 }, { 15, 9 }, { 15, 10 }, { 15, 11 }, { 15, 12 },
{ 15, 13 }, { 15, 14 }, { 15, 17 }, { 15, 18 }, { 15, 19 }, { 15, 20 }, { 15, 21 }, { 15, 22 }, { 15, 23 }, { 15, 24 }, { 15, 29 }, { 15, 30 }, { 15, 33 }, { 15, 34 }, { 15, 45 }, { 15, 46 }, { 16, -43 }, { 16, -42 }, { 16, -32 }, { 16, -31 }, { 16, -30 }, { 16, -27 }, { 16, -26 }, { 16, -25 }, { 16, -21 }, { 16, -20 }, { 16, -19 }, { 16, -18 }, { 16, -17 }, { 16, -16 },
{ 16, -15 }, { 16, -14 }, { 16, -11 }, { 16, -10 }, { 16, -9 }, { 16, -8 }, { 16, -7 }, { 16, -6 }, { 16, 0 }, { 16, 1 }, { 16, 2 }, { 16, 3 }, { 16, 9 }, { 16, 10 }, { 16, 11 }, { 16, 12 }, { 16, 13 }, { 16, 14 }, { 16, 17 }, { 16, 18 }, { 16, 19 }, { 16, 20 }, { 16, 21 }, { 16, 22 }, { 16, 23 }, { 16, 24 }, { 16, 28 }, { 16, 29 }, { 16, 30 }, { 16, 33 },
{ 16, 34 }, { 16, 35 }, { 16, 45 }, { 16, 46 }, { 17, -43 }, { 17, -42 }, { 17, -35 }, { 17, -34 }, { 17, -33 }, { 17, -32 }, { 17, -31 }, { 17, -26 }, { 17, -25 }, { 17, -24 }, { 17, -15 }, { 17, -14 }, { 17, -10 }, { 17, -9 }, { 17, -8 }, { 17, -7 }, { 17, -6 }, { 17, -1 }, { 17, 0 }, { 17, 1 }, { 17, 2 }, { 17, 3 }, { 17, 4 }, { 17, 9 }, { 17, 10 }, { 17, 11 },
{ 17, 12 }, { 17, 13 }, { 17, 17 }, { 17, 18 }, { 17, 27 }, { 17, 28 }, { 17, 29 }, { 17, 34 }, { 17, 35 }, { 17, 36 }, { 17, 37 }, { 17, 38 }, { 17, 45 }, { 17, 46 }, { 18, -43 }, { 18, -42 }, { 18, -41 }, { 18, -35 }, { 18, -34 }, { 18, -33 }, { 18, -32 }, { 18, -25 }, { 18, -24 }, { 18, -23 }, { 18, -15 }, { 18, -14 }, { 18, -13 }, { 18, -9 }, { 18, -8 }, { 18, -7 },
{ 18, -6 }, { 18, -2 }, { 18, -1 }, { 18, 0 }, { 18, 1 }, { 18, 2 }, { 18, 3 }, { 18, 4 }, { 18, 5 }, { 18, 9 }, { 18, 10 }, { 18, 11 }, { 18, 12 }, { 18, 16 }, { 18, 17 }, { 18, 18 }, { 18, 26 }, { 18, 27 }, { 18, 28 }, { 18, 35 }, { 18, 36 }, { 18, 37 }, { 18, 38 }, { 18, 44 }, { 18, 45 }, { 18, 46 }, { 19, -42 }, { 19, -41 }, { 19, -40 }, { 19, -39 },
{ 19, -38 }, { 19, -29 }, { 19, -28 }, { 19, -25 }, { 19, -24 }, { 19, -23 }, { 19, -22 }, { 19, -21 }, { 19, -20 }, { 19, -19 }, { 19, -18 }, { 19, -15 }, { 19, -14 }, { 19, -13 }, { 19, -12 }, { 19, -3 }, { 19, -2 }, { 19, -1 }, { 19, 4 }, { 19, 5 }, { 19, 6 }, { 19, 15 }, { 19, 16 }, { 19, 17 }, { 19, 18 }, { 19, 21 }, { 19, 22 }, { 19, 23 }, { 19, 24 }, { 19, 25 },
{ 19, 26 }, { 19, 27 }, { 19, 28 }, { 19, 31 }, { 19, 32 }, { 19, 41 }, { 19, 42 }, { 19, 43 }, { 19, 44 }, { 19, 45 }, { 20, -41 }, { 20, -40 }, { 20, -39 }, { 20, -38 }, { 20, -37 }, { 20, -29 }, { 20, -28 }, { 20, -25 }, { 20, -24 }, { 20, -23 }, { 20, -22 }, { 20, -21 }, { 20, -20 }, { 20, -19 }, { 20, -18 }, { 20, -15 }, { 20, -14 }, { 20, -13 }, { 20, -12 }, { 20, -3 },
{ 20, -2 }, { 20, 5 }, { 20, 6 }, { 20, 15 }, { 20, 16 }, { 20, 17 }, { 20, 18 }, { 20, 21 }, { 20, 22 }, { 20, 23 }, { 20, 24 }, { 20, 25 }, { 20, 26 }, { 20, 27 }, { 20, 28 }, { 20, 31 }, { 20, 32 }, { 20, 40 }, { 20, 41 }, { 20, 42 }, { 20, 43 }, { 20, 44 }, { 21, -38 }, { 21, -37 }, { 21, -36 }, { 21, -29 }, { 21, -28 }, { 21, -19 }, { 21, -18 }, { 21, -15 },
{ 21, -14 }, { 21, -13 }, { 21, -9 }, { 21, -8 }, { 21, -7 }, { 21, -6 }, { 21, 1 }, { 21, 2 }, { 21, 9 }, { 21, 10 }, { 21, 11 }, { 21, 12 }, { 21, 16 }, { 21, 17 }, { 21, 18 }, { 21, 21 }, { 21, 22 }, { 21, 31 }, { 21, 32 }, { 21, 39 }, { 21, 40 }, { 21, 41 }, { 22, -37 }, { 22, -36 }, { 22, -30 }, { 22, -29 }, { 22, -28 }, { 22, -19 }, { 22, -18 }, { 22, -15 },
{ 22, -14 }, { 22, -9 }, { 22, -8 }, { 22, -7 }, { 22, -6 }, { 22, -5 }, { 22, 0 }, { 22, 1 }, { 22, 2 }, { 22, 3 }, { 22, 8 }, { 22, 9 }, { 22, 10 }, { 22, 11 }, { 22, 12 }, { 22, 17 }, { 22, 18 }, { 22, 21 }, { 22, 22 }, { 22, 31 }, { 22, 32 }, { 22, 33 }, { 22, 39 }, { 22, 40 }, { 23, -33 }, { 23, -32 }, { 23, -31 }, { 23, -30 }, { 23, -29 }, { 23, -25 },
{ 23, -24 }, { 23, -23 }, { 23, -22 }, { 23, -19 }, { 23, -18 }, { 23, -9 }, { 23, -8 }, { 23, -7 }, { 23, -6 }, { 23, -5 }, { 23, -4 }, { 23, -1 }, { 23, 0 }, { 23, 1 }, { 23, 2 }, { 23, 3 }, { 23, 4 }, { 23, 7 }, { 23, 8 }, { 23, 9 }, { 23, 10 }, { 23, 11 }, { 23, 12 }, { 23, 21 }, { 23, 22 }, { 23, 25 }, { 23, 26 }, { 23, 27 }, { 23, 28 }, { 23, 32 },
{ 23, 33 }, { 23, 34 }, { 23, 35 }, { 23, 36 }, { 24, -33 }, { 24, -32 }, { 24, -31 }, { 24, -30 }, { 24, -25 }, { 24, -24 }, { 24, -23 }, { 24, -22 }, { 24, -19 }, { 24, -18 }, { 24, -17 }, { 24, -9 }, { 24, -8 }, { 24, -7 }, { 24, -6 }, { 24, -5 }, { 24, -4 }, { 24, -1 }, { 24, 0 }, { 24, 1 }, { 24, 2 }, { 24, 3 }, { 24, 4 }, { 24, 7 }, { 24, 8 }, { 24, 9 },
{ 24, 10 }, { 24, 11 }, { 24, 12 }, { 24, 20 }, { 24, 21 }, { 24, 22 }, { 24, 25 }, { 24, 26 }, { 24, 27 }, { 24, 28 }, { 24, 33 }, { 24, 34 }, { 24, 35 }, { 24, 36 }, { 25, -39 }, { 25, -38 }, { 25, -37 }, { 25, -36 }, { 25, -24 }, { 25, -23 }, { 25, -22 }, { 25, -19 }, { 25, -18 }, { 25, -17 }, { 25, -16 }, { 25, -6 }, { 25, -5 }, { 25, -4 }, { 25, -1 }, { 25, 0 },
{ 25, 1 }, { 25, 2 }, { 25, 3 }, { 25, 4 }, { 25, 7 }, { 25, 8 }, { 25, 9 }, { 25, 19 }, { 25, 20 }, { 25, 21 }, { 25, 22 }, { 25, 25 }, { 25, 26 }, { 25, 27 }, { 25, 39 }, { 25, 40 }, { 25, 41 }, { 25, 42 }, { 26, -39 }, { 26, -38 }, { 26, -37 }, { 26, -36 }, { 26, -23 }, { 26, -22 }, { 26, -19 }, { 26, -18 }, { 26, -17 }, { 26, -16 }, { 26, -15 }, { 26, -5 },
{ 26, -4 }, { 26, -1 }, { 26, 0 }, { 26, 1 }, { 26, 2 }, { 26, 3 }, { 26, 4 }, { 26, 7 }, { 26, 8 }, { 26, 18 }, { 26, 19 }, { 26, 20 }, { 26, 21 }, { 26, 22 }, { 26, 25 }, { 26, 26 }, { 26, 39 }, { 26, 40 }, { 26, 41 }, { 26, 42 }, { 27, -38 }, { 27, -37 }, { 27, -36 }, { 27, -29 }, { 27, -28 }, { 27, -27 }, { 27, -26 }, { 27, -16 }, { 27, -15 }, { 27, -14 },
{ 27, -9 }, { 27, -8 }, { 27, 11 }, { 27, 12 }, { 27, 17 }, { 27, 18 }, { 27, 19 }, { 27, 29 }, { 27, 30 }, { 27, 31 }, { 27, 32 }, { 27, 39 }, { 27, 40 }, { 27, 41 }, { 28, -37 }, { 28, -36 }, { 28, -30 }, { 28, -29 }, { 28, -28 }, { 28, -27 }, { 28, -26 }, { 28, -15 }, { 28, -14 }, { 28, -10 }, { 28, -9 }, { 28, -8 }, { 28, -7 }, { 28, 10 }, { 28, 11 }, { 28, 12 },
{ 28, 13 }, { 28, 17 }, { 28, 18 }, { 28, 29 }, { 28, 30 }, { 28, 31 }, { 28, 32 }, { 28, 33 }, { 28, 39 }, { 28, 40 }, { 29, -33 }, { 29, -32 }, { 29, -31 }, { 29, -30 }, { 29, -29 }, { 29, -28 }, { 29, -27 }, { 29, -26 }, { 29, -21 }, { 29, -20 }, { 29, -19 }, { 29, -18 }, { 29, -11 }, { 29, -10 }, { 29, -9 }, { 29, -8 }, { 29, -7 }, { 29, -6 }, { 29, -1 }, { 29, 0 },
{ 29, 1 }, { 29, 2 }, { 29, 3 }, { 29, 4 }, { 29, 9 }, { 29, 10 }, { 29, 11 }, { 29, 12 }, { 29, 13 }, { 29, 14 }, { 29, 21 }, { 29, 22 }, { 29, 23 }, { 29, 24 }, { 29, 29 }, { 29, 30 }, { 29, 31 }, { 29, 32 }, { 29, 33 }, { 29, 34 }, { 29, 35 }, { 29, 36 }, { 30, -33 }, { 30, -32 }, { 30, -31 }, { 30, -30 }, { 30, -29 }, { 30, -28 }, { 30, -27 }, { 30, -26 },
{ 30, -22 }, { 30, -21 }, { 30, -20 }, { 30, -19 }, { 30, -18 }, { 30, -11 }, { 30, -10 }, { 30, -9 }, { 30, -8 }, { 30, -7 }, { 30, -6 }, { 30, -5 }, { 30, -1 }, { 30, 0 }, { 30, 1 }, { 30, 2 }, { 30, 3 }, { 30, 4 }, { 30, 8 }, { 30, 9 }, { 30, 10 }, { 30, 11 }, { 30, 12 }, { 30, 13 }, { 30, 14 }, { 30, 21 }, { 30, 22 }, { 30, 23 }, { 30, 24 }, { 30, 25 },
{ 30, 29 }, { 30, 30 }, { 30, 31 }, { 30, 32 }, { 30, 33 }, { 30, 34 }, { 30, 35 }, { 30, 36 }, { 31, -32 }, { 31, -31 }, { 31, -30 }, { 31, -29 }, { 31, -28 }, { 31, -27 }, { 31, -23 }, { 31, -22 }, { 31, -21 }, { 31, -15 }, { 31, -14 }, { 31, -6 }, { 31, -5 }, { 31, -4 }, { 31, -1 }, { 31, 0 }, { 31, 3 }, { 31, 4 }, { 31, 7 }, { 31, 8 }, { 31, 9 }, { 31, 17 },
{ 31, 18 }, { 31, 24 }, { 31, 25 }, { 31, 26 }, { 31, 30 }, { 31, 31 }, { 31, 32 }, { 31, 33 }, { 31, 34 }, { 31, 35 }, { 32, -31 }, { 32, -30 }, { 32, -29 }, { 32, -28 }, { 32, -23 }, { 32, -22 }, { 32, -16 }, { 32, -15 }, { 32, -14 }, { 32, -5 }, { 32, -4 }, { 32, -1 }, { 32, 0 }, { 32, 3 }, { 32, 4 }, { 32, 7 }, { 32, 8 }, { 32, 17 }, { 32, 18 }, { 32, 19 },
{ 32, 25 }, { 32, 26 }, { 32, 31 }, { 32, 32 }, { 32, 33 }, { 32, 34 }, { 33, -30 }, { 33, -29 }, { 33, -28 }, { 33, -23 }, { 33, -22 }, { 33, -17 }, { 33, -16 }, { 33, -15 }, { 33, -11 }, { 33, -10 }, { 33, -9 }, { 33, -8 }, { 33, 11 }, { 33, 12 }, { 33, 13 }, { 33, 14 }, { 33, 18 }, { 33, 19 }, { 33, 20 }, { 33, 25 }, { 33, 26 }, { 33, 31 }, { 33, 32 }, { 33, 33 },
{ 34, -29 }, { 34, -28 }, { 34, -23 }, { 34, -22 }, { 34, -17 }, { 34, -16 }, { 34, -12 }, { 34, -11 }, { 34, -10 }, { 34, -9 }, { 34, -8 }, { 34, 11 }, { 34, 12 }, { 34, 13 }, { 34, 14 }, { 34, 15 }, { 34, 19 }, { 34, 20 }, { 34, 25 }, { 34, 26 }, { 34, 31 }, { 34, 32 }, { 35, -17 }, { 35, -16 }, { 35, -13 }, { 35, -12 }, { 35, -11 }, { 35, -10 }, { 35, -9 }, { 35, -3 },
{ 35, -2 }, { 35, -1 }, { 35, 0 }, { 35, 3 }, { 35, 4 }, { 35, 5 }, { 35, 6 }, { 35, 12 }, { 35, 13 }, { 35, 14 }, { 35, 15 }, { 35, 16 }, { 35, 19 }, { 35, 20 }, { 36, -17 }, { 36, -16 }, { 36, -13 }, { 36, -12 }, { 36, -11 }, { 36, -10 }, { 36, -4 }, { 36, -3 }, { 36, -2 }, { 36, -1 }, { 36, 0 }, { 36, 3 }, { 36, 4 }, { 36, 5 }, { 36, 6 }, { 36, 7 },
{ 36, 13 }, { 36, 14 }, { 36, 15 }, { 36, 16 }, { 36, 19 }, { 36, 20 }, { 37, -27 }, { 37, -26 }, { 37, -25 }, { 37, -24 }, { 37, -21 }, { 37, -20 }, { 37, -13 }, { 37, -12 }, { 37, -5 }, { 37, -4 }, { 37, -3 }, { 37, -2 }, { 37, -1 }, { 37, 0 }, { 37, 1 }, { 37, 2 }, { 37, 3 }, { 37, 4 }, { 37, 5 }, { 37, 6 }, { 37, 7 }, { 37, 8 }, { 37, 15 }, { 37, 16 },
{ 37, 23 }, { 37, 24 }, { 37, 27 }, { 37, 28 }, { 37, 29 }, { 37, 30 }, { 38, -27 }, { 38, -26 }, { 38, -25 }, { 38, -24 }, { 38, -21 }, { 38, -20 }, { 38, -19 }, { 38, -13 }, { 38, -12 }, { 38, -5 }, { 38, -4 }, { 38, -3 }, { 38, -2 }, { 38, -1 }, { 38, 0 }, { 38, 1 }, { 38, 2 }, { 38, 3 }, { 38, 4 }, { 38, 5 }, { 38, 6 }, { 38, 7 }, { 38, 8 }, { 38, 15 },
{ 38, 16 }, { 38, 22 }, { 38, 23 }, { 38, 24 }, { 38, 27 }, { 38, 28 }, { 38, 29 }, { 38, 30 }, { 39, -26 }, { 39, -25 }, { 39, -24 }, { 39, -20 }, { 39, -19 }, { 39, -18 }, { 39, -13 }, { 39, -12 }, { 39, -11 }, { 39, -10 }, { 39, -5 }, { 39, -4 }, { 39, 7 }, { 39, 8 }, { 39, 13 }, { 39, 14 }, { 39, 15 }, { 39, 16 }, { 39, 21 }, { 39, 22 }, { 39, 23 }, { 39, 27 },
{ 39, 28 }, { 39, 29 }, { 40, -25 }, { 40, -24 }, { 40, -19 }, { 40, -18 }, { 40, -13 }, { 40, -12 }, { 40, -11 }, { 40, -10 }, { 40, -5 }, { 40, -4 }, { 40, 7 }, { 40, 8 }, { 40, 13 }, { 40, 14 }, { 40, 15 }, { 40, 16 }, { 40, 21 }, { 40, 22 }, { 40, 27 }, { 40, 28 }, { 41, -19 }, { 41, -18 }, { 41, -1 }, { 41, 0 }, { 41, 1 }, { 41, 2 }, { 41, 3 }, { 41, 4 },
{ 41, 21 }, { 41, 22 }, { 42, -19 }, { 42, -18 }, { 42, -17 }, { 42, -1 }, { 42, 0 }, { 42, 1 }, { 42, 2 }, { 42, 3 }, { 42, 4 }, { 42, 20 }, { 42, 21 }, { 42, 22 }, { 43, -18 }, { 43, -17 }, { 43, -16 }, { 43, -15 }, { 43, -14 }, { 43, -13 }, { 43, -12 }, { 43, -9 }, { 43, -8 }, { 43, -1 }, { 43, 0 }, { 43, 1 }, { 43, 2 }, { 43, 3 }, { 43, 4 }, { 43, 11 },
{ 43, 12 }, { 43, 15 }, { 43, 16 }, { 43, 17 }, { 43, 18 }, { 43, 19 }, { 43, 20 }, { 43, 21 }, { 44, -17 }, { 44, -16 }, { 44, -15 }, { 44, -14 }, { 44, -13 }, { 44, -12 }, { 44, -9 }, { 44, -8 }, { 44, -7 }, { 44, -2 }, { 44, -1 }, { 44, 0 }, { 44, 1 }, { 44, 2 }, { 44, 3 }, { 44, 4 }, { 44, 5 }, { 44, 10 }, { 44, 11 }, { 44, 12 }, { 44, 15 }, { 44, 16 },
{ 44, 17 }, { 44, 18 }, { 44, 19 }, { 44, 20 }, { 45, -8 }, { 45, -7 }, { 45, -6 }, { 45, -5 }, { 45, -4 }, { 45, -3 }, { 45, -2 }, { 45, -1 }, { 45, 4 }, { 45, 5 }, { 45, 6 }, { 45, 7 }, { 45, 8 }, { 45, 9 }, { 45, 10 }, { 45, 11 }, { 46, -7 }, { 46, -6 }, { 46, -5 }, { 46, -4 }, { 46, -3 }, { 46, -2 }, { 46, 5 }, { 46, 6 }, { 46, 7 }, { 46, 8 },
{ 46, 9 }, { 46, 10 }, { 47, -4 }, { 47, -3 }, { 47, -2 }, { 47, 1 }, { 47, 2 }, { 47, 5 }, { 47, 6 }, { 47, 7 }, { 48, -3 }, { 48, -2 }, { 48, 1 }, { 48, 2 }, { 48, 5 }, { 48, 6 },
},
}, },
resource_tiles = { resource_tiles = {
enabled = false, enabled = false,

View File

@@ -8,14 +8,14 @@ return {
unlimited_capacity = false, --- @setting unlimited_capacity When true the vlayer has an unlimited energy capacity, accumulators are not required unlimited_capacity = false, --- @setting unlimited_capacity When true the vlayer has an unlimited energy capacity, accumulators are not required
unlimited_surface_area = false, --- @setting unlimited_surface_area When true the vlayer has an unlimited surface area, landfill is not required unlimited_surface_area = false, --- @setting unlimited_surface_area When true the vlayer has an unlimited surface area, landfill is not required
modded_auto_downgrade = false, --- @setting modded_auto_downgrade When true modded items will be converted into their base game equivalent, original items can not be recovered modded_auto_downgrade = true, --- @setting modded_auto_downgrade When true modded items will be converted into their base game equivalent, original items can not be recovered
mimic_surface = "nauvis", --- @setting mimic_surface Surface name/index the vlayer will copy its settings from, use nil to use the settings below mimic_surface = "nauvis", --- @setting mimic_surface Surface name/index the vlayer will copy its settings from, use nil to use the settings below
surface = { --- @setting surface When mimic_surface is nil these settings will be used instead, see LuaSurface for details surface = { --- @setting surface When mimic_surface is nil these settings will be used instead, see LuaSurface for details
always_day = false, always_day = false,
solar_power_multiplier = 1, solar_power_multiplier = 1,
min_brightness = 0.15, min_brightness = 0.15,
ticks_per_day = 25000, ticks_per_day = 25200,
daytime = 0, daytime = 0,
dusk = 0.25, dusk = 0.25,
evening = 0.45, evening = 0.45,
@@ -25,20 +25,20 @@ return {
interface_limit = { --- @setting interface_limit Sets the limit for the number of vlayer interfaces that can be created interface_limit = { --- @setting interface_limit Sets the limit for the number of vlayer interfaces that can be created
energy = 1, -- >1 allows for disconnected power networks to receive power energy = 1, -- >1 allows for disconnected power networks to receive power
circuit = 10, -- No caveats circuit = 20, -- No caveats
storage_input = 10, -- No caveats storage_input = 20, -- No caveats
storage_output = 1, -- >0 allows for item teleportation (allowed_items only) storage_output = 1, -- >0 allows for item teleportation (allowed_items only)
}, },
allowed_items = { --- @setting allowed_items List of all items allowed in vlayer storage and their properties allowed_items = { --- @setting allowed_items List of all items allowed in vlayer storage and their properties
--[[ --[[
Allowed properties: Allowed properties:
starting_value = 0: The amount of the item placed into the vlayer on game start, ignores area requirements starting_value : The amount of the item placed into the vlayer on game start, ignores area requirements
required_area = 0: When greater than 0 the items properties are not applied unless their is sufficient surplus surface area required_area : When greater than 0 the items properties are not applied unless their is sufficient surplus surface area
production = 0: The energy production of the item in MW, used for solar panels production : The energy production of the item in MW, used for solar panels
discharge = 0: The energy discharge of the item in MW, used for accumulators discharge : The energy discharge of the item in MW, used for accumulators
capacity = 0: The energy capacity of the item in MJ, used for accumulators capacity : The energy capacity of the item in MJ, used for accumulators
surface_area = 0: The surface area provided by the item, used for landfill surface_area : The surface area provided by the item, used for landfill
]] ]]
["solar-panel"] = { ["solar-panel"] = {
starting_value = 0, starting_value = 0,
@@ -54,7 +54,7 @@ return {
["landfill"] = { ["landfill"] = {
starting_value = 0, starting_value = 0,
required_area = 0, required_area = 0,
surface_area = 6, -- Tiles surface_area = 8, -- Tiles
}, },
["wood"] = { ["wood"] = {
starting_value = 0, starting_value = 0,
@@ -68,33 +68,42 @@ return {
required_area = 0, required_area = 0,
surface_area = 0, surface_area = 0,
fuel_value = 4, -- MJ fuel_value = 4, -- MJ
power = false, -- turn all coal to power to reduce trash power = true, -- turn all coal to power to reduce trash
}, },
["solid-fuel"] = {
starting_value = 0,
required_area = 0,
surface_area = 0,
fuel_value = 12, -- MJ
power = true, -- turn all solid fuel to power to reduce trash
},
["rocket-fuel"] = {
starting_value = 0,
required_area = 0,
surface_area = 0,
fuel_value = 100, -- MJ
power = true, -- turn all rocket fuel to power to reduce trash
}
--[[ --[[
['iron-ore'] = { ["iron-ore"] = {
starting_value = 0, starting_value = 0,
required_area = 0, required_area = 0,
surface_area = 0 surface_area = 0,
}, },
['copper-ore'] = { ["copper-ore"] = {
starting_value = 0, starting_value = 0,
required_area = 0, required_area = 0,
surface_area = 0 surface_area = 0,
}, },
['coal'] = { ["stone"] = {
starting_value = 0, starting_value = 0,
required_area = 0, required_area = 0,
surface_area = 0 surface_area = 0,
}, },
['stone'] = { ["uranium-ore"] = {
starting_value = 0, starting_value = 0,
required_area = 0, required_area = 0,
surface_area = 0 surface_area = 0,
},
['uranium-ore'] = {
starting_value = 0,
required_area = 0,
surface_area = 0
}, },
]] ]]
}, },
@@ -170,5 +179,5 @@ return {
base_game_equivalent = "accumulator", base_game_equivalent = "accumulator",
multiplier = 16384, multiplier = 16384,
}, },
}, }
} }

View File

@@ -2,7 +2,7 @@
description-add=Sets / Gets your custom join message. description-add=Sets / Gets your custom join message.
description-remove=Removes you custom join message. description-remove=Removes you custom join message.
arg-message=Your custom join message. arg-message=Your custom join message.
greet=[color=0,1,0] Welcome to explosive gaming community server! If you like the server join our discord: __1__ [/color] greet=[color=0,1,0] Welcome to APERX gaming community server! __1__[/color]
message-set=Your join message has been updated. message-set=Your join message has been updated.
message-get=Your join message is: __1__ message-get=Your join message is: __1__
message-cleared=Your join message has been cleared. message-cleared=Your join message has been cleared.

View File

@@ -27,4 +27,4 @@ preference-value-tooltip=Change by using /set-preference
preference-All=All data will be saved preference-All=All data will be saved
preference-Statistics=Only statistics, settings, and required data will be saved preference-Statistics=Only statistics, settings, and required data will be saved
preference-Settings=Only settings and required data will be saved preference-Settings=Only settings and required data will be saved
preference-Required=Only required data will be saved preference-Required=Only required data will be saved

View File

@@ -133,8 +133,8 @@ goto-edit=Edit warp icon
[readme] [readme]
main-tooltip=Infomation main-tooltip=Infomation
welcome-tab=Welcome welcome-tab=Welcome
welcome-tooltip=Welcome to Explosive Gaming welcome-tooltip=Welcome to APERX
welcome-general=Welcome to Explosive Gaming; we host many factorio servers. While you are here, we ask you to follow our rules. You can find these in the tab above. You can also find our custom commands and links to our other servers. This map has been online for __2__.\nPlease note that our servers reset periodically, the next reset is: __1__ welcome-general=Welcome to APERX; we host many factorio servers. While you are here, we ask you to follow our rules. You can find these in the tab above. You can also find our custom commands and links to our other servers. This map has been online for __2__.\nPlease note that our servers reset periodically, the next reset is: __1__
welcome-roles=We run a custom role system to help protect the work of others. As a result you may not be able to use your deconstruction planner yet or drop item on the groud. Roles also give you access to some custom features such as adding tasks to our task list or making new warp points.\nYou have been assigned the roles: __1__ welcome-roles=We run a custom role system to help protect the work of others. As a result you may not be able to use your deconstruction planner yet or drop item on the groud. Roles also give you access to some custom features such as adding tasks to our task list or making new warp points.\nYou have been assigned the roles: __1__
welcome-chat=Chatting can be difficult for new players because its different than other games! Its very simple, the button you need to press is the “GRAVE/TILDE” key (which is located under the “ESC key”) - If you would like to change the key, go to your Controls tab in options.\nThe setting you need to change is “Toggle chat (and Lua console)” you currently have it set to "__CONTROL__toggle-console__" welcome-chat=Chatting can be difficult for new players because its different than other games! Its very simple, the button you need to press is the “GRAVE/TILDE” key (which is located under the “ESC key”) - If you would like to change the key, go to your Controls tab in options.\nThe setting you need to change is “Toggle chat (and Lua console)” you currently have it set to "__CONTROL__toggle-console__"
rules-tab=Rules rules-tab=Rules
@@ -162,22 +162,22 @@ servers-tab=Servers
servers-tooltip=Links to our other servers and sites servers-tooltip=Links to our other servers and sites
servers-general=This is only one of our servers for factorio, we host many of others as well. Below you can find details about all the servers that we host as well as links to our external services such as discord or github. servers-general=This is only one of our servers for factorio, we host many of others as well. Below you can find details about all the servers that we host as well as links to our external services such as discord or github.
servers-factorio=Factorio Servers servers-factorio=Factorio Servers
servers-1=S1 Public servers-1=S1
servers-d1=This is our 48 hour reset server. servers-d1=This server resets weekly.
servers-2=S2 Off servers-2=S2
servers-d2=This server is closed. servers-d2=This server resets weekly.
servers-3=S3 Weekly servers-3=S3
servers-d3=This is our weekly reset server. servers-d3=This server resets weekly.
servers-4=S4 Monthly servers-4=
servers-d4=This is our monthly reset server. servers-d4=
servers-5=S5 Modded servers-5=S5
servers-d5=This is our modded server, see discord for details. servers-d5=This server is only for members. Check discord for more details.
servers-6=S6 Donator servers-6=S6
servers-d6=This is our donator only server, online when requested. servers-d6=This server is only for members. Check discord for more details.
servers-7=S7 Event servers-7=
servers-d7=This is our event server, we try to run events at least once per week. servers-d7=
servers-8=S8 T̷-̶s̶-̴:̷ servers-8=S8
servers-d8=N̵o̴ ̶o̷-̶e̵ ̴k̸n̷-̶w̵s̸ ̴w̷h̷a̶-̶ ̷h̴a̴p̷p̴e̷n̷s̸ ̷o̶n̴ ̷t̶h̴-̶s̶ ̷s̷e̶r̸v̸e̴r̷,̶ ̸i̸t̴ ̷m̶-̸g̴h̶t̷ ̸n̸-̶t̵ ̷e̴v̸e̸n̶t̷ ̵-̷x̴i̵s̶t̸.̸ servers-d8=
servers-connect-Offline=Server is currently offline servers-connect-Offline=Server is currently offline
servers-connect-Current=This is your current server servers-connect-Current=This is your current server
servers-connect-Version=Server is on a different version: __1__ servers-connect-Version=Server is on a different version: __1__

View File

@@ -7,20 +7,20 @@ player-health=__1__
player-damage=__1__ player-damage=__1__
[links] [links]
discord=https://discord.explosivegaming.nl discord=
website=https://www.explosivegaming.nl website=
status=https://status.explosivegaming.nl status=
github=https://github.com/explosivegaming/scenario github=
patreon=https://www.patreon.com/ExpGaming patreon=
[info] [info]
players-online=現在有 __1__ 人在線 players-online=現在有 __1__ 人在線
total-map-time=地圖時間為 __1__ total-map-time=地圖時間為 __1__
discord=加入社群: https://discord.explosivegaming.nl discord=
website=訪問網站: https://www.explosivegaming.nl website=
status=伺服器狀態: https://status.explosivegaming.nl status=
github=增加功能或回報錯誤: https://github.com/explosivegaming/scenario github=
patreon=支持我們: https://www.patreon.com/ExpGaming patreon=
custom-commands=這裹使用了自制指令,如 /tag 和 /me。可使用 /chelp 查看更多。 custom-commands=這裹使用了自制指令,如 /tag 和 /me。可使用 /chelp 查看更多。
read-readme=確保你已閱讀相關資訊。按左上 i 圖標可再次查看。 read-readme=確保你已閱讀相關資訊。按左上 i 圖標可再次查看。
softmod=這裹用了自設情境,是一種軟裝模組。 softmod=這裹用了自設情境,是一種軟裝模組。
@@ -43,7 +43,7 @@ reply=[Chat Bot] __1__
disallow=你沒有權限使用這個指令。 disallow=你沒有權限使用這個指令。
players-online=現在有 __1__ 人上線。 players-online=現在有 __1__ 人上線。
players=本地圖現在有 __1__ 人曾上線。 players=本地圖現在有 __1__ 人曾上線。
not-real-dev=Cooldude2606 只是本場境的開發者 not-real-dev=
softmod=這裹用了自設情境。 softmod=這裹用了自設情境。
blame=責怪 __1__ 吧。 blame=責怪 __1__ 吧。
afk=看看 __1__, 他已掛機 __2__ 。 afk=看看 __1__, 他已掛機 __2__ 。

View File

@@ -2,7 +2,7 @@
description-add=設定 / 取得你的加入信息。 description-add=設定 / 取得你的加入信息。
description-remove=移除你的加入信息。 description-remove=移除你的加入信息。
arg-message=你的加入信息。 arg-message=你的加入信息。
greet=[color=0,1,0] 歡迎來到 EXP 的服務器! 若果你喜歡本服務器可加入 DISCORD: __1__ [/color] greet=[color=0,1,0] 歡迎來到 APERX 的服務器! __1__[/color]
message-set=你的加入信息已更新。 message-set=你的加入信息已更新。
message-get=你的加入信息為: __1__ message-get=你的加入信息為: __1__
message-cleared=你的加入信息已清除。 message-cleared=你的加入信息已清除。

View File

@@ -133,8 +133,8 @@ goto-edit=修改傳送陣圖案
[readme] [readme]
main-tooltip=資訊 main-tooltip=資訊
welcome-tab=歡迎 welcome-tab=歡迎
welcome-tooltip=歡迎來到 Explosive Gaming welcome-tooltip=歡迎來到 APERX
welcome-general=歡迎來到 Explosive Gaming; 你在這裏的時候要遵守規則。 你可以在左上方的介面找到更多資訊。 地圖時間 __2__。\n下次地圖重設: __1__ welcome-general=歡迎來到 APERX; 你在這裏的時候要遵守規則。 你可以在左上方的介面找到更多資訊。 地圖時間 __2__。\n下次地圖重設: __1__
welcome-roles=我們有自訂的身份組來保護其他用戶。 所以你有機會不能使用拆除規劃器或掉東西。 身份組給予你各種權限\n你有以下身份組: __1__ welcome-roles=我們有自訂的身份組來保護其他用戶。 所以你有機會不能使用拆除規劃器或掉東西。 身份組給予你各種權限\n你有以下身份組: __1__
welcome-chat=你可以使用 「重音符/抑音符」 鍵 (ESC 鍵 下方) - 你也可以在選項中修改按鍵。\n你目前設定為 「__CONTROL__toggle-console__」 welcome-chat=你可以使用 「重音符/抑音符」 鍵 (ESC 鍵 下方) - 你也可以在選項中修改按鍵。\n你目前設定為 「__CONTROL__toggle-console__」
rules-tab=規則 rules-tab=規則
@@ -162,22 +162,22 @@ servers-tab=伺服器
servers-tooltip=到其他伺服器及網站的連結 servers-tooltip=到其他伺服器及網站的連結
servers-general=這是其中一個伺服器。你可以在下方找到其他同樣是由我們運行的伺服器資料。 servers-general=這是其中一個伺服器。你可以在下方找到其他同樣是由我們運行的伺服器資料。
servers-factorio=異星工廠伺服器 servers-factorio=異星工廠伺服器
servers-1=S1 公共 servers-1=S1
servers-d1=這個服務器每兩重設。 servers-d1=這個服務器每兩重設。
servers-2=S2 - servers-2=S2
servers-d2=這個服務器沒在營運 servers-d2=這個服務器每兩週重設
servers-3=S3 servers-3=S3
servers-d3=這個服務器每週重設。 servers-d3=這個服務器每週重設。
servers-4=S4 月 servers-4=
servers-d4=這個服務器每月重設。 servers-d4=
servers-5=S5 模組 servers-5=S5 會員
servers-d5=這個服務器運行模組,可在 Discord 中得到更多資訊。 servers-d5=這個服務器為會員運行,可在 Discord 中得到更多資訊。
servers-6=S6 Donator servers-6=S6 藍圖
servers-d6=這個服務器為支持者運行,可在 Discord 中得到更多資訊。 servers-d6=這個服務器為會員運行,可在 Discord 中得到更多資訊。
servers-7=S7 項目 servers-7=
servers-d7=這個服務器只在有項目期間運行。 servers-d7=
servers-8=S8 T̷-̶s̶-̴:̷ servers-8=S8
servers-d8=N̵o̴ ̶o̷-̶e̵ ̴k̸n̷-̶w̵s̸ ̴w̷h̷a̶-̶ ̷h̴a̴p̷p̴e̷n̷s̸ ̷o̶n̴ ̷t̶h̴-̶s̶ ̷s̷e̶r̸v̸e̴r̷̶ ̸i̸t̴ ̷m̶-̸g̴h̶t̷ ̸n̸-̶t̵ ̷e̴v̸e̸n̶t̷ ̵-̷x̴i̵s̶t̸。̸ servers-d8=
servers-connect-Offline=該服務器目前沒有在運行 servers-connect-Offline=該服務器目前沒有在運行
servers-connect-Current=你目前所在的伺服器 servers-connect-Current=你目前所在的伺服器
servers-connect-Version=該服務器運行不同的遊戲版本: __1__ servers-connect-Version=該服務器運行不同的遊戲版本: __1__
@@ -353,4 +353,3 @@ research=研究
research-tooltip=啟用自動研究 research-tooltip=啟用自動研究
spawn=傳送出生 spawn=傳送出生
spawn-tooltip=傳送到出生點 spawn-tooltip=傳送到出生點

View File

@@ -7,20 +7,20 @@ player-health=__1__
player-damage=__1__ player-damage=__1__
[links] [links]
discord=https://discord.explosivegaming.nl discord=
website=https://www.explosivegaming.nl website=
status=https://status.explosivegaming.nl status=
github=https://github.com/explosivegaming/scenario github=
patreon=https://www.patreon.com/ExpGaming patreon=
[info] [info]
players-online=現在有 __1__ 人在線 players-online=現在有 __1__ 人在線
total-map-time=地圖時間為 __1__ total-map-time=地圖時間為 __1__
discord=加入社群: https://discord.explosivegaming.nl discord=
website=訪問網站: https://www.explosivegaming.nl website=
status=伺服器狀態: https://status.explosivegaming.nl status=
github=增加功能或回報錯誤: https://github.com/explosivegaming/scenario github=
patreon=支持我們: https://www.patreon.com/ExpGaming patreon=
custom-commands=這裹使用了自制指令,如 /tag 和 /me。可使用 /chelp 查看更多。 custom-commands=這裹使用了自制指令,如 /tag 和 /me。可使用 /chelp 查看更多。
read-readme=確保你已閱讀相關資訊。按左上 i 圖標可再次查看。 read-readme=確保你已閱讀相關資訊。按左上 i 圖標可再次查看。
softmod=這裹用了自設情境,是一種軟裝模組。 softmod=這裹用了自設情境,是一種軟裝模組。
@@ -43,7 +43,7 @@ reply=[Chat Bot] __1__
disallow=你沒有權限使用這個指令。 disallow=你沒有權限使用這個指令。
players-online=現在有 __1__ 人上線。 players-online=現在有 __1__ 人上線。
players=本地圖現在有 __1__ 人曾上線。 players=本地圖現在有 __1__ 人曾上線。
not-real-dev=Cooldude2606 只是本場境的開發者 not-real-dev=
softmod=這裹用了自設情境。 softmod=這裹用了自設情境。
blame=責怪 __1__ 吧。 blame=責怪 __1__ 吧。
afk=看看 __1__, 他已掛機 __2__ 。 afk=看看 __1__, 他已掛機 __2__ 。

View File

@@ -2,7 +2,7 @@
description-add=設定 / 取得你的加入信息。 description-add=設定 / 取得你的加入信息。
description-remove=移除你的加入信息。 description-remove=移除你的加入信息。
arg-message=你的加入信息。 arg-message=你的加入信息。
greet=[color=0,1,0] 歡迎來到 EXP 的服務器! 若果你喜歡本服務器可加入 DISCORD: __1__ [/color] greet=[color=0,1,0] 歡迎來到 APERX 的服務器! __1__[/color]
message-set=你的加入信息已更新。 message-set=你的加入信息已更新。
message-get=你的加入信息為: __1__ message-get=你的加入信息為: __1__
message-cleared=你的加入信息已清除。 message-cleared=你的加入信息已清除。

View File

@@ -133,8 +133,8 @@ goto-edit=修改傳送陣圖案
[readme] [readme]
main-tooltip=資訊 main-tooltip=資訊
welcome-tab=歡迎 welcome-tab=歡迎
welcome-tooltip=歡迎來到 Explosive Gaming welcome-tooltip=歡迎來到 APERX
welcome-general=歡迎來到 Explosive Gaming; 你在這裏的時候要遵守規則。 你可以在左上方的介面找到更多資訊。 地圖時間 __2__。\n下次地圖重設: __1__ welcome-general=歡迎來到 APERX; 你在這裏的時候要遵守規則。 你可以在左上方的介面找到更多資訊。 地圖時間 __2__。\n下次地圖重設: __1__
welcome-roles=我們有自訂的身份組來保護其他用戶。 所以你有機會不能使用拆除規劃器或掉東西。 身份組給予你各種權限\n你有以下身份組: __1__ welcome-roles=我們有自訂的身份組來保護其他用戶。 所以你有機會不能使用拆除規劃器或掉東西。 身份組給予你各種權限\n你有以下身份組: __1__
welcome-chat=你可以使用 「重音符/抑音符」 鍵 (ESC 鍵 下方) - 你也可以在選項中修改按鍵。\n你目前設定為 「__CONTROL__toggle-console__」 welcome-chat=你可以使用 「重音符/抑音符」 鍵 (ESC 鍵 下方) - 你也可以在選項中修改按鍵。\n你目前設定為 「__CONTROL__toggle-console__」
rules-tab=規則 rules-tab=規則
@@ -162,22 +162,22 @@ servers-tab=伺服器
servers-tooltip=到其他伺服器及網站的連結 servers-tooltip=到其他伺服器及網站的連結
servers-general=這是其中一個伺服器。你可以在下方找到其他同樣是由我們運行的伺服器資料。 servers-general=這是其中一個伺服器。你可以在下方找到其他同樣是由我們運行的伺服器資料。
servers-factorio=異星工廠伺服器 servers-factorio=異星工廠伺服器
servers-1=S1 公共 servers-1=S1
servers-d1=這個服務器每兩重設。 servers-d1=這個服務器每兩重設。
servers-2=S2 - servers-2=S2
servers-d2=這個服務器沒在營運 servers-d2=這個服務器每兩週重設
servers-3=S3 servers-3=S3
servers-d3=這個服務器每週重設。 servers-d3=這個服務器每週重設。
servers-4=S4 月 servers-4=
servers-d4=這個服務器每月重設。 servers-d4=
servers-5=S5 模組 servers-5=S5 會員
servers-d5=這個服務器運行模組,可在 Discord 中得到更多資訊。 servers-d5=這個服務器為會員運行,可在 Discord 中得到更多資訊。
servers-6=S6 Donator servers-6=S6 藍圖
servers-d6=這個服務器為支持者運行,可在 Discord 中得到更多資訊。 servers-d6=這個服務器為會員運行,可在 Discord 中得到更多資訊。
servers-7=S7 項目 servers-7=
servers-d7=這個服務器只在有項目期間運行。 servers-d7=
servers-8=S8 T̷-̶s̶-̴:̷ servers-8=S8
servers-d8=N̵o̴ ̶o̷-̶e̵ ̴k̸n̷-̶w̵s̸ ̴w̷h̷a̶-̶ ̷h̴a̴p̷p̴e̷n̷s̸ ̷o̶n̴ ̷t̶h̴-̶s̶ ̷s̷e̶r̸v̸e̴r̷̶ ̸i̸t̴ ̷m̶-̸g̴h̶t̷ ̸n̸-̶t̵ ̷e̴v̸e̸n̶t̷ ̵-̷x̴i̵s̶t̸。̸ servers-d8=
servers-connect-Offline=該服務器目前沒有在運行 servers-connect-Offline=該服務器目前沒有在運行
servers-connect-Current=你目前所在的伺服器 servers-connect-Current=你目前所在的伺服器
servers-connect-Version=該服務器運行不同的遊戲版本: __1__ servers-connect-Version=該服務器運行不同的遊戲版本: __1__

View File

@@ -94,8 +94,8 @@ end
-- @tparam string location the location tag that is in the config file -- @tparam string location the location tag that is in the config file
function Public.spawn_compilatron(surface, location) function Public.spawn_compilatron(surface, location)
local position = locations[location] local position = locations[location]
local pos = surface.find_non_colliding_position("small-biter", position, 1.5, 0.5) local pos = surface.find_non_colliding_position("behemoth-biter", position, 1.5, 0.5)
local compi = surface.create_entity{ name = "small-biter", position = pos, force = game.forces.neutral } local compi = surface.create_entity{ name = "behemoth-biter", position = pos, force = game.forces.neutral }
Public.add_compilatron(compi, location) Public.add_compilatron(compi, location)
end end

View File

@@ -22,6 +22,7 @@ local vlayer_data = {
properties = { properties = {
total_surface_area = 0, total_surface_area = 0,
used_surface_area = 0, used_surface_area = 0,
total_production = 0,
production = 0, production = 0,
discharge = 0, discharge = 0,
capacity = 0, capacity = 0,
@@ -155,7 +156,7 @@ local function get_production_multiplier()
end end
if surface.darkness then if surface.darkness then
-- We are using a real surface, our config does not contain 'darkness' -- We are using a real surface, our config does not contain "darkness"
local brightness = 1 - surface.darkness local brightness = 1 - surface.darkness
if brightness >= surface.min_brightness then if brightness >= surface.min_brightness then
@@ -212,7 +213,9 @@ function vlayer.allocate_item(item_name, count)
assert(item_properties, "Item not allowed in vlayer: " .. tostring(item_name)) assert(item_properties, "Item not allowed in vlayer: " .. tostring(item_name))
if item_properties.production then if item_properties.production then
vlayer_data.properties.production = vlayer_data.properties.production + item_properties.production * count local nc = item_properties.production * count
vlayer_data.properties.production = vlayer_data.properties.production + nc
vlayer_data.properties.total_production = vlayer_data.properties.total_production + nc
end end
if item_properties.capacity then if item_properties.capacity then
@@ -232,6 +235,14 @@ function vlayer.allocate_item(item_name, count)
end end
end end
function vlayer.unable_alloc_item_pwr_calc(item_name, count)
local item_properties = config.allowed_items[item_name]
if item_properties.production then
vlayer_data.properties.total_production = vlayer_data.properties.total_production + item_properties.production * count
end
end
-- For all allowed items, setup their starting values, default 0 -- For all allowed items, setup their starting values, default 0
for item_name, properties in pairs(config.allowed_items) do for item_name, properties in pairs(config.allowed_items) do
vlayer_data.storage.items[item_name] = properties.starting_value or 0 vlayer_data.storage.items[item_name] = properties.starting_value or 0
@@ -260,7 +271,9 @@ function vlayer.insert_item(item_name, count)
vlayer.allocate_item(item_name, allocate_count) vlayer.allocate_item(item_name, allocate_count)
end end
vlayer_data.storage.unallocated[item_name] = vlayer_data.storage.unallocated[item_name] + count - allocate_count local unallocated = count - allocate_count
vlayer_data.storage.unallocated[item_name] = vlayer_data.storage.unallocated[item_name] + unallocated
vlayer.unable_alloc_item_pwr_calc(item_name, unallocated)
else else
vlayer.allocate_item(item_name, count) vlayer.allocate_item(item_name, count)
end end
@@ -456,6 +469,7 @@ local function handle_unallocated()
if allocation_count > 0 then if allocation_count > 0 then
vlayer_data.storage.unallocated[item_name] = vlayer_data.storage.unallocated[item_name] - allocation_count vlayer_data.storage.unallocated[item_name] = vlayer_data.storage.unallocated[item_name] - allocation_count
vlayer.allocate_item(item_name, allocation_count) vlayer.allocate_item(item_name, allocation_count)
vlayer.unable_alloc_item_pwr_calc(item_name, -allocation_count)
end end
end end
end end
@@ -464,15 +478,19 @@ end
function vlayer.get_statistics() function vlayer.get_statistics()
local vdp = vlayer_data.properties.production * mega local vdp = vlayer_data.properties.production * mega
local gdm = get_production_multiplier() local gdm = get_production_multiplier()
local gsm = get_sustained_multiplier()
local gald = get_actual_land_defecit()
return { return {
total_surface_area = vlayer_data.properties.total_surface_area, total_surface_area = vlayer_data.properties.total_surface_area,
used_surface_area = vlayer_data.properties.used_surface_area, used_surface_area = vlayer_data.properties.used_surface_area,
remaining_surface_area = get_actual_land_defecit(), remaining_surface_area = gald,
surface_area = vlayer_data.properties.total_surface_area - gald,
production_multiplier = gdm, production_multiplier = gdm,
energy_max = vdp, energy_max = vdp,
energy_production = vdp * gdm, energy_production = vdp * gdm,
energy_sustained = vdp * get_sustained_multiplier(), energy_total_production = vlayer_data.properties.total_production * gsm * mega,
energy_sustained = vdp * gsm,
energy_capacity = vlayer_data.properties.capacity * mega, energy_capacity = vlayer_data.properties.capacity * mega,
energy_storage = vlayer_data.storage.energy, energy_storage = vlayer_data.storage.energy,
day_time = math.floor(vlayer_data.surface.daytime * vlayer_data.surface.ticks_per_day), day_time = math.floor(vlayer_data.surface.daytime * vlayer_data.surface.ticks_per_day),

View File

@@ -117,7 +117,6 @@ local add_player_base =
local selected_player = game.players[selected_player_name] local selected_player = game.players[selected_player_name]
if event.button == defines.mouse_button_type.left then if event.button == defines.mouse_button_type.left then
-- LMB will open the map to the selected player -- LMB will open the map to the selected player
local position = selected_player.physical_position
event.player.set_controller{ type = defines.controllers.remote, position = selected_player.physical_position, surface = selected_player.physical_surface } event.player.set_controller{ type = defines.controllers.remote, position = selected_player.physical_position, surface = selected_player.physical_surface }
else else
-- RMB will toggle the settings -- RMB will toggle the settings

View File

@@ -145,7 +145,8 @@ local rocket_entry =
local button = toggle_launch(flow) local button = toggle_launch(flow)
button.tooltip = silo_data.toggle_tooltip button.tooltip = silo_data.toggle_tooltip
button.sprite = silo_data.toggle_sprite button.sprite = silo_data.toggle_sprite
end]] end
]]
-- Add the remote launch if the player is allowed it -- Add the remote launch if the player is allowed it
if check_player_permissions(player, "remote_launch") then if check_player_permissions(player, "remote_launch") then

View File

@@ -177,9 +177,9 @@ local vlayer_gui_display_item_accumulator_count =
font = "heading-2", font = "heading-2",
} }
--- Display label for the remaining surface area --- Display label for the surface area
-- @element vlayer_gui_display_signal_remaining_surface_area_name -- @element vlayer_gui_display_signal_surface_area_name
local vlayer_gui_display_signal_remaining_surface_area_name = local vlayer_gui_display_signal_surface_area_name =
Gui.element{ Gui.element{
type = "label", type = "label",
name = "vlayer_display_signal_remaining_surface_area_name", name = "vlayer_display_signal_remaining_surface_area_name",
@@ -190,16 +190,16 @@ local vlayer_gui_display_signal_remaining_surface_area_name =
width = 200, width = 200,
} }
local vlayer_gui_display_signal_remaining_surface_area_count = local vlayer_gui_display_signal_surface_area_count =
Gui.element{ Gui.element{
type = "label", type = "progressbar",
name = "vlayer_display_signal_remaining_surface_area_count", name = "vlayer_display_signal_surface_area_count",
caption = "0", caption = "",
style = "heading_2_label", value = 0,
style = "electric_satisfaction_statistics_progressbar",
}:style{ }:style{
width = 200, width = 200,
height = 28, font = "heading-2",
horizontal_align = "right",
} }
--- Display label for the sustained energy production --- Display label for the sustained energy production
@@ -217,14 +217,14 @@ local vlayer_gui_display_signal_sustained_name =
local vlayer_gui_display_signal_sustained_count = local vlayer_gui_display_signal_sustained_count =
Gui.element{ Gui.element{
type = "label", type = "progressbar",
name = "vlayer_display_signal_sustained_count", name = "vlayer_display_signal_sustained_count",
caption = "0", caption = "",
style = "heading_2_label", value = 0,
style = "electric_satisfaction_statistics_progressbar",
}:style{ }:style{
width = 200, width = 200,
height = 28, font = "heading-2",
horizontal_align = "right",
} }
--- Display label for the current energy production --- Display label for the current energy production
@@ -288,8 +288,8 @@ local vlayer_display_set =
vlayer_gui_display_item_solar_count(disp) vlayer_gui_display_item_solar_count(disp)
vlayer_gui_display_item_accumulator_name(disp) vlayer_gui_display_item_accumulator_name(disp)
vlayer_gui_display_item_accumulator_count(disp) vlayer_gui_display_item_accumulator_count(disp)
vlayer_gui_display_signal_remaining_surface_area_name(disp) vlayer_gui_display_signal_surface_area_name(disp)
vlayer_gui_display_signal_remaining_surface_area_count(disp) vlayer_gui_display_signal_surface_area_count(disp)
vlayer_gui_display_signal_sustained_name(disp) vlayer_gui_display_signal_sustained_name(disp)
vlayer_gui_display_signal_sustained_count(disp) vlayer_gui_display_signal_sustained_count(disp)
vlayer_gui_display_signal_production_name(disp) vlayer_gui_display_signal_production_name(disp)
@@ -489,11 +489,13 @@ Event.on_nth_tick(config.update_tick_gui, function(_)
val = (items_alloc["accumulator"] / math.max(items["accumulator"], 1)), val = (items_alloc["accumulator"] / math.max(items["accumulator"], 1)),
cap = format_number(items_alloc["accumulator"], false) .. " / " .. format_number(items["accumulator"], false), cap = format_number(items_alloc["accumulator"], false) .. " / " .. format_number(items["accumulator"], false),
}, },
[vlayer_gui_display_signal_remaining_surface_area_count.name] = { [vlayer_gui_display_signal_surface_area_count.name] = {
cap = format_number(stats.remaining_surface_area, false), val = (stats.total_surface_area / math.max(stats.surface_area, 1)),
cap = format_number(stats.remaining_surface_area)
}, },
[vlayer_gui_display_signal_sustained_count.name] = { [vlayer_gui_display_signal_sustained_count.name] = {
cap = format_energy(stats.energy_sustained, "W"), val = (stats.energy_sustained / math.max(stats.energy_total_production, 1)),
cap = format_energy(stats.energy_sustained, "W") .. " / " .. format_energy(stats.energy_total_production, "W")
}, },
[vlayer_gui_display_signal_production_count.name] = { [vlayer_gui_display_signal_production_count.name] = {
val = (stats.energy_production / math.max(stats.energy_max, 1)), val = (stats.energy_production / math.max(stats.energy_max, 1)),