Commit Graph

139 Commits

Author SHA1 Message Date
Remie Richards b9394257da About a million changes, but largely: Functional (Sort of) Antag Huds, Mind fixes, and Final glue to get the mode working. 2015-10-07 22:11:19 +01:00
Remie Richards 58483beb50 Hand of god gamemode!
be_special and antag defines are no longer limited to 16 values (1 - 32768) by being changed from a bitfield to a list, an appropriate block of code exists to automatically update bitfield versions to the new list format. the list format allows us to have (functionally) infinite antag types.
2015-09-27 16:49:56 +01:00
Robustin 182ffef3f0 Increases Folder Exchange Trigger
The number of traitors required to trigger a folder exchange objective is increased from 5 to 8. 

The purpose of antagonists is to antagonize. These objectives provide 0 interactivity with the crew and completely dis-incentivize any antagonistic act against the station. Within 5 minutes either two traitors have greentext and the only way they can lose it is by actually conducting antagonistic acts, or one traitor shoots another traitor in the face and spaces the body to secure their own greentext, in which case they still have 0 interactivity with the rest of the crew.

With the current minimum of 5 traitors, you see a folder exchange in almost every traitor round and unless these traitors willfully risk their greentext by going off-objective then you've got 40% of traitors neutralized at roundstart, leaving just 3 traitors to be the driving force behind a round. One of those traitors will be AFK at roundstart and won't even know they're a traitor, the other will be the RD who has to "steal" a hand teleporter... you can see where I'm going with this. Exchanges are too often a proximate cause for traitor rounds where absolutely nothing happens. 

This change preserves the exchange and the hard work someone put into it, but ensures the objective only appears when there's a sufficient number of traitors to antagonize the station if the two folderbuddies decide to peacefully greentext.
2015-08-18 14:01:03 -04:00
Incoming 8af5f293f0 Double Agents Hotfix
Because DA manually assigns targets instead of using find_target() the proc update_explanation_text() wasn't firing and thus the DAs couldn't figure out who they had to kill (though in actuality the objective would be fully functional.
2015-07-28 15:46:17 -04:00
Incoming 2fa88f02e7 Fixes an edgelord case where a double agent tasked with killing a double agent AI could meta that it was in fact double agents because the flavor text for killing an AI is different in traitor than it is in DA 2015-07-27 16:49:07 -04:00
Incoming f0a187430f Removes outward tells that a double agent round isn't just a traitor round.
Players won't know if they're a double agent or a traitor if they happen to roll a kill objective + escape. DAs won't outwardly know that their targets are also DAs.

For the sake of mirroring traitors to avoid meta DAs gain syndicate bombs back (but shouldn't be any more apt to use them than normal traitors)

For the same reason nonimplanted heads and the AI are now capable of being DAs.

Paranoia from DA leaks back to traitor
Not going rambo mode for the 420noscope quick kill leaks from traitor to DA

Maybe, lets hope!
2015-07-25 21:58:04 -04:00
Firecage 4688c2c969 Fixes proc arguments 2015-07-15 23:52:35 +02:00
Cheridan 3115acb654 Merge pull request #9568 from Incoming5643/staydownDAyoureoutofyourelement
Quashes Double Agents from appearing in mulligans (again)
2015-05-24 20:00:27 -05:00
MrStonedOne addb63adad Utterly guts the use of .locs from the game.
They

This means that multi-tile things may not handle correctly, but the only thing that used it was atmos for double wide doors, and they are used in one location that is unlikely to have atmos changes

see: http://www.byond.com/forum/?post=1852790 for justifcation. (tl;dr: accessing .locs causes memory leaks)
2015-05-21 23:41:47 -07:00
Incoming 0a494eea8f Quashes Double Agents from appearing in mulligans.
Yes I already did this once, I'm not sure how it got reverted but oh well.
2015-05-19 17:23:15 -04:00
Incoming 23cc8c7db0 All modes now choose their antagonists before they choose jobs. A new mind attached list, restricted_roles, will keep incompatible jobs out of rotation.
Players who would otherwise qualify to play as an implanted job will spawn as the most wanted not implanted job they qualify for if they are an onstation antagonist. If they don't qualify for any job in this way depending on preferences they will either spawn as an assistant or a random job (which also makes sure they don't end up in an incompatible job).

Note this doesn't impact late join antagonists or mulligan antagonists. Roundstart only.
2015-05-05 23:29:03 -04:00
Incoming b19a66ba51 Fixes another instance of FIGHTVALE because the replacementmode didn't realize that the lists of antags are kept in the ticker.mode gamemode and not itself.
Clears up some language issues that was making the check antag panel a little harder to read than it needed to be.
2015-05-01 13:34:34 -04:00
Incoming 3738946480 Rolls back the message for a round that starts noncontinuous with no antags since this theoretically could happen if a station is full of antag hating peaceniks with no flags set.
Disables mulliganing into DA since it's currently borked and I need to look closer at it anyways
2015-04-29 20:10:43 -04:00
Incoming c841fdf4b1 Now leaving fightvale
Fixes a bug where people in restricted jobs could get mulligan antag shots because the host mode had more lax restricted jobs lists than the mulligan mode

Fixes a bug where in certain circumstances everyone capable of rolling for mulligan antag would just keep rolling and rolling and rolling until it became possible.
2015-04-21 17:53:11 -04:00
hornygranny 14fa16078f Merge pull request #8368 from Cheridan/day1
Spring Event Day 1: Martyr Objective!
2015-03-23 17:15:55 -07:00
Incoming 5d35200567 Fixes a big old mistake in mulligan antag that made extended mulligans WAY too common
Hard defines double agents and traitorchan to be possible since there were some indication that inheriting the var wasn't working right

When mulligan decides to quit the admins will get a blurb as to why it quit.
2015-03-21 21:49:22 -04:00
Cheridan 2ca9e8e392 Spring Event Day 1: Martyr Objective! 2015-03-15 22:50:25 -05:00
Ikarrus f95ca85ed6 Age Restrictions for Antagonists
Default minimum age is 7 days.
Team Antag modes and wizard is 14 days.
Malf minimum is 30 days (Same as AI minimum age).
2015-03-01 20:40:04 -07:00
Incoming 24cc205ce5 On primary antagonist rounds (wizard/blob/malfunction) if the config is set for continous rounds the round will convert on the fly to a new mode choosen from these mode if the primary antagonist dies:
EXTENDED
TRAITOR
CHANGELING
DOUBLE AGENTS
TRAITORLING

based on the game probabilities set through the config.

The round will not convert if more than 30% of the players are dead (round immediatly ends) or if the shuttle is beyond the point of no return (the round ends normally).

Adds the CONTINIOUS_ROUND_BLOB config
2015-02-22 21:32:17 -05:00
Razharas 208b59c30e Fixed stuff tkdrg pointed out
Added comment to dualsaber and hulk checks to explain whats going on
Added defines that converts to mutation names
Fixed grammer again
2014-12-28 10:49:04 +03:00
Razharas 0921aa201f Added datum mutations
Also removed some mob vars like sdisabilities and merged the usability
with disabilities
Removed need for mutations var, they are not handled in dna
Removed blinded var, now its handled by eye_blind being bigger than zero
Ands lots, lots of other shit in files that used mutations
2014-12-12 04:48:11 +03:00
Remie Richards 935775bfc1 Merge pull request #5788 from Miauw62/runtime2
Fixes some AI traitorize runtimes.
2014-11-14 18:12:50 +00:00
Miauw f491d9dfe1 Fixes some AI traitorize runtimes. Fixed #4605 2014-11-09 14:51:26 +01:00
GunHog 604bc648ff Gives Traitor AIs the Syndicate Channel!
This PR is intended to support #5283 .
- Traitor AIs, when set as a traitor, will be given a new internal radio
calibrated to hear and transmit to the encrypted syndicate frequency.

Since traitors can buy a headset key for getting the Syndicate Channel,
Traitor AIs can get one too, as they cannot purchase their own TC items.
2014-11-03 21:59:36 -06:00
paprka c0425bc06e initial commit of assistant antag option 2014-10-13 17:21:02 -07:00
Remie Richards be6c8c54d1 Reverts Antag selection happening before job selection 2014-10-09 22:57:19 +01:00
ikarrus 899637a63b New way of calculating # of DAs
Instead of modifying the coefficient, it just straight up adds additional antagonists.
2014-09-27 18:06:24 -06:00
Aranclanos 95b9754f01 Merge pull request #4507 from RemieRichards/AntagBeforeJobs
Antag selection before Job selection
2014-09-23 08:13:39 -03:00
Ikarrus 839cb01bc0 Update traitor.dm 2014-09-21 13:25:21 -06:00
Ikarrus 38a745cef4 Update traitor.dm 2014-09-21 13:16:34 -06:00
ikarrus 1b46ad1558 Fixed Latejoin Antags
It was checking for number of readied players instead of joined players
2014-09-21 13:15:31 -06:00
Remie Richards 7c96b0aa95 Merge branch 'master' of https://github.com/tgstation/-tg-station into TraitorBeforeJobs
Conflicts:
	code/datums/mind.dm
	code/game/jobs/job_controller.dm
2014-09-17 23:11:39 +01:00
Alex 4c919969a8 Merge pull request #4773 from Donkie/jobnote
Added note of what occupation the guy had at endround stats
2014-09-14 13:16:06 +01:00
Aranclanos bfd9ce393e Removes two unused vars of the gamemode datums, uplink_welcome and uplink_uses.
uplink_welcome was actually used as a greeting text from uplinks, now they'll always show "Syndicate Uplink Console:". The removed strings weren't nothing important, actually, with the addition of the uplinks in cargo, you were able to metagame the ongoing gamemode.
2014-09-11 06:06:59 -03:00
Daniel e0433f7764 Fixed up text, added proc 2014-09-11 09:27:35 +02:00
Daniel 4f1cd16dc0 Some text changes 2014-09-10 12:42:28 +02:00
Daniel 5b82b44c0e Added note of what occupation the guy had at endround stats 2014-09-10 12:13:26 +02:00
Alex 0ade87d365 Merge pull request #4657 from Ikarrus/betterantagscaling
Improved Antagonist Scaling
2014-09-06 19:06:04 +01:00
ikarrus ca0ccccf72 Apparently New Players have minds so that's not going to be appropriate any more. 2014-09-04 21:11:22 -06:00
ikarrus abe5d25bf3 A little more fair for traitor objectives 2014-09-04 00:09:06 -06:00
ikarrus dfa608a12b Destroy Objective Probability scales with population
Instead of being a flat 1% or 2% it will now use prob(100/ticker.minds.len) which will give it roughly the same chance as any crewmember would have of being targetted for assasination.
2014-09-04 00:01:59 -06:00
ikarrus 3246d3e2b9 Improved Antagonist Scaling
To allow for saner antagonist scaling at high-population while still accomodating low-population rounds.

The PR changes the formula to thus:
Antagonists = min ( population / (2* coeff ) + 2, population / coeff )

For traitor, this means
Traitors = min ( population / 10 + 2, population / 5 )
2014-09-02 09:02:40 -06:00
Alex a64217bafb Merge pull request #4538 from Ikarrus/maroon
Maroon and Destroy objectives for Traitor and Changeling
2014-08-26 08:14:01 +01:00
ikarrus 76b0ce1a8a Maroon and Destroy objectives for Traitor and Changeling
Maroon
-Maroon objectives are a variation of assassination, where preventing the escape of the person also counts as a success.
-Aprox. 30% of assasinations will be maroonings instead
-Disincentivizes players from staying behind on the station when the shuttle leaves simply because "it's more safe"

Destroy
-Basically an assasination objective where the AI is the target
-All traitors have a 1% of getting this objective. Changelings have 2% chance.
-Adds variety, counterplay between those who want to destroy the AI and save/restore/steal it
-It is entirely possible to get Destroy AI and Steal AI at the same time. While it would be difficult, it's still entirely possible to destroy your target and steal a different AI. The chances of getting both are very slim, however.
-Encourages restoring the AI over killing it wherever possible. Discourages AIs from cooperating with antagonists.

And there you go, my hamhanded attempts at some new objective types.
2014-08-22 21:58:25 -06:00
Robson Richards e704c9738e Reworks Gamemode/Job interaction a bit 2014-08-20 18:25:53 +01:00
Robson Richards 27df7c15b5 Adds assigned_role = "MODE" to the new pre_setup_before_jobs modes. 2014-08-20 17:37:16 +01:00
Robson Richards 4df356e5d2 All pre_setup_before_jobs = 0 gamemodes changed to pre_setup_before_jobs = 1 2014-08-20 17:20:20 +01:00
ikarrus 9db5a07e8d Traitor AIs will now have multiple objectives, like human traitors.
The block escape objective counts towards this.
2014-08-19 22:18:40 -06:00
AndroidSFV 629d3a3edc Moved intercept to the parent post_setup 2014-07-29 14:56:48 -05:00
Alex d50547f97f Merge pull request #4035 from Ikarrus/latejoinfloorcap
Adds a floor cap for latejoing antagonists
2014-07-10 13:13:44 +01:00