Skip to content

Conversation

Copy link

Copilot AI commented Nov 28, 2025

About the PR

Adds a new antagonist: the Provocateur - a corporate spy with a pacifism implant who has kill objectives but cannot harm anyone directly. Must manipulate crew into eliminating targets through framing, impersonation, and social engineering.

Equipment:

  • Chameleon ID card
  • Voice-changing mask
  • Chameleon projector
  • Paper, pen, hand labeler

Objectives:

  • Kill targets (must manipulate others to do it)
  • Steal identity items (IDs, stamps, headsets, cloaks)
  • Steal evidence manipulation tools (forensic scanner, wanted list cartridge)
  • Escape alive

Why / Balance

Addresses the need for a new antag that:

  • Is NOT a conversion antag (avoids multi-hour slog games)
  • Is NOT a bullet sponge (boring gameplay)
  • Is distinct from Space Ninja (ninja = tech sabotage with special gadgets; provocateur = social manipulation with mundane tools)

The pacifist-with-kill-objectives mechanic creates unique gameplay where success requires understanding station dynamics, security systems, and creative problem-solving rather than combat.

Technical details

New C# files:

  • ProvocateurRoleComponent.cs - Mind role marker
  • ProvocateurRuleComponent.cs - Game rule data
  • ProvocateurRuleSystem.cs - Briefing and role setup

New prototypes:

  • Roles/Antags/provocateur.yml - Antag definition + starting gear
  • Objectives/provocateur.yml - Kill and steal objectives with Pacified component

Modified:

  • mind_roles.yml - MindRoleProvocateur entry
  • subgamemodes.yml - Provocateur game rule (max 2, 1:25 player ratio)
  • roundstart.yml - Added to SubGamemodesRule at 0.3 probability
  • objectiveGroups.yml - Kill/identity/authority/evidence objective groups
  • game_presets.yml - Provocateur preset

Media

N/A - No visual changes, gameplay-only addition.

Requirements

Breaking changes

None.

Changelog

🆑

  • add: New antagonist role: Provocateur - a pacifist corporate spy who must manipulate the crew into killing their targets. Uses impersonation tools and social engineering rather than violence.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • mfjvsblobprodcus373.vsblob.vsassets.io
    • Triggering command: /usr/bin/dotnet dotnet run --project Content.YAMLLinter (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

try to create a new antagonist gamemode. Keep in mind that conversion antags are usually an absolute slog, as the game can take several hours. Bullet sponge antags are very boring as well.


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

@github-actions github-actions bot added size/M and removed size/XS labels Nov 28, 2025
Copilot AI changed the title [WIP] Create new antagonist gamemode to enhance gameplay Add Provocateur antagonist - pacifist who manipulates crew into killing targets Nov 28, 2025
Copilot AI requested a review from MWG-Logan November 28, 2025 19:26
@MWG-Logan MWG-Logan marked this pull request as ready for review November 28, 2025 19:27
@MWG-Logan MWG-Logan requested a review from Copilot November 28, 2025 19:28
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds a new antagonist role called the Provocateur - a corporate spy with a pacifism implant who must manipulate the crew into eliminating targets instead of using direct violence. This fills a niche for social manipulation-based gameplay distinct from combat-heavy antagonists and conversion mechanics.

Key changes:

  • New C# components and systems for the Provocateur role with briefing logic
  • Prototype definitions for the antag, objectives (kill and steal), and starting gear (chameleon ID, voice mask, chameleon projector, paper, pen, labeler)
  • Game rule configuration with max 2 provocateurs per round at 1:25 player ratio, spawn probability of 0.3

Reviewed changes

Copilot reviewed 12 out of 12 changed files in this pull request and generated no comments.

Show a summary per file
File Description
Content.Server/Roles/ProvocateurRoleComponent.cs Mind role marker component for identifying Provocateur players
Content.Server/GameTicking/Rules/Components/ProvocateurRuleComponent.cs Game rule data component for the Provocateur system
Content.Server/GameTicking/Rules/ProvocateurRuleSystem.cs System handling briefing generation and role setup
Resources/Prototypes/Roles/Antags/provocateur.yml Antag definition with 2h playtime requirement and social manipulation gear loadout
Resources/Prototypes/Objectives/provocateur.yml Kill and steal objectives themed around impersonation and evidence manipulation
Resources/Prototypes/Objectives/objectiveGroups.yml Weighted random groups for Provocateur objectives (identity, authority, evidence, command)
Resources/Prototypes/GameRules/subgamemodes.yml Game rule with Pacified component and objective configuration
Resources/Prototypes/GameRules/roundstart.yml Added Provocateur to SubGamemodesRule pools with 0.3 probability
Resources/Prototypes/game_presets.yml Game preset definition for standalone Provocateur rounds
Resources/Prototypes/Roles/MindRoles/mind_roles.yml Mind role entity registration
Resources/Locale/en-US/provocateur/provocateur.ftl Role briefing and objective localization strings
Resources/Locale/en-US/game-ticking/game-presets/preset-provocateur.ftl Preset title and description

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@github-actions
Copy link

This pull request has conflicts, please resolve those before we can evaluate the pull request.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants