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

Upstream Merge 2024-10-13 #260

Closed
Changes from 1 commit
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
c87928e
Replace Shittle With Pathfinder (#1027)
VMSolidus Oct 9, 2024
ac72909
Automatic Changelog Update (#1027)
SimpleStation14 Oct 9, 2024
457e618
Re-Add Crusher Weapons (#1026)
VMSolidus Oct 9, 2024
2e97c44
Automatic Changelog Update (#1026)
SimpleStation14 Oct 9, 2024
b0262f3
Port Gax From Estação Pirata (#1019)
Ichaie Oct 9, 2024
0410b9a
Automatic Changelog Update (#1019)
SimpleStation14 Oct 9, 2024
41f1172
Security Loadouts Expansion 2 (#1025)
VMSolidus Oct 9, 2024
df747c4
Fix Librarian Access (#1023)
VMSolidus Oct 9, 2024
6ab7965
Psionic Potential Trait Fixes (#1022)
VMSolidus Oct 9, 2024
b179f27
Automatic Changelog Update (#1025)
SimpleStation14 Oct 9, 2024
7237d66
Automatic Changelog Update (#1022)
SimpleStation14 Oct 9, 2024
db88b1b
Update Languages.ftl (#1020)
VMSolidus Oct 9, 2024
811b91d
Automatic Changelog Update (#1020)
SimpleStation14 Oct 9, 2024
14d2280
Random Bark Revamp (#1003)
Mnemotechnician Oct 9, 2024
8c5faf3
Language Refactor 3 (#937)
Mnemotechnician Oct 9, 2024
f0636f7
Automatic Changelog Update (#1003)
SimpleStation14 Oct 9, 2024
87cc149
Station Only Glimmer Mites (#976)
VMSolidus Oct 9, 2024
39ddc33
Custom Specie Name (#994)
FoxxoTrystan Oct 9, 2024
da39971
Automatic Changelog Update (#976)
SimpleStation14 Oct 9, 2024
dde6130
Automatic Changelog Update (#994)
SimpleStation14 Oct 9, 2024
fb54f66
Cargo Hardsuit Market (#1024)
VMSolidus Oct 9, 2024
683b8b6
Automatic Changelog Update (#1024)
SimpleStation14 Oct 9, 2024
00d83ef
Resprites Service Uniforms & Adds Rolled Sleeve Variants (#1021)
DangerRevolution Oct 10, 2024
0efe026
Automatic Changelog Update (#1021)
SimpleStation14 Oct 10, 2024
480b273
Head of Security Equipment (#1031)
VMSolidus Oct 11, 2024
c22e80a
Automatic Changelog Update (#1031)
SimpleStation14 Oct 11, 2024
7d07958
Port a New Map: RadStation (#1034)
Ichaie Oct 11, 2024
ad53e7c
Automatic Changelog Update (#1034)
SimpleStation14 Oct 11, 2024
87d4a8a
Feat: Sleeping and Muzzle Block Vocal Emotes (#1037)
Mnemotechnician Oct 11, 2024
6227db4
Automatic Changelog Update (#1037)
SimpleStation14 Oct 11, 2024
d6a2db2
Bluespace And Normality Ores (#1042)
VMSolidus Oct 12, 2024
f5521e4
Automatic Changelog Update (#1042)
SimpleStation14 Oct 12, 2024
aa85a33
Merge remote-tracking branch 'real-ee/master' into feat/floof-upstrea…
Mnemotechnician Oct 13, 2024
676d013
Early merge of Simple-Station/Einstein-Engines#1036
Mnemotechnician Oct 10, 2024
5835445
Ugh.
Mnemotechnician Oct 13, 2024
4eaa4ea
Early merge Simple-Station/Einstein-Engines#1032
Mnemotechnician Oct 13, 2024
6e91632
Fix bluespace recipe?
Mnemotechnician Oct 13, 2024
60dd693
Fix Arrivals Shuttle (#1040)
Fansana Oct 13, 2024
f29a5bf
Automatic Changelog Update (#1040)
SimpleStation14 Oct 13, 2024
124af12
Custom Name Fixes (#1032)
FoxxoTrystan Oct 13, 2024
d84a728
Cherry Pick "Fix Latejoin Antag Preferences Not Being Respected" (#1038)
Remuchi Oct 13, 2024
f1dd679
Add ArachneWeb to Spiderweb. (#1033)
FoxxoTrystan Oct 13, 2024
74fa664
Automatic Changelog Update (#1033)
SimpleStation14 Oct 13, 2024
aa799f5
Feat: Togglable Under-Table Crawling (#1036)
Mnemotechnician Oct 13, 2024
d3e4d14
Automatic Changelog Update (#1036)
SimpleStation14 Oct 13, 2024
fcada74
Improve "Show Clothing" Button Labels (#1030)
DEATHB4DEFEAT Oct 13, 2024
053d42b
Automatic Changelog Update (#1030)
SimpleStation14 Oct 13, 2024
8fec666
Update Credits (#1043)
github-actions[bot] Oct 13, 2024
c377ee5
Make Brains Not Food (#1044)
VMSolidus Oct 13, 2024
705a5f3
Automatic Changelog Update (#1044)
SimpleStation14 Oct 13, 2024
20c1ccc
Transhumanism Physical Traits (#1035)
VMSolidus Oct 13, 2024
782f590
Automatic Changelog Update (#1035)
SimpleStation14 Oct 13, 2024
977fccf
Service Contractor Loadouts (#1041)
VMSolidus Oct 13, 2024
120f73d
Automatic Changelog Update (#1041)
SimpleStation14 Oct 13, 2024
6a815ba
Feat: Port All Delta-V Mail Improvements (#1011)
Mnemotechnician Oct 13, 2024
1bb7f1b
Automatic Changelog Update (#1011)
SimpleStation14 Oct 13, 2024
69a12e2
Merge remote-tracking branch 'real-ee/master' into feat/floof-upstrea…
Mnemotechnician Oct 14, 2024
d2c6612
Apparently secwatch was silently reverted???
Mnemotechnician Oct 14, 2024
d2aaf88
Update hardsuits.yml
Mnemotechnician Oct 20, 2024
a4d6ea3
Update cargo_hardsuits.yml
Mnemotechnician Oct 20, 2024
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
Prev Previous commit
Next Next commit
Random Bark Revamp (#1003)
# Description
This improves the random barks by:
- Fully moving the random barks to localization files, with the ability
to re-use existing types
- Adding many new (english) random bark types
- Making the random bark system add a random punctuation mark at the end
of a random bark
- Adjusting some existing random bark configs

This also reparents MobSecurityDog to MobCorgi and MobArcticFox to
MobFox because for some reason delta-v decided to copy the original mobs
instead of using inheritance??? Either way, laika and siobhan will now
also have random barks, can be carried, etc.

<details><summary><h1>Media</h1></summary>
<p>


![image](https://github.com/user-attachments/assets/2f429d8d-fa3a-4ac1-8f04-0eefa2541de3)

![image](https://github.com/user-attachments/assets/84a2bf32-07a5-4b7b-9afc-d077333ee620)

![image](https://github.com/user-attachments/assets/b4b099c3-4c59-444b-b2f8-f13d11d93f30)

![image](https://github.com/user-attachments/assets/f9d8de0d-06ff-4f9a-8358-e5dd38e9571d)


</p>
</details>

# Changelog
:cl:
- add: Animals now have more unique things to say when not controlled by
a player.

---------

Signed-off-by: Mnemotechnican <69920617+Mnemotechnician@users.noreply.github.com>
Co-authored-by: FoxxoTrystan <45297731+FoxxoTrystan@users.noreply.github.com>
Mnemotechnician and FoxxoTrystan authored Oct 9, 2024
commit 14d228094043b18d304c6fe086f3ca3c99f8f8f5
30 changes: 9 additions & 21 deletions Content.Server/Speech/Components/RandomBarkComponent.cs
Original file line number Diff line number Diff line change
@@ -37,27 +37,15 @@ public sealed partial class RandomBarkComponent : Component
public float BarkMultiplier = 1f;

/// <summary>
/// List of things to be said. Filled with garbage to be modified by an accent, but can be specified in the .yml
/// Bark type, for use in locales. Locale keys follow the format "bark-{type}-{index between 1 and BarkLocaleCount}".
/// </summary>
[DataField]
public IReadOnlyList<string> Barks = new[]
{
"Bark",
"Boof",
"Woofums",
"Rawrl",
"Eeeeeee",
"Barkums",
"Awooooooooooooooooooo awoo awoooo",
"Grrrrrrrrrrrrrrrrrr",
"Rarrwrarrwr",
"Goddamn I love gold fish crackers",
"Bork bork boof boof bork bork boof boof boof bork",
"Bark",
"Boof",
"Woofums",
"Rawrl",
"Eeeeeee",
"Barkums",
};
public string BarkType = "default";

/// <summary>
/// Number of bark locales. If not specified, then it will be figured out by fetching the locale string
/// with the key "bark-{type}-count" and parsing it as an integer.
/// </summary>
[DataField]
public int? BarkLocaleCount = null;
}
60 changes: 53 additions & 7 deletions Content.Server/Speech/Systems/RandomBarkSystem.cs
Original file line number Diff line number Diff line change
@@ -10,20 +10,22 @@ public sealed class RandomBarkSystem : EntitySystem
{
[Dependency] private readonly IRobustRandom _random = default!;
[Dependency] private readonly ChatSystem _chat = default!;
[Dependency] private readonly EntityManager _entity = default!;

private static readonly string[] AddedPunctuation = [".", "...", "!", "..!", "!!"];


public override void Initialize()
{
base.Initialize();

SubscribeLocalEvent<RandomBarkComponent, ComponentInit>(OnInit);
SubscribeLocalEvent<RandomBarkComponent, MapInitEvent>(OnInit);
}


private void OnInit(EntityUid uid, RandomBarkComponent barker, ComponentInit args)
private void OnInit(Entity<RandomBarkComponent> ent, ref MapInitEvent args)
{
barker.BarkAccumulator = _random.NextFloat(barker.MinTime, barker.MaxTime) * barker.BarkMultiplier;
ent.Comp.BarkAccumulator = _random.NextFloat(ent.Comp.MinTime, ent.Comp.MaxTime) * ent.Comp.BarkMultiplier;
ent.Comp.BarkLocaleCount ??= GetBarkLocaleCount(ent);
}

public override void Update(float frameTime)
@@ -38,11 +40,55 @@ public override void Update(float frameTime)
continue;

barker.BarkAccumulator = _random.NextFloat(barker.MinTime, barker.MaxTime) * barker.BarkMultiplier;
if (_entity.TryGetComponent<MindContainerComponent>(uid, out var actComp) &&
actComp.HasMind)
if (TryComp<MindContainerComponent>(uid, out var actComp) && actComp.HasMind
|| GetNextBark((uid, barker)) is not { } bark)
continue;

_chat.TrySendInGameICMessage(uid, _random.Pick(barker.Barks), InGameICChatType.Speak, barker.ChatLog ? ChatTransmitRange.Normal : ChatTransmitRange.HideChat);
_chat.TrySendInGameICMessage(uid, bark, InGameICChatType.Speak, barker.ChatLog ? ChatTransmitRange.Normal : ChatTransmitRange.HideChat);
}
}

/// <summary>
/// Tries to get the next bark for the given entity. Returns null if it fails.
/// </summary>
public string? GetNextBark(Entity<RandomBarkComponent> ent)
{
var count = GetBarkLocaleCount(ent);
if (count <= 0)
return null;

var index = _random.Next(0, count) + 1;
if (!Loc.TryGetString($"bark-{ent.Comp.BarkType}-{index}", out var bark))
{
Log.Error($"Could not find bark with index {index} and type {ent.Comp.BarkType} for entity {ent.Owner}.");
return null;
}

// If the last char of the string is an alphanumeric one, then add a random punctuation mark
if (bark.Length > 0 && char.IsLetterOrDigit(bark[^1]))
bark += _random.Pick(AddedPunctuation);

return bark;
}

private int GetBarkLocaleCount(Entity<RandomBarkComponent> ent)
{
if (ent.Comp.BarkLocaleCount is { } localeCount)
return localeCount;

// All the error logging should cause certain integration tests to fail should someone setup randombark incorrectly
if (!Loc.TryGetString($"bark-{ent.Comp.BarkType}-count", out var localeCountStr))
{
Log.Error($"Entity {ent.Owner} has a bark type {ent.Comp.BarkType} which does not have a respective bark count locale.");
return 0;
}

if (!int.TryParse(localeCountStr, out localeCount) || localeCount < 0)
{
Log.Error($"Entity {ent.Owner} has a bark type {ent.Comp.BarkType} whose respective bark count locale is not a valid number.");
return 0;
}

return localeCount;
}
}
28 changes: 28 additions & 0 deletions Resources/Locale/en-US/random-barks/!default.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Default barks. This file serves as a template for future bark types and as a fallback for mobs who do not have unique barks for one reason or another.

# Recommendations:
# - Try to keep barks simple and reasonably short. 8 words is the usual limit, but most barks should be at msot 3 words long.
# - Each bark should be one, or at most two sentences long.
# - Keep in mind that those will usually not be understood by players.
# - Do not add punctuation at the end of the message, except for question marks, so that the random bark system will add random punctuation.
bark-default-1 = Bark
bark-default-2 = Boof
bark-default-3 = Woofums
bark-default-4 = Rawrl
bark-default-5 = Eeeeeee
bark-default-6 = Barkums
bark-default-7 = Awooooooooooooooooooo awooo awoooo
bark-default-8 = Grrrrrrrrrrrrrrrrrr
bark-default-9 = Rarrwrarrwr
bark-default-10 = Goddamn I love gold fish crackers
bark-default-11 = Bork bork boof boof bork bork boof boof bork
bark-default-12 = Bark
bark-default-13 = Boof
bark-default-14 = Woofums
bark-default-15 = Rawrl
bark-default-16 = Eeeeeee
bark-default-17 = Barkum

# This should always come last so that it's easy to keep track of.
# Bark counts are locale-specific so they are typically defined in FTL files instead of YML, to make localization easier.
bark-default-count = 17
5 changes: 5 additions & 0 deletions Resources/Locale/en-US/random-barks/bee.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
bark-bee-1 = Bzzzz
bark-bee-2 = Bzzt Bzzzt
bark-bee-3 = Bzzzt bzzzzzz
bark-bee-4 = Bzzzzt
bark-bee-count = 4
25 changes: 25 additions & 0 deletions Resources/Locale/en-US/random-barks/cat.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
bark-cat-1 = Meow
bark-cat-2 = Purr purr
bark-cat-3 = Hungry
bark-cat-4 = Fish!
bark-cat-5 = Birds!
bark-cat-6 = Nap time
bark-cat-7 = Scratch scratch scratch
bark-cat-8 = Purr purr purr
bark-cat-9 = That a mouse?
bark-cat-10 = Meow meow
bark-cat-11 = Brrow
bark-cat-12 = Pet me
bark-cat-13 = Pets good
bark-cat-14 = Yawn
bark-cat-15 = Hiss
bark-cat-16 = Where'd the sun go?
bark-cat-17 = Play time
bark-cat-18 = Sleepy
bark-cat-19 = Need to rest
bark-cat-20 = I hear mice
bark-cat-21 = Must catch the mouse
bark-cat-22 = Mothroach tasted good
bark-cat-23 = Purrmeow
bark-cat-24 = Mrrp meow mrrow
bark-cat-count = 24
9 changes: 9 additions & 0 deletions Resources/Locale/en-US/random-barks/chicken.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
bark-chicken-1 = Coooot
bark-chicken-2 = Coot
bark-chicken-3 = Coot Coot Cooot
bark-chicken-4 = Food
bark-chicken-5 = Where is grass?
bark-chicken-6 = Need to eat
bark-chicken-8 = Egg
bark-chicken-9 = Coot coot
bark-chicken-count = 9
11 changes: 11 additions & 0 deletions Resources/Locale/en-US/random-barks/cow.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
bark-cow-1 = Mooooo
bark-cow-2 = Moo
bark-cow-3 = Huff
bark-cow-4 = Moooooooo
bark-cow-5 = Moooo
bark-cow-6 = Floor is food
bark-cow-7 = I'm hungry
bark-cow-8 = How long have I been here?
bark-cow-9 = Moooo mooooooo
bark-cow-10 = Huff... Moooooo
bark-cow-count = 10
12 changes: 12 additions & 0 deletions Resources/Locale/en-US/random-barks/crab.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Contrary to a popular belief, crabs do not actually possess much of an intelligence, if any at all.
bark-crab-1 = Claw!
bark-crab-2 = Snap snap
bark-crab-3 = Clickity clack
bark-crab-4 = Clack clack
bark-crab-5 = Water
bark-crab-6 = Snap
bark-crab-7 = Clack
bark-crab-8 = Click
bark-crab-9 = Clack clack clack
bark-crab-10 = click click clack
bark-crab-count = 10
36 changes: 36 additions & 0 deletions Resources/Locale/en-US/random-barks/dog.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
bark-dog-1 = Bark
bark-dog-2 = Boof
bark-dog-3 = Woofums
bark-dog-4 = Rawrl
bark-dog-5 = Eeeeeee
bark-dog-6 = Barkums
bark-dog-7 = Awooooooooooooooooooo awoo awoooo
bark-dog-8 = Grrrrrrrrrrrrrrrrrr
bark-dog-9 = Rarrwrarrwr
bark-dog-10 = Goddamn I love gold fish crackers
bark-dog-11 = Bork bork boof boof bork bork boof boof boof bork
bark-dog-12 = Bark
bark-dog-13 = Boof
bark-dog-14 = Woofums
bark-dog-15 = Rawrl
bark-dog-16 = Eeeeeee
bark-dog-17 = Barkum
bark-dog-18 = Woof woof woof!
bark-dog-19 = Awoooo! I smell food!
bark-dog-20 = Bark bark bark bark!
bark-dog-21 = Grrr, let’s play!
bark-dog-22 = Wooooo!
bark-dog-23 = Rawr! I’m a fierce creature of god!
bark-dog-24 = I love belly rubs!
bark-dog-25 = Bark! Who's there?
bark-dog-26 = Eeeeeee! So excited!
bark-dog-27 = Woof woof, where's my snack?
bark-dog-28 = Bark bark, chasing my tail again!
bark-dog-29 = Grrr, I see a shiny thing!
bark-dog-30 = Bork bork, can I eat that?
bark-dog-31 = Awoo, what’s that weird smell?
bark-dog-32 = Woofums, I like to bark at stars!
bark-dog-33 = Bark bark, I forgot what I wanted!
bark-dog-34 = Eeeee, squeaky toy, my best friend!
bark-dog-35 = Rawrl, let’s run in circles forever!
bark-dog-count = 35
29 changes: 29 additions & 0 deletions Resources/Locale/en-US/random-barks/fox.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
bark-fox-1 = Yip yip
bark-fox-2 = Yap yap
bark-fox-3 = Food
bark-fox-4 = Hungry
bark-fox-5 = Critter! Must catch
bark-fox-6 = Run
bark-fox-7 = Hide
bark-fox-8 = Sniff sniff
bark-fox-9 = I'm scared
bark-fox-10 = Purr purr
bark-fox-11 = Play?
bark-fox-12 = Sleepy
bark-fox-13 = Yap yap yap
bark-fox-14 = Yawn
bark-fox-15 = Curious
bark-fox-16 = Happy
bark-fox-17 = Food, now!
bark-fox-18 = Lonely
bark-fox-19 = Barruf
bark-fox-20 = Raff ruff
bark-fox-21 = Zoomies
bark-fox-22 = Yip yap yap yip yip
bark-fox-23 = I'm hungry
bark-fox-24 = Feed me
bark-fox-25 = Eeeeeeeeeeeeee
bark-fox-26 = Eeeeeee
bark-fox-27 = Myaaaaah
bark-fox-28 = Yip yip yip
bark-fox-count = 28
25 changes: 25 additions & 0 deletions Resources/Locale/en-US/random-barks/hissing.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Agressive xenos/spiders
bark-hissing-1 = Hsssss
bark-hissing-2 = Hssssssss
bark-hissing-3 = I sssee you
bark-hissing-4 = I will catch you
bark-hissing-6 = I'm hhhungry!
bark-hissing-7 = Ssseek... food...
bark-hissing-8 = Hsss... Get there
bark-hissing-9 = People... food
bark-hissing-10 = Hsssss... hssssss
bark-hissing-11 = Darknesss... safe...
bark-hissing-12 = Need to lure them in...
bark-hissing-13 = Yummy meat...
bark-hissing-14 = Ventsss... home...
bark-hissing-15 = Sssneaking up...
bark-hissing-16 = Hsss... shadows...
bark-hissing-17 = I am lurking...
bark-hissing-18 = Flesh... tasty...
bark-hissing-19 = Sssilent... deadly...
bark-hissing-20 = Hsssss... wait...
bark-hissing-21 = Creep closer...
bark-hissing-22 = Trap set...
bark-hissing-23 = Sssso close now...
bark-hissing-24 = Hsss... prey spotted...
bark-hissing-count = 24
18 changes: 18 additions & 0 deletions Resources/Locale/en-US/random-barks/kobold.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
bark-kobold-1 = Grrr
bark-kobold-2 = Treasure, mine now
bark-kobold-3 = Hungry
bark-kobold-4 = More shinies!
bark-kobold-5 = Must collect stuff
bark-kobold-6 = Sneaky sneaky
bark-kobold-7 = Mine now
bark-kobold-8 = Yip yip
bark-kobold-9 = Scared
bark-kobold-10 = Hide
bark-kobold-11 = Yikes
bark-kobold-12 = Yip yip yip
bark-kobold-13 = Go away
bark-kobold-14 = Look, shiny
bark-kobold-15 = Need help
bark-kobold-16 = I see you
bark-kobold-17 = I don't like you
bark-kobold-count = 17
28 changes: 28 additions & 0 deletions Resources/Locale/en-US/random-barks/mouse.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Mice get a lot because they are a lot more common than e.g. cows or chickens, are understood by certain species and player-controlled mice, etc...
bark-mouse-1 = pi pi pi
bark-mouse-2 = pi pi pi pi
bark-mouse-3 = Cheese
bark-mouse-4 = Food
bark-mouse-5 = I'm hungry
bark-mouse-6 = Need cheese
bark-mouse-7 = Goddamn I love grilled cheese
bark-mouse-8 = Traps everywhere
bark-mouse-9 = Should find food
bark-mouse-10 = Where is the kitchen?
bark-mouse-11 = I'm so hungry
bark-mouse-12 = Squeak
bark-mouse-13 = Cheese now, please
bark-mouse-14 = I want food
bark-mouse-15 = Pi pi pi pi pi
bark-mouse-16 = Where's the cheese?
bark-mouse-17 = Snack time, please
bark-mouse-18 = Hungry! Need snack
bark-mouse-19 = Food? Anyone?
bark-mouse-20 = Cheese is life
bark-mouse-21 = Squeak squeak! More cheese
bark-mouse-22 = I'm still hungry
bark-mouse-23 = Pi? What's that?
bark-mouse-24 = Kitchen smells good
bark-mouse-25 = Cheese is missing
bark-mouse-26 = I'm going to form my own kingdom and overthrow the station command
bark-mouse-count = 26
12 changes: 12 additions & 0 deletions Resources/Locale/en-US/random-barks/penguin.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
bark-penguin-1 = Wark wark
bark-penguin-2 = Fish!
bark-penguin-3 = Cold?
bark-penguin-4 = Waddle waddle
bark-penguin-5 = Gimme fish
bark-penguin-6 = Wark!
bark-penguin-7 = I miss water
bark-penguin-8 = Where's fish?
bark-penguin-9 = Can't fly
bark-penguin-10 = Wank wank wank
bark-penguin-11 = Wank wank wank wank wank wank wank
bark-penguin-count = 11
24 changes: 24 additions & 0 deletions Resources/Locale/en-US/random-barks/possum.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Possum <3
bark-possum-1 = Hiss hiss
bark-possum-2 = Hiss hiss hiss
bark-possum-3 = Food
bark-possum-4 = Hungry
bark-possum-5 = More food
bark-possum-6 = Hiss
bark-possum-7 = Play dead
bark-possum-8 = Scared
bark-possum-9 = Hide
bark-possum-10 = Dark please
bark-possum-11 = Tree home
bark-possum-12 = Hiss hiss hiss hiss
bark-possum-13 = Food now
bark-possum-14 = Sleepy
bark-possum-15 = Hiss hiss hiss
bark-possum-16 = Nighttime good
bark-possum-17 = Fruit please
bark-possum-18 = No light
bark-possum-19 = Hiss hiss hiss hiss hiss
bark-possum-20 = Safe dark
bark-possum-21 = Need to hide
bark-possum-22 = Hiss... Stay away
bark-possum-count = 22
16 changes: 16 additions & 0 deletions Resources/Locale/en-US/random-barks/raccoon.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
bark-raccoon-1 = Chomp chomp
bark-raccoon-2 = Rummage
bark-raccoon-3 = Snack time
bark-raccoon-4 = Where's food
bark-raccoon-5 = I want shiny
bark-raccoon-6 = Oooo... lots of garbage
bark-raccoon-7 = Squeak!
bark-raccoon-8 = Need to eat
bark-raccoon-9 = Hungry now
bark-raccoon-10 = Ooh, shiny
bark-raccoon-11 = Should explore more
bark-raccoon-12 = Need to find food
bark-raccoon-13 = Yummy
bark-raccoon-14 = I’m curious
bark-raccoon-15 = A human called me a possum... I am not a possum
bark-raccoon-count = 15
36 changes: 2 additions & 34 deletions Resources/Prototypes/DeltaV/Entities/Mobs/NPCs/animals.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
- type: entity
name: arctic fox
parent: SimpleMobBase
parent: MobFox
id: MobArcticFox
description: Wears a regal coat of snowy elegance, belying its cold and resourceful nature.
components:
@@ -26,12 +26,6 @@
- type: Inventory
speciesId: arcticfox
templateId: pet
- type: InventorySlots
- type: Strippable
- type: UserInterface
interfaces:
- key: enum.StrippingUiKey.Key
type: StrippableBoundUserInterface
- type: DamageStateVisuals
states:
Alive:
@@ -40,10 +34,6 @@
Base: arcticfox_crit
Dead:
Base: arcticfox_dead
- type: Butcherable
spawned:
- id: FoodMeat
amount: 3
- type: InteractionPopup
successChance: 0.5
interactSuccessString: petting-success-soft-floofy
@@ -56,25 +46,10 @@
coldDamage:
types:
Cold: 0.1
- type: Grammar
attributes:
gender: epicene
- type: Bloodstream
bloodMaxVolume: 100
- type: MobPrice
price: 400
- type: Tag
tags:
- VimPilot
- type: LanguageKnowledge
speaks:
- Fox
understands:
- Fox

- type: entity
name: security dog
parent: SimpleMobBase
parent: MobCorgi # There isn't a base dog mob, surprisingly.
id: MobSecDog
description: Funnily enough, this pig is actually a dog.
components:
@@ -101,7 +76,6 @@
- type: HTN
rootTask:
task: SimpleHostileCompound
- type: Physics
- type: Speech
speechVerb: Canine
speechSounds: Vulpkanin
@@ -141,12 +115,6 @@
- type: Inventory
speciesId: secdog
templateId: secdog
- type: InventorySlots
- type: Strippable
- type: UserInterface
interfaces:
- key: enum.StrippingUiKey.Key
type: StrippableBoundUserInterface
- type: DamageStateVisuals
states:
Alive:
59 changes: 27 additions & 32 deletions Resources/Prototypes/Entities/Mobs/NPCs/animals.yml
Original file line number Diff line number Diff line change
@@ -66,6 +66,9 @@
tags:
- VimPilot
- type: RandomBark
barkType: mouse
minTime: 10 # Mice like to squeak, I think. You can always put your pet mouse to sleep if it gets annoying
maxTime: 160

- type: entity
name: bee
@@ -135,11 +138,7 @@
Quantity: 5
- type: ZombieImmune
- type: RandomBark
barks:
- Bzzzzz
- Bzzz bzzz
- Bzzzzzzzzzzzz
- Bzz
barkType: bee
barkMultiplier: 1.5

- type: entity
@@ -254,6 +253,7 @@
factions:
- Passive
- type: RandomBark
barkType: chicken

- type: entity
parent: MobChicken
@@ -641,6 +641,7 @@
factions:
- Passive
- type: RandomBark
barkType: chicken # Duh
barkMultiplier: 0.7

- type: entity
@@ -821,13 +822,7 @@
guides:
- Chef
- type: RandomBark
barks:
- Mooooooo
- Moo
- Huff
- Mooooooooooo
- Moooooo
- Moooo
barkType: cow
barkMultiplier: 3


@@ -901,11 +896,7 @@
- type: Body
prototype: AnimalHemocyanin
- type: RandomBark
barks:
- click clack
- clack
- clickity clack
- clack clack
barkType: crab

- type: entity
name: goat
@@ -1522,6 +1513,7 @@
description: ghost-role-information-kobold-description
- type: RandomBark
barkMultiplier: 0.65
barkType: kobold

- type: entity
name: guidebook monkey
@@ -1686,6 +1678,7 @@
- type: PreventSpiller
- type: RandomBark
barkMultiplier: 0.3
barkType: mouse
- type: FireVisuals
sprite: Mobs/Effects/onfire.rsi
normalState: Mouse_burning
@@ -2066,8 +2059,7 @@
types:
Heat : 0.2 #per second, scales with temperature & other constants
- type: RandomBark
barks:
- Wank
barkType: penguin
barkMultiplier: 0.6

- type: entity
@@ -2186,13 +2178,9 @@
damageContainer: Biological
damageModifierSet: Scale
- type: RandomBark
barkMultiplier: 1.5
barks:
- Hsssssss
- Hss
- Hsssss
- Hisss
- Hshsss
minTime: 10
maxTime: 50 # It's a sssnake...
barkType: hissing

# Code unique spider prototypes or combine them all into one spider and get a
# random sprite state when you spawn it.
@@ -2322,6 +2310,8 @@
Brute: -0.07
Burn: -0.07
- type: RandomBark
barkType: hissing
barkMultiplied: 0.3

- type: entity
name: tarantula
@@ -2450,7 +2440,8 @@
- Hissing
understands:
- Hissing

- type: RandomBark
barkType: possum

- type: entity
name: possum
@@ -2533,6 +2524,8 @@
- Hissing
understands:
- Hissing
- type: RandomBark
barkType: raccoon

- type: entity
name: fox
@@ -2621,6 +2614,9 @@
- Fox
understands:
- Fox
- type: RandomBark
barkType: fox
barkMultiplier: 0.5 # Talkative <3

- type: entity
name: corgi
@@ -2690,6 +2686,7 @@
tags:
- VimPilot
- type: RandomBark
barkType: dog

- type: entity
name: corrupted corgi
@@ -2851,6 +2848,7 @@
tags:
- VimPilot
- type: RandomBark
barkType: cat

- type: entity
name: calico cat
@@ -3070,10 +3068,6 @@
- type: Tag
tags:
- VimPilot
- type: RandomBark
barkMultiplier: 10
barks:
- Sloth
- type: LanguageKnowledge # WHAT DOES THE SLOTH SAY???????
speaks:
- Hissing
@@ -3286,6 +3280,7 @@
- type: NonSpreaderZombie
- type: RandomBark
barkMultiplier: 0.45
barkType: mouse # duh
- type: FireVisuals
sprite: Mobs/Effects/onfire.rsi
normalState: Mouse_burning
@@ -3460,4 +3455,4 @@
components:
- type: ReplacementAccent
accent: nymph
- type: RandomBark
- type: RandomBark # Using the default barks since they aren't going to talk anyway
2 changes: 2 additions & 0 deletions Resources/Prototypes/Entities/Mobs/NPCs/pets.yml
Original file line number Diff line number Diff line change
@@ -330,6 +330,7 @@
- type: StealTarget
stealGroup: AnimalMcGriff
- type: RandomBark
barkType: dog
barkMultiplier: 1.3

- type: entity
@@ -435,6 +436,7 @@
- type: StealTarget
stealGroup: AnimalWalter
- type: RandomBark
barkType: dog
barkMultiplier: 1.1

- type: entity