From ee6ffb09b676f1c86745b951a52c70162e0d23c4 Mon Sep 17 00:00:00 2001 From: Riverz1 Date: Sun, 20 Oct 2024 14:31:36 +0400 Subject: [PATCH 1/5] Host --- config/example/admin_ranks.txt | 43 ---- config/example/admins.txt | 8 - config/example/announcer/ban.txt | 8 - config/example/announcer/serverlist.txt | 7 - config/example/config.txt | 317 ------------------------ config/example/dbconfig.txt | 17 -- config/example/donators.txt | 8 - config/example/game_options.txt | 61 ----- config/example/guard_blacklist.txt | 3 - config/example/jobs.txt | 37 --- config/example/maps.txt | 57 ----- config/example/mentors.txt | 2 - config/example/motd.txt | 5 - 13 files changed, 573 deletions(-) delete mode 100644 config/example/admin_ranks.txt delete mode 100644 config/example/admins.txt delete mode 100644 config/example/announcer/ban.txt delete mode 100644 config/example/announcer/serverlist.txt delete mode 100644 config/example/config.txt delete mode 100644 config/example/dbconfig.txt delete mode 100644 config/example/donators.txt delete mode 100644 config/example/game_options.txt delete mode 100644 config/example/guard_blacklist.txt delete mode 100644 config/example/jobs.txt delete mode 100644 config/example/maps.txt delete mode 100644 config/example/mentors.txt delete mode 100644 config/example/motd.txt diff --git a/config/example/admin_ranks.txt b/config/example/admin_ranks.txt deleted file mode 100644 index 5f006466c09c..000000000000 --- a/config/example/admin_ranks.txt +++ /dev/null @@ -1,43 +0,0 @@ -######################################################################################## -# ADMIN RANK DEFINES # -# The format of this is very simple. Rank name goes first. # -# Rank is CASE-SENSITIVE, all punctuation will be stripped so spaces don't matter. # -# Each rank is then followed by keywords with the prefix "+". # -# These keywords represent groups of verbs and abilities which are given to that rank. # -# +@ (or +prev) is a special shorthand which adds all the rights of the rank above it. # -# Ranks with no keywords will just be given the most basic verbs and abilities ~Carn # -######################################################################################## -# PLEASE NOTE: depending on config options, some abilities will be unavailable regardless if you have permission to use them! -# ALSO NOTE: this is a WorkInProgress at the moment. Most of this is just arbitrarily thrown in whatever group because LoadsaWork2Do+LittleTime. -# I'll be doing more moving around as feedback comes in. So be sure to check the notes after updates. - -# KEYWORDS: -# +ADMIN = general admin tools, verbs etc -# +FUN = events, other event-orientated actions. Access to the fun secrets in the secrets panel. -# +BAN = the ability to ban, jobban and fullban -# +STEALTH = the ability to stealthmin (make yourself appear with a fake name to everyone but other admins -# +POSSESS = the ability to possess objects -# +REJUV (or +REJUVINATE) = the ability to heal, respawn, modify damage and use godmode -# +BUILD (or +BUILDMODE) = the ability to use buildmode -# +SERVER = higher-risk admin verbs and abilities, such as those which affect the server configuration. -# +DEBUG = debug tools used for diagnosing and fixing problems. It's useful to give this to coders so they can investigate problems on a live server. -# +VAREDIT = everyone may view viewvars/debugvars/whatever you call it. This keyword allows you to actually EDIT those variables. -# +RIGHTS (or +PERMISSIONS) = allows you to promote and/or demote people. -# +SOUND (or +SOUNDS) = allows you to upload and play sounds -# +SPAWN (or +CREATE) = mob transformations, spawning of most atoms including mobs (high-risk atoms, e.g. blackholes, will require the +FUN flag too) -# +EVERYTHING (or +HOST or +ALL) = Simply gives you everything without having to type every flag - -Admin Observer - -Admin Candidate +ADMIN -Trial Admin +@ +SPAWN +REJUV +VAREDIT +BAN -Badmin +@ +POSSESS +BUILDMODE +SERVER +FUN -Game Admin +@ +STEALTH +SOUNDS +DEBUG +PERMISSIONS -Game Master +EVERYTHING -Head Admin +EVERYTHING -Retired Admin +ADMIN +STEALTH - -Host +EVERYTHING - -Developer +DEBUG +VAREDIT +SERVER +SPAWN +REJUV +POSSESS +BUILDMODE -Dev Mod +@ +MOD diff --git a/config/example/admins.txt b/config/example/admins.txt deleted file mode 100644 index 3b830cd27ff8..000000000000 --- a/config/example/admins.txt +++ /dev/null @@ -1,8 +0,0 @@ -###################################################################### -# Basically, ckey goes first. Rank goes after the "-" # -# Case is not important for ckey. # -# Case IS important for the rank. However punctuation/spaces are not # -# Ranks can be anything defined in admin_ranks.txt ~Carn # -###################################################################### - -# not_a_user - Admin diff --git a/config/example/announcer/ban.txt b/config/example/announcer/ban.txt deleted file mode 100644 index 0481d9078ffa..000000000000 --- a/config/example/announcer/ban.txt +++ /dev/null @@ -1,8 +0,0 @@ -# Config for ban announce settings. Case insensitive. -# Recieve option can be True/On. If other option setted, server turn off ban announce proccessing. -# Same for Send option. -# RECEIVE = TRUE # Server recieve ban announces -# SEND = TRUE # After writing ban to DB send ban announce to other servers. - -receive = true -send = true \ No newline at end of file diff --git a/config/example/announcer/serverlist.txt b/config/example/announcer/serverlist.txt deleted file mode 100644 index f0bdfa891483..000000000000 --- a/config/example/announcer/serverlist.txt +++ /dev/null @@ -1,7 +0,0 @@ -# Config for authorization net announcer -# First server must by self with the key to authorize clients -# Other servers url and keys use to broadcasts messages - -byond://127.0.0.1:2706 = SomeSuperSecretKey # self -byond://127.0.0.1:2706 = SomeSuperSecretKey # if you need to broadcast self, just reapet it -# byond://127.0.0.2:2707 = OtherSecretKey \ No newline at end of file diff --git a/config/example/config.txt b/config/example/config.txt deleted file mode 100644 index cefd353c913e..000000000000 --- a/config/example/config.txt +++ /dev/null @@ -1,317 +0,0 @@ -## Server name: This appears at the top of the screen in-game. In this case it will read "tgstation: station_name" where station_name is the randomly generated name of the station for the round. Remove the # infront of SERVERNAME and replace 'tgstation' with the name of your choice -# SERVERNAME spacestation13 - -## Add a # infront of this if you want to use the SQL based admin system, the legacy system uses admins.txt. You need to set up your database to use the SQL based system. -ADMIN_LEGACY_SYSTEM - -## Unhash this entry to have certain jobs require your account to be at least a certain number of days old to select. You can configure the exact age requirement for different jobs by editing -## the minimal_player_age variable in the files in folder /code/game/jobs/job/.. for the job you want to edit. Set minimal_player_age to 0 to disable age requirement for that job. -## REQUIRES the database set up to work. Keep it hashed if you don't have a database set up. -## NOTE: If you have just set-up the database keep this DISABLED, as player age is determined from the first time they connect to the server with the database up. If you just set it up, it means -## you have noone older than 0 days, since noone has been logged yet. Only turn this on once you have had the database up for 30 days. -#USE_AGE_RESTRICTION_FOR_JOBS - -##Unhash this to use real in-game minutes for certain jobs (USE_AGE_RESTRICTION_FOR_JOBS must be enabled too) -#USE_INGAME_MINUTES_RESTRICTION_FOR_JOBS - -## log stuff, see configuration.dm for descriptions -LOG_OOC -LOG_SAY -LOG_ADMIN -LOG_ADMINCHAT -LOG_ACCESS -LOG_GAME -LOG_VOTE -LOG_WHISPER -LOG_EMOTE -LOG_ATTACK -LOG_PDA -LOG_RUNTIME -LOG_SQL_ERROR -LOG_INITIALIZATION -LOG_QDEL -LOG_ASSET -LOG_TGUI -# LOG_JS_ERROR -# LOG_HREFS -# LOG_ADMINWARN ## Also duplicates a bunch of other messages. - -## sql switching -# SQL_ENABLED - -## disconnect players who did nothing during 10 minutes or AFK_TIME_BRACKET time -# KICK_INACTIVE - -## Minutes until user will be kicked for being AFK -# AFK_TIME_BRACKET 10 - -## probablities for game modes chosen in bundles of modes -## -## default probablity is 100, increase to make that mode more likely to be picked -## set to 0 to disable that mode - -# PROBABILITY EXTENDED 40 - -## Hash out to disable random events during the round. -ALLOW_RANDOM_EVENTS 1 - -## if amount of traitors scales or not -TRAITOR_SCALING 1 - -## if objectives are disabled -#OBJECTIVES_DISABLED - -## make ERT's be only called by admins -#ERT_ADMIN_ONLY - -## If security is prohibited from being most antagonists -#PROTECT_ROLES_FROM_ANTAGONIST - -## Comment this out to stop admins being able to choose their personal ooccolor -ALLOW_ADMIN_OOCCOLOR - -## time period (deciseconds) which voting session will last (default 1 minute) -VOTE_PERIOD 1200 - -## Allow ghosts to see antagonist through AntagHUD -ALLOW_ANTAG_HUD - -## If ghosts use antagHUD they are no longer allowed to join the round. -ANTAG_HUD_RESTRICTED - -## allow AI job -ALLOW_AI 1 - -## disable abandon mob -# NORESPAWN - -## set a hosted by name for unix platforms -#HOSTEDBY yournamehere - -## Uncomment this to stop people connecting to your server without a registered ckey. (i.e. guest-* are all blocked from connecting) -GUEST_BAN - -## Set to jobban everyone who's key is not listed in data/whitelist.txt from Captain, HoS, HoP, CE, RD, CMO, Warden, Security, Detective, and AI positions. -## Uncomment to 1 to jobban, leave commented out to allow these positions for everyone (but see GUEST_JOBBAN above and regular jobbans) -# USEWHITELIST - -## set a server location for world reboot. Don't include the byond://, just give the address and port. -#SERVER server.net:port - -## site address -# SITEURL http://example.com - -## forum address -# FORUMURL http://example.com - -## Wiki address -# WIKIURL http://example.com - -## Server Rules address -# SERVER_RULES_URL http://example.com - -## Discord invite address -# DISCORD_INVITE_URL http://example.com - -## Ban appeals URL - usually for a forum or wherever people should go to contact your admins. -# BANAPPEALS http://example.com - -##Toggle for having jobs load up from the .txt -# LOAD_JOBS_FROM_TXT - -##Remove the # mark infront of this to forbid admins from posssessing the singularity. -#FORBID_SINGULO_POSSESSION - -## Remove the # to allow special 'Easter-egg' events on special holidays such as seasonal holidays and stuff like 'Talk Like a Pirate Day' :3 YAARRR -ALLOW_HOLIDAYS - -##Defines the ticklag for the world. 0.9 is the normal one, 0.5 is smoother. -TICKLAG 0.4 - -## Comment this out to disable automuting -#AUTOMUTE_ON - -## How long the delay is before the Away Mission gate opens. Default is half an hour. -GATEWAY_DELAY 18000 - -## Remove the # to give assistants maint access. -#ASSISTANT_MAINT - -## Remove the # to make rounds which end instantly (Rev, Wizard, Malf) to continue until the shuttle is called or the station is nuked. -## Malf and Rev will let the shuttle be called when the antags/protags are dead. -#CONTINUOUS_ROUNDS - -## Uncomment to restrict non-admins from using humanoid alien races -#USEALIENWHITELIST - -## Uncomment this to enable job restrictions for xenos in occupation menu. -USE_ALIEN_JOB_RESTRICTION - -## Access to aliens through played time. -ALIEN_AVAILABLE_BY_TIME SKRELL 10000 -ALIEN_AVAILABLE_BY_TIME UNATHI 20000 -ALIEN_AVAILABLE_BY_TIME TAJARAN 30000 -ALIEN_AVAILABLE_BY_TIME DIONA 40000 - -##Remove the # to let ghosts spin chairs -#GHOST_INTERACTION - -## A ghosts max view range if they are a BYOND guest or regular account -#GHOST_MAX_VIEW 10 - -## A ghosts max view range if they are a byond/patron/boosty supporter -#GHOST_MAX_VIEW_SUPPORTER 13 - -## Required time to respawn after death -#DEATHTIME_REQUIRED 18000 - -## Path to the python executable on the system. Leave blank for default. -## Default is "python" on Windows, "/usr/bin/env python2" on UNIX. -#PYTHON_PATH - -## GitHub PAT with no scopes to increase rate limits of GitHub requests. -## Ignored when PYTHON_PATH is not set. -#GITHUB_TOKEN - -## Expected round length in minutes -EXPECTED_ROUND_LENGTH 90 - -## The lower delay between events in minutes. -## Affect mundane, moderate, and major events respectively -EVENT_DELAY_LOWER 10;30;50 - -## The upper delay between events in minutes. -## Affect mundane, moderate, and major events respectively -EVENT_DELAY_UPPER 15;45;70 - -## The delay until the first time an event of the given severity runs in minutes. -## Unset setting use the EVENT_DELAY_LOWER and EVENT_DELAY_UPPER values instead. -#EVENT_CUSTOM_START_MUNDANE 10;15 -#EVENT_CUSTOM_START_MODERATE 30;45 -EVENT_CUSTOM_START_MAJOR 50;70 - -## Uncommen to allow ghosts to write in blood during Cult rounds. -ALLOW_CULT_GHOSTWRITER - -## Sets the minimum number of cultists needed for ghosts to write in blood. -REQ_CULT_GHOSTWRITER 6 - -## place address for chat bridge -# CHAT_BRIDGE http://localhost:3000 - -## Media base URL - determines where to pull the jukebox playlist from. -# MEDIA_BASE_URL http://game2.tauceti.ru/media - -## guard (geoip and stuff) -#GUARD_EMAIL contact@taucetistation.org -#GUARD_ENABLED -#GUARD_AUTOBAN_TRESHHOLD 2 -#GUARD_AUTOBAN_REASON We think you are a bad guy and block you because of this. -#GUARD_AUTOBAN_STICKY -# ISO 3166-1 codes for trusted -#GUARD_WHITELISTED_COUNTRY_CODES RU,UA,BY,KZ - -## Uncomment to provide special actions for people from /config/donators.txt -#ALLOW_DONATORS - -## Uncomment to provide special actions for Tau Ceti Station patrons -#ALLOW_TAUCETI_PATRONS - -## Uncomment to provide special actions (same as for donators) for people with Byond Membership -#ALLOW_BYOND_MEMBERSHIP - -## Your link to donat informations -#DONATE_INFO_URL http://you-url - -## Uncomment this to enable checking for the cid randomizer dll. (disabled if database isn't enabled or connected) -# CHECK_RANDOMIZER - -##BYOND version restrictions -##client with version < BYOND_VERSION_MIN will be kicked, < recommend - just warned -##by default will be used build RECOMMENDED_VERSION (latest compatible major version) -# BYOND_VERSION_MIN 514 -# BYOND_VERSION_RECOMMEND 514 - -## Changelog link -CHANGELOG_LINK https://changelog.taucetistation.org - -## Changelog hash link -CHANGELOG_HASH_LINK https://changelog.taucetistation.org/hash.txt - -## Repository link -REPOSITORY_LINK https://github.com/TauCetiStation/TauCetiClassic - -## Registration panic bunker won't allow user with registration date less than that. (format: year-month-day) -# REGISTRATION_PANIC_BUNKER_AGE 2000-1-1 - -## If user played more than this value (in minutes), bunker will let him in -# ALLOWED_BY_BUNKER_PLAYER_AGE 60 - -## Panic bunker configured by players limit. This value is a maximum number of players. -# CLIENT_LIMIT_PANIC_BUNKER_COUNT 60 - -## Link used by limit panic bunker to redirect a client -# CLIENT_LIMIT_PANIC_BUNKER_LINK byond://game.taucetistation.org:2507 - -## In ban mode bunker will block new users before they can join server (like bans). This will not check user registration date and will use only server player age. Can be used as whitelist for new players. -#BUNKER_BAN_MODE - -## This will be used as ban message in ban mode -#BUNKER_BAN_MODE_MESSAGE Sorry, you can't play on this server, because we don't accept new players.
Please, visit another our server.
For more information visit taucetistation.org - -## Replaces whatever map json file with maps/testmap.json to load testmap only. -## Saves alot of initialization time, since only centcomm and testmap will be loaded. For tests where map doesn't matter. -# SUMMON_TESTMAP - -## Force map not to load junkyard -## Saves some initialization time -NO_JUNKYARD - -## Force map not to load mine (asteroid) -## Saves some initialization time -# NO_MINE - -## Force map not to load ruins and empty z_levels -## Saves some initialization time -# NO_SPACE_LEVELS - -## Uncomment to enable byond profiler. Logs will be dropped in the round log folder. -## Keep in mind it can cause performance degradation. -# AUTO_PROFILE - -## Uncomment to allow drastic performence enhancemet measures to turn on automatically once there are equal or more clients than the configured amount (will also prompt admin for veto) -# AUTO_LAG_SWITCH_POP 100 - -## Enables demo recordings, works slower on windows -# RECORD_REPLAYS - -## Use persistent cache for better performance -## You will need to occasionally clean ./cache/persistent yourself from old files -## by removing folder or with ./script/clear_persistent_cache.sh -#USE_PERSISTENT_CACHE - -## Run server in sandbox mode - everyone has admin permissions without logs, bans -## not recommended if you host server without virt box/docker/etc. and do not restrict clients access to server -# SANDBOX - -## This config option disables OOC after round start, and enables it back after round end. -## Comment it out to disable such behaviour. -OOC_ROUND_ONLY - -## TOPIC RATE LIMITING -## This allows you to limit how many topic calls (clicking on a interface window) the client can do in any given game second and/or game minute. -## Admins are exempt from these limits. -## Hitting the minute limit notifies admins. -## Set to 0 to disable. -SECOND_TOPIC_LIMIT 10 - -MINUTE_TOPIC_LIMIT 100 - -## This config option enables or disables deathmatch arena after round end. -DEATHMATCH_ARENA 1 - -## How long in seconds after which a hard delete is treated as causing lag. This can be a float and supports a precision as low as nanoseconds. -#HARD_DELETES_OVERRUN_THRESHOLD 0.5 - -## Once a typepath causes overrun from hard deletes this many times, stop hard deleting it on garbage collection failures. (set to 0 to disable) -#HARD_DELETES_OVERRUN_LIMIT 0 diff --git a/config/example/dbconfig.txt b/config/example/dbconfig.txt deleted file mode 100644 index b3079d0c08b7..000000000000 --- a/config/example/dbconfig.txt +++ /dev/null @@ -1,17 +0,0 @@ -# MySQL Connection Configuration - -# Server the MySQL database can be found at -# Examples: localhost, 200.135.5.43, www.mysqldb.com, etc. -ADDRESS localhost - -# MySQL server port (default is 3306) -PORT 3306 - -# Database the population, death, karma, etc. tables may be found in -DATABASE tgstation - -# Username/Login used to access the database -LOGIN mylogin - -# Password used to access the database -PASSWORD mypassword diff --git a/config/example/donators.txt b/config/example/donators.txt deleted file mode 100644 index ac281d46d4e6..000000000000 --- a/config/example/donators.txt +++ /dev/null @@ -1,8 +0,0 @@ -# Format: -# ckey -# OR -# ckey DD.MM.YY -# -# second parameter is optional expiration day - -volas 22.12.22 diff --git a/config/example/game_options.txt b/config/example/game_options.txt deleted file mode 100644 index 43534530db24..000000000000 --- a/config/example/game_options.txt +++ /dev/null @@ -1,61 +0,0 @@ -### HEALTH ### - -## level of health at which a mob goes into continual shock (soft crit) -HEALTH_THRESHOLD_SOFTCRIT 0 - -## level of health at which a mob becomes unconscious (crit) -HEALTH_THRESHOLD_CRIT -50 - -## level of health at which a mob becomes dead -HEALTH_THRESHOLD_DEAD -100 - -## multiplier which enables organs to take more damage before bones breaking or limbs being destroyed -## 100 means normal, 50 means half -ORGAN_HEALTH_MULTIPLIER 100 - -## multiplier which influences how fast organs regenerate naturally -## 100 means normal, 50 means half -ORGAN_REGENERATION_MULTIPLIER 75 - -### REVIVAL ### - -## whether pod plants work or not -REVIVAL_POD_PLANTS 1 - -## whether cloning tubes work or not -REVIVAL_CLONING 1 - -## amount of time (in hundredths of seconds) for which a brain retains the "spark of life" after the person's death (set to -1 for infinite) -REVIVAL_BRAIN_LIFE -1 - - - -### MOB MOVEMENT ### - -## We suggest editing these variabled in-game to find a good speed for your server. To do this you must be a high level admin. Open the 'debug' tab ingame. Select "Debug Controller" and then, in the popup, select "Configuration". These variables should have the same name. - -## These values get directly added to values and totals in-game. To speed things up make the number negative, to slow things down, make the number positive. - - -## These modify the run/walk speed of all mobs before the mob-specific modifiers are applied. -# RUN_SPEED 3 -# WALK_SPEED 5 - - -## The variables below affect the movement of specific mob types. -HUMAN_DELAY 0 -ROBOT_DELAY 0 -MONKEY_DELAY 0 -ALIEN_DELAY 0 -METROID_DELAY 0 -ANIMAL_DELAY 0 - -### CRAFTING ### - -## Controls if players can see recipes in menu, even if they don't have required components (this does not affect crafting itself, just visibility). -CRAFT_RECIPES_VISIBILITY - -### ETC ### - -## If server time is beetween 11 pm and 8 am, lights will become more dim and easy on the eyes, comment to disable -#NIGHTSHIFT diff --git a/config/example/guard_blacklist.txt b/config/example/guard_blacklist.txt deleted file mode 100644 index 2e02625f126f..000000000000 --- a/config/example/guard_blacklist.txt +++ /dev/null @@ -1,3 +0,0 @@ -# Format: -# ISP Provider name -# IP 123.456.789. diff --git a/config/example/jobs.txt b/config/example/jobs.txt deleted file mode 100644 index 8279ed18b1a2..000000000000 --- a/config/example/jobs.txt +++ /dev/null @@ -1,37 +0,0 @@ -Captain=1 -Head of Personnel=1 -Head of Security=1 -Chief Engineer=1 -Research Director=1 -Chief Medical Officer=1 - -Station Engineer=5 -Roboticist=1 - -Medical Doctor=5 -Geneticist=2 -Virologist=1 - -Scientist=3 -Chemist=2 - -Bartender=1 -Botanist=2 -Chef=1 -Janitor=1 -Quartermaster=1 -Shaft Miner=3 - -Warden=1 -Detective=1 -Security Officer=5 - -Assistant=-1 -Atmospheric Technician=4 -Cargo Technician=3 -Chaplain=1 -Lawyer=2 -Librarian=1 - -AI=1 -Cyborg=1 \ No newline at end of file diff --git a/config/example/maps.txt b/config/example/maps.txt deleted file mode 100644 index 4300e6664696..000000000000 --- a/config/example/maps.txt +++ /dev/null @@ -1,57 +0,0 @@ -This file contains a list of maps for use in map rotation. -#Lines starting with # are ignored. -Lines not inside map blocks are also ignored -Duplicated entries use the latter one. -All whitespace at the start and end of lines is ignored. (including indentation, thats just for show) -Format: -#map [map name] (name of .json file in _maps folder without the .json part) - minplayers [number] (0 or less disables this requirement) - maxplayers [number] (0 or less disables this requirement) - (not implemented?) default (The last map with this defined will get all votes of players who have not explicitly voted for a map) - voteweight [number] (How much to count each player vote as, defaults to 1, setting to 0.5 counts each vote as half a vote, 2 as double, etc, Setting to 0 disables the map but allows players to still pick it) - disabled (disables the map) - votable (is this map votable) -endmap - -map boxstation - votable - default -endmap - -map boxstation_snow - votable - voteweight 0.7 -endmap - -map gamma - votable -endmap - -map gamma_snow - votable - voteweight 0.7 -endmap - -map delta - votable - minplayers 70 - voteweight 2.0 -endmap - -map testmap -endmap - -map falcon - votable - maxplayers 25 - voteweight 2 -endmap - -map prometheus - votable -endmap - -map stroechka - votable - maxplayers 10 -endmap diff --git a/config/example/mentors.txt b/config/example/mentors.txt deleted file mode 100644 index 0286ee501bc7..000000000000 --- a/config/example/mentors.txt +++ /dev/null @@ -1,2 +0,0 @@ -; just add the ckey (lowercase) of every mentor on a separate line -; lines starting with ; are comments and will be ignored \ No newline at end of file diff --git a/config/example/motd.txt b/config/example/motd.txt deleted file mode 100644 index f47164c6df1f..000000000000 --- a/config/example/motd.txt +++ /dev/null @@ -1,5 +0,0 @@ -

Welcome to Space Station 13!

- --This server is running Baystation 12's modification of the /tg/station13 SS13 code. -

-Bugtracker: http://baystation12.net/forums/viewtopic.php?f=18&t=8185 From 4324e446f4bb9979f30f1e7ac7ab791e548e7888 Mon Sep 17 00:00:00 2001 From: Riverz1 Date: Sun, 20 Oct 2024 16:31:45 +0400 Subject: [PATCH 2/5] Host --- config/example/admin_ranks.txt | 43 ++++ config/example/admins.txt | 8 + config/example/announcer/ban.txt | 8 + config/example/announcer/serverlist.txt | 7 + config/example/config.txt | 317 ++++++++++++++++++++++++ config/example/dbconfig.txt | 17 ++ config/example/donators.txt | 8 + config/example/game_options.txt | 61 +++++ config/example/guard_blacklist.txt | 3 + config/example/jobs.txt | 37 +++ config/example/maps.txt | 57 +++++ config/example/mentors.txt | 2 + config/example/motd.txt | 5 + 13 files changed, 573 insertions(+) create mode 100644 config/example/admin_ranks.txt create mode 100644 config/example/admins.txt create mode 100644 config/example/announcer/ban.txt create mode 100644 config/example/announcer/serverlist.txt create mode 100644 config/example/config.txt create mode 100644 config/example/dbconfig.txt create mode 100644 config/example/donators.txt create mode 100644 config/example/game_options.txt create mode 100644 config/example/guard_blacklist.txt create mode 100644 config/example/jobs.txt create mode 100644 config/example/maps.txt create mode 100644 config/example/mentors.txt create mode 100644 config/example/motd.txt diff --git a/config/example/admin_ranks.txt b/config/example/admin_ranks.txt new file mode 100644 index 000000000000..1372fc7abe2e --- /dev/null +++ b/config/example/admin_ranks.txt @@ -0,0 +1,43 @@ +######################################################################################## +# ADMIN RANK DEFINES # +# The format of this is very simple. Rank name goes first. # +# Rank is CASE-SENSITIVE, all punctuation will be stripped so spaces don't matter. # +# Each rank is then followed by keywords with the prefix "+". # +# These keywords represent groups of verbs and abilities which are given to that rank. # +# +@ (or +prev) is a special shorthand which adds all the rights of the rank above it. # +# Ranks with no keywords will just be given the most basic verbs and abilities ~Carn # +######################################################################################## +# PLEASE NOTE: depending on config options, some abilities will be unavailable regardless if you have permission to use them! +# ALSO NOTE: this is a WorkInProgress at the moment. Most of this is just arbitrarily thrown in whatever group because LoadsaWork2Do+LittleTime. +# I'll be doing more moving around as feedback comes in. So be sure to check the notes after updates. + +# KEYWORDS: +# +ADMIN = general admin tools, verbs etc +# +FUN = events, other event-orientated actions. Access to the fun secrets in the secrets panel. +# +BAN = the ability to ban, jobban and fullban +# +STEALTH = the ability to stealthmin (make yourself appear with a fake name to everyone but other admins +# +POSSESS = the ability to possess objects +# +REJUV (or +REJUVINATE) = the ability to heal, respawn, modify damage and use godmode +# +BUILD (or +BUILDMODE) = the ability to use buildmode +# +SERVER = higher-risk admin verbs and abilities, such as those which affect the server configuration. +# +DEBUG = debug tools used for diagnosing and fixing problems. It's useful to give this to coders so they can investigate problems on a live server. +# +VAREDIT = everyone may view viewvars/debugvars/whatever you call it. This keyword allows you to actually EDIT those variables. +# +RIGHTS (or +PERMISSIONS) = allows you to promote and/or demote people. +# +SOUND (or +SOUNDS) = allows you to upload and play sounds +# +SPAWN (or +CREATE) = mob transformations, spawning of most atoms including mobs (high-risk atoms, e.g. blackholes, will require the +FUN flag too) +# +EVERYTHING (or +HOST or +ALL) = Simply gives you everything without having to type every flag + +Admin Observer + +Admin Candidate +ADMIN +Trial Admin +@ +SPAWN +REJUV +VAREDIT +BAN +Badmin +@ +POSSESS +BUILDMODE +SERVER +FUN +Game Admin +@ +STEALTH +SOUNDS +DEBUG +PERMISSIONS +Game Master +EVERYTHING +Head Admin +EVERYTHING +Retired Admin +ADMIN +STEALTH + +Host +EVERYTHING + +Developer +DEBUG +VAREDIT +SERVER +SPAWN +REJUV +POSSESS +BUILDMODE +Dev Mod +@ +MOD diff --git a/config/example/admins.txt b/config/example/admins.txt new file mode 100644 index 000000000000..ae1ab106a512 --- /dev/null +++ b/config/example/admins.txt @@ -0,0 +1,8 @@ +###################################################################### +# Basically, ckey goes first. Rank goes after the "-" # +# Case is not important for ckey. # +# Case IS important for the rank. However punctuation/spaces are not # +# Ranks can be anything defined in admin_ranks.txt ~Carn # +###################################################################### + +# not_a_user - Admin diff --git a/config/example/announcer/ban.txt b/config/example/announcer/ban.txt new file mode 100644 index 000000000000..0481d9078ffa --- /dev/null +++ b/config/example/announcer/ban.txt @@ -0,0 +1,8 @@ +# Config for ban announce settings. Case insensitive. +# Recieve option can be True/On. If other option setted, server turn off ban announce proccessing. +# Same for Send option. +# RECEIVE = TRUE # Server recieve ban announces +# SEND = TRUE # After writing ban to DB send ban announce to other servers. + +receive = true +send = true \ No newline at end of file diff --git a/config/example/announcer/serverlist.txt b/config/example/announcer/serverlist.txt new file mode 100644 index 000000000000..f0bdfa891483 --- /dev/null +++ b/config/example/announcer/serverlist.txt @@ -0,0 +1,7 @@ +# Config for authorization net announcer +# First server must by self with the key to authorize clients +# Other servers url and keys use to broadcasts messages + +byond://127.0.0.1:2706 = SomeSuperSecretKey # self +byond://127.0.0.1:2706 = SomeSuperSecretKey # if you need to broadcast self, just reapet it +# byond://127.0.0.2:2707 = OtherSecretKey \ No newline at end of file diff --git a/config/example/config.txt b/config/example/config.txt new file mode 100644 index 000000000000..33fc0f6add77 --- /dev/null +++ b/config/example/config.txt @@ -0,0 +1,317 @@ +## Server name: This appears at the top of the screen in-game. In this case it will read "tgstation: station_name" where station_name is the randomly generated name of the station for the round. Remove the # infront of SERVERNAME and replace 'tgstation' with the name of your choice +# SERVERNAME spacestation13 + +## Add a # infront of this if you want to use the SQL based admin system, the legacy system uses admins.txt. You need to set up your database to use the SQL based system. +ADMIN_LEGACY_SYSTEM + +## Unhash this entry to have certain jobs require your account to be at least a certain number of days old to select. You can configure the exact age requirement for different jobs by editing +## the minimal_player_age variable in the files in folder /code/game/jobs/job/.. for the job you want to edit. Set minimal_player_age to 0 to disable age requirement for that job. +## REQUIRES the database set up to work. Keep it hashed if you don't have a database set up. +## NOTE: If you have just set-up the database keep this DISABLED, as player age is determined from the first time they connect to the server with the database up. If you just set it up, it means +## you have noone older than 0 days, since noone has been logged yet. Only turn this on once you have had the database up for 30 days. +#USE_AGE_RESTRICTION_FOR_JOBS + +##Unhash this to use real in-game minutes for certain jobs (USE_AGE_RESTRICTION_FOR_JOBS must be enabled too) +#USE_INGAME_MINUTES_RESTRICTION_FOR_JOBS + +## log stuff, see configuration.dm for descriptions +LOG_OOC +LOG_SAY +LOG_ADMIN +LOG_ADMINCHAT +LOG_ACCESS +LOG_GAME +LOG_VOTE +LOG_WHISPER +LOG_EMOTE +LOG_ATTACK +LOG_PDA +LOG_RUNTIME +LOG_SQL_ERROR +LOG_INITIALIZATION +LOG_QDEL +LOG_ASSET +LOG_TGUI +# LOG_JS_ERROR +# LOG_HREFS +# LOG_ADMINWARN ## Also duplicates a bunch of other messages. + +## sql switching +# SQL_ENABLED + +## disconnect players who did nothing during 10 minutes or AFK_TIME_BRACKET time +# KICK_INACTIVE + +## Minutes until user will be kicked for being AFK +# AFK_TIME_BRACKET 10 + +## probablities for game modes chosen in bundles of modes +## +## default probablity is 100, increase to make that mode more likely to be picked +## set to 0 to disable that mode + +# PROBABILITY EXTENDED 40 + +## Hash out to disable random events during the round. +ALLOW_RANDOM_EVENTS 1 + +## if amount of traitors scales or not +TRAITOR_SCALING 1 + +## if objectives are disabled +#OBJECTIVES_DISABLED + +## make ERT's be only called by admins +#ERT_ADMIN_ONLY + +## If security is prohibited from being most antagonists +#PROTECT_ROLES_FROM_ANTAGONIST + +## Comment this out to stop admins being able to choose their personal ooccolor +ALLOW_ADMIN_OOCCOLOR + +## time period (deciseconds) which voting session will last (default 1 minute) +VOTE_PERIOD 1200 + +## Allow ghosts to see antagonist through AntagHUD +ALLOW_ANTAG_HUD + +## If ghosts use antagHUD they are no longer allowed to join the round. +ANTAG_HUD_RESTRICTED + +## allow AI job +ALLOW_AI 1 + +## disable abandon mob +# NORESPAWN + +## set a hosted by name for unix platforms +#HOSTEDBY yournamehere + +## Uncomment this to stop people connecting to your server without a registered ckey. (i.e. guest-* are all blocked from connecting) +GUEST_BAN + +## Set to jobban everyone who's key is not listed in data/whitelist.txt from Captain, HoS, HoP, CE, RD, CMO, Warden, Security, Detective, and AI positions. +## Uncomment to 1 to jobban, leave commented out to allow these positions for everyone (but see GUEST_JOBBAN above and regular jobbans) +# USEWHITELIST + +## set a server location for world reboot. Don't include the byond://, just give the address and port. +#SERVER server.net:port + +## site address +# SITEURL http://example.com + +## forum address +# FORUMURL http://example.com + +## Wiki address +# WIKIURL http://example.com + +## Server Rules address +# SERVER_RULES_URL http://example.com + +## Discord invite address +# DISCORD_INVITE_URL http://example.com + +## Ban appeals URL - usually for a forum or wherever people should go to contact your admins. +# BANAPPEALS http://example.com + +##Toggle for having jobs load up from the .txt +# LOAD_JOBS_FROM_TXT + +##Remove the # mark infront of this to forbid admins from posssessing the singularity. +#FORBID_SINGULO_POSSESSION + +## Remove the # to allow special 'Easter-egg' events on special holidays such as seasonal holidays and stuff like 'Talk Like a Pirate Day' :3 YAARRR +ALLOW_HOLIDAYS + +##Defines the ticklag for the world. 0.9 is the normal one, 0.5 is smoother. +TICKLAG 0.4 + +## Comment this out to disable automuting +#AUTOMUTE_ON + +## How long the delay is before the Away Mission gate opens. Default is half an hour. +GATEWAY_DELAY 18000 + +## Remove the # to give assistants maint access. +#ASSISTANT_MAINT + +## Remove the # to make rounds which end instantly (Rev, Wizard, Malf) to continue until the shuttle is called or the station is nuked. +## Malf and Rev will let the shuttle be called when the antags/protags are dead. +#CONTINUOUS_ROUNDS + +## Uncomment to restrict non-admins from using humanoid alien races +#USEALIENWHITELIST + +## Uncomment this to enable job restrictions for xenos in occupation menu. +USE_ALIEN_JOB_RESTRICTION + +## Access to aliens through played time. +ALIEN_AVAILABLE_BY_TIME SKRELL 10000 +ALIEN_AVAILABLE_BY_TIME UNATHI 20000 +ALIEN_AVAILABLE_BY_TIME TAJARAN 30000 +ALIEN_AVAILABLE_BY_TIME DIONA 40000 + +##Remove the # to let ghosts spin chairs +#GHOST_INTERACTION + +## A ghosts max view range if they are a BYOND guest or regular account +#GHOST_MAX_VIEW 10 + +## A ghosts max view range if they are a byond/patron/boosty supporter +#GHOST_MAX_VIEW_SUPPORTER 13 + +## Required time to respawn after death +#DEATHTIME_REQUIRED 18000 + +## Path to the python executable on the system. Leave blank for default. +## Default is "python" on Windows, "/usr/bin/env python2" on UNIX. +#PYTHON_PATH + +## GitHub PAT with no scopes to increase rate limits of GitHub requests. +## Ignored when PYTHON_PATH is not set. +#GITHUB_TOKEN + +## Expected round length in minutes +EXPECTED_ROUND_LENGTH 90 + +## The lower delay between events in minutes. +## Affect mundane, moderate, and major events respectively +EVENT_DELAY_LOWER 10;30;50 + +## The upper delay between events in minutes. +## Affect mundane, moderate, and major events respectively +EVENT_DELAY_UPPER 15;45;70 + +## The delay until the first time an event of the given severity runs in minutes. +## Unset setting use the EVENT_DELAY_LOWER and EVENT_DELAY_UPPER values instead. +#EVENT_CUSTOM_START_MUNDANE 10;15 +#EVENT_CUSTOM_START_MODERATE 30;45 +EVENT_CUSTOM_START_MAJOR 50;70 + +## Uncommen to allow ghosts to write in blood during Cult rounds. +ALLOW_CULT_GHOSTWRITER + +## Sets the minimum number of cultists needed for ghosts to write in blood. +REQ_CULT_GHOSTWRITER 6 + +## place address for chat bridge +# CHAT_BRIDGE http://localhost:3000 + +## Media base URL - determines where to pull the jukebox playlist from. +# MEDIA_BASE_URL http://game2.tauceti.ru/media + +## guard (geoip and stuff) +#GUARD_EMAIL contact@taucetistation.org +#GUARD_ENABLED +#GUARD_AUTOBAN_TRESHHOLD 2 +#GUARD_AUTOBAN_REASON We think you are a bad guy and block you because of this. +#GUARD_AUTOBAN_STICKY +# ISO 3166-1 codes for trusted +#GUARD_WHITELISTED_COUNTRY_CODES RU,UA,BY,KZ + +## Uncomment to provide special actions for people from /config/donators.txt +#ALLOW_DONATORS + +## Uncomment to provide special actions for Tau Ceti Station patrons +#ALLOW_TAUCETI_PATRONS + +## Uncomment to provide special actions (same as for donators) for people with Byond Membership +#ALLOW_BYOND_MEMBERSHIP + +## Your link to donat informations +#DONATE_INFO_URL http://you-url + +## Uncomment this to enable checking for the cid randomizer dll. (disabled if database isn't enabled or connected) +# CHECK_RANDOMIZER + +##BYOND version restrictions +##client with version < BYOND_VERSION_MIN will be kicked, < recommend - just warned +##by default will be used build RECOMMENDED_VERSION (latest compatible major version) +# BYOND_VERSION_MIN 514 +# BYOND_VERSION_RECOMMEND 514 + +## Changelog link +CHANGELOG_LINK https://changelog.taucetistation.org + +## Changelog hash link +CHANGELOG_HASH_LINK https://changelog.taucetistation.org/hash.txt + +## Repository link +REPOSITORY_LINK https://github.com/TauCetiStation/TauCetiClassic + +## Registration panic bunker won't allow user with registration date less than that. (format: year-month-day) +# REGISTRATION_PANIC_BUNKER_AGE 2000-1-1 + +## If user played more than this value (in minutes), bunker will let him in +# ALLOWED_BY_BUNKER_PLAYER_AGE 60 + +## Panic bunker configured by players limit. This value is a maximum number of players. +# CLIENT_LIMIT_PANIC_BUNKER_COUNT 60 + +## Link used by limit panic bunker to redirect a client +# CLIENT_LIMIT_PANIC_BUNKER_LINK byond://game.taucetistation.org:2507 + +## In ban mode bunker will block new users before they can join server (like bans). This will not check user registration date and will use only server player age. Can be used as whitelist for new players. +#BUNKER_BAN_MODE + +## This will be used as ban message in ban mode +#BUNKER_BAN_MODE_MESSAGE Sorry, you can't play on this server, because we don't accept new players.
Please, visit another our server.
For more information visit taucetistation.org + +## Replaces whatever map json file with maps/testmap.json to load testmap only. +## Saves alot of initialization time, since only centcomm and testmap will be loaded. For tests where map doesn't matter. +# SUMMON_TESTMAP + +## Force map not to load junkyard +## Saves some initialization time +NO_JUNKYARD + +## Force map not to load mine (asteroid) +## Saves some initialization time +# NO_MINE + +## Force map not to load ruins and empty z_levels +## Saves some initialization time +# NO_SPACE_LEVELS + +## Uncomment to enable byond profiler. Logs will be dropped in the round log folder. +## Keep in mind it can cause performance degradation. +# AUTO_PROFILE + +## Uncomment to allow drastic performence enhancemet measures to turn on automatically once there are equal or more clients than the configured amount (will also prompt admin for veto) +# AUTO_LAG_SWITCH_POP 100 + +## Enables demo recordings, works slower on windows +# RECORD_REPLAYS + +## Use persistent cache for better performance +## You will need to occasionally clean ./cache/persistent yourself from old files +## by removing folder or with ./script/clear_persistent_cache.sh +#USE_PERSISTENT_CACHE + +## Run server in sandbox mode - everyone has admin permissions without logs, bans +## not recommended if you host server without virt box/docker/etc. and do not restrict clients access to server +# SANDBOX + +## This config option disables OOC after round start, and enables it back after round end. +## Comment it out to disable such behaviour. +OOC_ROUND_ONLY + +## TOPIC RATE LIMITING +## This allows you to limit how many topic calls (clicking on a interface window) the client can do in any given game second and/or game minute. +## Admins are exempt from these limits. +## Hitting the minute limit notifies admins. +## Set to 0 to disable. +SECOND_TOPIC_LIMIT 10 + +MINUTE_TOPIC_LIMIT 100 + +## This config option enables or disables deathmatch arena after round end. +DEATHMATCH_ARENA 1 + +## How long in seconds after which a hard delete is treated as causing lag. This can be a float and supports a precision as low as nanoseconds. +#HARD_DELETES_OVERRUN_THRESHOLD 0.5 + +## Once a typepath causes overrun from hard deletes this many times, stop hard deleting it on garbage collection failures. (set to 0 to disable) +#HARD_DELETES_OVERRUN_LIMIT 0 diff --git a/config/example/dbconfig.txt b/config/example/dbconfig.txt new file mode 100644 index 000000000000..a58afd88b310 --- /dev/null +++ b/config/example/dbconfig.txt @@ -0,0 +1,17 @@ +# MySQL Connection Configuration + +# Server the MySQL database can be found at +# Examples: localhost, 200.135.5.43, www.mysqldb.com, etc. +ADDRESS localhost + +# MySQL server port (default is 3306) +PORT 3306 + +# Database the population, death, karma, etc. tables may be found in +DATABASE tgstation + +# Username/Login used to access the database +LOGIN mylogin + +# Password used to access the database +PASSWORD mypassword diff --git a/config/example/donators.txt b/config/example/donators.txt new file mode 100644 index 000000000000..ac281d46d4e6 --- /dev/null +++ b/config/example/donators.txt @@ -0,0 +1,8 @@ +# Format: +# ckey +# OR +# ckey DD.MM.YY +# +# second parameter is optional expiration day + +volas 22.12.22 diff --git a/config/example/game_options.txt b/config/example/game_options.txt new file mode 100644 index 000000000000..e1b97f2504fe --- /dev/null +++ b/config/example/game_options.txt @@ -0,0 +1,61 @@ +### HEALTH ### + +## level of health at which a mob goes into continual shock (soft crit) +HEALTH_THRESHOLD_SOFTCRIT 0 + +## level of health at which a mob becomes unconscious (crit) +HEALTH_THRESHOLD_CRIT -50 + +## level of health at which a mob becomes dead +HEALTH_THRESHOLD_DEAD -100 + +## multiplier which enables organs to take more damage before bones breaking or limbs being destroyed +## 100 means normal, 50 means half +ORGAN_HEALTH_MULTIPLIER 100 + +## multiplier which influences how fast organs regenerate naturally +## 100 means normal, 50 means half +ORGAN_REGENERATION_MULTIPLIER 75 + +### REVIVAL ### + +## whether pod plants work or not +REVIVAL_POD_PLANTS 1 + +## whether cloning tubes work or not +REVIVAL_CLONING 1 + +## amount of time (in hundredths of seconds) for which a brain retains the "spark of life" after the person's death (set to -1 for infinite) +REVIVAL_BRAIN_LIFE -1 + + + +### MOB MOVEMENT ### + +## We suggest editing these variabled in-game to find a good speed for your server. To do this you must be a high level admin. Open the 'debug' tab ingame. Select "Debug Controller" and then, in the popup, select "Configuration". These variables should have the same name. + +## These values get directly added to values and totals in-game. To speed things up make the number negative, to slow things down, make the number positive. + + +## These modify the run/walk speed of all mobs before the mob-specific modifiers are applied. +# RUN_SPEED 3 +# WALK_SPEED 5 + + +## The variables below affect the movement of specific mob types. +HUMAN_DELAY 0 +ROBOT_DELAY 0 +MONKEY_DELAY 0 +ALIEN_DELAY 0 +METROID_DELAY 0 +ANIMAL_DELAY 0 + +### CRAFTING ### + +## Controls if players can see recipes in menu, even if they don't have required components (this does not affect crafting itself, just visibility). +CRAFT_RECIPES_VISIBILITY + +### ETC ### + +## If server time is beetween 11 pm and 8 am, lights will become more dim and easy on the eyes, comment to disable +#NIGHTSHIFT diff --git a/config/example/guard_blacklist.txt b/config/example/guard_blacklist.txt new file mode 100644 index 000000000000..2e02625f126f --- /dev/null +++ b/config/example/guard_blacklist.txt @@ -0,0 +1,3 @@ +# Format: +# ISP Provider name +# IP 123.456.789. diff --git a/config/example/jobs.txt b/config/example/jobs.txt new file mode 100644 index 000000000000..060cf2d6a737 --- /dev/null +++ b/config/example/jobs.txt @@ -0,0 +1,37 @@ +Captain=1 +Head of Personnel=1 +Head of Security=1 +Chief Engineer=1 +Research Director=1 +Chief Medical Officer=1 + +Station Engineer=5 +Roboticist=1 + +Medical Doctor=5 +Geneticist=2 +Virologist=1 + +Scientist=3 +Chemist=2 + +Bartender=1 +Botanist=2 +Chef=1 +Janitor=1 +Quartermaster=1 +Shaft Miner=3 + +Warden=1 +Detective=1 +Security Officer=5 + +Assistant=-1 +Atmospheric Technician=4 +Cargo Technician=3 +Chaplain=1 +Lawyer=2 +Librarian=1 + +AI=1 +Cyborg=1 \ No newline at end of file diff --git a/config/example/maps.txt b/config/example/maps.txt new file mode 100644 index 000000000000..4300e6664696 --- /dev/null +++ b/config/example/maps.txt @@ -0,0 +1,57 @@ +This file contains a list of maps for use in map rotation. +#Lines starting with # are ignored. +Lines not inside map blocks are also ignored +Duplicated entries use the latter one. +All whitespace at the start and end of lines is ignored. (including indentation, thats just for show) +Format: +#map [map name] (name of .json file in _maps folder without the .json part) + minplayers [number] (0 or less disables this requirement) + maxplayers [number] (0 or less disables this requirement) + (not implemented?) default (The last map with this defined will get all votes of players who have not explicitly voted for a map) + voteweight [number] (How much to count each player vote as, defaults to 1, setting to 0.5 counts each vote as half a vote, 2 as double, etc, Setting to 0 disables the map but allows players to still pick it) + disabled (disables the map) + votable (is this map votable) +endmap + +map boxstation + votable + default +endmap + +map boxstation_snow + votable + voteweight 0.7 +endmap + +map gamma + votable +endmap + +map gamma_snow + votable + voteweight 0.7 +endmap + +map delta + votable + minplayers 70 + voteweight 2.0 +endmap + +map testmap +endmap + +map falcon + votable + maxplayers 25 + voteweight 2 +endmap + +map prometheus + votable +endmap + +map stroechka + votable + maxplayers 10 +endmap diff --git a/config/example/mentors.txt b/config/example/mentors.txt new file mode 100644 index 000000000000..0286ee501bc7 --- /dev/null +++ b/config/example/mentors.txt @@ -0,0 +1,2 @@ +; just add the ckey (lowercase) of every mentor on a separate line +; lines starting with ; are comments and will be ignored \ No newline at end of file diff --git a/config/example/motd.txt b/config/example/motd.txt new file mode 100644 index 000000000000..4d7e1a50554a --- /dev/null +++ b/config/example/motd.txt @@ -0,0 +1,5 @@ +

Welcome to Space Station 13!

+ +-This server is running Baystation 12's modification of the /tg/station13 SS13 code. +

+Bugtracker: http://baystation12.net/forums/viewtopic.php?f=18&t=8185 From 3080a100d649222633340c8f6d104bbe1b3a62f7 Mon Sep 17 00:00:00 2001 From: Riverz1 Date: Sun, 20 Oct 2024 16:48:32 +0400 Subject: [PATCH 3/5] Revert "Host" This reverts commit 4324e446f4bb9979f30f1e7ac7ab791e548e7888. --- config/example/admin_ranks.txt | 43 ---- config/example/admins.txt | 8 - config/example/announcer/ban.txt | 8 - config/example/announcer/serverlist.txt | 7 - config/example/config.txt | 317 ------------------------ config/example/dbconfig.txt | 17 -- config/example/donators.txt | 8 - config/example/game_options.txt | 61 ----- config/example/guard_blacklist.txt | 3 - config/example/jobs.txt | 37 --- config/example/maps.txt | 57 ----- config/example/mentors.txt | 2 - config/example/motd.txt | 5 - 13 files changed, 573 deletions(-) delete mode 100644 config/example/admin_ranks.txt delete mode 100644 config/example/admins.txt delete mode 100644 config/example/announcer/ban.txt delete mode 100644 config/example/announcer/serverlist.txt delete mode 100644 config/example/config.txt delete mode 100644 config/example/dbconfig.txt delete mode 100644 config/example/donators.txt delete mode 100644 config/example/game_options.txt delete mode 100644 config/example/guard_blacklist.txt delete mode 100644 config/example/jobs.txt delete mode 100644 config/example/maps.txt delete mode 100644 config/example/mentors.txt delete mode 100644 config/example/motd.txt diff --git a/config/example/admin_ranks.txt b/config/example/admin_ranks.txt deleted file mode 100644 index 1372fc7abe2e..000000000000 --- a/config/example/admin_ranks.txt +++ /dev/null @@ -1,43 +0,0 @@ -######################################################################################## -# ADMIN RANK DEFINES # -# The format of this is very simple. Rank name goes first. # -# Rank is CASE-SENSITIVE, all punctuation will be stripped so spaces don't matter. # -# Each rank is then followed by keywords with the prefix "+". # -# These keywords represent groups of verbs and abilities which are given to that rank. # -# +@ (or +prev) is a special shorthand which adds all the rights of the rank above it. # -# Ranks with no keywords will just be given the most basic verbs and abilities ~Carn # -######################################################################################## -# PLEASE NOTE: depending on config options, some abilities will be unavailable regardless if you have permission to use them! -# ALSO NOTE: this is a WorkInProgress at the moment. Most of this is just arbitrarily thrown in whatever group because LoadsaWork2Do+LittleTime. -# I'll be doing more moving around as feedback comes in. So be sure to check the notes after updates. - -# KEYWORDS: -# +ADMIN = general admin tools, verbs etc -# +FUN = events, other event-orientated actions. Access to the fun secrets in the secrets panel. -# +BAN = the ability to ban, jobban and fullban -# +STEALTH = the ability to stealthmin (make yourself appear with a fake name to everyone but other admins -# +POSSESS = the ability to possess objects -# +REJUV (or +REJUVINATE) = the ability to heal, respawn, modify damage and use godmode -# +BUILD (or +BUILDMODE) = the ability to use buildmode -# +SERVER = higher-risk admin verbs and abilities, such as those which affect the server configuration. -# +DEBUG = debug tools used for diagnosing and fixing problems. It's useful to give this to coders so they can investigate problems on a live server. -# +VAREDIT = everyone may view viewvars/debugvars/whatever you call it. This keyword allows you to actually EDIT those variables. -# +RIGHTS (or +PERMISSIONS) = allows you to promote and/or demote people. -# +SOUND (or +SOUNDS) = allows you to upload and play sounds -# +SPAWN (or +CREATE) = mob transformations, spawning of most atoms including mobs (high-risk atoms, e.g. blackholes, will require the +FUN flag too) -# +EVERYTHING (or +HOST or +ALL) = Simply gives you everything without having to type every flag - -Admin Observer - -Admin Candidate +ADMIN -Trial Admin +@ +SPAWN +REJUV +VAREDIT +BAN -Badmin +@ +POSSESS +BUILDMODE +SERVER +FUN -Game Admin +@ +STEALTH +SOUNDS +DEBUG +PERMISSIONS -Game Master +EVERYTHING -Head Admin +EVERYTHING -Retired Admin +ADMIN +STEALTH - -Host +EVERYTHING - -Developer +DEBUG +VAREDIT +SERVER +SPAWN +REJUV +POSSESS +BUILDMODE -Dev Mod +@ +MOD diff --git a/config/example/admins.txt b/config/example/admins.txt deleted file mode 100644 index ae1ab106a512..000000000000 --- a/config/example/admins.txt +++ /dev/null @@ -1,8 +0,0 @@ -###################################################################### -# Basically, ckey goes first. Rank goes after the "-" # -# Case is not important for ckey. # -# Case IS important for the rank. However punctuation/spaces are not # -# Ranks can be anything defined in admin_ranks.txt ~Carn # -###################################################################### - -# not_a_user - Admin diff --git a/config/example/announcer/ban.txt b/config/example/announcer/ban.txt deleted file mode 100644 index 0481d9078ffa..000000000000 --- a/config/example/announcer/ban.txt +++ /dev/null @@ -1,8 +0,0 @@ -# Config for ban announce settings. Case insensitive. -# Recieve option can be True/On. If other option setted, server turn off ban announce proccessing. -# Same for Send option. -# RECEIVE = TRUE # Server recieve ban announces -# SEND = TRUE # After writing ban to DB send ban announce to other servers. - -receive = true -send = true \ No newline at end of file diff --git a/config/example/announcer/serverlist.txt b/config/example/announcer/serverlist.txt deleted file mode 100644 index f0bdfa891483..000000000000 --- a/config/example/announcer/serverlist.txt +++ /dev/null @@ -1,7 +0,0 @@ -# Config for authorization net announcer -# First server must by self with the key to authorize clients -# Other servers url and keys use to broadcasts messages - -byond://127.0.0.1:2706 = SomeSuperSecretKey # self -byond://127.0.0.1:2706 = SomeSuperSecretKey # if you need to broadcast self, just reapet it -# byond://127.0.0.2:2707 = OtherSecretKey \ No newline at end of file diff --git a/config/example/config.txt b/config/example/config.txt deleted file mode 100644 index 33fc0f6add77..000000000000 --- a/config/example/config.txt +++ /dev/null @@ -1,317 +0,0 @@ -## Server name: This appears at the top of the screen in-game. In this case it will read "tgstation: station_name" where station_name is the randomly generated name of the station for the round. Remove the # infront of SERVERNAME and replace 'tgstation' with the name of your choice -# SERVERNAME spacestation13 - -## Add a # infront of this if you want to use the SQL based admin system, the legacy system uses admins.txt. You need to set up your database to use the SQL based system. -ADMIN_LEGACY_SYSTEM - -## Unhash this entry to have certain jobs require your account to be at least a certain number of days old to select. You can configure the exact age requirement for different jobs by editing -## the minimal_player_age variable in the files in folder /code/game/jobs/job/.. for the job you want to edit. Set minimal_player_age to 0 to disable age requirement for that job. -## REQUIRES the database set up to work. Keep it hashed if you don't have a database set up. -## NOTE: If you have just set-up the database keep this DISABLED, as player age is determined from the first time they connect to the server with the database up. If you just set it up, it means -## you have noone older than 0 days, since noone has been logged yet. Only turn this on once you have had the database up for 30 days. -#USE_AGE_RESTRICTION_FOR_JOBS - -##Unhash this to use real in-game minutes for certain jobs (USE_AGE_RESTRICTION_FOR_JOBS must be enabled too) -#USE_INGAME_MINUTES_RESTRICTION_FOR_JOBS - -## log stuff, see configuration.dm for descriptions -LOG_OOC -LOG_SAY -LOG_ADMIN -LOG_ADMINCHAT -LOG_ACCESS -LOG_GAME -LOG_VOTE -LOG_WHISPER -LOG_EMOTE -LOG_ATTACK -LOG_PDA -LOG_RUNTIME -LOG_SQL_ERROR -LOG_INITIALIZATION -LOG_QDEL -LOG_ASSET -LOG_TGUI -# LOG_JS_ERROR -# LOG_HREFS -# LOG_ADMINWARN ## Also duplicates a bunch of other messages. - -## sql switching -# SQL_ENABLED - -## disconnect players who did nothing during 10 minutes or AFK_TIME_BRACKET time -# KICK_INACTIVE - -## Minutes until user will be kicked for being AFK -# AFK_TIME_BRACKET 10 - -## probablities for game modes chosen in bundles of modes -## -## default probablity is 100, increase to make that mode more likely to be picked -## set to 0 to disable that mode - -# PROBABILITY EXTENDED 40 - -## Hash out to disable random events during the round. -ALLOW_RANDOM_EVENTS 1 - -## if amount of traitors scales or not -TRAITOR_SCALING 1 - -## if objectives are disabled -#OBJECTIVES_DISABLED - -## make ERT's be only called by admins -#ERT_ADMIN_ONLY - -## If security is prohibited from being most antagonists -#PROTECT_ROLES_FROM_ANTAGONIST - -## Comment this out to stop admins being able to choose their personal ooccolor -ALLOW_ADMIN_OOCCOLOR - -## time period (deciseconds) which voting session will last (default 1 minute) -VOTE_PERIOD 1200 - -## Allow ghosts to see antagonist through AntagHUD -ALLOW_ANTAG_HUD - -## If ghosts use antagHUD they are no longer allowed to join the round. -ANTAG_HUD_RESTRICTED - -## allow AI job -ALLOW_AI 1 - -## disable abandon mob -# NORESPAWN - -## set a hosted by name for unix platforms -#HOSTEDBY yournamehere - -## Uncomment this to stop people connecting to your server without a registered ckey. (i.e. guest-* are all blocked from connecting) -GUEST_BAN - -## Set to jobban everyone who's key is not listed in data/whitelist.txt from Captain, HoS, HoP, CE, RD, CMO, Warden, Security, Detective, and AI positions. -## Uncomment to 1 to jobban, leave commented out to allow these positions for everyone (but see GUEST_JOBBAN above and regular jobbans) -# USEWHITELIST - -## set a server location for world reboot. Don't include the byond://, just give the address and port. -#SERVER server.net:port - -## site address -# SITEURL http://example.com - -## forum address -# FORUMURL http://example.com - -## Wiki address -# WIKIURL http://example.com - -## Server Rules address -# SERVER_RULES_URL http://example.com - -## Discord invite address -# DISCORD_INVITE_URL http://example.com - -## Ban appeals URL - usually for a forum or wherever people should go to contact your admins. -# BANAPPEALS http://example.com - -##Toggle for having jobs load up from the .txt -# LOAD_JOBS_FROM_TXT - -##Remove the # mark infront of this to forbid admins from posssessing the singularity. -#FORBID_SINGULO_POSSESSION - -## Remove the # to allow special 'Easter-egg' events on special holidays such as seasonal holidays and stuff like 'Talk Like a Pirate Day' :3 YAARRR -ALLOW_HOLIDAYS - -##Defines the ticklag for the world. 0.9 is the normal one, 0.5 is smoother. -TICKLAG 0.4 - -## Comment this out to disable automuting -#AUTOMUTE_ON - -## How long the delay is before the Away Mission gate opens. Default is half an hour. -GATEWAY_DELAY 18000 - -## Remove the # to give assistants maint access. -#ASSISTANT_MAINT - -## Remove the # to make rounds which end instantly (Rev, Wizard, Malf) to continue until the shuttle is called or the station is nuked. -## Malf and Rev will let the shuttle be called when the antags/protags are dead. -#CONTINUOUS_ROUNDS - -## Uncomment to restrict non-admins from using humanoid alien races -#USEALIENWHITELIST - -## Uncomment this to enable job restrictions for xenos in occupation menu. -USE_ALIEN_JOB_RESTRICTION - -## Access to aliens through played time. -ALIEN_AVAILABLE_BY_TIME SKRELL 10000 -ALIEN_AVAILABLE_BY_TIME UNATHI 20000 -ALIEN_AVAILABLE_BY_TIME TAJARAN 30000 -ALIEN_AVAILABLE_BY_TIME DIONA 40000 - -##Remove the # to let ghosts spin chairs -#GHOST_INTERACTION - -## A ghosts max view range if they are a BYOND guest or regular account -#GHOST_MAX_VIEW 10 - -## A ghosts max view range if they are a byond/patron/boosty supporter -#GHOST_MAX_VIEW_SUPPORTER 13 - -## Required time to respawn after death -#DEATHTIME_REQUIRED 18000 - -## Path to the python executable on the system. Leave blank for default. -## Default is "python" on Windows, "/usr/bin/env python2" on UNIX. -#PYTHON_PATH - -## GitHub PAT with no scopes to increase rate limits of GitHub requests. -## Ignored when PYTHON_PATH is not set. -#GITHUB_TOKEN - -## Expected round length in minutes -EXPECTED_ROUND_LENGTH 90 - -## The lower delay between events in minutes. -## Affect mundane, moderate, and major events respectively -EVENT_DELAY_LOWER 10;30;50 - -## The upper delay between events in minutes. -## Affect mundane, moderate, and major events respectively -EVENT_DELAY_UPPER 15;45;70 - -## The delay until the first time an event of the given severity runs in minutes. -## Unset setting use the EVENT_DELAY_LOWER and EVENT_DELAY_UPPER values instead. -#EVENT_CUSTOM_START_MUNDANE 10;15 -#EVENT_CUSTOM_START_MODERATE 30;45 -EVENT_CUSTOM_START_MAJOR 50;70 - -## Uncommen to allow ghosts to write in blood during Cult rounds. -ALLOW_CULT_GHOSTWRITER - -## Sets the minimum number of cultists needed for ghosts to write in blood. -REQ_CULT_GHOSTWRITER 6 - -## place address for chat bridge -# CHAT_BRIDGE http://localhost:3000 - -## Media base URL - determines where to pull the jukebox playlist from. -# MEDIA_BASE_URL http://game2.tauceti.ru/media - -## guard (geoip and stuff) -#GUARD_EMAIL contact@taucetistation.org -#GUARD_ENABLED -#GUARD_AUTOBAN_TRESHHOLD 2 -#GUARD_AUTOBAN_REASON We think you are a bad guy and block you because of this. -#GUARD_AUTOBAN_STICKY -# ISO 3166-1 codes for trusted -#GUARD_WHITELISTED_COUNTRY_CODES RU,UA,BY,KZ - -## Uncomment to provide special actions for people from /config/donators.txt -#ALLOW_DONATORS - -## Uncomment to provide special actions for Tau Ceti Station patrons -#ALLOW_TAUCETI_PATRONS - -## Uncomment to provide special actions (same as for donators) for people with Byond Membership -#ALLOW_BYOND_MEMBERSHIP - -## Your link to donat informations -#DONATE_INFO_URL http://you-url - -## Uncomment this to enable checking for the cid randomizer dll. (disabled if database isn't enabled or connected) -# CHECK_RANDOMIZER - -##BYOND version restrictions -##client with version < BYOND_VERSION_MIN will be kicked, < recommend - just warned -##by default will be used build RECOMMENDED_VERSION (latest compatible major version) -# BYOND_VERSION_MIN 514 -# BYOND_VERSION_RECOMMEND 514 - -## Changelog link -CHANGELOG_LINK https://changelog.taucetistation.org - -## Changelog hash link -CHANGELOG_HASH_LINK https://changelog.taucetistation.org/hash.txt - -## Repository link -REPOSITORY_LINK https://github.com/TauCetiStation/TauCetiClassic - -## Registration panic bunker won't allow user with registration date less than that. (format: year-month-day) -# REGISTRATION_PANIC_BUNKER_AGE 2000-1-1 - -## If user played more than this value (in minutes), bunker will let him in -# ALLOWED_BY_BUNKER_PLAYER_AGE 60 - -## Panic bunker configured by players limit. This value is a maximum number of players. -# CLIENT_LIMIT_PANIC_BUNKER_COUNT 60 - -## Link used by limit panic bunker to redirect a client -# CLIENT_LIMIT_PANIC_BUNKER_LINK byond://game.taucetistation.org:2507 - -## In ban mode bunker will block new users before they can join server (like bans). This will not check user registration date and will use only server player age. Can be used as whitelist for new players. -#BUNKER_BAN_MODE - -## This will be used as ban message in ban mode -#BUNKER_BAN_MODE_MESSAGE Sorry, you can't play on this server, because we don't accept new players.
Please, visit another our server.
For more information visit taucetistation.org - -## Replaces whatever map json file with maps/testmap.json to load testmap only. -## Saves alot of initialization time, since only centcomm and testmap will be loaded. For tests where map doesn't matter. -# SUMMON_TESTMAP - -## Force map not to load junkyard -## Saves some initialization time -NO_JUNKYARD - -## Force map not to load mine (asteroid) -## Saves some initialization time -# NO_MINE - -## Force map not to load ruins and empty z_levels -## Saves some initialization time -# NO_SPACE_LEVELS - -## Uncomment to enable byond profiler. Logs will be dropped in the round log folder. -## Keep in mind it can cause performance degradation. -# AUTO_PROFILE - -## Uncomment to allow drastic performence enhancemet measures to turn on automatically once there are equal or more clients than the configured amount (will also prompt admin for veto) -# AUTO_LAG_SWITCH_POP 100 - -## Enables demo recordings, works slower on windows -# RECORD_REPLAYS - -## Use persistent cache for better performance -## You will need to occasionally clean ./cache/persistent yourself from old files -## by removing folder or with ./script/clear_persistent_cache.sh -#USE_PERSISTENT_CACHE - -## Run server in sandbox mode - everyone has admin permissions without logs, bans -## not recommended if you host server without virt box/docker/etc. and do not restrict clients access to server -# SANDBOX - -## This config option disables OOC after round start, and enables it back after round end. -## Comment it out to disable such behaviour. -OOC_ROUND_ONLY - -## TOPIC RATE LIMITING -## This allows you to limit how many topic calls (clicking on a interface window) the client can do in any given game second and/or game minute. -## Admins are exempt from these limits. -## Hitting the minute limit notifies admins. -## Set to 0 to disable. -SECOND_TOPIC_LIMIT 10 - -MINUTE_TOPIC_LIMIT 100 - -## This config option enables or disables deathmatch arena after round end. -DEATHMATCH_ARENA 1 - -## How long in seconds after which a hard delete is treated as causing lag. This can be a float and supports a precision as low as nanoseconds. -#HARD_DELETES_OVERRUN_THRESHOLD 0.5 - -## Once a typepath causes overrun from hard deletes this many times, stop hard deleting it on garbage collection failures. (set to 0 to disable) -#HARD_DELETES_OVERRUN_LIMIT 0 diff --git a/config/example/dbconfig.txt b/config/example/dbconfig.txt deleted file mode 100644 index a58afd88b310..000000000000 --- a/config/example/dbconfig.txt +++ /dev/null @@ -1,17 +0,0 @@ -# MySQL Connection Configuration - -# Server the MySQL database can be found at -# Examples: localhost, 200.135.5.43, www.mysqldb.com, etc. -ADDRESS localhost - -# MySQL server port (default is 3306) -PORT 3306 - -# Database the population, death, karma, etc. tables may be found in -DATABASE tgstation - -# Username/Login used to access the database -LOGIN mylogin - -# Password used to access the database -PASSWORD mypassword diff --git a/config/example/donators.txt b/config/example/donators.txt deleted file mode 100644 index ac281d46d4e6..000000000000 --- a/config/example/donators.txt +++ /dev/null @@ -1,8 +0,0 @@ -# Format: -# ckey -# OR -# ckey DD.MM.YY -# -# second parameter is optional expiration day - -volas 22.12.22 diff --git a/config/example/game_options.txt b/config/example/game_options.txt deleted file mode 100644 index e1b97f2504fe..000000000000 --- a/config/example/game_options.txt +++ /dev/null @@ -1,61 +0,0 @@ -### HEALTH ### - -## level of health at which a mob goes into continual shock (soft crit) -HEALTH_THRESHOLD_SOFTCRIT 0 - -## level of health at which a mob becomes unconscious (crit) -HEALTH_THRESHOLD_CRIT -50 - -## level of health at which a mob becomes dead -HEALTH_THRESHOLD_DEAD -100 - -## multiplier which enables organs to take more damage before bones breaking or limbs being destroyed -## 100 means normal, 50 means half -ORGAN_HEALTH_MULTIPLIER 100 - -## multiplier which influences how fast organs regenerate naturally -## 100 means normal, 50 means half -ORGAN_REGENERATION_MULTIPLIER 75 - -### REVIVAL ### - -## whether pod plants work or not -REVIVAL_POD_PLANTS 1 - -## whether cloning tubes work or not -REVIVAL_CLONING 1 - -## amount of time (in hundredths of seconds) for which a brain retains the "spark of life" after the person's death (set to -1 for infinite) -REVIVAL_BRAIN_LIFE -1 - - - -### MOB MOVEMENT ### - -## We suggest editing these variabled in-game to find a good speed for your server. To do this you must be a high level admin. Open the 'debug' tab ingame. Select "Debug Controller" and then, in the popup, select "Configuration". These variables should have the same name. - -## These values get directly added to values and totals in-game. To speed things up make the number negative, to slow things down, make the number positive. - - -## These modify the run/walk speed of all mobs before the mob-specific modifiers are applied. -# RUN_SPEED 3 -# WALK_SPEED 5 - - -## The variables below affect the movement of specific mob types. -HUMAN_DELAY 0 -ROBOT_DELAY 0 -MONKEY_DELAY 0 -ALIEN_DELAY 0 -METROID_DELAY 0 -ANIMAL_DELAY 0 - -### CRAFTING ### - -## Controls if players can see recipes in menu, even if they don't have required components (this does not affect crafting itself, just visibility). -CRAFT_RECIPES_VISIBILITY - -### ETC ### - -## If server time is beetween 11 pm and 8 am, lights will become more dim and easy on the eyes, comment to disable -#NIGHTSHIFT diff --git a/config/example/guard_blacklist.txt b/config/example/guard_blacklist.txt deleted file mode 100644 index 2e02625f126f..000000000000 --- a/config/example/guard_blacklist.txt +++ /dev/null @@ -1,3 +0,0 @@ -# Format: -# ISP Provider name -# IP 123.456.789. diff --git a/config/example/jobs.txt b/config/example/jobs.txt deleted file mode 100644 index 060cf2d6a737..000000000000 --- a/config/example/jobs.txt +++ /dev/null @@ -1,37 +0,0 @@ -Captain=1 -Head of Personnel=1 -Head of Security=1 -Chief Engineer=1 -Research Director=1 -Chief Medical Officer=1 - -Station Engineer=5 -Roboticist=1 - -Medical Doctor=5 -Geneticist=2 -Virologist=1 - -Scientist=3 -Chemist=2 - -Bartender=1 -Botanist=2 -Chef=1 -Janitor=1 -Quartermaster=1 -Shaft Miner=3 - -Warden=1 -Detective=1 -Security Officer=5 - -Assistant=-1 -Atmospheric Technician=4 -Cargo Technician=3 -Chaplain=1 -Lawyer=2 -Librarian=1 - -AI=1 -Cyborg=1 \ No newline at end of file diff --git a/config/example/maps.txt b/config/example/maps.txt deleted file mode 100644 index 4300e6664696..000000000000 --- a/config/example/maps.txt +++ /dev/null @@ -1,57 +0,0 @@ -This file contains a list of maps for use in map rotation. -#Lines starting with # are ignored. -Lines not inside map blocks are also ignored -Duplicated entries use the latter one. -All whitespace at the start and end of lines is ignored. (including indentation, thats just for show) -Format: -#map [map name] (name of .json file in _maps folder without the .json part) - minplayers [number] (0 or less disables this requirement) - maxplayers [number] (0 or less disables this requirement) - (not implemented?) default (The last map with this defined will get all votes of players who have not explicitly voted for a map) - voteweight [number] (How much to count each player vote as, defaults to 1, setting to 0.5 counts each vote as half a vote, 2 as double, etc, Setting to 0 disables the map but allows players to still pick it) - disabled (disables the map) - votable (is this map votable) -endmap - -map boxstation - votable - default -endmap - -map boxstation_snow - votable - voteweight 0.7 -endmap - -map gamma - votable -endmap - -map gamma_snow - votable - voteweight 0.7 -endmap - -map delta - votable - minplayers 70 - voteweight 2.0 -endmap - -map testmap -endmap - -map falcon - votable - maxplayers 25 - voteweight 2 -endmap - -map prometheus - votable -endmap - -map stroechka - votable - maxplayers 10 -endmap diff --git a/config/example/mentors.txt b/config/example/mentors.txt deleted file mode 100644 index 0286ee501bc7..000000000000 --- a/config/example/mentors.txt +++ /dev/null @@ -1,2 +0,0 @@ -; just add the ckey (lowercase) of every mentor on a separate line -; lines starting with ; are comments and will be ignored \ No newline at end of file diff --git a/config/example/motd.txt b/config/example/motd.txt deleted file mode 100644 index 4d7e1a50554a..000000000000 --- a/config/example/motd.txt +++ /dev/null @@ -1,5 +0,0 @@ -

Welcome to Space Station 13!

- --This server is running Baystation 12's modification of the /tg/station13 SS13 code. -

-Bugtracker: http://baystation12.net/forums/viewtopic.php?f=18&t=8185 From e4f0a4b76184f45c62f3cb42c13f0b4bf94f9061 Mon Sep 17 00:00:00 2001 From: Riverz1 Date: Thu, 31 Oct 2024 22:30:21 +0400 Subject: [PATCH 4/5] Revert "Host" This reverts commit ee6ffb09b676f1c86745b951a52c70162e0d23c4. --- config/example/admin_ranks.txt | 43 ++++ config/example/admins.txt | 8 + config/example/announcer/ban.txt | 8 + config/example/announcer/serverlist.txt | 7 + config/example/config.txt | 317 ++++++++++++++++++++++++ config/example/dbconfig.txt | 17 ++ config/example/donators.txt | 8 + config/example/game_options.txt | 61 +++++ config/example/guard_blacklist.txt | 3 + config/example/jobs.txt | 37 +++ config/example/maps.txt | 57 +++++ config/example/mentors.txt | 2 + config/example/motd.txt | 5 + 13 files changed, 573 insertions(+) create mode 100644 config/example/admin_ranks.txt create mode 100644 config/example/admins.txt create mode 100644 config/example/announcer/ban.txt create mode 100644 config/example/announcer/serverlist.txt create mode 100644 config/example/config.txt create mode 100644 config/example/dbconfig.txt create mode 100644 config/example/donators.txt create mode 100644 config/example/game_options.txt create mode 100644 config/example/guard_blacklist.txt create mode 100644 config/example/jobs.txt create mode 100644 config/example/maps.txt create mode 100644 config/example/mentors.txt create mode 100644 config/example/motd.txt diff --git a/config/example/admin_ranks.txt b/config/example/admin_ranks.txt new file mode 100644 index 000000000000..5f006466c09c --- /dev/null +++ b/config/example/admin_ranks.txt @@ -0,0 +1,43 @@ +######################################################################################## +# ADMIN RANK DEFINES # +# The format of this is very simple. Rank name goes first. # +# Rank is CASE-SENSITIVE, all punctuation will be stripped so spaces don't matter. # +# Each rank is then followed by keywords with the prefix "+". # +# These keywords represent groups of verbs and abilities which are given to that rank. # +# +@ (or +prev) is a special shorthand which adds all the rights of the rank above it. # +# Ranks with no keywords will just be given the most basic verbs and abilities ~Carn # +######################################################################################## +# PLEASE NOTE: depending on config options, some abilities will be unavailable regardless if you have permission to use them! +# ALSO NOTE: this is a WorkInProgress at the moment. Most of this is just arbitrarily thrown in whatever group because LoadsaWork2Do+LittleTime. +# I'll be doing more moving around as feedback comes in. So be sure to check the notes after updates. + +# KEYWORDS: +# +ADMIN = general admin tools, verbs etc +# +FUN = events, other event-orientated actions. Access to the fun secrets in the secrets panel. +# +BAN = the ability to ban, jobban and fullban +# +STEALTH = the ability to stealthmin (make yourself appear with a fake name to everyone but other admins +# +POSSESS = the ability to possess objects +# +REJUV (or +REJUVINATE) = the ability to heal, respawn, modify damage and use godmode +# +BUILD (or +BUILDMODE) = the ability to use buildmode +# +SERVER = higher-risk admin verbs and abilities, such as those which affect the server configuration. +# +DEBUG = debug tools used for diagnosing and fixing problems. It's useful to give this to coders so they can investigate problems on a live server. +# +VAREDIT = everyone may view viewvars/debugvars/whatever you call it. This keyword allows you to actually EDIT those variables. +# +RIGHTS (or +PERMISSIONS) = allows you to promote and/or demote people. +# +SOUND (or +SOUNDS) = allows you to upload and play sounds +# +SPAWN (or +CREATE) = mob transformations, spawning of most atoms including mobs (high-risk atoms, e.g. blackholes, will require the +FUN flag too) +# +EVERYTHING (or +HOST or +ALL) = Simply gives you everything without having to type every flag + +Admin Observer + +Admin Candidate +ADMIN +Trial Admin +@ +SPAWN +REJUV +VAREDIT +BAN +Badmin +@ +POSSESS +BUILDMODE +SERVER +FUN +Game Admin +@ +STEALTH +SOUNDS +DEBUG +PERMISSIONS +Game Master +EVERYTHING +Head Admin +EVERYTHING +Retired Admin +ADMIN +STEALTH + +Host +EVERYTHING + +Developer +DEBUG +VAREDIT +SERVER +SPAWN +REJUV +POSSESS +BUILDMODE +Dev Mod +@ +MOD diff --git a/config/example/admins.txt b/config/example/admins.txt new file mode 100644 index 000000000000..3b830cd27ff8 --- /dev/null +++ b/config/example/admins.txt @@ -0,0 +1,8 @@ +###################################################################### +# Basically, ckey goes first. Rank goes after the "-" # +# Case is not important for ckey. # +# Case IS important for the rank. However punctuation/spaces are not # +# Ranks can be anything defined in admin_ranks.txt ~Carn # +###################################################################### + +# not_a_user - Admin diff --git a/config/example/announcer/ban.txt b/config/example/announcer/ban.txt new file mode 100644 index 000000000000..0481d9078ffa --- /dev/null +++ b/config/example/announcer/ban.txt @@ -0,0 +1,8 @@ +# Config for ban announce settings. Case insensitive. +# Recieve option can be True/On. If other option setted, server turn off ban announce proccessing. +# Same for Send option. +# RECEIVE = TRUE # Server recieve ban announces +# SEND = TRUE # After writing ban to DB send ban announce to other servers. + +receive = true +send = true \ No newline at end of file diff --git a/config/example/announcer/serverlist.txt b/config/example/announcer/serverlist.txt new file mode 100644 index 000000000000..f0bdfa891483 --- /dev/null +++ b/config/example/announcer/serverlist.txt @@ -0,0 +1,7 @@ +# Config for authorization net announcer +# First server must by self with the key to authorize clients +# Other servers url and keys use to broadcasts messages + +byond://127.0.0.1:2706 = SomeSuperSecretKey # self +byond://127.0.0.1:2706 = SomeSuperSecretKey # if you need to broadcast self, just reapet it +# byond://127.0.0.2:2707 = OtherSecretKey \ No newline at end of file diff --git a/config/example/config.txt b/config/example/config.txt new file mode 100644 index 000000000000..cefd353c913e --- /dev/null +++ b/config/example/config.txt @@ -0,0 +1,317 @@ +## Server name: This appears at the top of the screen in-game. In this case it will read "tgstation: station_name" where station_name is the randomly generated name of the station for the round. Remove the # infront of SERVERNAME and replace 'tgstation' with the name of your choice +# SERVERNAME spacestation13 + +## Add a # infront of this if you want to use the SQL based admin system, the legacy system uses admins.txt. You need to set up your database to use the SQL based system. +ADMIN_LEGACY_SYSTEM + +## Unhash this entry to have certain jobs require your account to be at least a certain number of days old to select. You can configure the exact age requirement for different jobs by editing +## the minimal_player_age variable in the files in folder /code/game/jobs/job/.. for the job you want to edit. Set minimal_player_age to 0 to disable age requirement for that job. +## REQUIRES the database set up to work. Keep it hashed if you don't have a database set up. +## NOTE: If you have just set-up the database keep this DISABLED, as player age is determined from the first time they connect to the server with the database up. If you just set it up, it means +## you have noone older than 0 days, since noone has been logged yet. Only turn this on once you have had the database up for 30 days. +#USE_AGE_RESTRICTION_FOR_JOBS + +##Unhash this to use real in-game minutes for certain jobs (USE_AGE_RESTRICTION_FOR_JOBS must be enabled too) +#USE_INGAME_MINUTES_RESTRICTION_FOR_JOBS + +## log stuff, see configuration.dm for descriptions +LOG_OOC +LOG_SAY +LOG_ADMIN +LOG_ADMINCHAT +LOG_ACCESS +LOG_GAME +LOG_VOTE +LOG_WHISPER +LOG_EMOTE +LOG_ATTACK +LOG_PDA +LOG_RUNTIME +LOG_SQL_ERROR +LOG_INITIALIZATION +LOG_QDEL +LOG_ASSET +LOG_TGUI +# LOG_JS_ERROR +# LOG_HREFS +# LOG_ADMINWARN ## Also duplicates a bunch of other messages. + +## sql switching +# SQL_ENABLED + +## disconnect players who did nothing during 10 minutes or AFK_TIME_BRACKET time +# KICK_INACTIVE + +## Minutes until user will be kicked for being AFK +# AFK_TIME_BRACKET 10 + +## probablities for game modes chosen in bundles of modes +## +## default probablity is 100, increase to make that mode more likely to be picked +## set to 0 to disable that mode + +# PROBABILITY EXTENDED 40 + +## Hash out to disable random events during the round. +ALLOW_RANDOM_EVENTS 1 + +## if amount of traitors scales or not +TRAITOR_SCALING 1 + +## if objectives are disabled +#OBJECTIVES_DISABLED + +## make ERT's be only called by admins +#ERT_ADMIN_ONLY + +## If security is prohibited from being most antagonists +#PROTECT_ROLES_FROM_ANTAGONIST + +## Comment this out to stop admins being able to choose their personal ooccolor +ALLOW_ADMIN_OOCCOLOR + +## time period (deciseconds) which voting session will last (default 1 minute) +VOTE_PERIOD 1200 + +## Allow ghosts to see antagonist through AntagHUD +ALLOW_ANTAG_HUD + +## If ghosts use antagHUD they are no longer allowed to join the round. +ANTAG_HUD_RESTRICTED + +## allow AI job +ALLOW_AI 1 + +## disable abandon mob +# NORESPAWN + +## set a hosted by name for unix platforms +#HOSTEDBY yournamehere + +## Uncomment this to stop people connecting to your server without a registered ckey. (i.e. guest-* are all blocked from connecting) +GUEST_BAN + +## Set to jobban everyone who's key is not listed in data/whitelist.txt from Captain, HoS, HoP, CE, RD, CMO, Warden, Security, Detective, and AI positions. +## Uncomment to 1 to jobban, leave commented out to allow these positions for everyone (but see GUEST_JOBBAN above and regular jobbans) +# USEWHITELIST + +## set a server location for world reboot. Don't include the byond://, just give the address and port. +#SERVER server.net:port + +## site address +# SITEURL http://example.com + +## forum address +# FORUMURL http://example.com + +## Wiki address +# WIKIURL http://example.com + +## Server Rules address +# SERVER_RULES_URL http://example.com + +## Discord invite address +# DISCORD_INVITE_URL http://example.com + +## Ban appeals URL - usually for a forum or wherever people should go to contact your admins. +# BANAPPEALS http://example.com + +##Toggle for having jobs load up from the .txt +# LOAD_JOBS_FROM_TXT + +##Remove the # mark infront of this to forbid admins from posssessing the singularity. +#FORBID_SINGULO_POSSESSION + +## Remove the # to allow special 'Easter-egg' events on special holidays such as seasonal holidays and stuff like 'Talk Like a Pirate Day' :3 YAARRR +ALLOW_HOLIDAYS + +##Defines the ticklag for the world. 0.9 is the normal one, 0.5 is smoother. +TICKLAG 0.4 + +## Comment this out to disable automuting +#AUTOMUTE_ON + +## How long the delay is before the Away Mission gate opens. Default is half an hour. +GATEWAY_DELAY 18000 + +## Remove the # to give assistants maint access. +#ASSISTANT_MAINT + +## Remove the # to make rounds which end instantly (Rev, Wizard, Malf) to continue until the shuttle is called or the station is nuked. +## Malf and Rev will let the shuttle be called when the antags/protags are dead. +#CONTINUOUS_ROUNDS + +## Uncomment to restrict non-admins from using humanoid alien races +#USEALIENWHITELIST + +## Uncomment this to enable job restrictions for xenos in occupation menu. +USE_ALIEN_JOB_RESTRICTION + +## Access to aliens through played time. +ALIEN_AVAILABLE_BY_TIME SKRELL 10000 +ALIEN_AVAILABLE_BY_TIME UNATHI 20000 +ALIEN_AVAILABLE_BY_TIME TAJARAN 30000 +ALIEN_AVAILABLE_BY_TIME DIONA 40000 + +##Remove the # to let ghosts spin chairs +#GHOST_INTERACTION + +## A ghosts max view range if they are a BYOND guest or regular account +#GHOST_MAX_VIEW 10 + +## A ghosts max view range if they are a byond/patron/boosty supporter +#GHOST_MAX_VIEW_SUPPORTER 13 + +## Required time to respawn after death +#DEATHTIME_REQUIRED 18000 + +## Path to the python executable on the system. Leave blank for default. +## Default is "python" on Windows, "/usr/bin/env python2" on UNIX. +#PYTHON_PATH + +## GitHub PAT with no scopes to increase rate limits of GitHub requests. +## Ignored when PYTHON_PATH is not set. +#GITHUB_TOKEN + +## Expected round length in minutes +EXPECTED_ROUND_LENGTH 90 + +## The lower delay between events in minutes. +## Affect mundane, moderate, and major events respectively +EVENT_DELAY_LOWER 10;30;50 + +## The upper delay between events in minutes. +## Affect mundane, moderate, and major events respectively +EVENT_DELAY_UPPER 15;45;70 + +## The delay until the first time an event of the given severity runs in minutes. +## Unset setting use the EVENT_DELAY_LOWER and EVENT_DELAY_UPPER values instead. +#EVENT_CUSTOM_START_MUNDANE 10;15 +#EVENT_CUSTOM_START_MODERATE 30;45 +EVENT_CUSTOM_START_MAJOR 50;70 + +## Uncommen to allow ghosts to write in blood during Cult rounds. +ALLOW_CULT_GHOSTWRITER + +## Sets the minimum number of cultists needed for ghosts to write in blood. +REQ_CULT_GHOSTWRITER 6 + +## place address for chat bridge +# CHAT_BRIDGE http://localhost:3000 + +## Media base URL - determines where to pull the jukebox playlist from. +# MEDIA_BASE_URL http://game2.tauceti.ru/media + +## guard (geoip and stuff) +#GUARD_EMAIL contact@taucetistation.org +#GUARD_ENABLED +#GUARD_AUTOBAN_TRESHHOLD 2 +#GUARD_AUTOBAN_REASON We think you are a bad guy and block you because of this. +#GUARD_AUTOBAN_STICKY +# ISO 3166-1 codes for trusted +#GUARD_WHITELISTED_COUNTRY_CODES RU,UA,BY,KZ + +## Uncomment to provide special actions for people from /config/donators.txt +#ALLOW_DONATORS + +## Uncomment to provide special actions for Tau Ceti Station patrons +#ALLOW_TAUCETI_PATRONS + +## Uncomment to provide special actions (same as for donators) for people with Byond Membership +#ALLOW_BYOND_MEMBERSHIP + +## Your link to donat informations +#DONATE_INFO_URL http://you-url + +## Uncomment this to enable checking for the cid randomizer dll. (disabled if database isn't enabled or connected) +# CHECK_RANDOMIZER + +##BYOND version restrictions +##client with version < BYOND_VERSION_MIN will be kicked, < recommend - just warned +##by default will be used build RECOMMENDED_VERSION (latest compatible major version) +# BYOND_VERSION_MIN 514 +# BYOND_VERSION_RECOMMEND 514 + +## Changelog link +CHANGELOG_LINK https://changelog.taucetistation.org + +## Changelog hash link +CHANGELOG_HASH_LINK https://changelog.taucetistation.org/hash.txt + +## Repository link +REPOSITORY_LINK https://github.com/TauCetiStation/TauCetiClassic + +## Registration panic bunker won't allow user with registration date less than that. (format: year-month-day) +# REGISTRATION_PANIC_BUNKER_AGE 2000-1-1 + +## If user played more than this value (in minutes), bunker will let him in +# ALLOWED_BY_BUNKER_PLAYER_AGE 60 + +## Panic bunker configured by players limit. This value is a maximum number of players. +# CLIENT_LIMIT_PANIC_BUNKER_COUNT 60 + +## Link used by limit panic bunker to redirect a client +# CLIENT_LIMIT_PANIC_BUNKER_LINK byond://game.taucetistation.org:2507 + +## In ban mode bunker will block new users before they can join server (like bans). This will not check user registration date and will use only server player age. Can be used as whitelist for new players. +#BUNKER_BAN_MODE + +## This will be used as ban message in ban mode +#BUNKER_BAN_MODE_MESSAGE Sorry, you can't play on this server, because we don't accept new players.
Please, visit another our server.
For more information visit taucetistation.org + +## Replaces whatever map json file with maps/testmap.json to load testmap only. +## Saves alot of initialization time, since only centcomm and testmap will be loaded. For tests where map doesn't matter. +# SUMMON_TESTMAP + +## Force map not to load junkyard +## Saves some initialization time +NO_JUNKYARD + +## Force map not to load mine (asteroid) +## Saves some initialization time +# NO_MINE + +## Force map not to load ruins and empty z_levels +## Saves some initialization time +# NO_SPACE_LEVELS + +## Uncomment to enable byond profiler. Logs will be dropped in the round log folder. +## Keep in mind it can cause performance degradation. +# AUTO_PROFILE + +## Uncomment to allow drastic performence enhancemet measures to turn on automatically once there are equal or more clients than the configured amount (will also prompt admin for veto) +# AUTO_LAG_SWITCH_POP 100 + +## Enables demo recordings, works slower on windows +# RECORD_REPLAYS + +## Use persistent cache for better performance +## You will need to occasionally clean ./cache/persistent yourself from old files +## by removing folder or with ./script/clear_persistent_cache.sh +#USE_PERSISTENT_CACHE + +## Run server in sandbox mode - everyone has admin permissions without logs, bans +## not recommended if you host server without virt box/docker/etc. and do not restrict clients access to server +# SANDBOX + +## This config option disables OOC after round start, and enables it back after round end. +## Comment it out to disable such behaviour. +OOC_ROUND_ONLY + +## TOPIC RATE LIMITING +## This allows you to limit how many topic calls (clicking on a interface window) the client can do in any given game second and/or game minute. +## Admins are exempt from these limits. +## Hitting the minute limit notifies admins. +## Set to 0 to disable. +SECOND_TOPIC_LIMIT 10 + +MINUTE_TOPIC_LIMIT 100 + +## This config option enables or disables deathmatch arena after round end. +DEATHMATCH_ARENA 1 + +## How long in seconds after which a hard delete is treated as causing lag. This can be a float and supports a precision as low as nanoseconds. +#HARD_DELETES_OVERRUN_THRESHOLD 0.5 + +## Once a typepath causes overrun from hard deletes this many times, stop hard deleting it on garbage collection failures. (set to 0 to disable) +#HARD_DELETES_OVERRUN_LIMIT 0 diff --git a/config/example/dbconfig.txt b/config/example/dbconfig.txt new file mode 100644 index 000000000000..b3079d0c08b7 --- /dev/null +++ b/config/example/dbconfig.txt @@ -0,0 +1,17 @@ +# MySQL Connection Configuration + +# Server the MySQL database can be found at +# Examples: localhost, 200.135.5.43, www.mysqldb.com, etc. +ADDRESS localhost + +# MySQL server port (default is 3306) +PORT 3306 + +# Database the population, death, karma, etc. tables may be found in +DATABASE tgstation + +# Username/Login used to access the database +LOGIN mylogin + +# Password used to access the database +PASSWORD mypassword diff --git a/config/example/donators.txt b/config/example/donators.txt new file mode 100644 index 000000000000..ac281d46d4e6 --- /dev/null +++ b/config/example/donators.txt @@ -0,0 +1,8 @@ +# Format: +# ckey +# OR +# ckey DD.MM.YY +# +# second parameter is optional expiration day + +volas 22.12.22 diff --git a/config/example/game_options.txt b/config/example/game_options.txt new file mode 100644 index 000000000000..43534530db24 --- /dev/null +++ b/config/example/game_options.txt @@ -0,0 +1,61 @@ +### HEALTH ### + +## level of health at which a mob goes into continual shock (soft crit) +HEALTH_THRESHOLD_SOFTCRIT 0 + +## level of health at which a mob becomes unconscious (crit) +HEALTH_THRESHOLD_CRIT -50 + +## level of health at which a mob becomes dead +HEALTH_THRESHOLD_DEAD -100 + +## multiplier which enables organs to take more damage before bones breaking or limbs being destroyed +## 100 means normal, 50 means half +ORGAN_HEALTH_MULTIPLIER 100 + +## multiplier which influences how fast organs regenerate naturally +## 100 means normal, 50 means half +ORGAN_REGENERATION_MULTIPLIER 75 + +### REVIVAL ### + +## whether pod plants work or not +REVIVAL_POD_PLANTS 1 + +## whether cloning tubes work or not +REVIVAL_CLONING 1 + +## amount of time (in hundredths of seconds) for which a brain retains the "spark of life" after the person's death (set to -1 for infinite) +REVIVAL_BRAIN_LIFE -1 + + + +### MOB MOVEMENT ### + +## We suggest editing these variabled in-game to find a good speed for your server. To do this you must be a high level admin. Open the 'debug' tab ingame. Select "Debug Controller" and then, in the popup, select "Configuration". These variables should have the same name. + +## These values get directly added to values and totals in-game. To speed things up make the number negative, to slow things down, make the number positive. + + +## These modify the run/walk speed of all mobs before the mob-specific modifiers are applied. +# RUN_SPEED 3 +# WALK_SPEED 5 + + +## The variables below affect the movement of specific mob types. +HUMAN_DELAY 0 +ROBOT_DELAY 0 +MONKEY_DELAY 0 +ALIEN_DELAY 0 +METROID_DELAY 0 +ANIMAL_DELAY 0 + +### CRAFTING ### + +## Controls if players can see recipes in menu, even if they don't have required components (this does not affect crafting itself, just visibility). +CRAFT_RECIPES_VISIBILITY + +### ETC ### + +## If server time is beetween 11 pm and 8 am, lights will become more dim and easy on the eyes, comment to disable +#NIGHTSHIFT diff --git a/config/example/guard_blacklist.txt b/config/example/guard_blacklist.txt new file mode 100644 index 000000000000..2e02625f126f --- /dev/null +++ b/config/example/guard_blacklist.txt @@ -0,0 +1,3 @@ +# Format: +# ISP Provider name +# IP 123.456.789. diff --git a/config/example/jobs.txt b/config/example/jobs.txt new file mode 100644 index 000000000000..8279ed18b1a2 --- /dev/null +++ b/config/example/jobs.txt @@ -0,0 +1,37 @@ +Captain=1 +Head of Personnel=1 +Head of Security=1 +Chief Engineer=1 +Research Director=1 +Chief Medical Officer=1 + +Station Engineer=5 +Roboticist=1 + +Medical Doctor=5 +Geneticist=2 +Virologist=1 + +Scientist=3 +Chemist=2 + +Bartender=1 +Botanist=2 +Chef=1 +Janitor=1 +Quartermaster=1 +Shaft Miner=3 + +Warden=1 +Detective=1 +Security Officer=5 + +Assistant=-1 +Atmospheric Technician=4 +Cargo Technician=3 +Chaplain=1 +Lawyer=2 +Librarian=1 + +AI=1 +Cyborg=1 \ No newline at end of file diff --git a/config/example/maps.txt b/config/example/maps.txt new file mode 100644 index 000000000000..4300e6664696 --- /dev/null +++ b/config/example/maps.txt @@ -0,0 +1,57 @@ +This file contains a list of maps for use in map rotation. +#Lines starting with # are ignored. +Lines not inside map blocks are also ignored +Duplicated entries use the latter one. +All whitespace at the start and end of lines is ignored. (including indentation, thats just for show) +Format: +#map [map name] (name of .json file in _maps folder without the .json part) + minplayers [number] (0 or less disables this requirement) + maxplayers [number] (0 or less disables this requirement) + (not implemented?) default (The last map with this defined will get all votes of players who have not explicitly voted for a map) + voteweight [number] (How much to count each player vote as, defaults to 1, setting to 0.5 counts each vote as half a vote, 2 as double, etc, Setting to 0 disables the map but allows players to still pick it) + disabled (disables the map) + votable (is this map votable) +endmap + +map boxstation + votable + default +endmap + +map boxstation_snow + votable + voteweight 0.7 +endmap + +map gamma + votable +endmap + +map gamma_snow + votable + voteweight 0.7 +endmap + +map delta + votable + minplayers 70 + voteweight 2.0 +endmap + +map testmap +endmap + +map falcon + votable + maxplayers 25 + voteweight 2 +endmap + +map prometheus + votable +endmap + +map stroechka + votable + maxplayers 10 +endmap diff --git a/config/example/mentors.txt b/config/example/mentors.txt new file mode 100644 index 000000000000..0286ee501bc7 --- /dev/null +++ b/config/example/mentors.txt @@ -0,0 +1,2 @@ +; just add the ckey (lowercase) of every mentor on a separate line +; lines starting with ; are comments and will be ignored \ No newline at end of file diff --git a/config/example/motd.txt b/config/example/motd.txt new file mode 100644 index 000000000000..f47164c6df1f --- /dev/null +++ b/config/example/motd.txt @@ -0,0 +1,5 @@ +

Welcome to Space Station 13!

+ +-This server is running Baystation 12's modification of the /tg/station13 SS13 code. +

+Bugtracker: http://baystation12.net/forums/viewtopic.php?f=18&t=8185 From 7926dfa2379f28be0a653c96d366981a6a3c89f8 Mon Sep 17 00:00:00 2001 From: Riverz1 Date: Mon, 4 Nov 2024 01:48:54 +0400 Subject: [PATCH 5/5] zvuk_robot --- code/modules/mob/living/silicon/robot/robot.dm | 2 ++ sound/items/remove.ogg | Bin 0 -> 26208 bytes 2 files changed, 2 insertions(+) create mode 100644 sound/items/remove.ogg diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 513190c96777..8d4c38a9ceeb 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -621,6 +621,7 @@ C.electronics_damage = WC.burn to_chat(usr, "You install the [W.name].") + playsound(src, 'sound/items/insert_key.ogg', VOL_EFFECTS_MASTER, 35) return @@ -696,6 +697,7 @@ var/datum/robot_component/C = components[remove] var/obj/item/robot_parts/robot_component/I = C.wrapped to_chat(user, "You remove \the [I].") + playsound(src, 'sound/items/remove.ogg', VOL_EFFECTS_MASTER, 75) if(istype(I)) I.brute = C.brute_damage I.burn = C.electronics_damage diff --git a/sound/items/remove.ogg b/sound/items/remove.ogg new file mode 100644 index 0000000000000000000000000000000000000000..92bae70d57481b50f3c259d80938624231e6eb28 GIT binary patch literal 26208 zcmb@tby!tR`!Bv|5Tq4UQc1~8cPic8DBZQ`Rs=y(2}x;?mhMobJ2#Ewrjc&;Z=uig zp7;9x&UMZ|XRcwGnLB3YzVFY>?6vn&wzO0Skb!?vAIjnKUDe_{?;;WflDngei8b`D z1L;LE03g5wI3xf0Ux%c8C;6XrCy4~MX!RR!2(0fo|0_+P{MCd5GAO)ux8Q-W^0GqM z*-^kYCHQCVVCraQ?jj7*OhFoi|BgsyXKnIVj0j|T?c!<;brn|hqEa(Ab#yVacCf?) zyIrka?aYNC5Oz)or!j;b3GJ^0lZ2!e5`YOZKoqDt0*7NX0RSHWUePe(##+cS=Eh|* zcqPWk+|@eR!xH1dI!H|;Af5jfR9t2c000#TWWb8bUYE5Q5=tFH3Ks9lT)L_AQ(f*o|C;gk z9!ED-kOIeMPOOr^=GW{ffh~rrVF_%Os!=%w$b^<@X*0T^FLaO}p88LL^=BPa;9Mlo zADQ7xVBV<@Wz0)-0ag8778MW(E)$UcNGw}U+*eLEFhZkz$gE1lJ;M1?T|-e5Om2qS z?&dIeH<-JhZep;0ou6)9u>MrA;aTu&(vW}hx!>a1UH-FlDkLD|8GphGW7gBhS#pyAhL0HNx7SmoooR2W{G!lJ zh^h0aV<}vtabq(e-HbUDkx^1|1wkrmkLYt<-~L%S6#%@${}aXk7JowdZxrWz`tZD$ zp|YQ&kNK`BZXXob{??8!i30(nn3)@l;>hatFVIqc8Qa|INj;|AI5j!O+`otdol0dE zBaZ&)4@g21U3wYwK~(&=<9^c&5s;7kR~|YbQzfJY^9TovI;XIvhNiZ=z3ykX+1g;k zDYr$K-y$s1m?Y$X2G)O&1Aw4;_Xm@4CJ~UX)F34ZtiKNa7dg(vT_4GMKGMin&?t^F z4;*qSA90Nky;S8=RDWPN^1yBEp}9Jb;TX61n5OxJyZLmDxqhvmZp}Y{`3svxnA?9L z=MExI`J+~3KB4|E$B{7OSc>TulYa7k#?a0Gl-m*E;RpzoHhuVB#5R8X2qkwYZM*<4eI)m zI9eK7#C>RcmQ|=02>{k)$u=NC+Oj~ zX!r6naGx1LEQo(D_~a&vN4fk?GLhqFsLmgRwuj24YSxgoT zaN9!#R6)2&ghGCjnnZ|qQ@x0QU_N>m3PGn18WzW-4UXf$q>hhK`$-Bmd#K*UNyt8m zi&2xw1%N;R1N_6z9FBQ_B$f&QZ)2dL5X=Xr_yU*(uJ~$&q(L$K^t4c1IR@HXd^tIg zzyYT*8#K zcWQbdA%UMh7nH!rjQgZ!o0~HU5?qI6H>u*()T|5Q#`PFzt3d*7{G^^OByZ9L=Z~tA zoN*Hy#+pgJ;y;7u+zoz5kY#}?$zf2(4~jE_65w3S2k%skiZkTqjOxkeR;$R#)8su+)&57IS<2S@}b7R@ESZr4uyC zpINbh5(*_9kLCWT0tcVei!7;rtS$#G&_6D+U+n_~ zo*JYgCl{}#09n85vnf!MgLMAsD=?3^>%#{%SA$1?Y7o8zBV+X>DC-K2mYX{z0Lp?x zg7($}^?`i3xsxW_fB0x~$MwRg->J#T(&i?ZghRj@$QP#<4oT2ZlPduE!pl3=*7E#`*r!IGAF0fC}7Q8KC;DR?RsbN{E_?J^wKY}qb{)8+sXek^M97sqi z6rTh0BNRshgW3fQgd8(932W+H1vweooQM2ioT+gzX6CA>(b48;=rIDo4rtz;HVFnU zGg=@913bNQh`~!uNE~Q}PBKY3(8{I}U`&I3@HjPa$%#;~AOp_}@ZJMjkIb|mG#4}q zv<2ALbw_}wn*KdaumIq>6L|Q3Q#FIW{g?s56B#G~PYH)@p2 z3jQ|Z)c!UZY451ipm*-55+LmEnxN6-((am>ad8ru;4uMOE*La;Zk&eR^IVV_G?mt0 zyV{fhz;9FxAOrb{mNXyZV{GO>YeWLtKrD-+Q=8u1jNX9-I8V~Md9r8X5I?RU1Z2Ql z84kF93=my^VoOez@h&RvBIPdB?wtQm(-xe|U6WMs57ibD^0#SxRVFnPQlJn3$T0r7Sc2%fGy0u3 z{=H{H^8Qo%UwwaS>;Dk?@0=6CzfN{1n+jC|!~YEmAQl+;G=(Sv^}*d5F+o>Hy#5pZ zF>={)e+(S2^*A>*i103=!3~Nw7mR$Cntpyp#&~ckEbfG06AaSga&YIeEvSBI8c7cB zW*=BOA47LR(}3#%;}hHjr$Cm;WJ$(57I2{kpcqIPsD|Ge1gw?R=ih0WG=T04-)X5{ zPxS%KkSN3lh|x~*wabm_E?GJKvBMkyNHKyd!2QQl@qc0Z*KyB5#QzD2yQbM4eqH|( zB)b2L@NW1H*nbEr5{$W^1jZkyQ@>M@`isCco$e|0)NBg@15kY zsy`8@CWrNx@6Tl=j__`heGyyMIKOHh;h6SsG&?(~7dOZ_ha9O%#Be+X(4n6&>P zMj#YeVy|{4;Q$`A5^g zv-p4C{ND}%eC@-*XxqSgVyPo5z(jVR^$!Lgf{1HRG>sCc2VtydoA_2mVk0MKRL-uP zTTcAWSZW|lCOI~~#(k2LE9rP>8j%#FruH1%LBaiS5?4ZwrTU?Mc=@`XEkd$JBSR(Q0ah34+SMRl)f=B}Y9BAOD9Q;twBG4%OxJi@UdJQ>#n{s#@_1n~{RQVnp zaV0%l7PD>!dPog1$2;Px8NE$#J2xpRca4C^7IY-Y!NL1G@D>122snr^iN)T$!2$Th zWMYtkd)PSS?Jvc|SgEtyGMp6n=+k%rKs>Y`KPL;3lXQ7;0s)&LyJ8&))7JxJoR%l<9p#NG{yWS>ZaFt&-(Ywae}v}1;>tExf1&t&w%O20>>+j(KM zQk~eETxPC)=#p@e5KD&F{5_;3F51m_)D5R^Sm74ss#WJnlexE!jeWFCM2AQDf?&Rt zC9PcWbM(^EKKByQ`3DzSpPv7IiylcQIg-)GUDbPjt14;=_qA9+tk@46eXgo4j&AW! zxxGKhyZ$Od?@Ey3dO72Ys{j4jy@Qu{j~uX0guA@x>Zd=rUx+!rYV?2L!_--HVYSDF zIH_%pN;nn^Fx6riD|+8Okw4^pj-Bl7yvu%Omn@6I+&MpDIww?Jty5Upti8bTH12B# z|IyR+UFEKuPmUguOqh$BFSBP8JkRQS3_@cehbtHR67xd{^ryq3)9smvsM`n@G^lkT zN}%MLFghx5J0XY?JNI~_{Aprse1hw{&2Ti!N&DjqO3TjQmnwcHPfZx6tRLSunR}HI zS2|K-ABPNdNrd0pZqxeZenY<}u6p=MnkT5VlZg-QGVn0@y6a$Kc0vKDtS zMqz5*i=1Ao>wq5zM?dwVuMcUWZ-1!SZMJqW=Hlrlz5F7o|G|^6kEWxdKFRNloUV@I zIumV>m-i|ptb*0JE8U_wUq!Col827><$W8~65a&!qZJ|Ynh0Fgef(k>cisDsW1VVF z*Oi=6NgXRPA6YiNNUyCNA4<;u-2PBL`6u}&+ykaxR$T9Y^y1Pzzg){{doVkXInJLy zxV7u%o#seb7w~+^K280#i^enG)eM8x*dnXLx$LTqHD#1Ir)*+|Pd%y~N8dOZC-?~f z`is;4aVfNqqc2f@PCW5y7|{A*|Aj)CrlespNol-yPPlsTGVeQf_LMH`<+}^(Bte=j z6H8X`!t4YDs`R4WPNZm(yvYpYI5P7(+1i~+8DD7TV!0eB8^dDUuL|KsCSeC6TpaX{k@>9pbP(!jj^ciLXUA@c7{uP=^TlLz-XT=wZk zZMx*nzSpu%X6qdok%tN9$hQv5+X^B%Hl$wf6iBsMRFLwu=kTy>hFKE}N4~5Uwl?=; z_R?0ty^KJb(9vp*<~0@d5sI^}(soEu_ls+4GL8Pk=js%SWIpOW^XUl@Bj(vSVf^pC z5s}R{)>@$jri11sA$n=bVdtuMpHe;&Dt2mgchGo_%n=?Or9g|y@~alUsa~(A;Khg6 zWUzWGC!;#=MTC2+wMzR4JQ-YDai}>WY=wRA?XS8BEHAz$$Tx?-9@2ZJ7;ApyukV3` zkWeI>eBioM1tSxXfxlj{+1S_N2)WJB?4rvjc+{p5yQ}MEHk_*BPkGW9ejMx)Nhm`D z0PIvqJQGD!Xx3D(EE*aI;%<_8qlMiC4QGxoJScXBoqrKU%*fhD4S9O-(l?JE2fb?} zedqGh%xJX7VmQq*Ogyx2Ayt(a$Nb$kqK9Gs)F@@9W$24Jb@$iKJPyM9uwFXvFatVY zk6F6FpTPL@+4RL5}eRh_F%~2a^P(HW@6Q&L# zHeeW{fq@jJpSfqDRT)BgFgCP2Ach^NU{`m8k;`xL3*Nc-&j`*#DPs*6e|$gJ<*(+}0-MiSh7 znIgE-5eV+->4DY8qC%du$vDBN)sTUzB@T>0G|8*$)-Q5lbtb^LZMItr?3MibE9rxN zbyb?TA+qdRzuq!xmE5 z2~CDmmAHl;3F&>6qykcJOo(46q+#E;x?20aSvTNtI#eKP?vv}_0h?UmIyCe#NG^oE z{2*W8<}D(`G6CEM-@Z7ZspYn~-chJ#X(^F)6fPDij>*lWRB?VK30ZG_h1@_us?VKx z5!Q&AinIcly!>{xcEFRiNjspcmz(!Q)t>Q2Akx0oO0WjvTH~)?1Z8aEo(p!#PcVGMXC(ZkjMDe={t6kZ-_cnLzjaR9WJNZPElkky36F3X>^jfX- ztUaamkKN{*AV@&!QeAMPL`ZJHVp0JE+An)SVr>rzen&jpBHW0c!E_GmIhq_So2nOK zne(%F={ zw`V#Yb9!xb23-?GGM-k})obrH*OFcsoLHQ^(mOjCXWV*F zU-Y^DV{dXT5O>p{8S=&|VB_0vwENn{XNQL3GdAdq{^#CNW$vZpnQQ-Tt}>x2M1`7E zKBY%=ghKM>fbH3Hc`;PtPY-@bMeeSczF6wHZz>R9sJ<__SFhVBklXN{T4GY8LJ(S_ z0u^|Y0-P@L#cIe>uG4fGr{NxTf_e#9>Vtgt}k>BBaauJ7A zeK5PWDB9GaR)Wvs)e`_MKD9)a>NJG@8VcA@>=r$gC{3lQmv%GP1+FjhN?#RRWJq2e zmGqsMEVTAl+VN84R_xWZ1_<7a_9U6qM`d?!+{m+iIxAK#)w`THKwz^cVG>9ws^0f2 zgVynmjxw^8#v2xW@6!wpn4K$#EmU~RH%G|>93L#3QH?;_4_X%%cIP|d_D7>5d7&-x zjWnV>eKkw3CYF~sOBdPV%hbox`osH<1loRe??{BchN2)=f|WbxSt#~#l?-e&JvYeu z=!wlyI=nMxKYBNlkvebzIH$|#b8Ql4HLx%Fw8jqas<}$? zHKosPh>Ta|19j#ZPAdOfIJAo(+gN(+G>0(8Kj+ja?b)aX=l!wX;ch7s$QKr|pAAS>MME+XcMNn6HLA5=PKj(o^AAyaHf2os^?t6R=pu? zcm*t%jLD9Do=ppw2}8gRZE9llJxlnCw&y?D=?b~0o@-xgDFxea!qz6otn5#$S_k^H z=p^`%2jLqNt{xTi0xQ@V6<0(oY$<0fL_#8Uy_c(r6NvMh`wa)Dk8rSC8yhBd_I|MB z@@-FF69mY1)*Kn9N{Vu(E7zKwKE$4Jsr^8*_#uUtKSPE3a*aFp2LlGR>oXW-V-TIJ zj3e8uW_M>0Ce3QeN3E;G@7Ec25p}>31ch$=EA|_jk%NW&A=KY5$KESXr^IceFvpi1 ze1<@Thx1P;Od3aMKhj*hld%&nrSID14Bl~SYL+R=&%Q_0acHLQ3aP7s#T1(+fHxc#I*Z1xB z$1+yEM$(**O_>3ni7}h7@8w8&%Fct$h+eO;BfO&b6jG-y0W+|dhv`9#x|Zn+Ek09i z)8E$&%WD=Prg)R#eCD%PiPh}VB_a=ecE4HYa>RI1Oj(TCygHQy21Pj9$GIdiPy(mJ zn?}e{yK?#%KNwBB^)cS{r(j)2PkLHz`F2WB;a1rQxpTeMq62PO zYy%RBHDdVU#bv?dda(a7T$q(9d0MGUmGC)VA;e%QWgGl za&fkz?}#98knBNFr$I$y;k3Ev9O-Af)4<^^!A)jy6h{jz$5Pn)b*wy#s?DZTKdaet z6M1XleS6Hu`-rP^_Nda^iJs=q?iPc5&+c0eUOGPC-?$Puq@4F~H^ZD!?~}2CDwgu^v|ME=79yu)%2Z~_;^>;a^=(I!nDH;mGHzcou_Vgg#fIHi zB%eGm5x#r|{kg5qs>hi{EppO;W2kineuw%L3JzobHOQf)fbi zG8Rj8Yh7hpe(>n6FOAf+`IRT{8&keA9oIHLYzYc9+4D({!WOjD`9uwLv5??^@ji{^ISvb8BOxkE@^HoXBukbK2_mj`zrn5gyvj6QAd;Pj2T~AJ)WLm!=U0Y8Y<% zsE7xDY`5flzop2r&>I^T4Iky|6+TZ~HbTjOxed z_xdNj8yS|i5JvTeeI5|ux0F`*Mh!-L|t>F=`KWBTK43eC! zH(jS&inPS>+vMU=lm7~?RH%`|cs%*6g8KncSVArx#CMfFJs@HzWyEa;-BnDse?@2K=jDL`t9-n1w&=-~ z;IH=CnKk~3qUJ$_5T6lQi3t8!+lW*8Cs%4A_vo`0O3I6GMO>K5Ek|kD8cJcm7qY49 zR}!?U+{#ZfL(F=m<*(A01k$;vJAp)Z?l$Teh)Wq2uk_iV&&fq)>+d?6I(lq6=GVa- zNrg@mcn#_L0U@)-6omDhI<1#7fQE6-qMvs3n&=>zdr!dRKGul7Nu~Q+?x2P4D5OZ$ zC}JSM@!DN9EW0N=O6zuU;nz=Dl)1M^xZMF7sDRdFQ3fh9keAPG9v!ep0pDjj+)r>n z(27;IPZcj5ky5BCCfC*7&$h+T+l0y&gu3~7*#)ME<7$UITz@&e$@6{^-j|2x^%Q%| z>c^?%xJpn}B!p zFDt8EQV`7xz}XJmKm$T>-aGI*JU<(-M9v#RUP%dD1CNj(sNa zP;`JH4**(?cd+|TtJzQaxZdzt5%M19)th|`=uS+3(l62};u4&jAofE#{k(syb5VkM z&Ly@%_U(SFu&yjaMHw?(BDkzpA4(OLSUY^Q;$ev> zd04-3=$r4Gv~8aC*tzP#np*tx1p#liU+PasQ@?B$DaS}D4rl2&V*;)xS!&v!j%+i; z5e_1TF9No6lzr0uM^cr1nQT#0ptEm$Rn{k3MejGqCXdy*?=BZVal76{3|0Y3Ogy_O z!MgKLOWzvQZB=Y*MbyaZtwrqc!snKMW=(n{NIWTIlj&DE~kSzxLyUcHtEE;kG&bHK3h{moiVQUShOje=gpe`C0Zjo>DQaKX>#kY zgK?@%uzABPEPRh$C(9EVb(wG+CqtUgaWVe*wa1nJ4$0Q7xpt>3H2I3nNDCJ2u`Og? zcH|&Gzk5L6+4q`qO-#$8|67i&hjS9;cB=G^#mt3EE?cjiKR-k;@*wi0;_@O~5y7_k zm6ie(nA_EP-V)9D&^r%FF3J@QoJLcW z4$atQFZiA}djV2{pNFKs(uBiek++ts53@8F;LaZNBj*;>SG0zNPX;z>P%g(;Dnuy4 zj2xOvTwA>dJ8G&-_L!w^e0y%!%8Y!8rW|D4BlZSz^_UM9#RJ%V|afP`R~!8%DP)~ zt6_H01?x<8WQmIYuv55>>ZnW`Z1k(~)(_udo~7$<`^NK)U)gD!}nL3 zT_f)yXLK=Kii-uzmG(}yqb22uc@ws3zR(C?Z?V;OEVQ_o#jN*#nb+9+;6$B2K*EIz zmB$Imf08K``>A+4vmQN$h#}mcH{HSWLyMP;OCOfBH;DyalCEQDXefBVqvcDrbYG}B zkdB-NUj(N331!VLcw#U^-u#|lxcqItlN=rGd+SPiEg(?DxVC1tnQ$y)LVB1y@iU+| z2ohZWDVtI<>dn%J_Z@i?(4rKKHeMva#J~xMSTr8VIQYVrOVF>etqktxI(cHjHU;Z~ zS8%?t8@pVq7fs}MpGLG0Sh%1JKx*7S6713ibP2rwqA!Yxb@tto&&;x__eHAl<$ZA; zuP;^%BH!~!806Tj!c7BH*p}svhe|&6Lo;yvzV*4JpHrB7 zPu}370{tEiEw?brybG7<8|5B{dg1z6DTkspFWY)T+$oFiG#dU`e)E@9BovO#Lako-b4G4ppnsj${W! z=<|(>&Y!o(PbNN>MPuAjL~9vr9vQb+dcI9V56M*iEq>#`)e*5tcEhuy=_Tf2lj8O; z|I3*BFrEm~PiRl|r4&;=Qeuvy!2?3sXGDGFIk{W3j^ntg`O*`sBJm3~mvD_7b$~4AR7j zM{KUr52*nF3qV$4)h3J~d(u|!`hGRy&_TcB`exfYE|uBB^{u6?bWCl)vN6mXtEk|_*=zD`jz+ybqS(r;M3bazg>eq(|F3I~e<(SeWwQ1DKc%MkM6PQ%cEjbmAXk zM(JqGL!@a-MX@ztr-2P!Y11ch%frW=~(@A59?_>=hwnpIb(4mW${hx6GNnfZMa9A@g% zs`FtkYExPr`eki1^Nq27kh9kZiWv`IB;SgY9&$5WY(1e!vc#fCS2#7n2+wl*cBSLz zShelR+c#kZ=ZKDKl#PJy&x;5N^uR<8?M5gZVWx^lrbvNmu9uaXj~tiOdS~-^@JD}W zmZXL^@K9+7#H($+%-wI^-Nz0qfKe0L5yDH&3Tm-uI_INX`Ug&$Qaq*=2PV}^PT53p znKyUs8eA*5T033J-L*Zvk{v1$*MlkOfNKjy2szU0V@?gdgvTN6?@hXz75h`xXWYUm zm_!fj$&8Aq6p*3gKfLRgRD5(6t@3=mW4$eMj-IDHYjjj^EVXvlW+2|msTVSiGT}9M zW9~dL)}jM$cW?;&(7VPjPW`LAPHmE{$(!GJ=XOuE9ng{PctZG9i+E@t-;v1nzKtlH zR$2~1SWfedlCSTaoR4uzOW#>Sr8`5Z$il@SO8Nvg&^NCC z^n+zy&{2M$*W;|_I>y_yZf%-f>^9#1^TqV1Jv(H1hvH0x=wu?Qq#DVr{=^n*F%b6iLJ3rT>w`rdQu*XU|1%eYxesB-Z2A zl9YLPt1Z^lOzRV-8H)|$U=g?cmN8tQxBn!1k-xgKZ%I=7CFXKYLwcYM+MDIFj<5SY z+RGjczX~2BBaQPw(bXOXT;g7C69r5MFdfbe2>6&bDMZhg(NzaLczqA9Z~Re8v@BaI z>OD#zG3VBMg!yDP%%poIH#^~Cb&@@7$erzT$_oLR&oK7KZ9n&?O6YMJkpP9~=D&+M zG>4xy!W*wfxwdHm;%1%P(G>=ab0>kh@H+mPplD;^ zMCO~7pYKm+L`hTfE_L|Qtq1LP#i29UoL1Gv`m6$TGhyWgH%S^P7dSYi(nG?Ey!Ckd zBYYfhbBu*VU#KeDQ2IUZ7~i#45Owmk;;60MJ_ABC(kJ> zgiYM(!i%eyE3czYN!>08`Z_x&K5qY5caVk=uGSYzRk_RaZhYOaW)Vp_H$t*^J9ueV z{El|ez~`N>Z`Hv}pG1Q4#;QL(Y;V`-4lN`SV+dZt6`VRtenKX58cj)B6Xs6hU5$3Qt5u_za#Dg^#>=V-j#{^|qv1 zU6|vw`oirepZPP~rnFrob%*k&Qk#?=SAmwNoJ5XOiknk3*(!`pIU5l^_&B_F_dEn~ z%GTHD`s2Ply=rs6670lP=96Dx-+pL${V{@o$Q0diGdh&vzCSU&t1D?CTeoh*p)5|-CK~gu|6{ zngVp!Jcjht@~aMku;zwUFQ;3s1tp!Wt|mr_QvtV}?;0QAzM*RS!!Z3rgb`N_s_*+J zb3Cz)q!*1Y_u%ZM_?aZIQ(_4MmM`10)sSk3H`6MPO`0kabUk@aX6}67LfrpK82niX_zsCkx8NJu9OP$OQvAc6EBTqt1m^TS zYn`sS(RO+#hm#LEXBz7#nHx3jZ?ZO}!v*c_nR);XHfDPNmgMbS6`E)a>=b6*=gu;b zXiQbNFuR*8LqU};Ts!Kv&+dZp;mT(Iw(TXiab_tf`}|J>G#zezoc9r@b#TcHx=D(! zl~a|t%EfZ#egmeiows3{Osxp56j7f&5+;}CXlVw zODQaw*1ClEaT7_#z0-YbiwI|GlV;^KU}ZEldY$B z^%eAqlns|0)XJh#as{6ovy3N|dZes2Z@^m)!-)qKN9PC0X@?%q&cu84b?Qry>#u(~wHB?3?>f4aU2}WyUb_Bu zps7A`v59YmJR-}G!`}IdZTzPW7ZxF<(v?MF<3oCA)6hNXT95pP5027}HJ@mktu$#o zI(N;?sFs`5L}4Im1E%_V+|PazJ=9BR&|5Ij8LNlrC1F2jY_Qh<+NG-5YCHGwXlZIc z`PQKEyD0WLH8FIse60p?9aRb^C{+i$$qcqkspkX)P|#P^oUqBiymKfLg-B3usW7&X2qc~U*H zY1ZeHeP!{`|9GE0=BKH5k9}YLxrfKI*+L{O#yrtnPrD{)6<>D}@m_ZY`A zc;vDnUJZC;;BnCA;dSA~sxI7zOD-oeaZ;PZ`dTYt7DFK1>@2%v6XN|1)Um;yz7!m7APaAKo?cd15 zKk<@p*cYQpi7qC(-e_; z{MF;QL?$Bk_;Vw#x~%|i&t=z>US&5CLX@1%r&;X7x3BeE;dOE|kte>Qikkyh;9D(S zIoE?f8&~vGg9-LTn>$N)y9{p=_I$B2MDnE`>DumH;;V3+UR0Ul94kv@N#bQSI0mZ` zf6wUNdy4r;c96B{Br9{IG>x-Xalxo^xl|wCPD$tP!Jl^Cr)LS1*>c_POcE_4ud86{ zNN${wl(%TSa1O@lhGD!9Dv9cwZb9p$6{j%OeWb~?n5IRmKEIrrT-luxp6^LLi&nfe z3`7JkQ*=`7YuA*kyg>Rrn=3-#Gm*8* z3|y~0rY1E{Q<*&-II}$aM2H^flfB@@@9gk#?1~imy6odQar+G{uWorSg#;X43mcgNe>SvU^^(KZ~SMU{U`t?g{Iwq$^2Yj|U zkH&c{Z^O<=CzVnF^{@~n5c?kTjYEMZbtfuKcR*zRGe-O?9b$%@nh8%yH{<*kmEgzt zCE22ZS5W!P`s&bl=Q2g$=hCZjy3)+7`{U{}mTE>eU!{V9uPzPgh9?sX+^`?K7dj=F z;lqRec6#5_?*&Bt3P$K`MI0>q5up;Vd($=GYm8>Hz#JcpH6$J0uzEuW&-+e$l^>_* zALY~Pjd4DUI#`{x{5(&%@|)xrYP^u;547=k#;vF`ReX1jiEo@HpU+DaQZsMrqu55& z9@6R{S+Sx6%zHNUj1BxhDIAROEKDKrG>1mxF({XA^|otzjsDWl@$lcew%hx3K^BK+ zk}T>tNmH;+xAzEVMq0-jc{?t}^ey9v8gU6n8L$Srer}O6X86Ve$&-0`e^53fJbgd=NH)bkD7m{QaiEl&E=|<~XzmuzV z3@H7Gq|WmDRR4`$D#B@Gd~q`mvwFgfddWe2I5cIq$<|L696LmzIUu%Q$qy5SFEburuibbotXX zvvFpENv5)U1T?_T(x-S8@pX4b(S;8Z5jY01-PeP(1(h z#V%@_+qIGP19lvM|0oFi+ga}|t?5irl%ESb`qkNcAH>Zs?&E$Ql=z^%ghSJg>W><^ zumM4*>$Mz|B#p$B0a!c{K3ayj&fN2{A};lrMM_0$t&ry{v|AdFPEYMy7`f>$u|L4Q zNEuYw%0iHu=JA&ybX&3dwL4gYbVE^}82}RHt0TM`KO3CqL=d3YA&mL4q=*1*AKmS1Xprx*Xul{c zy`6{BUS_-@eAjv>Dv9eW8z~A@|ot^+LbDEpV9}H^B(yCV%|F4_+fS@SIw|6QH1EaR-diH?sIhGd3jsm z&W8|uQUaWHrTe56*O^8qXPPlyeJ!~u$+rh9(Ok7YP)@@Jw1IJvs$hWzf({5?8_^G6 ztVuuZV3FiENNQe<<@;Hs=arL}D%& zxq0QMU93BF^tpa>4p!7ZOQKBFD&ot%_q-W@TEX_h$*bac7jY)Sb7oEi_$FowpX&_7 z?D{_t9DMD5u3Yk{`J3d4TT4w3E37(xELjzJvBkmp&0_>l^Y_u&k+-jd_u2yCI$bi*l2Zq~MHvMeo_L z4otbm_vC%r86GM4&Mi9A*tfTyLhF=8j=BNm+#RM15z0m!mODeX_S;t!#zq0RTRMn} zJz}-psV4AxCY0kX8W(IY>^mv^8b8IqA-&HxwoqOQnI4@(w#!3sYJ3e0%&dV0Ip+K0iNE@JJ~#DF~wvZ)ph#gkR@rYbPCDi0E}Ze+kuFPTv&2rJ3Id zpG^r6f1Y6t0C9wkBfbE6)a}ugefihzl~kCWpbBiwmaXh&tgN-NOM-bK9&e1c$U}4= z%?}y)mVvp+`lJt^ZKw5ZV*Q&He}6O7=2gs6L%#+U4wHxie=$F{Mh>e7A*Bq5-K((uP6k((J0t399X27?Gfxe|pje^|YK1Fp% z2q&xC`>!9KtvluiN2=`WFbv~~193e1---eoI}1*))0=&5(>(+k^CY*w&`YP=@@%mN z%=o5eZyM#jd)uMy*kd+2FPq5$Se4(`YE_CSTsyZx;U<-PMCIJ7xO!SYx|g__?CGV( z{l*ErgW8Y13q;-c>!sMoJHWzidqaN(&wx7E{FOk zE5Z!>Z|vt8S*2#B#@>|{^PEZdnCRdtQvhPxaI9iPhRx0S-q1xA$@ea}8U;&)gefdZzr+ zx+Fcvg-_rMm3R?_0g4@Ztfr0T!b=f28=G^6|0DGtccFYd)4`_)jX8_t`wG(G)t$9P z(Q*bYhHgn*cpgtGwjz*$m#Ss)KmAY=zEaeai^;rzO#6S`Yp`(?pZ;K>`=A2L2H9-6 z0xgE33gy;7^~=!F?tuQou3WEPUTM+l>bHYGx__R=tZ7WTr+L`lgThkE?SVFek19Ly z9#J%Qn29fd+TktA+G@N(U{XcQ8iI0>9>;|VaPBy>6Wm{7FN zch~J1Rzi?HuaGbM= zzw|c6`Vomn-jE(X)z_VWra}NjJf1*(H!7IAb2B}LhmYPCWyM9jsdW81z%yQ}3F-}X zausu}tycRw=-!+xmT|QDSV_`9ZmDa^Okqjejxv^Ia^9$=ArU&X2

6(0DoyHudu2DF?s=;Q`V2l6 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 Dbeg%z literal 0 HcmV?d00001