diff --git a/config.php b/config.php
index 4450510..6527e30 100644
--- a/config.php
+++ b/config.php
@@ -657,6 +657,8 @@
 		'port' => 7172,
 		'name' => 'Forgotten' // Must be identical to config.lua (OT config file) server name.
 	);
+	// Unlock all protocol 12 client features? Free premium in config.lua? Then set this to true.
+	$config['freePremium'] = true;
 
 	// How often do you want highscores (cache) to update?
 	$config['cache'] = array(
diff --git a/login.php b/login.php
index 40d7382..290c086 100644
--- a/login.php
+++ b/login.php
@@ -216,6 +216,7 @@ if($_SERVER['HTTP_USER_AGENT'] == "Mozilla/5.0" && $config['ServerEngine'] === '
 				$sessionKey .= (isset($account['secret']) && strlen($account['secret']) > 5) ? "\n".$token : "\n";
 				$sessionKey .= "\n".floor(time() / 30);
 
+				$freePremium = (isset($config['freePremium'])) ? $config['freePremium'] : true;
 				$response = array(
 					'session' => array(
 						'fpstracking' => false,
@@ -227,7 +228,7 @@ if($_SERVER['HTTP_USER_AGENT'] == "Mozilla/5.0" && $config['ServerEngine'] === '
 						'emailcoderequest' => false,
 						'sessionkey' => $sessionKey,
 						'lastlogintime' => 0,
-						'ispremium' => ($account['premium_ends_at'] > time()) ? true : false,
+						'ispremium' => ($account['premium_ends_at'] > time() || $freePremium) ? true : false,
 						'premiumuntil' => $account['premium_ends_at'],
 						'status' => 'active'
 					),