From c77993524660563135213e51f0cb3faac8165faf Mon Sep 17 00:00:00 2001 From: MisterMecky Date: Thu, 17 Oct 2024 00:15:50 +0800 Subject: [PATCH 1/4] Ice and Sandstone walls dont spawn girders (#2176) * ice and sandstone walls no girders * tabs * parent instead * 1000 damage walls --------- Co-authored-by: Whatstone --- .../Prototypes/_NF/Entities/Structures/Walls/walls.yml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Resources/Prototypes/_NF/Entities/Structures/Walls/walls.yml b/Resources/Prototypes/_NF/Entities/Structures/Walls/walls.yml index d9106f047e2..de2501b8867 100644 --- a/Resources/Prototypes/_NF/Entities/Structures/Walls/walls.yml +++ b/Resources/Prototypes/_NF/Entities/Structures/Walls/walls.yml @@ -9,6 +9,14 @@ spread: 10 # Narrow spread, need to balance vs. max projectile distance reflects: - ShuttleKinetic # Only reflects PTK (otherwise RIP miners) + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 1000 + behaviors: + - !type:DoActsBehavior + acts: [ "Destruction" ] - type: entity parent: [AsteroidWallNF, WallIce] From 397e64054af12418ed5069722d7c6048a8b0fc52 Mon Sep 17 00:00:00 2001 From: FrontierATC Date: Wed, 16 Oct 2024 16:16:15 +0000 Subject: [PATCH 2/4] Automatic Changelog (#2176) --- Resources/Changelog/Frontier.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Resources/Changelog/Frontier.yml b/Resources/Changelog/Frontier.yml index 5398a275a7b..66afa635dad 100644 --- a/Resources/Changelog/Frontier.yml +++ b/Resources/Changelog/Frontier.yml @@ -4618,3 +4618,9 @@ Entries: message: Adds medical pen recipes to the medical assembler. id: 5410 time: '2024-10-16T10:18:31.0000000+00:00' +- author: MisterMecky + changes: + - type: Tweak + message: Ice and sandstone walls no longer spawn a girder upon their destruction + id: 5411 + time: '2024-10-16T16:15:50.0000000+00:00' From d58d13dc42bbbf488306281d349fea31154c6f86 Mon Sep 17 00:00:00 2001 From: Dvir <39403717+dvir001@users.noreply.github.com> Date: Wed, 16 Oct 2024 21:18:04 +0300 Subject: [PATCH 3/4] Fix small animals gib and slow down the lathe (#2261) * Fix gib and slow make * Update animals.yml --- .../Prototypes/Entities/Mobs/NPCs/animals.yml | 9 +++++++++ .../Recipes/Lathes/rehydrateable.yml | 20 +++++++++---------- 2 files changed, 19 insertions(+), 10 deletions(-) diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml b/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml index 463efc82450..a9cb2d4fc89 100644 --- a/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml +++ b/Resources/Prototypes/Entities/Mobs/NPCs/animals.yml @@ -400,6 +400,12 @@ damage: types: Piercing: 0 + - type: TriggerOnBeingGibbed # Frontier + - type: GibOnTrigger # Frontier + deleteItems: true # Frontier + deleteOrgans: true # Frontier + gib: false # Frontier + useArgumentEntity: true # Frontier - type: entity name: glockroach @@ -522,6 +528,9 @@ spawned: - id: FoodMeatSlime amount: 2 + - id: HideMothroach # Frontier + amount: 1 # Frontier + prob: 0.3 # Frontier - type: Extractable grindableSolutionName: food - type: ReplacementAccent diff --git a/Resources/Prototypes/Recipes/Lathes/rehydrateable.yml b/Resources/Prototypes/Recipes/Lathes/rehydrateable.yml index c38259dd816..a17761682f6 100644 --- a/Resources/Prototypes/Recipes/Lathes/rehydrateable.yml +++ b/Resources/Prototypes/Recipes/Lathes/rehydrateable.yml @@ -3,56 +3,56 @@ - type: latheRecipe id: MonkeyCube result: MonkeyCube - completetime: 30 + completetime: 300 # Frontier 30<300 materials: Biomass: 16 - type: latheRecipe id: KoboldCube result: KoboldCube - completetime: 30 + completetime: 300 # Frontier 30<300 materials: Biomass: 16 - type: latheRecipe id: CowCube result: CowCube - completetime: 30 + completetime: 300 # Frontier 30<300 materials: Biomass: 120 - type: latheRecipe id: GoatCube result: GoatCube - completetime: 30 + completetime: 300 # Frontier 30<300 materials: Biomass: 35 - type: latheRecipe id: MothroachCube result: MothroachCube - completetime: 45 # prevent biblical floods + completetime: 450 # prevent biblical floods, Frontier 45<450 materials: Biomass: 20 # a lot of materials wasted due to complex genetics - type: latheRecipe id: MouseCube result: MouseCube - completetime: 15 + completetime: 150 # Frontier 15<150 materials: Biomass: 12 - type: latheRecipe id: CockroachCube result: CockroachCube - completetime: 15 + completetime: 150 # Frontier 15<150 materials: Biomass: 16 - type: latheRecipe id: SpaceCarpCube result: SpaceCarpCube - completetime: 30 + completetime: 300 # Frontier 30<300 materials: Biomass: 24 Plasma: 600 @@ -60,7 +60,7 @@ - type: latheRecipe id: SpaceTickCube result: SpaceTickCube - completetime: 15 + completetime: 150 # Frontier 15<150 materials: Biomass: 8 Plasma: 300 # less biomass but more plasma @@ -68,7 +68,7 @@ - type: latheRecipe id: AbominationCube result: AbominationCube - completetime: 30 + completetime: 300 # Frontier 30<300 materials: # abominations are slow and essentially worse than even carp Biomass: 28 Plasma: 500 # more biomass but less plasma From 6095d41809498c930207750c1964b5a7f237200f Mon Sep 17 00:00:00 2001 From: Dvir <39403717+dvir001@users.noreply.github.com> Date: Thu, 17 Oct 2024 00:41:17 +0300 Subject: [PATCH 4/4] Big bug fixing part 2 (#2209) * Update build-test-debug.yml * Update PostMapInitTest.cs * Update PostMapInitTest.cs * Update AutoInternalsTests.cs * My pain is real * Exclude shipyard tests from build-test-debug job * Only use Frontier game maps * Update CargoTest.cs * Comment out integration tests again * GameMap init --------- Co-authored-by: Whatstone <166147148+whatston3@users.noreply.github.com> Co-authored-by: Whatstone --- .github/workflows/build-test-debug.yml | 10 +++--- Content.IntegrationTests/Tests/CargoTest.cs | 2 +- .../Tests/Internals/AutoInternalsTests.cs | 5 ++- .../Tests/PostMapInitTest.cs | 31 ++++--------------- .../Tests/Station/StationJobsTest.cs | 10 +++++- .../Tests/_NF/FrontierConstants.cs | 10 ++++++ 6 files changed, 33 insertions(+), 35 deletions(-) create mode 100644 Content.IntegrationTests/Tests/_NF/FrontierConstants.cs diff --git a/.github/workflows/build-test-debug.yml b/.github/workflows/build-test-debug.yml index 4aab5d9595c..57400747fe7 100644 --- a/.github/workflows/build-test-debug.yml +++ b/.github/workflows/build-test-debug.yml @@ -50,11 +50,11 @@ jobs: - name: Run Content.Tests run: dotnet test --no-build --configuration DebugOpt Content.Tests/Content.Tests.csproj -- NUnit.ConsoleOut=0 -# - name: Run Content.IntegrationTests -# shell: pwsh -# run: | -# $env:DOTNET_gcServer=1 -# dotnet test --no-build --configuration DebugOpt Content.IntegrationTests/Content.IntegrationTests.csproj -- NUnit.ConsoleOut=0 NUnit.MapWarningTo=Failed + # - name: Run Content.IntegrationTests + # shell: pwsh + # run: | + # $env:DOTNET_gcServer=1 + # dotnet test --no-build --configuration DebugOpt Content.IntegrationTests/Content.IntegrationTests.csproj --filter FullyQualifiedName!~ShipyardTest -- NUnit.ConsoleOut=0 NUnit.MapWarningTo=Failed ci-success: name: Build & Test Debug needs: diff --git a/Content.IntegrationTests/Tests/CargoTest.cs b/Content.IntegrationTests/Tests/CargoTest.cs index 70ea3b2fbb2..e111b79b96a 100644 --- a/Content.IntegrationTests/Tests/CargoTest.cs +++ b/Content.IntegrationTests/Tests/CargoTest.cs @@ -5,7 +5,7 @@ using Content.Server.Cargo.Systems; using Content.Server.Nutrition.Components; using Content.Server.Nutrition.EntitySystems; -using Content.Shared.Cargo.Components; +using Content.Shared.Cargo.Components; // Frontier using Content.Shared.Cargo.Prototypes; using Content.Shared.IdentityManagement; using Content.Shared.Stacks; diff --git a/Content.IntegrationTests/Tests/Internals/AutoInternalsTests.cs b/Content.IntegrationTests/Tests/Internals/AutoInternalsTests.cs index 4455af19eee..a61cf1a0465 100644 --- a/Content.IntegrationTests/Tests/Internals/AutoInternalsTests.cs +++ b/Content.IntegrationTests/Tests/Internals/AutoInternalsTests.cs @@ -10,7 +10,7 @@ namespace Content.IntegrationTests.Tests.Internals; [TestOf(typeof(InternalsSystem))] public sealed class AutoInternalsTests { - [Test] + [Ignore("Not relevant for Frontier")] // Frontier public async Task TestInternalsAutoActivateInSpaceForStationSpawn() { await using var pair = await PoolManager.GetServerClient(); @@ -39,7 +39,7 @@ await server.WaitAssertion(() => await pair.CleanReturnAsync(); } - [Test] + [Ignore("Not relevant for Frontier")] // Frontier public async Task TestInternalsAutoActivateInSpaceForEntitySpawn() { await using var pair = await PoolManager.GetServerClient(); @@ -73,7 +73,6 @@ await server.WaitAssertion(() => equipment: mask: ClothingMaskBreath suitstorage: OxygenTankFilled - outerClothing: ClothingOuterVestTank # Frontier - type: job id: TestInternalsDummy diff --git a/Content.IntegrationTests/Tests/PostMapInitTest.cs b/Content.IntegrationTests/Tests/PostMapInitTest.cs index f1d42c11e9b..f4825b92252 100644 --- a/Content.IntegrationTests/Tests/PostMapInitTest.cs +++ b/Content.IntegrationTests/Tests/PostMapInitTest.cs @@ -17,9 +17,9 @@ using Robust.Shared.Map.Components; using Robust.Shared.Prototypes; using Content.Shared.Station.Components; -using FastAccessors; using Robust.Shared.Utility; using YamlDotNet.RepresentationModel; +using Content.IntegrationTests.Tests._NF; namespace Content.IntegrationTests.Tests { @@ -38,32 +38,13 @@ public sealed class PostMapInitTest private static readonly string[] Grids = { - "/Maps/centcomm.yml", - "/Maps/Shuttles/cargo.yml", - "/Maps/Shuttles/emergency.yml", - "/Maps/Shuttles/infiltrator.yml", + // Admin + "/Maps/_NF/Shuttles/Admin/fishbowl.yml", + // Bus + "/Maps/_NF/Shuttles/Bus/publicts.yml", }; - private static readonly string[] GameMaps = - { - "Dev", - "TestTeg", - "Fland", - "Meta", - "Packed", - "Omega", - "Bagel", - "CentComm", - "Box", - "Core", - "Marathon", - "MeteorArena", - "Saltern", - "Reach", - "Train", - "Oasis", - "Cog" - }; + private static readonly string[] GameMaps = FrontierConstants.GameMapPrototypes; // Frontier: not inline constants /// /// Asserts that specific files have been saved as grids and not maps. diff --git a/Content.IntegrationTests/Tests/Station/StationJobsTest.cs b/Content.IntegrationTests/Tests/Station/StationJobsTest.cs index d68fdafb769..e57b35c2297 100644 --- a/Content.IntegrationTests/Tests/Station/StationJobsTest.cs +++ b/Content.IntegrationTests/Tests/Station/StationJobsTest.cs @@ -1,5 +1,6 @@ using System.Collections.Generic; using System.Linq; +using Content.IntegrationTests.Tests._NF; using Content.Server.Maps; using Content.Server.Station.Components; using Content.Server.Station.Systems; @@ -227,8 +228,15 @@ await server.WaitAssertion(() => Assert.Multiple(() => { - foreach (var gameMap in prototypeManager.EnumeratePrototypes()) + foreach (var mapProto in FrontierConstants.GameMapPrototypes) // Frontier: EnumeratePrototypes < FrontierConstants.GameMapPrototypes { + // Frontier: get prototype from proto ID + if (!prototypeManager.TryIndex(mapProto, out var gameMap)) + { + Assert.Fail($"Could not find GameMapPrototype with ID {mapProto}! Is FrontierConstants up to date?"); + } + // End Frontier + foreach (var (stationId, station) in gameMap.Stations) { if (!station.StationComponentOverrides.TryGetComponent(name, out var comp)) diff --git a/Content.IntegrationTests/Tests/_NF/FrontierConstants.cs b/Content.IntegrationTests/Tests/_NF/FrontierConstants.cs new file mode 100644 index 00000000000..9f8cf97fd87 --- /dev/null +++ b/Content.IntegrationTests/Tests/_NF/FrontierConstants.cs @@ -0,0 +1,10 @@ +namespace Content.IntegrationTests.Tests._NF; + +public sealed class FrontierConstants +{ + public static readonly string[] GameMapPrototypes = + { + "Frontier", + "NFDev" + }; +} \ No newline at end of file