From c360a97e3b77e52baf6787e37bd2d3784cd6a361 Mon Sep 17 00:00:00 2001 From: Velken <8467292+Velken@users.noreply.github.com> Date: Thu, 30 Jan 2025 08:34:32 -0300 Subject: [PATCH 1/6] Juice that makes you go boom (#34730) * Juice that makes you go boom * moved explosive juice to fun yml - fixed ExplosionReactionEffect.cs not having TileBreakScale parameter - made Drazil plushie major contraband (they are evil!!!!!) * removed JASON!!!! JASOOON!!! JASON!!! * don't do commits at 1am * Update fun.yml fix ident * no more bullying the server (only 1 explosion) --- .../Effects/ExplosionReactionEffect.cs | 15 +++++++++------ Resources/Prototypes/Reagents/fun.yml | 18 ++++++++++++++++++ 2 files changed, 27 insertions(+), 6 deletions(-) diff --git a/Content.Server/EntityEffects/Effects/ExplosionReactionEffect.cs b/Content.Server/EntityEffects/Effects/ExplosionReactionEffect.cs index 689757d044..24c58898c6 100644 --- a/Content.Server/EntityEffects/Effects/ExplosionReactionEffect.cs +++ b/Content.Server/EntityEffects/Effects/ExplosionReactionEffect.cs @@ -15,7 +15,6 @@ public sealed partial class ExplosionReactionEffect : EntityEffect /// The type of explosion. Determines damage types and tile break chance scaling. /// [DataField(required: true, customTypeSerializer: typeof(PrototypeIdSerializer))] - [JsonIgnore] public string ExplosionType = default!; /// @@ -23,14 +22,12 @@ public sealed partial class ExplosionReactionEffect : EntityEffect /// chance. /// [DataField] - [JsonIgnore] public float MaxIntensity = 5; /// /// How quickly intensity drops off as you move away from the epicenter /// [DataField] - [JsonIgnore] public float IntensitySlope = 1; /// @@ -41,15 +38,20 @@ public sealed partial class ExplosionReactionEffect : EntityEffect /// A slope of 1 and MaxTotalIntensity of 100 corresponds to a radius of around 4.5 tiles. /// [DataField] - [JsonIgnore] public float MaxTotalIntensity = 100; /// /// The intensity of the explosion per unit reaction. /// [DataField] - [JsonIgnore] public float IntensityPerUnit = 1; + + /// + /// Factor used to scale the explosion intensity when calculating tile break chances. Allows for stronger + /// explosives that don't space tiles, without having to create a new explosion-type prototype. + /// + [DataField] + public float TileBreakScale = 1f; public override bool ShouldLog => true; @@ -72,6 +74,7 @@ public sealed partial class ExplosionReactionEffect : EntityEffect ExplosionType, intensity, IntensitySlope, - MaxIntensity); + MaxIntensity, + TileBreakScale); } } diff --git a/Resources/Prototypes/Reagents/fun.yml b/Resources/Prototypes/Reagents/fun.yml index 00d31cbd10..2215b6f33d 100644 --- a/Resources/Prototypes/Reagents/fun.yml +++ b/Resources/Prototypes/Reagents/fun.yml @@ -381,3 +381,21 @@ conditions: - !type:ReagentThreshold min: 50 + +- type: reaction + id: WehHewExplosion + impact: High + priority: 20 + reactants: + JuiceThatMakesYouWeh: + amount: 1 + JuiceThatMakesYouHew: + amount: 1 + effects: + - !type:ExplosionReactionEffect + explosionType: Radioactive + maxIntensity: 200 + intensityPerUnit: 2 + intensitySlope: 1 + maxTotalIntensity: 250 + tileBreakScale: 0.00001 From 21ed0da697b6be7297223fa1210f8deae36caa0e Mon Sep 17 00:00:00 2001 From: PJBot Date: Thu, 30 Jan 2025 11:35:39 +0000 Subject: [PATCH 2/6] Automatic changelog update --- Resources/Changelog/Changelog.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 47f486092c..c2b1988cf5 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: lzk228 - changes: - - message: Command intercom now reinforced the same way as the security one. - type: Tweak - id: 7375 - time: '2024-09-14T20:40:38.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/32169 - author: de0rix changes: - message: Animals in critical state now all have proper sprites. @@ -3901,3 +3894,10 @@ id: 7874 time: '2025-01-30T04:45:56.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/34721 +- author: Velken + changes: + - message: Mixing opposite types of lizard juices now has explosive consequences. + type: Add + id: 7875 + time: '2025-01-30T11:34:32.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/34730 From cccdd8875e889fccce763a26aa3ffd52f9598704 Mon Sep 17 00:00:00 2001 From: SpaceRox1244 <138547931+SpaceRox1244@users.noreply.github.com> Date: Thu, 30 Jan 2025 07:06:41 -0500 Subject: [PATCH 3/6] Adjust inventory size of ginormous scrap (#33454) Adjusts the size of ginormous scrap to fit in bags of holding --- .../Entities/Objects/Materials/scrap.yml | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/Resources/Prototypes/Entities/Objects/Materials/scrap.yml b/Resources/Prototypes/Entities/Objects/Materials/scrap.yml index 734111af6d..c4ec20465e 100644 --- a/Resources/Prototypes/Entities/Objects/Materials/scrap.yml +++ b/Resources/Prototypes/Entities/Objects/Materials/scrap.yml @@ -77,7 +77,9 @@ - state: metal-1 map: [ "base" ] - type: Item - size: Ginormous + size: Large + shape: + - 0,0,4,4 # 5x5 heldPrefix: metal - type: MultiHandedItem - type: RandomSprite @@ -135,7 +137,9 @@ junk-airlock-1: "" junk-airlock-2: "" - type: Item - size: Ginormous + size: Large + shape: + - 0,0,4,4 # 5x5 heldPrefix: "airlock" - type: MultiHandedItem - type: PhysicalComposition @@ -273,7 +277,9 @@ layers: - state: junk-firelock-1 - type: Item - size: Ginormous + size: Large + shape: + - 0,0,4,4 # 5x5 heldPrefix: firelock-1 - type: MultiHandedItem - type: PhysicalComposition @@ -290,7 +296,9 @@ layers: - state: junk-firelock-2 - type: Item - size: Ginormous + size: Large + shape: + - 0,0,4,4 # 5x5 heldPrefix: firelock-2 - type: MultiHandedItem - type: PhysicalComposition From cd46a39358458dc5050bd78d005661b558b69cc3 Mon Sep 17 00:00:00 2001 From: PJBot Date: Thu, 30 Jan 2025 12:07:48 +0000 Subject: [PATCH 4/6] Automatic changelog update --- Resources/Changelog/Changelog.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index c2b1988cf5..b789909673 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -1,11 +1,4 @@ Entries: -- author: de0rix - changes: - - message: Animals in critical state now all have proper sprites. - type: Fix - id: 7376 - time: '2024-09-15T01:53:58.0000000+00:00' - url: https://github.com/space-wizards/space-station-14/pull/32175 - author: notafet changes: - message: Pressure and volume pumps now require power to operate. @@ -3901,3 +3894,10 @@ id: 7875 time: '2025-01-30T11:34:32.0000000+00:00' url: https://github.com/space-wizards/space-station-14/pull/34730 +- author: SpaceRox1244 + changes: + - message: Massive scrap can now fit in bags of holding. + type: Tweak + id: 7876 + time: '2025-01-30T12:06:41.0000000+00:00' + url: https://github.com/space-wizards/space-station-14/pull/33454 From bc1d6420afe4bbea5ab8dbb307daa2bed2356d58 Mon Sep 17 00:00:00 2001 From: beck-thompson <107373427+beck-thompson@users.noreply.github.com> Date: Thu, 30 Jan 2025 04:09:31 -0800 Subject: [PATCH 5/6] After getting banned, you now have to re-read the rules! (#33270) * first commit * opps * Reset cooldown instead * Added ccvar * Not replicated! --- Content.Server/Administration/Managers/BanManager.cs | 2 ++ Content.Server/Database/ServerDbBase.cs | 4 ++-- Content.Server/Database/ServerDbManager.cs | 4 ++-- Content.Server/Info/RulesManager.cs | 2 +- Content.Shared/CCVar/CCVars.Admin.cs | 6 ++++++ 5 files changed, 13 insertions(+), 5 deletions(-) diff --git a/Content.Server/Administration/Managers/BanManager.cs b/Content.Server/Administration/Managers/BanManager.cs index c65059f55d..2d76c434e9 100644 --- a/Content.Server/Administration/Managers/BanManager.cs +++ b/Content.Server/Administration/Managers/BanManager.cs @@ -165,6 +165,8 @@ public sealed partial class BanManager : IBanManager, IPostInjectInit null); await _db.AddServerBanAsync(banDef); + if (_cfg.GetCVar(CCVars.ServerBanResetLastReadRules) && target != null) + await _db.SetLastReadRules(target.Value, null); // Reset their last read rules. They probably need a refresher! var adminName = banningAdmin == null ? Loc.GetString("system-user") : (await _db.GetPlayerRecordByUserId(banningAdmin.Value))?.LastSeenUserName ?? Loc.GetString("system-user"); diff --git a/Content.Server/Database/ServerDbBase.cs b/Content.Server/Database/ServerDbBase.cs index b75870ac0e..ccbaf276cd 100644 --- a/Content.Server/Database/ServerDbBase.cs +++ b/Content.Server/Database/ServerDbBase.cs @@ -1112,7 +1112,7 @@ INSERT INTO player_round (players_id, rounds_id) VALUES ({players[player]}, {id} .SingleOrDefaultAsync()); } - public async Task SetLastReadRules(NetUserId player, DateTimeOffset date) + public async Task SetLastReadRules(NetUserId player, DateTimeOffset? date) { await using var db = await GetDb(); @@ -1122,7 +1122,7 @@ INSERT INTO player_round (players_id, rounds_id) VALUES ({players[player]}, {id} return; } - dbPlayer.LastReadRules = date.UtcDateTime; + dbPlayer.LastReadRules = date?.UtcDateTime; await db.DbContext.SaveChangesAsync(); } diff --git a/Content.Server/Database/ServerDbManager.cs b/Content.Server/Database/ServerDbManager.cs index 5ddb3a590c..e3cfb66c7f 100644 --- a/Content.Server/Database/ServerDbManager.cs +++ b/Content.Server/Database/ServerDbManager.cs @@ -282,7 +282,7 @@ namespace Content.Server.Database #region Rules Task GetLastReadRules(NetUserId player); - Task SetLastReadRules(NetUserId player, DateTimeOffset time); + Task SetLastReadRules(NetUserId player, DateTimeOffset? time); #endregion @@ -830,7 +830,7 @@ namespace Content.Server.Database return RunDbCommand(() => _db.GetLastReadRules(player)); } - public Task SetLastReadRules(NetUserId player, DateTimeOffset time) + public Task SetLastReadRules(NetUserId player, DateTimeOffset? time) { DbWriteOpsMetric.Inc(); return RunDbCommand(() => _db.SetLastReadRules(player, time)); diff --git a/Content.Server/Info/RulesManager.cs b/Content.Server/Info/RulesManager.cs index f4d9e57bd4..224d7f7d9a 100644 --- a/Content.Server/Info/RulesManager.cs +++ b/Content.Server/Info/RulesManager.cs @@ -34,7 +34,7 @@ public sealed class RulesManager { PopupTime = _cfg.GetCVar(CCVars.RulesWaitTime), CoreRules = _cfg.GetCVar(CCVars.RulesFile), - ShouldShowRules = !isLocalhost && !hasCooldown + ShouldShowRules = !isLocalhost && !hasCooldown, }; _netManager.ServerSendMessage(showRulesMessage, e.Channel); } diff --git a/Content.Shared/CCVar/CCVars.Admin.cs b/Content.Shared/CCVar/CCVars.Admin.cs index bbce533ed1..f05eb3376e 100644 --- a/Content.Shared/CCVar/CCVars.Admin.cs +++ b/Content.Shared/CCVar/CCVars.Admin.cs @@ -89,6 +89,12 @@ public sealed partial class CCVars public static readonly CVarDef ServerBanErasePlayer = CVarDef.Create("admin.server_ban_erase_player", false, CVar.ARCHIVE | CVar.SERVER | CVar.REPLICATED); + /// + /// If true, will reset the last time the player has read the rules. This will mean on their next login they will be shown the rules again. + /// + public static readonly CVarDef ServerBanResetLastReadRules = + CVarDef.Create("admin.server_ban_reset_last_read_rules", true, CVar.ARCHIVE | CVar.SERVER); + /// /// Minimum players sharing a connection required to create an alert. -1 to disable the alert. /// From dbbfab14dc2684f0af5391a49c415dddd1c77d2c Mon Sep 17 00:00:00 2001 From: c4llv07e Date: Thu, 30 Jan 2025 15:24:55 +0300 Subject: [PATCH 6/6] More robust Particle Accelerator menu (retry) (#34037) Particle Acceleratir fixed Co-authored-by: VideoKompany <135313844+VlaDOS1408@users.noreply.github.com> --- .../UI/ParticleAcceleratorControlMenu.xaml | 205 ++++++++++++++---- .../ui/particle-accelerator-control-menu.ftl | 3 +- 2 files changed, 159 insertions(+), 49 deletions(-) diff --git a/Content.Client/ParticleAccelerator/UI/ParticleAcceleratorControlMenu.xaml b/Content.Client/ParticleAccelerator/UI/ParticleAcceleratorControlMenu.xaml index 63f1583706..7cef7d58b6 100644 --- a/Content.Client/ParticleAccelerator/UI/ParticleAcceleratorControlMenu.xaml +++ b/Content.Client/ParticleAccelerator/UI/ParticleAcceleratorControlMenu.xaml @@ -1,50 +1,129 @@ - - - - - - + xmlns:gfx="clr-namespace:Robust.Client.Graphics;assembly=Robust.Client" + xmlns:controls="clr-namespace:Content.Client.UserInterface.Controls" + xmlns:ui="clr-namespace:Content.Client.ParticleAccelerator.UI" + Title="{Loc 'particle-accelerator-control-menu-device-version-label'}" + MinSize="320 120"> + + + + + + + + + + + + + + + + + + + + + + + + + + +