Mulligan Antag: How it works and How it can be customized

For feedback on the game code and design. Feedback on server rules and playstyle belong in Policy Discussion.
Post Reply
Incoming
Github User
Joined: Tue Apr 15, 2014 11:41 pm
Byond Username: Incoming
Github Username: Incoming5643

Mulligan Antag: How it works and How it can be customized

Post by Incoming » #74719

So there's been a new mechanic I've basically been live debugging on the servers for the past week or so called mulligan antag. Basically what it does is create more antagonists in solo antag rounds (Wizard, Blob, Malf) in the event that the solo antag gets dunked prematurely. Unless you're a code reader it's a pretty hard system to really feel, and I wanted to really lay out in a (comparatively) easy way how it works and what you can customize. It's also a feedback thread if you want to leave any.

Chronological Description of The System (higher number outcomes trump lower number outcomes):

1. When a round would typically end in a single antagonist roundtype, if the corresponding flag is set (continuous_round_wiz, continuous_round_malf, continuous_round_blob) the system is run, otherwise the round ends.

2. A list is made of all the round types considered "friendly" to the system, if none are found the round ends there. The round types that can be used are: Extended, Traitor, Traitorling, Ling, and Double Agents.

3. A round type is chosen for the mulligan, the odds of each mirror the odds of them being selected at round start in relation to each other.

4. A location check is made on the emergency shuttle: if it is already at the station, or if its in transit and too late to be recalled the round continues to a "peaceful" centcom finish. No new antagonists are made.

5. A time check is made on the round: If the round has been going longer than config value "midround_antag_time_check" (default an hour), the round ends immediately.

6. A living player check is made: If the number of players who took part in the round still who alive is lower than "midround_antag_life_check" (default 70%), the round ends immediately.

7. An antagonist check is made: A list of players with "allow_midround_antag" on (players can set this from character selection or the preference tab) is made for later use. If absolutely no one wants to be given antagonist like this, the round ends immediately.

8. Any config options related to who can't be an antagonist are applied to the list.

9. Any active admins on the server is alerted at this point that the mulligan is assuredly coming and are given the opportunity to end the round as a judgement call if they feel that enough has already happened. Those that take this option are warned with multiple confirmations before the round actually ends, and admins are notified if they try to activate round end this way.

10. A peace of 3 to 7 minutes descends upon the station for people to pick up the pieces, return to their workplaces, and generally try to get back to life as normal.

11. The list is shuffled and every player on the list is given in turn a chance to become an antagonist. This chance decreases to zero as antagonists are made, so those that were randomly assigned to the top of the list are most apt to become the antagonists. By the end of assignment the number of antagonists will be roughly equivalent to a round that had begun as the mulligan roundtype. Late round antag chances will continue to be given to new players as they join provided they meet the rules for it.

---

Ways to customize the system:

The system can be disabled for individual game modes through a combination of config options in "continuous_round_wiz", "continuous_round_malf", and "continuous_round_blob". Setting all three to false will render this system unused.

The time check, "midround_antag_time_check" is in minutes. It can be effectively removed from the system by setting it to some very large number. If you would like to disable the system while allowing for peaceful trips to centcom when relevent, set this config option to 0

The life check, "midround_antag_life_check" is a ratio. It can be effectively removed from the system by setting it to 0 (always passes). Setting it above 1 will cause rounds to always always end immediately, effectively disabling the system
Last edited by Incoming on Wed Mar 25, 2015 6:12 am, edited 2 times in total.
Developer - Datum Antags: Feburary 2016

Poly the Parrot - All Seeing Bird Transcends Universe, Joins Twitter.

Kofi - Make A Poor Life Choice

Good ideas backed by cruddy code since 2012!
Incomptinence
Joined: Fri May 02, 2014 3:01 am
Byond Username: Incomptinence

Re: Mulligan Antag: How it works and How it can be customize

Post by Incomptinence » #74721

Had a wizard stomp fest transform into crushing the puny blob at the hands of our capable crew then we all flew out feeling like champs, fantastic addition to the game.
User avatar
Not-Dorsidarf
Joined: Fri Apr 18, 2014 4:14 pm
Byond Username: Dorsidwarf
Location: We're all going on an, admin holiday

Re: Mulligan Antag: How it works and How it can be customize

Post by Not-Dorsidarf » #74783

I should work on the ARMAGEDDON MODE/tensioner 2.0

BLOB BLOB BLOB NINJA NINJA WIZARD PARTY NUKE OPS RUMBLE RUMBLE AND NOW YOU'RE ALL TRAITORS DID I MENTION BLOB AGAIN?
Image
Image
kieth4 wrote: infrequently shitting yourself is fine imo
There is a lot of very bizarre nonsense being talked on this forum. I shall now remain silent and logoff until my points are vindicated.
Player who complainted over being killed for looting cap office wrote: Sun Jul 30, 2023 1:33 am Hey there, I'm Virescent, the super evil person who made the stupid appeal and didn't think it through enough. Just came here to say: screech, retards. Screech and writhe like the worms you are. Your pathetic little cries will keep echoing around for a while before quietting down. There is one great outcome from this: I rised up the blood pressure of some of you shitheads and lowered your lifespan. I'm honestly tempted to do this more often just to see you screech and writhe more, but that wouldn't be cool of me. So come on haters, show me some more of your high blood pressure please. 🖕🖕🖕
User avatar
AnonymousNow
Joined: Tue Jul 15, 2014 1:41 pm
Byond Username: AnonymousNow
Location: Neptune

Re: Mulligan Antag: How it works and How it can be customize

Post by AnonymousNow » #74837

What little I remember from the last thread...

- Add Revolution as a Mulligan roundtype, from and into. A whole new dynamic for both.
- Add Cascade for a random antagonist add-in every 15 minutes, no matter what.
Hornygranny wrote:It's not your codebase. It's our codebase. You can imply soft power as much as you want, but you don't have it. Division between the server and project is absolute. I'm not interested in reading dezzmont platitudes for the billionth time and won't be checking back in this thread.
Image

Image
Spoiler:
~Simplified for the sake of Wyzack's delicate feelings~
Fuck anti-roleplay suggestions and fuck Bay.

Xenomorphs a shit.
Incoming
Github User
Joined: Tue Apr 15, 2014 11:41 pm
Byond Username: Incoming
Github Username: Incoming5643

Re: Mulligan Antag: How it works and How it can be customize

Post by Incoming » #77106

So I found a pretty huge bug in the system that was generating all those extended rounds that probably soured some peoples opinions on this:

https://github.com/tgstation/-tg-station/pull/8474

Once that's live you should actually SEE mulligan antag system working a lot more.

---

Also if anyone is wondering why mulligan wizard seems broken, it's not, it's just disabled server side right now (along with a few other components of wizard mode). Hopefully that can get resolved once THIS pull goes live

https://github.com/tgstation/-tg-station/pull/8452
Developer - Datum Antags: Feburary 2016

Poly the Parrot - All Seeing Bird Transcends Universe, Joins Twitter.

Kofi - Make A Poor Life Choice

Good ideas backed by cruddy code since 2012!
Incoming
Github User
Joined: Tue Apr 15, 2014 11:41 pm
Byond Username: Incoming
Github Username: Incoming5643

Re: Mulligan Antag: How it works and How it can be customize

Post by Incoming » #78963

https://github.com/tgstation/-tg-station/pull/8586

More changes coming to the system here. In short it allows for full customization of the modes and effects of mulligan antag. What rounds it occurs in, what odds it uses for the new roundtype, whether or not to end rounds if the system reports that shit is too fucked for more antags. It's all there.
Developer - Datum Antags: Feburary 2016

Poly the Parrot - All Seeing Bird Transcends Universe, Joins Twitter.

Kofi - Make A Poor Life Choice

Good ideas backed by cruddy code since 2012!
callanrockslol
Joined: Thu Apr 24, 2014 1:47 pm
Byond Username: Callanrockslol

Re: Mulligan Antag: How it works and How it can be customize

Post by callanrockslol » #78998

TENSIONER 2.0: NOT A BROKEN PIECE OF SHIT THIS TIME

I LOVE IT
The most excessive signature on /tg/station13.

Still not even at the limit after 8 fucking years.
Spoiler:
Urist Boatmurdered [Security] asks, "Why does Zol have a captain-level ID?"
Zol Interbottom [Security] says, "because"

Sergie Borris lives on in our hearts

Zaros (No id) [145.9] says, "WITH MY SUPER WIZARD POWERS I CAN TELL CALLAN IS MAD."
Anderson Conagher wrote:Callan is sense.
Errorage wrote:When I see the win vista, win 7 and win 8 hourglass cursor, it makes me happy
Cause it's a circle spinning around
I smile and make circular motions with my finger to imiatate it
petethegoat wrote:slap a comment on it and call it a feature
MisterPerson wrote:>playing
Do you think this is a game?
Gun Hog wrote:Untested code baby
oranges wrote:for some reason all our hosts turn into bohemia software communities after they implode
Malkevin wrote:I was the only one that voted for you Callan.
Miggles wrote:>centration development
>trucking
ill believe it when snakes grow arms and strangle me with them

OOC: Aranclanos: that sounds like ooc in ooc related to ic to be ooc and confuse the ic
OOC: Dionysus24779: We're nearing a deep philosophical extistential level

Admin PM from-Jordie0608: 33-Jan-2552| Warned: Is a giraffe dork ~tony abbott

OOC: Saegrimr: That wasn't a call to pray right now callan jesus christ you're fast.

OOC: Eaglendia: Glad I got to see the rise, fall, rise, and fall of Zol

OOC: Armhulenn: CALLAN
OOC: Armhulenn: YOU MELTED MY FUCKING REVOLVER
OOC: Armhulenn: AND THEN
OOC: Armhulenn: GAVE ME MELTING MELONS
OOC: Armhulenn: GOD FUCKING BLESS YOU
OOC: Armhulenn: you know what's hilarious though
OOC: Armhulenn: I melted ANOTHER TRAITOR'S REVOLVER AFTER THAT

7/8/2016 never forget
Armhulen wrote:
John_Oxford wrote:>implying im not always right
all we're saying is that you're not crag son
bandit wrote:we already have a punishment for using our code for your game, it's called using our code for your game
The evil holoparasite user I can't believe its not DIO and his holoparasite I can't believe its not Skub have been defeated by the Spacedust Crusaders, but what has been taken from the station can never be returned.

OOC: TheGel: Literally a guy in a suit with a shuttle full of xenos. That's a doozy
User avatar
Phalanx300
Joined: Fri Aug 08, 2014 7:26 pm
Byond Username: Phalanx300

Re: Mulligan Antag: How it works and How it can be customize

Post by Phalanx300 » #79054

Are Aliums also included in this system?
Incoming
Github User
Joined: Tue Apr 15, 2014 11:41 pm
Byond Username: Incoming
Github Username: Incoming5643

Re: Mulligan Antag: How it works and How it can be customize

Post by Incoming » #79065

No this system only works for antagonists with a corresponding roundtype. Aliens/space ninjas are still governed by the event system and Deathsquad/ERT squad are still admin only.
Developer - Datum Antags: Feburary 2016

Poly the Parrot - All Seeing Bird Transcends Universe, Joins Twitter.

Kofi - Make A Poor Life Choice

Good ideas backed by cruddy code since 2012!
onleavedontatme
Joined: Fri Mar 13, 2015 10:26 pm
Byond Username: KorPhaeron

Re: Mulligan Antag: How it works and How it can be customize

Post by onleavedontatme » #79068

I know I complain a lot so I want to be positive and say this is a fantastic idea even if its needed tweaking.
Post Reply

Who is online

Users browsing this forum: No registered users