2018-09-23 13:22:14 +02:00
_DEBUG = false
2018-11-24 18:40:55 +02:00
_CHEATS = false
2018-12-22 10:42:19 +02:00
_DUMP_ENV = false
2019-01-10 16:18:55 +02:00
local currency = ' coin '
2018-05-22 02:03:04 +02:00
2018-12-01 23:06:24 +02:00
global.config = {
2018-12-22 10:34:51 +02:00
-- adds a GUI listing the scenario features, the rules, and the details of the current map
2018-12-19 15:41:28 +02:00
map_info = {
2018-12-22 10:34:51 +02:00
enabled = true ,
2018-12-19 15:41:28 +02:00
-- The title of the map
map_name_key = ' This Map has no name ' ,
-- The long description of the map, typically 1 paragraph
2019-02-28 16:05:30 +02:00
map_description_key = " This section is supposed to be filled out on a per map basis. \n If you're seeing this message, ping the admin team to get a description \n added for this map. 20 coins is rewarded to the first person that points this out. " ,
2018-12-19 15:41:28 +02:00
-- The feature list of the map
map_extra_info_key = ' This map has no extra information ' ,
-- New Scenario Features, appears in the "What's new" tab
2019-01-14 13:39:11 +02:00
new_info_key = ' Nothing is new. The world is at peace '
2018-12-19 15:41:28 +02:00
} ,
2019-02-01 03:15:41 +02:00
-- map generation settings for redmew's maps (only applies to maps that use 'shapes')
map_generation = {
-- whether to regen decoratives
[ ' regen_decoratives ' ] = false ,
-- the number of 'tiles' that are calculated per tick
[ ' tiles_per_tick ' ] = 32 ,
-- the entity modules to load (takes a list of requires), example included
2019-06-19 15:28:40 +02:00
[ ' entity_modules ' ] = { } ,
2019-02-01 03:15:41 +02:00
-- the terrain modules to load (takes a list of requires), example included
2019-06-19 15:28:40 +02:00
[ ' terrain_modules ' ] = { }
2019-02-01 03:15:41 +02:00
} ,
2019-01-16 20:44:55 +02:00
-- redmew_surface allows a map preset to control world generation as well as map and difficulty settings
-- the entire module can be toggled or just individual parts
redmew_surface = {
enabled = true ,
map_gen_settings = true ,
map_settings = true ,
difficulty = true
} ,
2019-01-30 21:42:42 +02:00
-- time before a player gets the auto-trusted rank, allowing them access to the deconstructions planner, nukes, etc.
rank_system = {
2019-02-18 08:56:36 +02:00
time_for_trust = 3 * 60 * 60 * 60 , -- 3 hours
2019-02-10 23:51:30 +02:00
everyone_is_regular = false
2019-01-30 21:42:42 +02:00
} ,
2019-05-29 18:46:52 +02:00
-- allows syncing player colors from and to the server. Disable this if you want to enforce custom colors
-- when enabled, /color will also be synced to the player settings
player_colors = {
2019-06-19 15:28:40 +02:00
enabled = true
2019-05-29 18:46:52 +02:00
} ,
2018-12-31 21:43:50 +02:00
-- saves players' lives if they have a small-plane in their inventory, also adds the small-plane to the market and must therefor be loaded first
train_saviour = {
2019-01-14 13:39:11 +02:00
enabled = true
2018-12-31 21:43:50 +02:00
} ,
2019-01-05 13:12:22 +02:00
-- Adds the infinite storage chest to the market and adds a custom GUI to it. Also has to be loaded first due to adding a market item
infinite_storage_chest = {
2019-02-08 04:05:30 +02:00
enabled = false ,
cost = 100
2019-01-05 13:12:22 +02:00
} ,
2018-12-19 15:41:28 +02:00
-- adds a command to scale UPS and movement speed. Use with caution as it might break scenarios that modify movement speed
2018-12-06 13:27:08 +02:00
performance = {
2019-01-14 13:39:11 +02:00
enabled = true
2018-12-06 13:27:08 +02:00
} ,
2018-12-06 13:18:52 +02:00
-- adds a player list icon and keeps track of data.
2018-12-01 23:06:24 +02:00
player_list = {
2018-12-06 13:18:52 +02:00
enabled = true ,
2019-01-14 13:39:11 +02:00
show_coin_column = true
2018-12-01 23:06:24 +02:00
} ,
2018-12-06 13:18:52 +02:00
-- enables the poll system
poll = {
2019-01-14 13:39:11 +02:00
enabled = true
2018-12-06 13:18:52 +02:00
} ,
-- enables players to create and join tags
tag_group = {
2019-01-14 13:39:11 +02:00
enabled = true
2018-12-06 13:18:52 +02:00
} ,
-- enables players to create and prioritize tasks
tasklist = {
2019-01-14 13:39:11 +02:00
enabled = true
2018-12-06 13:18:52 +02:00
} ,
-- enables the blueprint helper
blueprint_helper = {
2019-01-14 13:39:11 +02:00
enabled = true
2018-12-06 13:18:52 +02:00
} ,
-- enables score and tracking thereof
score = {
2019-05-30 21:57:43 +02:00
enabled = true ,
-- the global score trackers to show
global_to_show = {
' satellites-launched ' ,
' aliens-killed ' ,
' built-by-players ' ,
' built-by-robots ' ,
' trees-cut ' ,
' rocks-smashed ' ,
' kills-by-trains ' ,
' coins-spent '
}
2018-12-06 13:18:52 +02:00
} ,
-- adds a paint brush
2018-12-01 23:06:24 +02:00
paint = {
2019-01-14 13:39:11 +02:00
enabled = true
2019-06-19 18:36:18 +02:00
} ,
-- autofill turrets with ammo
autofill = {
enabled = true
2018-12-01 23:06:24 +02:00
} ,
2019-01-11 20:25:54 +02:00
-- adds a market
market = {
2018-12-06 13:18:52 +02:00
enabled = true ,
2019-02-08 03:50:58 +02:00
-- will create a standard market on game startup
2019-02-16 07:00:18 +02:00
create_standard_market = true ,
2019-02-08 21:28:58 +02:00
-- the coordinates at which the standard market will be created
standard_market_location = { x = 0 , y = - 5 } ,
2019-01-20 22:58:12 +02:00
currency = currency ,
-- defines the chance that killing an entity will drop coins and the min and max it can drop upon death
entity_drop_amount = {
[ ' biter-spawner ' ] = { low = 5 , high = 15 , chance = 1 } ,
[ ' spitter-spawner ' ] = { low = 5 , high = 15 , chance = 1 } ,
[ ' small-worm-turret ' ] = { low = 2 , high = 8 , chance = 1 } ,
[ ' medium-worm-turret ' ] = { low = 5 , high = 15 , chance = 1 } ,
[ ' big-worm-turret ' ] = { low = 10 , high = 20 , chance = 1 } ,
-- default is 0, no chance of coins dropping from biters/spitters
[ ' small-biter ' ] = { low = 1 , high = 5 , chance = 0 } ,
[ ' small-spitter ' ] = { low = 1 , high = 2 , chance = 0 } ,
[ ' medium-spitter ' ] = { low = 1 , high = 3 , chance = 0 } ,
[ ' big-spitter ' ] = { low = 1 , high = 3 , chance = 0 } ,
[ ' behemoth-spitter ' ] = { low = 1 , high = 10 , chance = 0 } ,
2019-02-01 03:15:41 +02:00
[ ' medium-biter ' ] = { low = 1 , high = 3 , chance = 0 } ,
[ ' big-biter ' ] = { low = 1 , high = 5 , chance = 0 } ,
[ ' behemoth-biter ' ] = { low = 1 , high = 10 , chance = 0 }
2019-01-20 22:58:12 +02:00
}
2018-12-01 23:06:24 +02:00
} ,
2018-12-06 13:18:52 +02:00
-- adds anti-nuke griefing
2018-12-01 23:06:24 +02:00
nuke_control = {
2018-12-06 13:18:52 +02:00
enabled = true ,
2018-12-01 23:06:24 +02:00
enable_autokick = true ,
enable_autoban = true ,
-- how long a player must be on the server to be allowed to use the nuke
2019-01-14 13:39:11 +02:00
nuke_min_time_hours = 3
2018-12-01 23:06:24 +02:00
} ,
2018-12-06 13:18:52 +02:00
-- adds a meltdown feature, requiring precise management
reactor_meltdown = {
enabled = true ,
-- when enabled, controls whether it's on by default. State can be controlled with the /meltdown command.
2019-01-14 13:39:11 +02:00
on_by_default = false
2018-12-06 13:18:52 +02:00
} ,
-- adds hodor responses to messages
hodor = {
2019-01-14 13:39:11 +02:00
enabled = true
2018-12-06 13:18:52 +02:00
} ,
-- enable RedMew auto respond messages
auto_respond = {
2019-01-14 13:39:11 +02:00
enabled = true
2018-12-06 13:18:52 +02:00
} ,
-- enable the mentioning system, which notifies a player when their name is mentioned
mentions = {
2019-01-14 13:39:11 +02:00
enabled = true
2018-12-06 13:18:52 +02:00
} ,
2018-12-19 15:56:02 +02:00
-- settings for when a player joins the server for the first time
2018-12-08 22:52:40 +02:00
player_create = {
enabled = true ,
-- items automatically inserted into the player inventory
starting_items = {
{ name = ' iron-gear-wheel ' , count = 8 } ,
2019-01-14 13:39:11 +02:00
{ name = ' iron-plate ' , count = 16 }
2018-12-08 22:52:40 +02:00
} ,
-- opens the scenario popup when the player joins
show_info_at_start = true ,
-- prints messages when the player joins
join_messages = {
' Welcome to this map created by the RedMew team. You can join our discord at: redmew.com/discord ' ,
2019-01-14 13:39:11 +02:00
' Click the question mark in the top left corner for server information and map details. '
2018-12-08 22:52:40 +02:00
} ,
-- format is a table: {{message, weight}, {message, weight}}, where a higher weight has more chance to be shown
random_join_message_set = require ' resources.join_messages ' ,
-- applied when cheat_mode is set to true
cheats = {
-- Sets the manual mining speed for the player force. A value of 1 = 100% faster. Setting it
-- to 0.5 would make it 50% faster than the base speed.
manual_mining_speed_modifier = 1000 ,
-- increase the amount of inventory slots for the player force
character_inventory_slots_bonus = 0 ,
-- increases the run speed of all characters for the player force
character_running_speed_modifier = 5 ,
-- a flat health bonus to the player force
character_health_bonus = 1000000 ,
-- starts with a fully slotted power armor mk2
start_with_power_armor = true ,
-- adds additional items to the player when _CHEATS is true
starting_items = {
{ name = ' submachine-gun ' , count = 1 } ,
{ name = ' uranium-rounds-magazine ' , count = 200 } ,
{ name = ' construction-robot ' , count = 250 } ,
{ name = ' electric-energy-interface ' , count = 50 } ,
{ name = ' substation ' , count = 50 } ,
{ name = ' roboport ' , count = 10 } ,
{ name = ' infinity-chest ' , count = 10 } ,
{ name = ' small-plane ' , count = 2 } ,
{ name = ' coin ' , count = 20000 } ,
{ name = ' rocket-part ' , count = 2 } ,
2019-02-24 22:55:06 +02:00
{ name = ' computer ' , count = 2 } ,
{ name = ' infinity-pipe ' , count = 10 } ,
2019-02-27 01:03:40 +02:00
{ name = ' heat-interface ' , count = 10 } ,
{ name = ' compilatron-chest ' , count = 5 } ,
{ name = ' compilatron-chest ' , count = 5 } ,
{ name = ' escape-pod-assembler ' , count = 5 } ,
{ name = ' escape-pod-lab ' , count = 10 } ,
{ name = ' escape-pod-power ' , count = 5 } ,
{ name = ' pollution ' , count = 5 } ,
{ name = ' selection-tool ' , count = 1 }
2019-01-14 13:39:11 +02:00
}
}
2018-12-08 22:52:40 +02:00
} ,
2018-12-09 16:04:23 +02:00
-- spawns more units when one dies
hail_hydra = {
enabled = false ,
2019-03-03 23:13:49 +02:00
-- enables difficulty scaling with number of online players
-- if enabled you can disable it for individual spawns by setting {locked = true}
online_player_scale_enabled = true ,
-- the number of players required for regular values.
-- less online players than this number decreases the spawn chances
-- more online players than this number increases the spawn chances
-- the spawn chance is increased or decreased with 0.01 * (#connected_players - online_player_scale)
online_player_scale = 20 ,
2018-12-09 16:04:23 +02:00
-- any non-rounded number will turn into a chance to spawn an additional alien
-- example: 2.5 would spawn 2 for sure and 50% chance to spawn one additionally
2019-03-03 23:13:49 +02:00
-- min defines the lowest chance, max defines the max chance at evolution 1.
-- trigger defines when the chance is active
-- setting max to less than min or nil will ignore set the max = min
-- Hail Hydra scales between min and max with a custom formula.
-- Key values shown in evolution = (percentage of max):
-- | 0.25 evolution = 10% | 0.50 evolution = 29% | 0.60 evolution = 45% | 0.75 evolution = 58% |
-- | 0.80 evolution = 65% | 0.90 evolution = 81% | 1.00 evolution = 100% |
-- eg. {min = 0.2, max = 2, trigger = 0.3} means that after evolution 0.3 this hydra spawns with a chance of at least 0.2
-- and at evolution = 1.00 it spawns with a chance of 2.
-- At evolution 0.60 it would spawn with a chance of min + max * (percentage of max) = 1.1
-- Example of all available options (only min is required):
-- ['behemoth-biter'] = {min = 0.1, max = 0.5, trigger = 0.90, locked = true}}
2018-12-09 16:04:23 +02:00
hydras = {
-- spitters
2019-03-03 23:13:49 +02:00
[ ' small-spitter ' ] = { [ ' small-worm-turret ' ] = { min = 0.2 , max = 1 } } ,
[ ' medium-spitter ' ] = { [ ' medium-worm-turret ' ] = { min = 0.2 , max = 1 } } ,
[ ' big-spitter ' ] = { [ ' big-worm-turret ' ] = { min = 0.2 , max = 1 } } ,
[ ' behemoth-spitter ' ] = { [ ' behemoth-worm-turret ' ] = { min = 0.2 , max = 1 } } ,
2018-12-09 16:04:23 +02:00
-- biters
2019-03-03 23:13:49 +02:00
[ ' medium-biter ' ] = { [ ' small-biter ' ] = { min = 1 , max = 2 } } ,
[ ' big-biter ' ] = { [ ' medium-biter ' ] = { min = 1 , max = 2 } } ,
[ ' behemoth-biter ' ] = { [ ' big-biter ' ] = { min = 1 , max = 2 } } ,
2018-12-09 16:04:23 +02:00
-- worms
2019-03-03 23:13:49 +02:00
[ ' small-worm-turret ' ] = { [ ' small-biter ' ] = { min = 1.5 , max = 2.5 } } ,
[ ' medium-worm-turret ' ] = { [ ' small-biter ' ] = { min = 2.5 , max = 3.5 } , [ ' medium-biter ' ] = { min = 1.0 , max = 2 } } ,
[ ' big-worm-turret ' ] = {
[ ' small-biter ' ] = { min = 2.5 , max = 4 } ,
[ ' medium-biter ' ] = { min = 1.5 , max = 2.2 } ,
[ ' big-biter ' ] = { min = 0.7 , max = 1.5 }
} ,
[ ' behemoth-worm-turret ' ] = {
[ ' small-biter ' ] = { min = 4 , max = 5.2 } ,
[ ' medium-biter ' ] = { min = 2.5 , max = 3.8 } ,
[ ' big-biter ' ] = { min = 1.2 , max = 2.4 } ,
[ ' behemoth-biter ' ] = { min = 0.8 , max = - 1 }
}
2019-01-14 13:39:11 +02:00
}
2018-12-09 16:04:23 +02:00
} ,
2018-12-19 15:56:02 +02:00
-- grants reward coins for certain actions
player_rewards = {
enabled = true ,
-- the token to use for rewards
2019-01-10 16:18:55 +02:00
token = currency ,
2018-12-19 15:56:02 +02:00
-- rewards players for looking through the info tabs
2019-01-14 13:39:11 +02:00
info_player_reward = true
2018-12-19 15:56:02 +02:00
} ,
2019-01-16 23:05:12 +02:00
-- makes manual stuff cumbersome
lazy_bastard = {
2019-02-01 03:15:41 +02:00
enabled = false
2019-01-16 23:05:12 +02:00
} ,
2018-12-19 15:41:28 +02:00
-- automatically marks miners for deconstruction when they are depleted (currently compatible with hard mods that add miners)
autodeconstruct = {
2019-01-14 13:39:11 +02:00
enabled = true
2018-12-19 15:41:28 +02:00
} ,
-- when a player dies, leaves a map marker until the corpse expires or is looted
corpse_util = {
2019-01-14 13:39:11 +02:00
enabled = true
2018-12-19 15:41:28 +02:00
} ,
-- adds many commands for users and admins alike
2019-01-02 17:34:17 +02:00
redmew_commands = {
2019-06-01 13:41:12 +02:00
enabled = true ,
whois = {
player_data_to_show = {
' player-distance-walked ' ,
' coins-earned ' ,
' coins-spent ' ,
' player-deaths ' ,
' player-items-crafted ' ,
' player-console-chats '
}
}
2019-01-02 17:34:17 +02:00
} ,
-- adds many commands for admins
admin_commands = {
2019-01-14 13:39:11 +02:00
enabled = true
2018-12-19 15:41:28 +02:00
} ,
2019-02-03 06:58:33 +02:00
-- adds commands for donators
donator_commands = {
enabled = true
} ,
2018-12-19 15:41:28 +02:00
-- adds a command to generate a popup dialog box for players to see, useful for important announcements
popup = {
2019-01-14 13:39:11 +02:00
enabled = true
2018-12-19 15:41:28 +02:00
} ,
2019-03-01 15:54:36 +02:00
-- adds a command to open a gui that creates rich text
rich_text_gui = {
enabled = true
} ,
2018-12-19 15:41:28 +02:00
-- adds a camera to watch another player
camera = {
2019-01-14 13:39:11 +02:00
enabled = true
2018-12-19 15:41:28 +02:00
} ,
2019-01-12 15:43:41 +02:00
-- adds small quality of life tweaks for multiplayer play
redmew_qol = {
enabled = true ,
-- restricts placed chests to 1 square of inventory
restrict_chest = false ,
-- gives entities with backer names a chance to be named after a player or redmew regular
backer_name = true ,
-- gives locos placed a random color
random_train_color = true ,
-- gives players entity ghosts (from destruction like biter attacks) before the required research is complete
2019-01-15 17:10:31 +02:00
ghosts_before_research = true ,
-- adds craftable loaders.
2019-03-02 09:12:12 +02:00
loaders = true ,
-- turns on entity info aka alt-mode on first joining
2019-03-04 14:02:50 +02:00
set_alt_on_create = true ,
-- prevents personal construction robots from being mined by other players
2019-03-10 00:42:03 +02:00
save_bots = true ,
-- enable research_queue
research_queue = true
2019-01-28 22:20:02 +02:00
} ,
-- adds a useless button with the biter percentage
evolution_progress = {
2019-02-01 03:15:41 +02:00
enabled = true
2019-02-02 03:09:12 +02:00
} ,
-- sets the day/night cycle or a fixed light level. use_day_night_cycle and use_fixed_brightness are mutually exclusive
2019-02-18 23:56:32 +02:00
day_night = {
2019-02-02 03:09:12 +02:00
-- enables/disables the module
enabled = false ,
-- for info on day/night cycles see https://github.com/Refactorio/RedMew/wiki/Day-Night-cycle
use_day_night_cycle = false ,
day_night_cycle = {
2019-02-03 17:31:20 +02:00
ticks_per_day = 25000 ,
dusk = 0.25 ,
evening = 0.45 ,
morning = 0.55 ,
dawn = 0.75
2019-02-02 03:09:12 +02:00
} ,
-- brightness is a number between 0.15 and 1
use_fixed_brightness = false ,
fixed_brightness = 0.5
2019-02-18 08:56:36 +02:00
} ,
-- enables a command which allows for an end-game event
apocalypse = {
2019-06-26 14:19:08 +02:00
enabled = true ,
-- chance behemoth biters and spitters will double on death.
duplicate_chance = 0.05
2019-03-04 12:15:41 +02:00
} ,
-- gradually informs players of features such as chat, toasts, etc.
player_onboarding = {
enabled = true
2019-03-02 07:36:50 +02:00
} ,
-- allows for large-scale biter attacks
biter_attacks = {
2019-05-16 12:10:07 +02:00
enabled = false ,
2019-03-02 07:36:50 +02:00
-- whether or not to send attacks on timed intervals (against a random player)
timed_attacks = {
enabled = true ,
-- frequency of automatic attacks (in seconds)
attack_frequency = 40 * 60 , -- 40 minutes
2019-03-15 02:53:58 +02:00
-- difficulty of automatic attacks (1-easy, 3-normal, 10-hard, 40-brutal)
attack_difficulty = 3
2019-03-02 07:36:50 +02:00
} ,
-- whether or not to send attacks on rocket launches
launch_attacks = {
enabled = true ,
-- whether to only attack on the first launch
2019-03-15 02:53:58 +02:00
first_launch_only = true
2019-03-02 07:36:50 +02:00
}
2019-04-16 21:30:38 +02:00
} ,
-- allows the saving and automatic loading of quickbars between maps
player_quick_bars = {
enabled = true
2019-03-03 22:37:50 +02:00
} ,
-- enables the redmew settings GUI
2019-03-03 22:37:50 +02:00
redmew_settings = {
2019-03-04 09:50:05 +02:00
enabled = true
2019-06-04 21:07:43 +02:00
} ,
-- when biter corpses in an area are above a threshold, remove the desired amount
2019-06-13 23:28:14 +02:00
biter_corpse_remover = {
2019-06-04 21:07:43 +02:00
enabled = true ,
2019-06-10 06:36:53 +02:00
chunk_size = 3 , -- size of chunk in tiles
2019-06-13 23:25:42 +02:00
corpse_threshold = 3 -- number of corpses allowed on surface inside chunk
2019-06-19 15:28:40 +02:00
} ,
turret_active_delay = {
enabled = true ,
-- delay for turret type in ticks
turret_types = {
[ ' ammo-turret ' ] = 60 * 30 ,
[ ' electric-turret ' ] = 60 * 15 ,
[ ' fluid-turret ' ] = 60 * 20 ,
[ ' artillery-turret ' ] = 60 * 10
2019-06-19 21:48:05 +02:00
} ,
-- reduce delay for each level of the tech
techs = {
[ ' weapon-shooting-speed ' ] = { { turret_type = ' ammo-turret ' , amount = 60 * 26 / 6 } } ,
[ ' laser-turret-speed ' ] = { { turret_type = ' electric-turret ' , amount = 60 * 12 / 7 } } ,
[ ' refined-flammables ' ] = { { turret_type = ' fluid-turret ' , amount = 60 * 17 / 7 } } ,
[ ' artillery-shell-speed ' ] = { { turret_type = ' artillery-turret ' , amount = 60 * 2 } }
2019-06-19 15:28:40 +02:00
}
2019-03-03 22:37:50 +02:00
}
2018-12-01 23:06:24 +02:00
}
2018-12-06 13:18:52 +02:00
return global.config