diff --git a/code/controllers/configuration.dm b/code/controllers/configuration.dm
index f16547a21bf..e49c69968cd 100644
--- a/code/controllers/configuration.dm
+++ b/code/controllers/configuration.dm
@@ -149,6 +149,9 @@
var/silent_ai = 0
var/silent_borg = 0
+ var/allowwebclient = 0
+ var/webclientmembersonly = 0
+
var/sandbox_autoclose = 0 // close the sandbox panel after spawning an item, potentially reducing griff
var/default_laws = 0 //Controls what laws the AI spawns with.
@@ -355,6 +358,10 @@
world.log = newlog
if("autoconvert_notes")
config.autoconvert_notes = 1
+ if("allow_webclient")
+ config.allowwebclient = 1
+ if("webclient_only_byond_members")
+ config.webclientmembersonly = 1
if("announce_admin_logout")
config.announce_admin_logout = 1
if("announce_admin_login")
diff --git a/code/modules/client/client procs.dm b/code/modules/client/client procs.dm
index 06352c11ba5..9ee7dba62d3 100644
--- a/code/modules/client/client procs.dm
+++ b/code/modules/client/client procs.dm
@@ -45,7 +45,7 @@
/client/proc/is_content_unlocked()
if(!prefs.unlock_content)
- src << "Become a BYOND member to access member-perks and features, as well as support the engine that makes this game possible. Click Here to find out more."
+ src << "Become a BYOND member to access member-perks and features, as well as support the engine that makes this game possible. Only 10 bucks for 3 months! Click Here to find out more."
return 0
return 1
@@ -92,7 +92,7 @@ var/next_external_rsc = 0
TopicData = null //Prevent calls to client.Topic from connect
- if(connection != "seeker") //Invalid connection type.
+ if(connection != "seeker" && connection != "web")//Invalid connection type.
return null
if(byond_version < MIN_CLIENT_VERSION) //Out of date client.
return null
@@ -122,6 +122,16 @@ var/next_external_rsc = 0
. = ..() //calls mob.Login()
+ if (connection == "web")
+ if (!config.allowwebclient)
+ src << "Web client is disabled"
+ del(src)
+ return 0
+ if (config.webclientmembersonly && !IsByondMember())
+ src << "Sorry, but the web client is restricted to byond members only."
+ del(src)
+ return 0
+
if( (world.address == address || !address) && !host )
host = key
world.update_status()
diff --git a/code/modules/mob/living/simple_animal/hostile/mushroom.dm b/code/modules/mob/living/simple_animal/hostile/mushroom.dm
index 8f082395c4c..fa974cd2383 100644
--- a/code/modules/mob/living/simple_animal/hostile/mushroom.dm
+++ b/code/modules/mob/living/simple_animal/hostile/mushroom.dm
@@ -25,6 +25,7 @@
speed = 1
ventcrawler = 2
robust_searching = 1
+ unique_name = 1
speak_emote = list("squeaks")
var/powerlevel = 0 //Tracks our general strength level gained from eating other shrooms
var/bruised = 0 //If someone tries to cheat the system by attacking a shroom to lower its health, punish them so that it wont award levels to shrooms that eat it
@@ -158,6 +159,6 @@
for(counter=0, counter<=powerlevel, counter++)
var/obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice/S = new /obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice(src.loc)
S.reagents.add_reagent("mushroomhallucinogen", powerlevel)
- S.reagents.add_reagent("doctorsdelight", powerlevel)
+ S.reagents.add_reagent("omnizine", powerlevel)
S.reagents.add_reagent("synaptizine", powerlevel)
qdel(src)
diff --git a/config/config.txt b/config/config.txt
index e909d642955..1e7b8c371f2 100644
--- a/config/config.txt
+++ b/config/config.txt
@@ -102,6 +102,14 @@ 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
+## Uncomment to allow web client connections
+#ALLOW_WEBCLIENT
+
+## Uncomment to restrict web client connections to byond members
+## This makes for a nice pay gate to cut down on ban evading, as the webclient's cid system isn't that great
+## byond membership starts at $10 for 3 months, so to use the webclient to evade, they would have sink 10 bucks in each evade.
+#WEBCLIENT_ONLY_BYOND_MEMBERS
+
## 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