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

Added Mouse Ops #403

Closed
wants to merge 28 commits into from
Closed
Show file tree
Hide file tree
Changes from 15 commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
dce3f3c
Added Mouse Ops
ps3moira Nov 5, 2023
b4f5816
Added Moldy Cheese Radio + Moved Locale to DeltaV
ps3moira Nov 5, 2023
6997600
Removed Inventory Component
ps3moira Nov 5, 2023
bbe755f
You can now pet Mouse-Ops
ps3moira Nov 6, 2023
aea1c3d
Merge remote-tracking branch 'upstream/master' into mouse-ops
ps3moira Nov 6, 2023
7dcc61e
Apply suggestions from code review
ps3moira Nov 7, 2023
98cf712
Merge remote-tracking branch 'upstream/master' into mouse-ops
ps3moira Nov 7, 2023
93e7a12
Merge remote-tracking branch 'upstream/master' into mouse-ops
ps3moira Nov 8, 2023
647b6a4
Merge remote-tracking branch 'upstream/master' into mouse-ops
ps3moira Nov 9, 2023
8153307
Merge remote-tracking branch 'upstream/master' into mouse-ops
ps3moira Nov 12, 2023
5bb404e
Merge remote-tracking branch 'upstream/master' into mouse-ops
ps3moira Nov 13, 2023
30fb92d
Merge remote-tracking branch 'upstream/master' into mouse-ops
ps3moira Nov 13, 2023
2001a46
Update RobustToolbox
ps3moira Nov 13, 2023
fb6c0f4
Revert "Update RobustToolbox"
ps3moira Nov 13, 2023
e643744
Merge remote-tracking branch 'upstream/master' into mouse-ops
ps3moira Nov 13, 2023
5c4017b
Merge remote-tracking branch 'upstream/master' into mouse-ops
ps3moira Nov 14, 2023
6c60788
Moved Bionic Syrinx Implant to proper category
ps3moira Nov 14, 2023
a6027bd
Merge remote-tracking branch 'upstream/master' into mouse-ops
ps3moira Nov 15, 2023
c36396b
Merge remote-tracking branch 'upstream/master' into mouse-ops
ps3moira Nov 15, 2023
d679952
Removed Unused Catagories
ps3moira Nov 15, 2023
8f4999f
Revert "Merge remote-tracking branch 'upstream/master' into mouse-ops"
ps3moira Nov 15, 2023
5651308
Revert "Revert "Merge remote-tracking branch 'upstream/master' into m…
ps3moira Nov 15, 2023
2ea5ef4
Update uplink-catalog.ftl
ps3moira Nov 16, 2023
e030a22
Merge remote-tracking branch 'upstream/master' into mouse-ops
ps3moira Nov 16, 2023
adfbc7d
Merge branch 'master' into buff-mouse
ps3moira Nov 23, 2023
fbe9b3d
Merge branch 'master' into buff-mouse
ps3moira Nov 25, 2023
ae4fd63
Merge branch 'master' into buff-mouse
ps3moira Nov 28, 2023
b670ccb
Merge branch 'master' into buff-mouse
ps3moira Dec 1, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
ghost-role-information-nukie-mouse-name = Nuclear Operative Mouse
ghost-role-information-nukie-mouse-description = A Nuclear Operative reinforcement for the Syndicate.
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
### Interaction Popup component

## Petting animals

petting-success-nukie-mouse = You pet {THE($target)} on {POSS-ADJ($target)} little blood-red syndicate mouse head.
petting-failure-nukie-mouse = You reach out to pet {THE($target)}, but {SUBJECT($target)} attempts to slice your finger with a mouse-sized e-dagger and only your quick reflexes save you from an almost fatal injury.
23 changes: 23 additions & 0 deletions Resources/Locale/en-US/deltav/store/uplink-catalog.ftl
Original file line number Diff line number Diff line change
@@ -1,2 +1,25 @@
# Weapons

# Explosives

# Ammo

# Utility
ps3moira marked this conversation as resolved.
Show resolved Hide resolved
uplink-reinforcement-radio-nukie-mouse-name = Mouse Operative Reinforcement Teleporter
uplink-reinforcement-radio-nukie-mouse-desc = Calls in a specially trained mouse operative to assist you.

# Implants

ps3moira marked this conversation as resolved.
Show resolved Hide resolved
# Bundles

# Tools

# Job Specific

# Armor

# Misc

# Pointless
uplink-bionic-syrinx-implanter-name = Bionic Syrinx Implanter
uplink-bionic-syrinx-implanter-desc = An implant that enhances a harpy's natural talent for mimicry to let you adjust your voice to whoever you can think of.
ps3moira marked this conversation as resolved.
Show resolved Hide resolved
11 changes: 11 additions & 0 deletions Resources/Prototypes/DeltaV/Catalog/uplink_catalog.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,14 @@
- type: listing
id: Mouse Operative Reinforcement
name: uplink-reinforcement-radio-nukie-mouse-name
description: uplink-reinforcement-radio-nukie-mouse-desc
productEntity: ReinforcementRadioSyndicateNukieMouse
icon: { sprite: DeltaV/Objects/Devices/communication.rsi, state: cheese-radio }
cost:
Telecrystal: 3
categories:
- UplinkUtility

#- type: listing
# id: UplinkCyborgBeaconSyndicate
# name: uplink-borg-beacon-name
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
- type: dataset
id: names_mouse_death_commando
values:
- Operator Blue Cheese
- Operator AMERICAN CHEESE
- Operator Fromage
- Operator Asiago
- Operator Brie
- Operator Camembert
- Operator Cheddar
- Operator Cotija
- Operator Curd
- Operator Chevré
- Operator Halloumi
- Operator Cottage Cheese
- Operator Cream Cheese
- Operator Swiss Cheese
- Operator Wensleydale
- Operator Rocamadour
- Operator Feta
- Operator Mozzarella
- Operator Gorgonzola
- Operator Grilled Cheese
- Operator Gouda
- Operator Gruyere
- Operator Comté Cheese
- Operator Jarlsberg
- Operator Reblochon
- Operator Raclette
- Operator Tomme de Bruyère
- Operator Goat Cheese
- Operator Manchego
- Operator Ewenique
- Operator Monterey Jack
- Operator Muenster
- Operator Parmesan
- Operator Pepper Jack
- Operator Provolone
- Operator String Cheese
- Operator La Vache Qui Rit
- Operator Mascarpone
- Operator Ricotta
- Operator Vacherin
164 changes: 164 additions & 0 deletions Resources/Prototypes/DeltaV/Entities/Mobs/NPCs/nukiemouse.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,164 @@
- type: entity
name: nuclear operative mouse
parent: [ SimpleMobBase, MobCombat ]
id: MobNukieMouse
description: A Nuclear Operative... MOUSE?!
suffix: syndicate
components:
- type: GhostRole
makeSentient: true
allowSpeech: true
allowMovement: true
name: ghost-role-information-nukie-mouse-name
description: ghost-role-information-nukie-mouse-description
- type: GhostTakeoverAvailable
- type: RandomMetadata
nameSegments: [names_mouse_death_commando]
- type: NpcFactionMember
factions:
- Syndicate
- type: Speech
speechVerb: SmallMob
speechSounds: Squeak
- type: PointLight
radius: 1.5
energy: 2.3
offset: 0, -1
color: green
- type: Sprite
drawdepth: SmallMobs
sprite: DeltaV/Mobs/Animals/nukiemouse.rsi
layers:
- map: ["enum.DamageStateVisualLayers.Base"]
state: mouse
- type: Physics
bodyType: KinematicController
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeCircle
radius: 0.2
density: 30 #Bulky by mouse standards...
mask:
- SmallMobMask
layer:
- SmallMobLayer
- type: MobState
- type: Deathgasp
- type: MobStateActions
actions:
Critical:
- ActionCritSuccumb
- ActionCritFakeDeath
- ActionCritLastWords
- type: MobThresholds
thresholds:
0: Alive
40: Critical
60: Dead
- type: MovementSpeedModifier
baseWalkSpeed : 3
baseSprintSpeed : 4.9
- type: Reactive
groups:
Flammable: [Touch]
Extinguish: [Touch]
- type: InventorySlots
- type: UserInterface
interfaces:
- key: enum.StrippingUiKey.Key
type: StrippableBoundUserInterface
- type: DamageStateVisuals
states:
Alive:
Base: mouse
Critical:
Base: dead
Dead:
Base: splat
- type: Food
- type: Hunger
baseDecayRate: 0.1
- type: Extractable
grindableSolutionName: food
- type: SolutionContainerManager
solutions:
food:
reagents:
- ReagentId: Nutriment
Quantity: 10
- ReagentId: Blood
Quantity: 55
- ReagentId: Fat
Quantity: 5
- type: Butcherable
spawned:
- id: FoodMeat
amount: 1
- type: ReplacementAccent
accent: mouse
- type: Tag
tags:
- VimPilot
- Trash
- Mouse
- Meat
- FootstepSound
- Radio
- type: NoSlip
- type: Respirator #It just works?
minSaturation: 5.0
- type: Temperature
heatDamageThreshold: 423
coldDamageThreshold: 0
- type: PressureImmunity
- type: Insulated
- type: Barotrauma
damage:
types:
Blunt: 0.1
- type: Vocal
sounds:
Male: Mouse
Female: Mouse
Unsexed: Mouse
wilhelmProbability: 0.01
- type: CombatMode
- type: MeleeWeapon
soundHit:
path: /Audio/Effects/bite.ogg
angle: 0
animation: WeaponArcBite
damage:
types:
Slash: 5
Piercing: 3
Structural: 1.5
- type: Body
prototype: Rat
requiredLegs: 1 # TODO: More than 1 leg
- type: Bloodstream
bloodMaxVolume: 60
- type: CanEscapeInventory
BaseResistTime: 3
- type: MobPrice
price: 250 # Their suits, while tiny, go for quite a bit on the market
- type: IntrinsicRadioReceiver
- type: IntrinsicRadioTransmitter
channels:
- Syndicate
- type: ActiveRadio
channels:
- Syndicate
# make the player a traitor once its taken
- type: AutoTraitor
giveUplink: false
Copy link
Contributor

Choose a reason for hiding this comment

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

Ghost roles shouldn't be traitors, especially not those purchased. Reinforcements dont to this either, so a mouse especially shouldn't.

Just add them to the syndicate faction.

- type: NpcFactionMember
  factions:
    - Syndicate

Copy link
Contributor Author

Choose a reason for hiding this comment

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

It does for Syndicate Reinforcement Monkey's
image

Copy link
Contributor Author

Choose a reason for hiding this comment

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

So I'd say it's fine for mouse-ops, who can do a lot less than a monkey can do

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Ghost roles shouldn't be traitors, especially not those purchased. Reinforcements dont to this either, so a mouse especially shouldn't.

Just add them to the syndicate faction.

- type: NpcFactionMember
  factions:
    - Syndicate

I also added this already.

giveObjectives: false
- type: InteractionPopup
successChance: 0.6
interactSuccessString: petting-success-nukie-mouse
interactFailureString: petting-failure-nukie-mouse
interactSuccessSpawn: EffectHearts
interactSuccessSound:
path: /Audio/Animals/mouse_squeak.ogg
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
- type: entity
parent: ReinforcementRadioSyndicate
id: ReinforcementRadioSyndicateNukieMouse
name: suspicious moldy cheese
description: Moldy cheese with a little worm sticking out of it and a... blinking antenna? Might attract an odd mouse.
components:
- type: Sprite
sprite: DeltaV/Objects/Devices/communication.rsi
layers:
- state: cheese-radio
- type: GhostRole
name: Nuclear Mouse Operator Reinforcement
description: Someone needs reinforcements. You, a trained mouse, will help them.
rules: Normal syndicate antagonist rules apply. Work with whoever called you in, and don't harm them.
Comment on lines +12 to +14
Copy link
Contributor

Choose a reason for hiding this comment

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

These should be localized.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

How would I do that?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I was able to localize them in the fixed branch #498

- type: GhostRoleMobSpawner
prototype: MobNukieMouse
- type: EmitSoundOnUse
sound: /Audio/Animals/mouse_squeak.ogg
- type: ItemCooldown
- type: UseDelay
delay: 300
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
58 changes: 58 additions & 0 deletions Resources/Textures/DeltaV/Mobs/Animals/nukiemouse.rsi/meta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
"copyright": "Taken from /vg/station https://github.com/vgstation-coders/vgstation13/blob/Bleeding-Edge/icons/mob/animal.dmi Edited variations by @ps3moira",
"size": {
"x": 32,
"y": 32
},
"states": [
{
"name": "icon"
},
{
"name": "mouse",
"directions": 4,
"delays": [
[
0.2,
0.2,
0.2
],
[
0.2,
0.2,
0.2
],
[
0.2,
0.2,
0.2
],
[
0.2,
0.2,
0.2
]
]
},
{
"name": "dead"
},
{
"name": "splat"
},
{
"name": "equipped-HELMET",
"directions": 4
},
{
"name": "inhand-left",
"directions": 4
},
{
"name": "inhand-right",
"directions": 4
}
]
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
"copyright": "Inspired by the cheese wedge sprite from tg station https://github.com/tgstation/tgstation/blob/master/icons/obj/food/food.dmi modified by @ps3moira",
"size": {
"x": 32,
"y": 32
},
"states": [
{
"name": "cheese-radio",
"delays": [[ 1.8, 1.8, 1.8, 1.8, 1.8, 1.8, 1.8 ]]
}
]
}
Loading