Skip to content

Salvage Bounty Rework - #5510

Merged
Rinary1 merged 45 commits into
ss14Starlight:starlight-devfrom
TeddiousbearPA:Salv-Bounty-Rework
Aug 18, 2026
Merged

Salvage Bounty Rework#5510
Rinary1 merged 45 commits into
ss14Starlight:starlight-devfrom
TeddiousbearPA:Salv-Bounty-Rework

Conversation

@TeddiousbearPA

@TeddiousbearPA TeddiousbearPA commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Short description

Reworking the very antiquated salvage bounty system to add tickets as part of the rewards, and add new bounties as well.?
Adds 7 new bounties, linked in PR Workshop

Why we need to add this

Dated system in desperate need of updating
PR Workshop:https://discord.com/channels/1272545509562777621/1530812074358476902

Media (Video/Screenshots)

2026-08-04.00-15-11.mp4

Checks

  • I do not require assistance to complete the PR.
  • Before posting/requesting review of a PR, I have verified that the changes work.
  • I have added screenshots/videos of the changes, or this PR does not change in-game mechanics.
  • I affirm that my changes are licensed under the MIT License and grant permission for use in this repository under its conditions.

Changelog

🆑 Teddiousbear
-add: Ticket rewards to salvage bounties.
-add: 6 New salvage bounties.

TeddiousbearPA and others added 24 commits June 1, 2026 17:55
Added Experimental Plushie to Plush Vendor
New (primarily) formal uniforms for sec including:
Formal Senior Brigmedic
Formal Brigmedic
Formal Warden
Formal Senior Secoff/Dutyoff
Formal Secoff/Dutyoff
Formal Deputy (Secoff)
Deputy's Hat
fixed the names of senior formal security uniform and description of deputy jumpskirt
Adds Spaces Asshole to the jukebox playlist
fixed requests from rinary and bot
Removed armor and zombification resistance entries from jumpsuits.
@github-actions github-actions Bot added S: Untriaged Status: Indicates an item has not been triaged and doesn't have appropriate labels. size/S S: Needs Review Status: Requires additional reviews before being fully accepted. Not to be replaced by S: Approved. Changes: UI Changes: C# Changes: Prototypes labels Aug 4, 2026
@github-actions

github-actions Bot commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

Content + Integration Test Results

Failed Tests

Failed Tests
❌ JobWeightTest
Multiple failures or warnings in test:
  1) Test was dirty-disposed.
     at Robust.UnitTesting.Pool.TestPair`2.OnDirtyDispose() in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.UnitTesting/Pool/TestPair.Recycle.cs:line 44
   at System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start[TStateMachine](TStateMachine& stateMachine)
   at Robust.UnitTesting.Pool.TestPair`2.OnDirtyDispose()
   at Robust.UnitTesting.Pool.TestPair`2.DisposeAsync() in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.UnitTesting/Pool/TestPair.Recycle.cs:line 146
   at System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start[TStateMachine](TStateMachine& stateMachine)
   at Robust.UnitTesting.Pool.TestPair`2.DisposeAsync()
   at Content.IntegrationTests.Fixtures.GameTest.DoTeardown() in /home/runner/work/space-station-14/space-station-14/Content.IntegrationTests/Fixtures/GameTest.cs:line 262
  2) TearDown : System.InvalidOperationException : Collection was modified; enumeration operation may not execute.
  --TearDown
   at Robust.Client.GameStates.ClientGameStateManager.PartialStateReset(GameState state, Boolean resetAllEntities, Boolean deleteClientEntities, Boolean deleteClientChildren) in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.Client/GameStates/ClientGameStateManager.cs:line 1288
   at Robust.Client.GameStates.ClientGameStateManager.ApplyGameState() in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.Client/GameStates/ClientGameStateManager.cs:line 426
   at Robust.Client.GameController.Tick(FrameEventArgs frameEventArgs) in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.Client/GameController/GameController.cs:line 617
   at Robust.UnitTesting.RobustIntegrationTest.IntegrationGameLoop.SingleThreadRunUntilEmpty() in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.UnitTesting/RobustIntegrationTest.cs:line 1250
   at Robust.UnitTesting.RobustIntegrationTest.IntegrationGameLoop.Run() in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.UnitTesting/RobustIntegrationTest.cs:line 1237
   at Robust.UnitTesting.RobustIntegrationTest.ClientIntegrationInstance.ThreadMain() in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.UnitTesting/RobustIntegrationTest.cs:line 1047
--- End of stack trace from previous location ---
   at Robust.UnitTesting.RobustIntegrationTest.IntegrationInstance.WaitIdleImplAsync(Boolean throwOnUnhandled, CancellationToken cancellationToken) in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.UnitTesting/RobustIntegrationTest.cs:line 566
   at Robust.UnitTesting.RobustIntegrationTest.IntegrationInstance.WaitRunTicks(Int32 ticks) in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.UnitTesting/RobustIntegrationTest.cs:line 653
   at Robust.UnitTesting.Pool.TestPair`2.RunTicksSync(Int32 ticks) in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.UnitTesting/Pool/TestPair.Helpers.cs:line 185
   at Robust.UnitTesting.Pool.TestPair`2.RunUntilSynced() in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.UnitTesting/Pool/TestPair.Helpers.cs:line 226
   at Content.IntegrationTests.Fixtures.GameTest.DoTeardown() in /home/runner/work/space-station-14/space-station-14/Content.IntegrationTests/Fixtures/GameTest.cs:line 243
   at Content.IntegrationTests.Fixtures.GameTest.DoTeardown() in /home/runner/work/space-station-14/space-station-14/Content.IntegrationTests/Fixtures/GameTest.cs:line 262
   at NUnit.Framework.Internal.Commands.SetUpTearDownItem.RunTearDown(TestExecutionContext context)

Trace:


1)    at Robust.UnitTesting.Pool.TestPair`2.OnDirtyDispose() in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.UnitTesting/Pool/TestPair.Recycle.cs:line 44
   at System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start[TStateMachine](TStateMachine& stateMachine)
   at Robust.UnitTesting.Pool.TestPair`2.OnDirtyDispose()
   at Robust.UnitTesting.Pool.TestPair`2.DisposeAsync() in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.UnitTesting/Pool/TestPair.Recycle.cs:line 146
   at System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start[TStateMachine](TStateMachine& stateMachine)
   at Robust.UnitTesting.Pool.TestPair`2.DisposeAsync()
   at Content.IntegrationTests.Fixtures.GameTest.DoTeardown() in /home/runner/work/space-station-14/space-station-14/Content.IntegrationTests/Fixtures/GameTest.cs:line 262
2) --TearDown
   at Robust.Client.GameStates.ClientGameStateManager.PartialStateReset(GameState state, Boolean resetAllEntities, Boolean deleteClientEntities, Boolean deleteClientChildren) in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.Client/GameStates/ClientGameStateManager.cs:line 1288
   at Robust.Client.GameStates.ClientGameStateManager.ApplyGameState() in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.Client/GameStates/ClientGameStateManager.cs:line 426
   at Robust.Client.GameController.Tick(FrameEventArgs frameEventArgs) in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.Client/GameController/GameController.cs:line 617
   at Robust.UnitTesting.RobustIntegrationTest.IntegrationGameLoop.SingleThreadRunUntilEmpty() in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.UnitTesting/RobustIntegrationTest.cs:line 1250
   at Robust.UnitTesting.RobustIntegrationTest.IntegrationGameLoop.Run() in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.UnitTesting/RobustIntegrationTest.cs:line 1237
   at Robust.UnitTesting.RobustIntegrationTest.ClientIntegrationInstance.ThreadMain() in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.UnitTesting/RobustIntegrationTest.cs:line 1047
--- End of stack trace from previous location ---
   at Robust.UnitTesting.RobustIntegrationTest.IntegrationInstance.WaitIdleImplAsync(Boolean throwOnUnhandled, CancellationToken cancellationToken) in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.UnitTesting/RobustIntegrationTest.cs:line 566
   at Robust.UnitTesting.RobustIntegrationTest.IntegrationInstance.WaitRunTicks(Int32 ticks) in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.UnitTesting/RobustIntegrationTest.cs:line 653
   at Robust.UnitTesting.Pool.TestPair`2.RunTicksSync(Int32 ticks) in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.UnitTesting/Pool/TestPair.Helpers.cs:line 185
   at Robust.UnitTesting.Pool.TestPair`2.RunUntilSynced() in /home/runner/work/space-station-14/space-station-14/RobustToolbox/Robust.UnitTesting/Pool/TestPair.Helpers.cs:line 226
   at Content.IntegrationTests.Fixtures.GameTest.DoTeardown() in /home/runner/work/space-station-14/space-station-14/Content.IntegrationTests/Fixtures/GameTest.cs:line 243
   at Content.IntegrationTests.Fixtures.GameTest.DoTeardown() in /home/runner/work/space-station-14/space-station-14/Content.IntegrationTests/Fixtures/GameTest.cs:line 262
   at NUnit.Framework.Internal.Commands.SetUpTearDownItem.RunTearDown(TestExecutionContext context)
Tests 📝 Passed ✅ Failed ❌ Duration ⏱️
1694 1674 1 11m 13s

Github Test Reporter by CTRF 💚

🔄 This comment has been updated

@coderabbitai

coderabbitai Bot commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Note

GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer.

Comment thread Content.Server/Salvage/JobBoard/SalvageJobBoardSystem.cs Outdated
Comment thread Content.Server/Salvage/JobBoard/SalvageJobBoardSystem.cs Outdated
Comment thread Content.Server/Salvage/JobBoard/SalvageJobBoardSystem.cs Outdated
Comment thread Content.Server/Salvage/JobBoard/SalvageJobBoardSystem.cs Outdated
Comment thread Content.Server/Salvage/JobBoard/SalvageJobBoardSystem.cs Outdated
Comment thread Resources/Locale/en-US/cargo/bounties.ftl Outdated
Comment thread Resources/Locale/en-US/cargo/cargo-bounty-console.ftl Outdated
Comment thread Resources/Prototypes/_Starlight/Catalog/Bounties/salvage_jobs.yml Outdated
Comment thread Content.Client/Salvage/UI/JobEntry.xaml
Comment thread Content.Client/Salvage/UI/JobEntry.xaml.cs Outdated
@starlightgithub starlightgithub Bot added S: Awaiting Changes Status: Changes are required before another review can happen and removed S: Needs Review Status: Requires additional reviews before being fully accepted. Not to be replaced by S: Approved. labels Aug 16, 2026
@TeddiousbearPA
TeddiousbearPA requested a review from Rinary1 August 16, 2026 17:12
@github-actions github-actions Bot added S: Needs Review Status: Requires additional reviews before being fully accepted. Not to be replaced by S: Approved. and removed S: Awaiting Changes Status: Changes are required before another review can happen labels Aug 16, 2026
@starlightgithub starlightgithub Bot added S: Approved Status: Reviewed and approved by at least one maintainer or dev; a PR may require another approval. and removed S: Needs Review Status: Requires additional reviews before being fully accepted. Not to be replaced by S: Approved. labels Aug 18, 2026
@Rinary1
Rinary1 added this pull request to the merge queue Aug 18, 2026
Merged via the queue into ss14Starlight:starlight-dev with commit f61f7b2 Aug 18, 2026
21 of 26 checks passed
starlightgithub Bot added a commit that referenced this pull request Aug 18, 2026
@TeddiousbearPA
TeddiousbearPA deleted the Salv-Bounty-Rework branch August 18, 2026 22:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Changes: C# Changes: Prototypes Changes: UI S: Approved Status: Reviewed and approved by at least one maintainer or dev; a PR may require another approval. S: Untriaged Status: Indicates an item has not been triaged and doesn't have appropriate labels. size/M

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants