Skip to content

Commit

Permalink
Expand config
Browse files Browse the repository at this point in the history
  • Loading branch information
plague006 committed Dec 18, 2018
1 parent fa231ca commit 44b7176
Show file tree
Hide file tree
Showing 3 changed files with 89 additions and 67 deletions.
104 changes: 54 additions & 50 deletions config.lua
Expand Up @@ -2,143 +2,109 @@ _DEBUG = false
_CHEATS = false

global.config = {
-- The title of the map
map_name_key = 'This Map has no name',

-- The long description of the map, typically 1 paragraph
map_description_key = "By default this section is blank as it's supposed to be filled out on a per map basis. (If you're seeing this message, ping the admin team to get a description added for this map)",

-- 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
new_info_key = 'Nothing is new. The world is at peace',

-- Adds a command to scale UPS and movement speed. Use with caution
-- as it might break scenarios that modify movement speed
map_info = {
-- The title of the map
map_name_key = 'This Map has no name',
-- The long description of the map, typically 1 paragraph
map_description_key = "By default this section is blank as it's supposed to be filled out on a per map basis. (If you're seeing this message, ping the admin team to get a description added for this map)",
-- 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
new_info_key = 'Nothing is new. The world is at peace',
},
-- adds a command to scale UPS and movement speed. Use with caution as it might break scenarios that modify movement speed
performance = {
enabled = true,
},

-- adds a player list icon and keeps track of data.
player_list = {
enabled = true,
show_coin_column = true,
},

-- enables the poll system
poll = {
enabled = true,
},

-- enables players to create and join tags
tag_group = {
enabled = true,
},

-- enables players to create and prioritize tasks
tasklist = {
enabled = true,
},

-- enables the blueprint helper
blueprint_helper = {
enabled = true,
},

-- enables score and tracking thereof
score = {
enabled = true,
},

-- adds a paint brush
paint = {
enabled = true,
},

-- adds a fish market
fish_market = {
enabled = true,
market_item = 'coin',
},

-- automatically marks mines for deconstruction when they are depleted
-- currently not working with mods
auto_deconstruct = {
enabled = true,
},

-- adds anti-nuke griefing
nuke_control = {
enabled = true,
enable_autokick = true,
enable_autoban = true,

-- how long a player must be on the server to be allowed to use the nuke
nuke_min_time_hours = 3,
},

-- 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.
on_by_default = false,
},

-- adds hodor responses to messages
hodor = {
enabled = true,
},

-- enable RedMew auto respond messages
auto_respond = {
enabled = true,
},

-- enable the mentioning system, which notifies a player when their name is mentioned
mentions = {
enabled = true,
},

player_create = {
enabled = true,

-- items automatically inserted into the player inventory
starting_items = {
{name = 'iron-gear-wheel', count = 8},
{name = 'iron-plate', count = 16},
},

-- 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',
'Click the question mark in the top left corner for server information and map details.',
},

-- 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 = 'steel-axe', count = 10},
Expand All @@ -156,17 +122,14 @@ global.config = {
},
},
},

-- spawns more units when one dies
hail_hydra = {
enabled = false,

-- at which scale the evolution will increase the additional hydra spawns
-- to disable scaling with evolution, set to 0.
-- the formula: chance = hydra_chance + (evolution_factor * evolution_scale)
-- example: small spitter has 0.2, which is 20% at 0% and 120% at an evolution_factor of 1
evolution_scale = 1,

-- 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
hydras = {
Expand All @@ -175,18 +138,59 @@ global.config = {
['medium-spitter'] = {['medium-worm-turret'] = 0.2},
['big-spitter'] = {['big-worm-turret'] = 0.2},
['behemoth-spitter'] = {['big-worm-turret'] = 0.4},

-- biters
['medium-biter'] = {['small-biter'] = 1.2},
['big-biter'] = {['medium-biter'] = 1.2},
['behemoth-biter'] = {['big-biter'] = 1.2},

-- worms
['small-worm-turret'] = {['small-biter'] = 2.5},
['medium-worm-turret'] = {['small-biter'] = 2.5, ['medium-biter'] = 0.6},
['big-worm-turret'] = {['small-biter'] = 3.8, ['medium-biter'] = 1.3, ['big-biter'] = 1.1},
},
},
-- automatically marks miners for deconstruction when they are depleted (currently compatible with hard mods that add miners)
autodeconstruct = {
enabled = true,
},
-- when a player dies, leaves a map marker until the corpse expires or is looted
corpse_util = {
enabled = true,
},
-- adds many commands for users and admins alike
custom_commands = {
enabled = true,
},
-- enables donators' on-join messages
donator_messages = {
enabled = true,
},
-- saves players' lives if they have a small-plane in their inventory, also adds the small-plan to the market
train_saviour = {
enabled = true,
},
-- logs when commands are used and when items are spawned in
free_item_loggin = {
enabled = true,
},
player_colors = {
enabled = true,
},
-- checks the list of players for train station names
train_station_names = {
enabled = true,
},
-- adds a command that switches a player to the enemy force and teleports them far away for some time to calm down
walkabout = {
enabled = true,
},
-- adds a command to generate a popup dialog box for players to see, useful for important announcements
popup = {
enabled = true,
},
-- adds a camera to watch another player
camera = {
enabled = true,
},
}

return global.config
44 changes: 31 additions & 13 deletions control.lua
Expand Up @@ -14,34 +14,48 @@ require 'features.player_create'
require 'features.user_groups'

-- Feature modules, each can be disabled safely
if config.auto_deconstruct.enabled then
if config.autodeconstruct.enabled then
require 'features.autodeconstruct'
end
if config.hodor.enabled or config.auto_respond.enabled or config.mentions.enabled then
require 'features.chat_triggers'
end
require 'features.corpse_util'
require 'features.custom_commands'
require 'features.donator_messages'
require 'features.train_saviour'
if config.corpse_util.enabled then
require 'features.corpse_util'
end
if config.custom_commands.enabled then
require 'features.custom_commands'
end
if config.donator_messages.enabled then
require 'features.donator_messages'
end
if config.train_saviour.enabled then
require 'features.train_saviour'
end
if config.fish_market.enabled then
require 'features.fish_market'
end
require 'features.free_item_logging'
if config.free_item_loggin.enabled then
require 'features.free_item_logging'
end
if config.nuke_control.enabled then
require 'features.nuke_control'
end
require 'features.player_colors'
if config.player_colors.enabled then
require 'features.player_colors'
end
if config.reactor_meltdown.enabled then
require 'features.reactor_meltdown'
end
require 'features.train_station_names'
require 'features.walkabout'

if config.train_station_names.enabled then
require 'features.train_station_names'
end
if config.walkabout.enabled then
require 'features.walkabout'
end
if global.config.performance.enabled then
require 'features.performance'
end

if global.config.hail_hydra.enabled then
require 'features.hail_hydra'
end
Expand Down Expand Up @@ -71,5 +85,9 @@ end
if config.score.enabled then
require 'features.gui.score'
end
require 'features.gui.popup'
require 'features.gui.camera'
if config.popup.enabled then
require 'features.gui.popup'
end
if config.camera.enabled then
require 'features.gui.camera'
end
8 changes: 4 additions & 4 deletions features/gui/info.lua
Expand Up @@ -21,10 +21,10 @@ local new_info_key = 4
local welcomed_players = {}

local editable_info = {
[map_name_key] = global.config.map_name_key,
[map_description_key] = global.config.map_description_key,
[map_extra_info_key] = global.config.map_extra_info_key,
[new_info_key] = global.config.new_info_key
[map_name_key] = global.config.map_info.map_name_key,
[map_description_key] = global.config.map_info.map_description_key,
[map_extra_info_key] = global.config.map_info.map_extra_info_key,
[new_info_key] = global.config.map_info.new_info_key
}

Global.register(
Expand Down

0 comments on commit 44b7176

Please sign in to comment.