Page 1 of 1

job system.

Posted: Tue Feb 10, 2015 8:35 pm
by imblyings
Please change it so it doesn't force people into heads of staff positions. As far as I'm aware it doesn't force people into AI or borg positions so why not head of staff or captain positions. If the players really needed a head of staff and there weren't any, they can break into the captain's office for the spare ID.

Re: job system.

Posted: Tue Feb 10, 2015 8:45 pm
by Scones
is this a thing?
i've never seen it happen, >50% of basil rounds have no heads of staff

Re: job system.

Posted: Tue Feb 10, 2015 8:50 pm
by danno
yeah i mean
i'm pretty sure it even says "captainship is not forced on anyone" on roundstart if there isn't one

Re: job system.

Posted: Tue Feb 10, 2015 9:00 pm
by imblyings
Yes its happened twice.

Re: job system.

Posted: Tue Feb 10, 2015 9:10 pm
by Scones
imblyings wrote:Yes its happened twice.
when? never seen it, never heard of it, never saw a recent change that would indicate this being a feature

Re: job system.

Posted: Tue Feb 10, 2015 9:22 pm
by Loonikus
So you had a head role set to "never" and you got selected anyway?

Re: job system.

Posted: Tue Feb 10, 2015 9:48 pm
by Scott
I am pretty sure it favors security.

Re: job system.

Posted: Tue Feb 10, 2015 10:06 pm
by lumipharon
No, what he means is if you have a head job to set say, medium, and a non head job set to high, if no one else has better priority for taking that head job (ie: no one has it set to high), then you get put into it, even if you high preference is empty. It's really fucking annoying, since I have to not only set another job to high, I then have to set any head roles to low/never.

Re: job system.

Posted: Tue Feb 10, 2015 10:38 pm
by Remie Richards

Code: Select all

//This proc is called before the level loop of DivideOccupations() and will try to select a head, ignoring ALL non-head preferences for every level until
//it locates a head or runs out of levels to check
//This is basically to ensure that there's atleast a few heads in the round
/datum/subsystem/job/proc/FillHeadPosition()
	for(var/level = 1 to 3)
		for(var/command_position in command_positions)
			var/datum/job/job = GetJob(command_position)
			if(!job)	continue
			var/list/candidates = FindOccupationCandidates(job, level)
			if(!candidates.len)	continue
			var/mob/new_player/candidate = pick(candidates)
			if(AssignRole(candidate, command_position))
				return 1
	return 0

Re: job system.

Posted: Tue Feb 10, 2015 11:59 pm
by miggles
pls remove
if there needs to be someone with access to do something they can just take the spare id
having a head is not at all necessary for anything when you dont have a high population and when you do there will certainly be people to fill those roles

Re: job system.

Posted: Wed Feb 11, 2015 12:05 am
by Ikarrus
I don't know how to feel about that.

If there isn't an AI, it would just devolve into the first person who breaks into the Captain's office gets it. Which would be necessary to end the round or get access anywhere.

Heads should still be prioritized, but I suppose it shouldn't be picking people who have them set to Never.

Same goes for if you have "Be random job if none are available" because we occasionally get the newbie player forced into a head role when they're not ready or willing.

Re: job system.

Posted: Wed Feb 11, 2015 3:03 am
by Cipher3
Remie Richards wrote:
Spoiler:

Code: Select all

//This proc is called before the level loop of DivideOccupations() and will try to select a head, ignoring ALL non-head preferences for every level until
//it locates a head or runs out of levels to check
//This is basically to ensure that there's atleast a few heads in the round
/datum/subsystem/job/proc/FillHeadPosition()
	for(var/level = 1 to 3)
		for(var/command_position in command_positions)
			var/datum/job/job = GetJob(command_position)
			if(!job)	continue
			var/list/candidates = FindOccupationCandidates(job, level)
			if(!candidates.len)	continue
			var/mob/new_player/candidate = pick(candidates)
			if(AssignRole(candidate, command_position))
				return 1
	return 0
THIS is why I've gotten HoS a few times without it set in my preferences? Every time that's happened I don't want to be HoS - I don't want the responsibility, to be security, to manage everyone, to be a head, and I likely won't have time to run the round to completion, which is why I would have chosen a less essential role. I do play HoS occasionally, when I want to. If it's not set, I don't want to.

Re: job system.

Posted: Wed Feb 11, 2015 3:31 am
by imblyings
Loonikus wrote:So you had a head role set to "never" and you got selected anyway?
yes.

I've had two rounds now where I had everything set to never except for borg and I was made a captain. The last time this happened, Centcom ended up bluespacing out my office and bluespace artillerying me before making the emergency shuttle land in a field of singulos. The station also indirectly suffered a power blackout as a result of the job selection system making me a captain.

I think the code Remie posted adequately explains it though.