Thread Rating:
  • 3 Vote(s) - 4.67 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Job Preference Toggle For Antagonist or Job Preference
#1
The title isn't fully explanatory, so here's what I mean. As a note I am well aware that this would require a rework to role selection and I am unfamiliar with how it is coded.

Premise:
A toggle within the Job Preference menu in the character creator, which is by default off. This will essentially tell the game to either roll for you being an antagonist first (which is how it's currently done), or to roll for your job first if it is toggled on - if the job you roll is antagonist-incompatible *and* you have this preference toggled on, you will not receive a roll for antagonist.

For example, you have this role preference enabled, you are on the RP server and you have Changeling, Wraith, and Spy Thief antags enabled, and your favorite role is Captain, your Medium roles are AI, and Head of Security, and your Low roles are Roboticist and Janitor. The game will first roll for your job. If you roll Captain, Head of Security, or AI, you will not be selected for an antagonist role (as Captain is also incompatible with all of your antagonist preferences). However, if all 3 of those are given to someone else, you will be eligible for an antagonist role.

Reason:

Sometimes you want to just not be an antagonist in certain roles, or actually prefer certain roles over antag ones (Personally, I very much so prefer to play AI but would be more willing to accept an antagonist role if I were to roll a human role anyways), but there is no actual way to tell the game how much you prefer antagonist roles against other ones.

Implementation:

I'm really only familiar with the basics of how role selection works. First, the round type is chosen and what antagonists there are both based on playercount. Then, players are randomly picked to be antagonists. Then, their jobs are selected, and antagonists are not eligible for certain roles.

One possible implementation could be having that third step of job selection ignore if people were selected for antag if they had the above job preference enabled, and then with a fourth step to validate everyone's roles and antagonist status. This last step would see if anyone is both an antagonist and an antag which is incompatible with their role (e.g traitor and AI or wizard and any job), and if that's the case it'll remove that antag role and repeat the second step looking for a replacement antagonist, and repeating step 4 and looping as necessary until either all antags have been selected or too many loops occur.

I'm well aware that the above implementation may be flawed, but I was just attempting to provide some kind of possibly practical implementation rather than just saying a nice-sounding idea.
Reply
#2
Could be cool
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)