diff --git a/Resources/Audio/Voice/IPC/attributions.yml b/Resources/Audio/Voice/IPC/attributions.yml new file mode 100644 index 000000000000..742d32e01de8 --- /dev/null +++ b/Resources/Audio/Voice/IPC/attributions.yml @@ -0,0 +1,9 @@ +- files: ["beep_500.ogg", "beep_2000.ogg"] + license: "CC0-1.0" + copyright: "Synthesized in Audacity by BasedUser." + source: "https://github.com/ekrixi-14/ekrixi" + +- files: ["whirr1.ogg", "whirr2.ogg", "whirr3.ogg"] + license: "CC0-1.0" + copyright: "Taken from source, spectrally modified and clipped" + source: "https://freesound.org/people/sad3d/sounds/500168/" \ No newline at end of file diff --git a/Resources/Audio/Voice/IPC/beep_2000.ogg b/Resources/Audio/Voice/IPC/beep_2000.ogg new file mode 100644 index 000000000000..1caa98ff9a9a Binary files /dev/null and b/Resources/Audio/Voice/IPC/beep_2000.ogg differ diff --git a/Resources/Audio/Voice/IPC/beep_500.ogg b/Resources/Audio/Voice/IPC/beep_500.ogg new file mode 100644 index 000000000000..5435eefb4726 Binary files /dev/null and b/Resources/Audio/Voice/IPC/beep_500.ogg differ diff --git a/Resources/Audio/Voice/IPC/whirr1.ogg b/Resources/Audio/Voice/IPC/whirr1.ogg new file mode 100644 index 000000000000..2679d794f067 Binary files /dev/null and b/Resources/Audio/Voice/IPC/whirr1.ogg differ diff --git a/Resources/Audio/Voice/IPC/whirr2.ogg b/Resources/Audio/Voice/IPC/whirr2.ogg new file mode 100644 index 000000000000..6f74bebed845 Binary files /dev/null and b/Resources/Audio/Voice/IPC/whirr2.ogg differ diff --git a/Resources/Audio/Voice/IPC/whirr3.ogg b/Resources/Audio/Voice/IPC/whirr3.ogg new file mode 100644 index 000000000000..45ececee626f Binary files /dev/null and b/Resources/Audio/Voice/IPC/whirr3.ogg differ diff --git a/Resources/Audio/Voice/IPC/wilhelm.ogg b/Resources/Audio/Voice/IPC/wilhelm.ogg new file mode 100644 index 000000000000..b8ad9d97d4f3 Binary files /dev/null and b/Resources/Audio/Voice/IPC/wilhelm.ogg differ diff --git a/Resources/Prototypes/Entities/Mobs/Customization/Markings/ipc.yml b/Resources/Prototypes/Entities/Mobs/Customization/Markings/ipc.yml index 15acdf0be411..1e7d0d552dd5 100644 --- a/Resources/Prototypes/Entities/Mobs/Customization/Markings/ipc.yml +++ b/Resources/Prototypes/Entities/Mobs/Customization/Markings/ipc.yml @@ -430,6 +430,4 @@ speciesRestriction: [IPC] sprites: - sprite: Mobs/Customization/ipc.rsi - state: antennae - -#endregion + state: antennae \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Mobs/Species/ipc.yml b/Resources/Prototypes/Entities/Mobs/Species/ipc.yml index 0b4cda14fabe..9bac0b9fd02d 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/ipc.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/ipc.yml @@ -1,10 +1,60 @@ - type: entity save: false name: Urist McIPC - parent: BaseMobSpeciesOrganic + parent: # we technically require multiple parents due to reimplementing BaseMobSpeciesOrganic but without the organics + - MobBloodstream + - MobRespirator + - MobAtmosStandard + - MobFlammable + - BaseMobSpecies id: BaseMobIPC abstract: true components: + # beginregion Organic + - type: Flashable + - type: PassiveDamage # Slight passive regen. Assuming one damage type, comes out to about 4 damage a minute. + allowedStates: + - Alive + damageCap: 20 + damage: + types: + Heat: -0.07 + groups: + Brute: -0.07 + - type: StatusEffects + allowed: + - Stun + - KnockedDown + - SlowedDown + - Stutter + - SeeingRainbows + - Electrocution + - ForcedSleep + - TemporaryBlindness + - Drunk + - SlurredSpeech + - RatvarianLanguage + - PressureImmunity + - Muted + - Pacified + - StaminaModifier + - type: NightVision + - type: ThermalRegulator + metabolismHeat: 0 + radiatedHeat: 100 + implicitHeatRegulation: 500 + sweatHeatRegulation: 2000 + shiveringHeatRegulation: 2000 + normalBodyTemperature: 313.15 + thermalRegulationTemperatureThreshold: 25 + - type: FireVisuals + alternateState: Standing + - type: DamageVisuals + damageOverlayGroups: + Brute: + sprite: Mobs/Effects/brute_damage.rsi + color: "#a76b1c" + # endregion Organic # The important nessessities - type: MovementSpeedModifier - type: Body @@ -16,7 +66,7 @@ damageContainer: Biological damageModifierSet: Metallic - type: Icon - sprite: Mobs/Species/IPCs/parts.rsi + sprite: Mobs/Species/IPC/parts.rsi state: full # Damage and speed - type: Bloodstream @@ -41,17 +91,22 @@ damage: types: Heat: 0.25 # no air to cool + Asphyxiation: -1 # TODO FIX DEATHGASPS damageRecovery: types: Heat: -0.25 + Asphyxiation: -1 - type: Repairable fuelcost: 5 # cause most of the fuel is used how long its turned on for doAfterDelay: 7 damage: types: - Blunt: -75 - Cold: -15 # you're warming them up... + Blunt: -25 # you can't heal group damage. it doesn't work. wh y. + Slash: -25 + Piercing: -25 + Cold: -60 # you're warming them up... Heat: 30 # another 2 minutes of downtime due to slight overheating + Asphyxiation: -200 # TODO FIX DEATHGASPS - type: Barotrauma damage: types: @@ -65,14 +120,15 @@ speechSounds: IPC - type: Vocal sounds: - Male: MaleIPC - Female: FemaleIPC + Male: UnisexIPC + Female: UnisexIPC Unsexed: UnisexIPC -# wilhelm: -# path: /Audio/_FTL/Voice/IPC/ + wilhelm: + path: /Audio/Voice/IPC/wilhelm.ogg wilhelmProbability: 0.001 - type: Inventory templateId: ipc + - type: ZombieImmune - type: entity name: Urist McIPC diff --git a/Resources/Prototypes/SoundCollections/ipc.yml b/Resources/Prototypes/SoundCollections/ipc.yml new file mode 100644 index 000000000000..c71993ea52c3 --- /dev/null +++ b/Resources/Prototypes/SoundCollections/ipc.yml @@ -0,0 +1,16 @@ +- type: soundCollection + id: IPCWhirrs + files: + - /Audio/Voice/IPC/whirr1.ogg + - /Audio/Voice/IPC/whirr2.ogg + - /Audio/Voice/IPC/whirr3.ogg + +- type: soundCollection + id: IPCBeeps + files: + - /Audio/Voice/IPC/beep_2000.ogg + +- type: soundCollection + id: IPCBoops + files: + - /Audio/Voice/IPC/beep_500.ogg diff --git a/Resources/Prototypes/Species/ipc.yml b/Resources/Prototypes/Species/ipc.yml index 19ef28a058d6..2df809fc50a6 100644 --- a/Resources/Prototypes/Species/ipc.yml +++ b/Resources/Prototypes/Species/ipc.yml @@ -13,8 +13,6 @@ lastNames: names_ai sexes: - Unsexed - - Male - - Female - type: speciesBaseSprites id: MobIPCSprites diff --git a/Resources/Prototypes/Voice/speech_emote_sounds.yml b/Resources/Prototypes/Voice/speech_emote_sounds.yml index 7736aa0ef5f3..eb7585ddcebe 100644 --- a/Resources/Prototypes/Voice/speech_emote_sounds.yml +++ b/Resources/Prototypes/Voice/speech_emote_sounds.yml @@ -293,54 +293,8 @@ variation: 0.125 Beep: collection: IPCBeeps - Whirr: - collection: IPCWhirrs - Honk: - collection: BikeHorn - params: - variation: 0.125 - -- type: emoteSounds - id: MaleIPC - sounds: - Scream: - path: /Audio/Effects/beep1.ogg - params: - variation: 0.125 - Laugh: - path: /Audio/Effects/sparks1.ogg - params: - variation: 0.125 - Ping: - path: /Audio/Effects/beep1.ogg - params: - variation: 0.125 - Beep: - path: /Audio/_FTL/Voice/IPC/beep_500.ogg - Whirr: - collection: IPCWhirrs - Honk: - collection: BikeHorn - params: - variation: 0.125 - -- type: emoteSounds - id: FemaleIPC - sounds: - Scream: - path: /Audio/Effects/beep1.ogg - params: - variation: 0.125 - Laugh: - path: /Audio/Effects/sparks1.ogg - params: - variation: 0.125 - Ping: - path: /Audio/Effects/beep1.ogg - params: - variation: 0.125 - Beep: - path: /Audio/_FTL/Voice/IPC/beep_2000.ogg + Boop: + collection: IPCBoops Whirr: collection: IPCWhirrs Honk: diff --git a/Resources/Prototypes/Voice/speech_emotes.yml b/Resources/Prototypes/Voice/speech_emotes.yml index 3fcfa7a04f5b..da88eea390d6 100644 --- a/Resources/Prototypes/Voice/speech_emotes.yml +++ b/Resources/Prototypes/Voice/speech_emotes.yml @@ -263,6 +263,16 @@ - beeps - beeps. - beeps! + +- type: emote + id: Boop + category: Vocal + chatMessages: [boops] + chatTriggers: + - boop + - boops + - boops. + - boops! - type: emote id: Ping