anchor.diff:  		if(config.enforce_human_authority && (job.title in command_positions) && player.client.prefs.pref_species.id != "human")
   			Debug("FOC non-human failed, Player: [player]")
   			continue
  -		
  -		if(player.mind.special_role && ticker && ticker.mode && (job.title in ticker.mode.restricted_jobs))
  -			Debug("FOC player has a special role and this job is blocked from this special role")
  -			continue
  +
  +		if(player.mind.special_role && ticker && ticker.mode)
  +			if(job.title in ticker.mode.restricted_jobs || job.title in ticker.mode.protected_jobs)
  +				Debug("FOC player has a special role and this job is blocked from this special role")
  +				continue
   
   		if(player.client.prefs.GetJobDepartment(job, level) & job.flag)
   			Debug("FOC pass, Player: [player], Level:[level]")
  
positive.code: 			Debug("GRJ non-human failed, Player: [player]")
  			continue
  
  		if(player.mind.special_role && ticker && ticker.mode && (job.title in ticker.mode.restricted_jobs))
  			Debug("GRJ player has a special role and this job is blocked from this special role")
  			continue
  
  		if((job.current_positions < job.spawn_positions) || job.spawn_positions == -1)
  			Debug("GRJ Random job given, Player: [player], Job: [job]")
  
negative.code: 					Debug("DO non-human failed, Player: [player], Job:[job.title]")
  					continue
  
  				if(player.mind.special_role && ticker && ticker.mode)
  					if(job.title in ticker.mode.restricted_jobs || job.title in ticker.mode.protected_jobs)
  						Debug("DO player has a special role and this job is blocked from that special role")
  						continue
  
  				// If the player wants that job on this level, then try give it to him.
  				if(player.client.prefs.GetJobDepartment(job, level) & job.flag)
  