Skip to content

[Addition] Character and role selection modes#10977

Open
Sorenon wants to merge 17 commits intoMonkestation:masterfrom
Sorenon:character_selection
Open

[Addition] Character and role selection modes#10977
Sorenon wants to merge 17 commits intoMonkestation:masterfrom
Sorenon:character_selection

Conversation

@Sorenon
Copy link
Contributor

@Sorenon Sorenon commented Mar 2, 2026

About The Pull Request

  • Moved the antags preferences page up out of character preferences
  • Adds a new Occupations page and renames the old one to Character Occupations
  • Adds a toggle all button to the occupations pages
  • Changes how character and job assignment works by adding three different modes
  • Adds a help box to the occupations page to explain the different modes
image

Mode: Simple

You have one set of job priorities. Only one character can be enabled at a time.

1. Set job priorities in Overall Occupations
2. Pick one enabled character
Screenshots image

Mode: Character Filters

You have one set of job priorities. Multiple characters can be enabled at a time and each character can have different jobs enabled or disabled. When you join the round the game will pick a job for you (or take your chosen job if latejoining) then pick an enabled character which has that job enabled. If the game cannot find one it will pick your default character.

1. Set job priorities in Overall Occupations
2. Set job filters in Character Occupations
3. Pick 0 or more enabled characters
4. Pick one default character
Screenshots image image

Mode: Per Character Priorities (legacy mode)

Each character has their own set of job priorities. Only one character can be enabled at a time.

1. Set job priorities in Character Occupations
2. Pick one enabled character
Screenshots image image

Why It's Good For The Game

Currently if a player wants to restrict their characters to specific jobs they have to limit which jobs they ready up as or latejoin.
The Character Filters mode allows players to leave this up to the server, so before each round they only have to decide how much they want to play each job, and which characters they'd like to play as.

Since antag preferences are actually independent of the selected character, now that all the settings menus have been combined it makes sense to remove it from the character settings.

Testing

Each mode has been tested in both readying up and latejoining.
The new settings save and load correctly.

Changelog

🆑
add: Added three different modes to job selection (Simple, Character Filters, Per Character Priorities)
qol: Moved antag preferences out of character settings since they don't depend on the selected character
/:cl:

Pre-Merge Checklist

  • You tested this on a local server.
  • This code did not runtime during testing.
  • You documented all of your changes.

@Mantlecrawler Mantlecrawler added Code: TGUI Involves TGUI in some way, shape or form Feature: Feature The creature feature. featuring: the creature. labels Mar 11, 2026
@Sorenon Sorenon marked this pull request as ready for review March 16, 2026 17:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Code: TGUI Involves TGUI in some way, shape or form Feature: Feature The creature feature. featuring: the creature.

Projects

Status: In progress

Development

Successfully merging this pull request may close these issues.

2 participants