Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adds a mechanical skills system. #20159

Open
wants to merge 19 commits into
base: master
Choose a base branch
from

Conversation

NonQueueingMatt
Copy link
Contributor

@NonQueueingMatt NonQueueingMatt commented Nov 10, 2024

This PR adds a mechanical skill system in line with what is described on the Development Roadmap. It is a character-based skill system that allows for good customization while also generally striving to enhance roleplay. Please look at the skills page on the roadmap to know what exactly I am adding.

Some mechanical inspiration was taken from the Baystation12 implementation. Namely, the skills datum and the HTML UI for the Skills character setup page.

SKILL SYSTEM WRITEUP AND HOW-TO:
Skills are implemented for two reasons: mechanically preventing you from performing actions that would break the rules, and enhancing roleplay. The first one is done via hard-locks: you are simply not able to use the INDRA consoles if you don't have the reactor systems skill. The second one is done in a multitude of ways.

  • A character should be able to show off their lack of knowledge in a field mechanically. As an example, take combat. It is usually quite hard to properly roleplay being bad at it, because you have to intentionally sabotage yourself multiple times. You can't really make your character genuinely try to hit someone, because if you do, you'd actually pretty much always hit them. You also can't simulate your character visibly being bad at melee combat.
  • A character should be able to show off their proficiency in a certain field. If you are an expert in mechanical engineering, you should get some neat bonuses/skills to show off that you're better than others. Whether that's flavour or mechanical depends on the skill itself and on the general, rather abstract concept of game balance. A 1.5x speed modifier to taking a cork off of a bottle is very welcome, for example, but maybe not a 2x modifier to building speed.

Generally, failure chances should be interesting. For something like surgery as an investigator, for example, you should want to properly represent the feeling of dread that having to do surgery for such a character probably represents. It is fine for a task to practically be impossible, what we want to empower is the character actually being able to fail, mechanically, and being able to show it off in game.

To-do:

  • Points for each of the three categories.
  • Species-based point curves.
  • Age-based point curves.
  • Antagonist skill-setting TGUI module.
  • Admin tool to set and view skills. (probably just use the TGUI module above)
  • Skills for the most important things. Piloting, reactors, combat is the initial goal.

@NonQueueingMatt NonQueueingMatt added ⚠ High Risk Reasonable chance of causing many or high-severity bugs. WIP The PR is a work in progress and should not be reviewed yet. Balance PRs that attempt to tweak the balance of mechanics in some way. labels Nov 10, 2024
@github-actions github-actions bot added the Database The PR or issue affects the database. label Nov 10, 2024
@alsoandanswer
Copy link
Contributor

alsoandanswer commented Nov 11, 2024

Just putting here as something to keep note of : I added a "soft" mechanical skill feature in the champagne sabrage feature where bartenders and command have a higher chance of completing it successfully.

For your discretion to remake.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Balance PRs that attempt to tweak the balance of mechanics in some way. Changelog Required Database The PR or issue affects the database. ⚠ High Risk Reasonable chance of causing many or high-severity bugs. WIP The PR is a work in progress and should not be reviewed yet.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants