Merge branch 'space-wizards:master' into don

This commit is contained in:
TytosB
2025-03-10 17:41:46 -05:00
committed by GitHub
58 changed files with 12924 additions and 9790 deletions

View File

@@ -2,24 +2,26 @@
xmlns="https://spacestation14.io"
xmlns:cc="clr-namespace:Content.Client.Administration.UI.CustomControls">
<PanelContainer StyleClasses="BackgroundDark">
<SplitContainer Orientation="Horizontal" VerticalExpand="True">
<cc:PlayerListControl Access="Public" Name="ChannelSelector" HorizontalExpand="True" SizeFlagsStretchRatio="1" />
<BoxContainer Orientation="Vertical" HorizontalExpand="True" SizeFlagsStretchRatio="2">
<BoxContainer Access="Public" Name="BwoinkArea" VerticalExpand="True" />
<BoxContainer Orientation="Horizontal" HorizontalExpand="True">
<CheckBox Name="AdminOnly" Access="Public" Text="{Loc 'admin-ahelp-admin-only'}" ToolTip="{Loc 'admin-ahelp-admin-only-tooltip'}" />
<Control HorizontalExpand="True" MinWidth="5" />
<CheckBox Name="PlaySound" Access="Public" Text="{Loc 'admin-bwoink-play-sound'}" Pressed="True" />
<Control HorizontalExpand="True" MinWidth="5" />
<Button Visible="True" Name="PopOut" Access="Public" Text="{Loc 'admin-logs-pop-out'}" StyleClasses="OpenBoth" HorizontalAlignment="Left" />
<Control HorizontalExpand="True" />
<Button Visible="False" Name="Bans" Text="{Loc 'admin-player-actions-bans'}" StyleClasses="OpenRight" />
<Button Visible="False" Name="Notes" Text="{Loc 'admin-player-actions-notes'}" StyleClasses="OpenBoth" />
<Button Visible="False" Name="Kick" Text="{Loc 'admin-player-actions-kick'}" StyleClasses="OpenBoth" />
<Button Visible="False" Name="Ban" Text="{Loc 'admin-player-actions-ban'}" StyleClasses="OpenBoth" />
<Button Visible="False" Name="Respawn" Text="{Loc 'admin-player-actions-respawn'}" StyleClasses="OpenBoth" />
<Button Visible="False" Name="Follow" Text="{Loc 'admin-player-actions-follow'}" StyleClasses="OpenLeft" />
<SplitContainer Orientation="Vertical">
<SplitContainer Orientation="Horizontal" VerticalExpand="True">
<cc:PlayerListControl Access="Public" Name="ChannelSelector" HorizontalExpand="True" SizeFlagsStretchRatio="2" />
<BoxContainer Orientation="Vertical" HorizontalExpand="True" SizeFlagsStretchRatio="2">
<BoxContainer Access="Public" Name="BwoinkArea" VerticalExpand="True" />
</BoxContainer>
</SplitContainer>
<BoxContainer Orientation="Horizontal" HorizontalExpand="True">
<CheckBox Name="AdminOnly" Access="Public" Text="{Loc 'admin-ahelp-admin-only'}" ToolTip="{Loc 'admin-ahelp-admin-only-tooltip'}" />
<Control HorizontalExpand="True" MinWidth="5" />
<CheckBox Name="PlaySound" Access="Public" Text="{Loc 'admin-bwoink-play-sound'}" Pressed="True" />
<Control HorizontalExpand="True" MinWidth="5" />
<Button Visible="True" Name="PopOut" Access="Public" Text="{Loc 'admin-logs-pop-out'}" StyleClasses="OpenBoth" HorizontalAlignment="Left" />
<Control HorizontalExpand="True" />
<Button Visible="False" Name="Bans" Text="{Loc 'admin-player-actions-bans'}" StyleClasses="OpenRight" />
<Button Visible="False" Name="Notes" Text="{Loc 'admin-player-actions-notes'}" StyleClasses="OpenBoth" />
<Button Visible="False" Name="Kick" Text="{Loc 'admin-player-actions-kick'}" StyleClasses="OpenBoth" />
<Button Visible="False" Name="Ban" Text="{Loc 'admin-player-actions-ban'}" StyleClasses="OpenBoth" />
<Button Visible="False" Name="Respawn" Text="{Loc 'admin-player-actions-respawn'}" StyleClasses="OpenBoth" />
<Button Visible="False" Name="Follow" Text="{Loc 'admin-player-actions-follow'}" StyleClasses="OpenLeft" />
</BoxContainer>
</SplitContainer>
</PanelContainer>

View File

@@ -114,7 +114,9 @@ public sealed class SunShadowOverlay : Overlay
foreach (var ent in _shadows)
{
var xform = _entManager.GetComponent<TransformComponent>(ent.Owner);
var worldMatrix = _xformSys.GetWorldMatrix(xform);
var (worldPos, worldRot) = _xformSys.GetWorldPositionRotation(xform);
// Need no rotation on matrix as sun shadow direction doesn't care.
var worldMatrix = Matrix3x2.CreateTranslation(worldPos);
var renderMatrix = Matrix3x2.Multiply(worldMatrix, invMatrix);
var pointCount = ent.Comp.Points.Length;
@@ -122,6 +124,10 @@ public sealed class SunShadowOverlay : Overlay
for (var i = 0; i < pointCount; i++)
{
// Update point based on entity rotation.
indices[i] = worldRot.RotateVec(indices[i]);
// Add the offset point by the sun shadow direction.
indices[pointCount + i] = indices[i] + direction;
}
@@ -134,7 +140,7 @@ public sealed class SunShadowOverlay : Overlay
Color.Transparent);
// Slightly blur it just to avoid aliasing issues on the later viewport-wide blur.
_clyde.BlurRenderTarget(viewport, _target, _target, eye, 1f);
_clyde.BlurRenderTarget(viewport, _target, _blurTarget!, eye, 1f);
// Draw stencil (see roofoverlay).
args.WorldHandle.RenderInRenderTarget(viewport.LightRenderTarget,

View File

@@ -27,6 +27,8 @@ public sealed class PowerReceiverSystem : SharedPowerReceiverSystem
return;
component.Powered = state.Powered;
component.NeedsPower = state.NeedsPower;
component.PowerDisabled = state.PowerDisabled;
}
public override bool ResolveApc(EntityUid entity, [NotNullWhen(true)] ref SharedApcPowerReceiverComponent? component)

View File

@@ -467,8 +467,9 @@ public sealed class ChatUIController : UIController
if (existing.Count > SpeechBubbleCap)
{
// Get the oldest to start fading fast.
var last = existing[0];
// Get the next speech bubble to fade
// Any speech bubbles before it are already fading
var last = existing[^(SpeechBubbleCap + 1)];
last.FadeNow();
}
}

View File

@@ -62,7 +62,7 @@ namespace Content.Server.Cargo.Systems
return;
_audio.PlayPvs(component.ConfirmSound, uid);
UpdateBankAccount(stationUid.Value, bank, (int) price);
UpdateBankAccount((stationUid.Value, bank), (int) price);
QueueDel(args.Used);
args.Handled = true;
}
@@ -103,7 +103,7 @@ namespace Content.Server.Cargo.Systems
while (stationQuery.MoveNext(out var uid, out var bank))
{
var balanceToAdd = bank.IncreasePerSecond * Delay;
UpdateBankAccount(uid, bank, balanceToAdd);
UpdateBankAccount((uid, bank), balanceToAdd);
}
var query = EntityQueryEnumerator<CargoOrderConsoleComponent>();
@@ -229,7 +229,7 @@ namespace Content.Server.Cargo.Systems
$"{ToPrettyString(player):user} approved order [orderId:{order.OrderId}, quantity:{order.OrderQuantity}, product:{order.ProductId}, requester:{order.Requester}, reason:{order.Reason}] with balance at {bank.Balance}");
orderDatabase.Orders.Remove(order);
UpdateBankAccount(station.Value, bank, -cost);
UpdateBankAccount((station.Value, bank), -cost);
UpdateOrders(station.Value);
}

View File

@@ -76,19 +76,23 @@ public sealed partial class CargoSystem : SharedCargoSystem
}
[PublicAPI]
public void UpdateBankAccount(EntityUid uid, StationBankAccountComponent component, int balanceAdded)
public void UpdateBankAccount(Entity<StationBankAccountComponent?> ent, int balanceAdded)
{
component.Balance += balanceAdded;
var query = EntityQueryEnumerator<BankClientComponent, TransformComponent>();
if (!Resolve(ent, ref ent.Comp))
return;
var ev = new BankBalanceUpdatedEvent(uid, component.Balance);
ent.Comp.Balance += balanceAdded;
var ev = new BankBalanceUpdatedEvent(ent, ent.Comp.Balance);
var query = EntityQueryEnumerator<BankClientComponent, TransformComponent>();
while (query.MoveNext(out var client, out var comp, out var xform))
{
var station = _station.GetOwningStation(client, xform);
if (station != uid)
if (station != ent)
continue;
comp.Balance = component.Balance;
comp.Balance = ent.Comp.Balance;
Dirty(client, comp);
RaiseLocalEvent(client, ref ev);
}

View File

@@ -32,7 +32,7 @@ public sealed partial class CargoDeliveryDataComponent : Component
/// 1 delivery per X players.
/// </summary>
[DataField]
public int PlayerToDeliveryRatio = 7;
public float PlayerToDeliveryRatio = 7f;
/// <summary>
/// The minimum amount of deliveries that will spawn.

View File

@@ -59,9 +59,14 @@ public sealed partial class DeliverySystem
if (spawners.Count == 0)
return;
// Skip if there's nobody in crew manifest
if (records.Records.Keys.Count == 0)
return;
// We take the amount of mail calculated based on player amount or the minimum, whichever is higher.
// We don't want stations with less than the player ratio to not get mail at all
var deliveryCount = Math.Max(records.Records.Keys.Count / ent.Comp.PlayerToDeliveryRatio, ent.Comp.MinimumDeliverySpawn);
var initialDeliveryCount = (int)Math.Ceiling(records.Records.Keys.Count / ent.Comp.PlayerToDeliveryRatio);
var deliveryCount = Math.Max(initialDeliveryCount, ent.Comp.MinimumDeliverySpawn);
if (!ent.Comp.DistributeRandomly)
{

View File

@@ -73,7 +73,7 @@ public sealed partial class DeliverySystem : SharedDeliverySystem
if (!TryComp<StationBankAccountComponent>(ent.Comp.RecipientStation, out var account))
return;
_cargo.UpdateBankAccount(ent, account, ent.Comp.SpesoReward);
_cargo.UpdateBankAccount((ent.Comp.RecipientStation.Value, account), ent.Comp.SpesoReward);
}
public override void Update(float frameTime)

View File

@@ -24,13 +24,13 @@ public sealed partial class TraitorRuleComponent : Component
public ProtoId<NpcFactionPrototype> SyndicateFaction = "Syndicate";
[DataField]
public ProtoId<DatasetPrototype> CodewordAdjectives = "adjectives";
public ProtoId<LocalizedDatasetPrototype> CodewordAdjectives = "Adjectives";
[DataField]
public ProtoId<DatasetPrototype> CodewordVerbs = "verbs";
public ProtoId<LocalizedDatasetPrototype> CodewordVerbs = "Verbs";
[DataField]
public ProtoId<DatasetPrototype> ObjectiveIssuers = "TraitorCorporations";
public ProtoId<LocalizedDatasetPrototype> ObjectiveIssuers = "TraitorCorporations";
/// <summary>
/// Give this traitor an Uplink on spawn.

View File

@@ -12,6 +12,7 @@ using Content.Shared.GameTicking.Components;
using Content.Shared.Mind;
using Content.Shared.NPC.Systems;
using Content.Shared.PDA;
using Content.Shared.Random.Helpers;
using Content.Shared.Roles;
using Content.Shared.Roles.Jobs;
using Content.Shared.Roles.RoleCodeword;
@@ -74,7 +75,7 @@ public sealed class TraitorRuleSystem : GameRuleSystem<TraitorRuleComponent>
string[] codewords = new string[finalCodewordCount];
for (var i = 0; i < finalCodewordCount; i++)
{
codewords[i] = _random.PickAndTake(codewordPool);
codewords[i] = Loc.GetString(_random.PickAndTake(codewordPool));
}
return codewords;
}
@@ -98,7 +99,7 @@ public sealed class TraitorRuleSystem : GameRuleSystem<TraitorRuleComponent>
briefing = Loc.GetString("traitor-role-codewords-short", ("codewords", string.Join(", ", component.Codewords)));
}
var issuer = _random.Pick(_prototypeManager.Index(component.ObjectiveIssuers).Values);
var issuer = _random.Pick(_prototypeManager.Index(component.ObjectiveIssuers));
// Uplink code will go here if applicable, but we still need the variable if there aren't any
Note[]? code = null;

View File

@@ -1,18 +0,0 @@
using Content.Server.Objectives.Systems;
using Robust.Shared.Prototypes;
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
namespace Content.Server.Objectives.Components.Targets;
/// <summary>
/// Allows an object to become the target of a StealCollection objection
/// </summary>
[RegisterComponent]
public sealed partial class StealTargetComponent : Component
{
/// <summary>
/// The theft group to which this item belongs.
/// </summary>
[DataField(required: true), ViewVariables(VVAccess.ReadWrite)]
public string StealGroup;
}

View File

@@ -1,5 +1,4 @@
using Content.Server.Objectives.Components;
using Content.Server.Objectives.Components.Targets;
using Content.Shared.CartridgeLoader;
using Content.Shared.Interaction;
using Content.Shared.Mind;

View File

@@ -24,7 +24,7 @@ namespace Content.Server.Power.Components
/// When false, causes this to appear powered even if not receiving power from an Apc.
/// </summary>
[ViewVariables(VVAccess.ReadWrite)]
public bool NeedsPower
public override bool NeedsPower
{
get => _needsPower;
set
@@ -41,9 +41,9 @@ namespace Content.Server.Power.Components
/// <summary>
/// When true, causes this to never appear powered.
/// </summary>
[ViewVariables(VVAccess.ReadWrite)]
[DataField("powerDisabled")]
public bool PowerDisabled {
public override bool PowerDisabled
{
get => !NetworkLoad.Enabled;
set => NetworkLoad.Enabled = !value;
}

View File

@@ -1,18 +1,12 @@
using System.Diagnostics.CodeAnalysis;
using Content.Server.Administration.Logs;
using Content.Server.Administration.Managers;
using Content.Server.Power.Components;
using Content.Shared.Administration;
using Content.Shared.Database;
using Content.Shared.Examine;
using Content.Shared.Hands.Components;
using Content.Shared.Power;
using Content.Shared.Power.Components;
using Content.Shared.Power.EntitySystems;
using Content.Shared.Verbs;
using Robust.Server.Audio;
using Robust.Server.GameObjects;
using Robust.Shared.Audio;
using Robust.Shared.GameStates;
using Robust.Shared.Utility;
@@ -20,9 +14,8 @@ namespace Content.Server.Power.EntitySystems
{
public sealed class PowerReceiverSystem : SharedPowerReceiverSystem
{
[Dependency] private readonly IAdminLogManager _adminLogger = default!;
[Dependency] private readonly IAdminManager _adminManager = default!;
[Dependency] private readonly AudioSystem _audio = default!;
private EntityQuery<ApcPowerReceiverComponent> _recQuery;
private EntityQuery<ApcPowerProviderComponent> _provQuery;
@@ -63,7 +56,10 @@ namespace Content.Server.Power.EntitySystems
Text = Loc.GetString("verb-debug-toggle-need-power"),
Category = VerbCategory.Debug,
Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/VerbIcons/smite.svg.192dpi.png")), // "smite" is a lightning bolt
Act = () => component.NeedsPower = !component.NeedsPower
Act = () =>
{
SetNeedsPower(uid, !component.NeedsPower, component);
}
});
}
@@ -143,7 +139,9 @@ namespace Content.Server.Power.EntitySystems
{
args.State = new ApcPowerReceiverComponentState
{
Powered = component.Powered
Powered = component.Powered,
NeedsPower = component.NeedsPower,
PowerDisabled = component.PowerDisabled,
};
}
@@ -164,36 +162,6 @@ namespace Content.Server.Power.EntitySystems
return !_recQuery.Resolve(uid, ref receiver, false) || receiver.Powered;
}
/// <summary>
/// Turn this machine on or off.
/// Returns true if we turned it on, false if we turned it off.
/// </summary>
public bool TogglePower(EntityUid uid, bool playSwitchSound = true, ApcPowerReceiverComponent? receiver = null, EntityUid? user = null)
{
if (!_recQuery.Resolve(uid, ref receiver, false))
return true;
// it'll save a lot of confusion if 'always powered' means 'always powered'
if (!receiver.NeedsPower)
{
receiver.PowerDisabled = false;
return true;
}
receiver.PowerDisabled = !receiver.PowerDisabled;
if (user != null)
_adminLogger.Add(LogType.Action, LogImpact.Low, $"{ToPrettyString(user.Value):player} hit power button on {ToPrettyString(uid)}, it's now {(!receiver.PowerDisabled ? "on" : "off")}");
if (playSwitchSound)
{
_audio.PlayPvs(new SoundPathSpecifier("/Audio/Machines/machine_switch.ogg"), uid,
AudioParams.Default.WithVolume(-2f));
}
return !receiver.PowerDisabled; // i.e. PowerEnabled
}
public void SetLoad(ApcPowerReceiverComponent comp, float load)
{
comp.Load = load;

View File

@@ -11,6 +11,7 @@ using Content.Shared.Atmos;
using Content.Shared.DeviceNetwork;
using Content.Shared.Examine;
using Content.Shared.Power;
using Content.Shared.Power.EntitySystems;
using Content.Shared.Power.Generation.Teg;
using Content.Shared.Rounding;
using Robust.Server.GameObjects;
@@ -66,11 +67,12 @@ public sealed class TegSystem : EntitySystem
/// </summary>
public const string DeviceNetworkCommandSyncData = "teg_sync_data";
[Dependency] private readonly AmbientSoundSystem _ambientSound = default!;
[Dependency] private readonly AppearanceSystem _appearance = default!;
[Dependency] private readonly AtmosphereSystem _atmosphere = default!;
[Dependency] private readonly DeviceNetworkSystem _deviceNetwork = default!;
[Dependency] private readonly AppearanceSystem _appearance = default!;
[Dependency] private readonly PointLightSystem _pointLight = default!;
[Dependency] private readonly AmbientSoundSystem _ambientSound = default!;
[Dependency] private readonly SharedPowerReceiverSystem _receiver = default!;
private EntityQuery<NodeContainerComponent> _nodeContainerQuery;
@@ -241,8 +243,7 @@ public sealed class TegSystem : EntitySystem
var powerReceiver = Comp<ApcPowerReceiverComponent>(uid);
powerReceiver.PowerDisabled = !group.IsFullyBuilt;
_receiver.SetPowerDisabled(uid, !group.IsFullyBuilt, powerReceiver);
UpdateAppearance(uid, component, powerReceiver, group);
}

View File

@@ -1,6 +1,7 @@
using Content.Server.Electrocution;
using Content.Shared.Electrocution;
using Content.Server.Power.Components;
using Content.Server.Power.EntitySystems;
using Content.Server.Wires;
using Content.Shared.Power;
using Content.Shared.Wires;
@@ -61,15 +62,17 @@ public sealed partial class PowerWireAction : BaseWireAction
return;
}
var receiverSys = EntityManager.System<PowerReceiverSystem>();
if (pulsed)
{
power.PowerDisabled = true;
receiverSys.SetPowerDisabled(owner, true, power);
return;
}
if (AllWiresCut(owner))
{
power.PowerDisabled = true;
receiverSys.SetPowerDisabled(owner, true, power);
}
else
{
@@ -79,7 +82,7 @@ public sealed partial class PowerWireAction : BaseWireAction
return;
}
power.PowerDisabled = false;
receiverSys.SetPowerDisabled(owner, false, power);
}
}

View File

@@ -12,6 +12,7 @@ using Content.Shared.Paper;
using Content.Shared.Placeable;
using Content.Shared.Popups;
using Content.Shared.Power;
using Content.Shared.Power.EntitySystems;
using Content.Shared.Research.Components;
using Content.Shared.Xenoarchaeology.Equipment;
using Content.Shared.Xenoarchaeology.XenoArtifacts;
@@ -33,15 +34,16 @@ public sealed class ArtifactAnalyzerSystem : EntitySystem
{
[Dependency] private readonly IGameTiming _timing = default!;
[Dependency] private readonly IPrototypeManager _prototype = default!;
[Dependency] private readonly SharedAudioSystem _audio = default!;
[Dependency] private readonly SharedAmbientSoundSystem _ambientSound = default!;
[Dependency] private readonly SharedPopupSystem _popup = default!;
[Dependency] private readonly UserInterfaceSystem _ui = default!;
[Dependency] private readonly ArtifactSystem _artifact = default!;
[Dependency] private readonly MetaDataSystem _metaSystem = default!;
[Dependency] private readonly PaperSystem _paper = default!;
[Dependency] private readonly ResearchSystem _research = default!;
[Dependency] private readonly MetaDataSystem _metaSystem = default!;
[Dependency] private readonly SharedAmbientSoundSystem _ambientSound = default!;
[Dependency] private readonly SharedAudioSystem _audio = default!;
[Dependency] private readonly SharedPopupSystem _popup = default!;
[Dependency] private readonly SharedPowerReceiverSystem _receiver = default!;
[Dependency] private readonly TraversalDistorterSystem _traversalDistorter = default!;
[Dependency] private readonly UserInterfaceSystem _ui = default!;
/// <inheritdoc/>
public override void Initialize()
@@ -492,17 +494,13 @@ public sealed class ArtifactAnalyzerSystem : EntitySystem
private void OnAnalyzeStart(EntityUid uid, ActiveArtifactAnalyzerComponent component, ComponentStartup args)
{
if (TryComp<ApcPowerReceiverComponent>(uid, out var powa))
powa.NeedsPower = true;
_receiver.SetNeedsPower(uid, true);
_ambientSound.SetAmbience(uid, true);
}
private void OnAnalyzeEnd(EntityUid uid, ActiveArtifactAnalyzerComponent component, ComponentShutdown args)
{
if (TryComp<ApcPowerReceiverComponent>(uid, out var powa))
powa.NeedsPower = false;
_receiver.SetNeedsPower(uid, false);
_ambientSound.SetAmbience(uid, false);
}

View File

@@ -1,4 +1,3 @@
using Content.Shared.Cargo;
using Robust.Shared.GameStates;
namespace Content.Shared.Cargo.Components;
@@ -23,4 +22,4 @@ public sealed partial class BankClientComponent : Component
/// Raised on an entity with <see cref="BankClientComponent"/> when the bank's balance is updated.
/// </summary>
[ByRefEvent]
public record struct BankBalanceUpdatedEvent(EntityUid Station, int Balance);
public readonly record struct BankBalanceUpdatedEvent(EntityUid Station, int Balance);

View File

@@ -3,8 +3,10 @@ using Content.Shared.Shuttles.Components;
using Content.Shared.Examine;
using Content.Shared.FingerprintReader;
using Content.Shared.Hands.EntitySystems;
using Content.Shared.IdentityManagement;
using Content.Shared.Interaction.Events;
using Content.Shared.NameModifier.EntitySystems;
using Content.Shared.Objectives.Components;
using Content.Shared.Popups;
using Content.Shared.Tag;
using Content.Shared.Verbs;
@@ -107,7 +109,8 @@ public abstract class SharedDeliverySystem : EntitySystem
if (rewardMoney)
GrantSpesoReward(ent.AsNullable());
_popup.PopupPredicted(Loc.GetString("delivery-unlocked", ("delivery", deliveryName)), user, user);
_popup.PopupPredicted(Loc.GetString("delivery-unlocked-self", ("delivery", deliveryName)),
Loc.GetString("delivery-unlocked-others", ("delivery", deliveryName), ("recipient", Identity.Name(user, EntityManager)), ("possadj", user)), user, user);
return true;
}
@@ -128,10 +131,12 @@ public abstract class SharedDeliverySystem : EntitySystem
_tag.AddTags(ent, "Trash", "Recyclable");
EnsureComp<SpaceGarbageComponent>(ent);
RemComp<StealTargetComponent>(ent); // opened mail should not count for the objective
DirtyField(ent.Owner, ent.Comp, nameof(DeliveryComponent.IsOpened));
_popup.PopupPredicted(Loc.GetString("delivery-opened", ("delivery", deliveryName)), user, user);
_popup.PopupPredicted(Loc.GetString("delivery-opened-self", ("delivery", deliveryName)),
Loc.GetString("delivery-opened-others", ("delivery", deliveryName), ("recipient", Identity.Name(user, EntityManager)), ("possadj", user)), user, user);
if (!_container.TryGetContainer(ent, ent.Comp.Container, out var container))
return;

View File

@@ -31,7 +31,7 @@ public sealed class FingerprintReaderSystem : EntitySystem
if (!target.Comp.IgnoreGloves && TryGetBlockingGloves(user, out var gloves))
{
if (target.Comp.FailGlovesPopup != null)
_popup.PopupPredicted(Loc.GetString(target.Comp.FailGlovesPopup, ("blocker", gloves)), target, user);
_popup.PopupClient(Loc.GetString(target.Comp.FailGlovesPopup, ("blocker", gloves)), target, user);
return false;
}
@@ -40,7 +40,7 @@ public sealed class FingerprintReaderSystem : EntitySystem
!target.Comp.AllowedFingerprints.Contains(fingerprint.Fingerprint))
{
if (target.Comp.FailPopup != null)
_popup.PopupPredicted(Loc.GetString(target.Comp.FailPopup), target, user);
_popup.PopupClient(Loc.GetString(target.Comp.FailPopup), target, user);
return false;
}

View File

@@ -61,7 +61,7 @@ namespace Content.Shared.Humanoid
public string GetLastName(SpeciesPrototype speciesProto)
{
return Loc.GetString(_random.Pick(_prototypeManager.Index<LocalizedDatasetPrototype>(speciesProto.LastNames).Values));
return _random.Pick(_prototypeManager.Index<LocalizedDatasetPrototype>(speciesProto.LastNames));
}
}
}

View File

@@ -0,0 +1,17 @@
using Robust.Shared.GameStates;
using Robust.Shared.Prototypes;
namespace Content.Shared.Objectives.Components;
/// <summary>
/// Allows an object to become the target of a steal objective
/// </summary>
[RegisterComponent, NetworkedComponent]
public sealed partial class StealTargetComponent : Component
{
/// <summary>
/// The theft group to which this item belongs.
/// </summary>
[DataField(required: true)]
public ProtoId<StealTargetGroupPrototype> StealGroup;
}

View File

@@ -128,7 +128,7 @@ public sealed class PaperSystem : EntitySystem
return;
}
var writeEvent = new PaperWriteEvent(entity, args.User);
var writeEvent = new PaperWriteEvent(args.User, entity);
RaiseLocalEvent(args.Used, ref writeEvent);
entity.Comp.Mode = PaperAction.Write;

View File

@@ -6,4 +6,6 @@ namespace Content.Shared.Power.Components;
public sealed class ApcPowerReceiverComponentState : ComponentState
{
public bool Powered;
public bool NeedsPower;
public bool PowerDisabled;
}

View File

@@ -7,4 +7,10 @@ public abstract partial class SharedApcPowerReceiverComponent : Component
{
[ViewVariables]
public bool Powered;
[ViewVariables]
public virtual bool NeedsPower { get; set; }
[ViewVariables]
public virtual bool PowerDisabled { get; set; }
}

View File

@@ -1,12 +1,67 @@
using System.Diagnostics.CodeAnalysis;
using Content.Shared.Administration.Logs;
using Content.Shared.Database;
using Content.Shared.Power.Components;
using Robust.Shared.Audio;
using Robust.Shared.Audio.Systems;
namespace Content.Shared.Power.EntitySystems;
public abstract class SharedPowerReceiverSystem : EntitySystem
{
[Dependency] private readonly ISharedAdminLogManager _adminLogger = default!;
[Dependency] private readonly SharedAudioSystem _audio = default!;
public abstract bool ResolveApc(EntityUid entity, [NotNullWhen(true)] ref SharedApcPowerReceiverComponent? component);
public void SetNeedsPower(EntityUid uid, bool value, SharedApcPowerReceiverComponent? receiver = null)
{
if (!ResolveApc(uid, ref receiver) || receiver.NeedsPower == value)
return;
receiver.NeedsPower = value;
Dirty(uid, receiver);
}
public void SetPowerDisabled(EntityUid uid, bool value, SharedApcPowerReceiverComponent? receiver = null)
{
if (!ResolveApc(uid, ref receiver) || receiver.PowerDisabled == value)
return;
receiver.PowerDisabled = value;
Dirty(uid, receiver);
}
/// <summary>
/// Turn this machine on or off.
/// Returns true if we turned it on, false if we turned it off.
/// </summary>
public bool TogglePower(EntityUid uid, bool playSwitchSound = true, SharedApcPowerReceiverComponent? receiver = null, EntityUid? user = null)
{
if (!ResolveApc(uid, ref receiver))
return true;
// it'll save a lot of confusion if 'always powered' means 'always powered'
if (!receiver.NeedsPower)
{
SetPowerDisabled(uid, false, receiver);
return true;
}
SetPowerDisabled(uid, !receiver.PowerDisabled, receiver);
if (user != null)
_adminLogger.Add(LogType.Action, LogImpact.Low, $"{ToPrettyString(user.Value):player} hit power button on {ToPrettyString(uid)}, it's now {(!receiver.PowerDisabled ? "on" : "off")}");
if (playSwitchSound)
{
_audio.PlayPredicted(new SoundPathSpecifier("/Audio/Machines/machine_switch.ogg"), uid, user: user,
AudioParams.Default.WithVolume(-2f));
}
return !receiver.PowerDisabled; // i.e. PowerEnabled
}
/// <summary>
/// Checks if entity is APC-powered device, and if it have power.
/// </summary>

View File

@@ -864,5 +864,13 @@ Entries:
id: 107
time: '2025-03-08T02:39:04.0000000+00:00'
url: https://github.com/space-wizards/space-station-14/pull/35518
- author: Errant
changes:
- message: It is no longer impossible to resize the player list in the ahelp window,
when at small window sizes.
type: Fix
id: 108
time: '2025-03-10T09:40:36.0000000+00:00'
url: https://github.com/space-wizards/space-station-14/pull/35747
Name: Admin
Order: 1

View File

@@ -1,35 +1,4 @@
Entries:
- author: Moomoobeef
changes:
- message: Ammo-boxes no longer appear empty when only one bullet is removed.
type: Fix
id: 7544
time: '2024-10-22T09:00:28.0000000+00:00'
url: https://github.com/space-wizards/space-station-14/pull/32930
- author: ScarKy0
changes:
- message: Added the syringe gun and it's respective ammo. Currently Admeme only.
type: Add
id: 7545
time: '2024-10-22T13:03:42.0000000+00:00'
url: https://github.com/space-wizards/space-station-14/pull/32112
- author: ScarKy0, Fildrance
changes:
- message: Using an intellicard on the AI core now swaps the AI between the core
and intellicard. (You can evac with the AI!)
type: Add
- message: Added an intellicard to the RD's locker.
type: Add
id: 7546
time: '2024-10-22T13:49:39.0000000+00:00'
url: https://github.com/space-wizards/space-station-14/pull/32347
- author: Southbridge
changes:
- message: Nuclear Cola can now be broken down in a centrifuge.
type: Add
id: 7547
time: '2024-10-22T17:01:19.0000000+00:00'
url: https://github.com/space-wizards/space-station-14/pull/32441
- author: BramvanZijp
changes:
- message: The Space Ninja Suit will now give an error popup if you are trying to
@@ -3900,3 +3869,31 @@
id: 8043
time: '2025-03-08T15:21:22.0000000+00:00'
url: https://github.com/space-wizards/space-station-14/pull/35718
- author: Emisse
changes:
- message: Core Station
type: Remove
id: 8044
time: '2025-03-09T08:48:55.0000000+00:00'
url: https://github.com/space-wizards/space-station-14/pull/35740
- author: slarticodefast
changes:
- message: Added a mail stealing objective for thieves.
type: Add
id: 8045
time: '2025-03-09T19:41:53.0000000+00:00'
url: https://github.com/space-wizards/space-station-14/pull/35746
- author: metalgearsloth
changes:
- message: Fix sun shadows not rendering when ANGLE is used.
type: Fix
id: 8046
time: '2025-03-10T04:17:53.0000000+00:00'
url: https://github.com/space-wizards/space-station-14/pull/35757
- author: metalgearsloth
changes:
- message: Fix sun shadow rotations not always being accurate.
type: Fix
id: 8047
time: '2025-03-10T04:38:33.0000000+00:00'
url: https://github.com/space-wizards/space-station-14/pull/35758

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,396 @@
adjectives-dataset-1 = adorable
adjectives-dataset-2 = adventurous
adjectives-dataset-3 = aggressive
adjectives-dataset-4 = alert
adjectives-dataset-5 = attractive
adjectives-dataset-6 = average
adjectives-dataset-7 = beautiful
adjectives-dataset-8 = blue-eyed
adjectives-dataset-9 = bloody
adjectives-dataset-10 = blushing
adjectives-dataset-11 = bright
adjectives-dataset-12 = clean
adjectives-dataset-13 = clear
adjectives-dataset-14 = cloudy
adjectives-dataset-15 = colorful
adjectives-dataset-16 = crowded
adjectives-dataset-17 = cute
adjectives-dataset-18 = dark
adjectives-dataset-19 = drab
adjectives-dataset-20 = distinct
adjectives-dataset-21 = dull
adjectives-dataset-22 = elegant
adjectives-dataset-23 = excited
adjectives-dataset-24 = fancy
adjectives-dataset-25 = filthy
adjectives-dataset-26 = glamorous
adjectives-dataset-27 = gleaming
adjectives-dataset-28 = gorgeous
adjectives-dataset-29 = graceful
adjectives-dataset-30 = grotesque
adjectives-dataset-31 = handsome
adjectives-dataset-32 = homely
adjectives-dataset-33 = light
adjectives-dataset-34 = long
adjectives-dataset-35 = magnificent
adjectives-dataset-36 = misty
adjectives-dataset-37 = motionless
adjectives-dataset-38 = muddy
adjectives-dataset-39 = old-fashioned
adjectives-dataset-40 = plain
adjectives-dataset-41 = poised
adjectives-dataset-42 = precious
adjectives-dataset-43 = quaint
adjectives-dataset-44 = shiny
adjectives-dataset-45 = smoggy
adjectives-dataset-46 = sparkling
adjectives-dataset-47 = spotless
adjectives-dataset-48 = stormy
adjectives-dataset-49 = strange
adjectives-dataset-50 = ugly
adjectives-dataset-51 = ugliest
adjectives-dataset-52 = unsightly
adjectives-dataset-53 = unusual
adjectives-dataset-54 = wide-eyed
adjectives-dataset-55 = alive
adjectives-dataset-56 = annoying
adjectives-dataset-57 = bad
adjectives-dataset-58 = better
adjectives-dataset-59 = beautiful
adjectives-dataset-60 = brainy
adjectives-dataset-61 = breakable
adjectives-dataset-62 = busy
adjectives-dataset-63 = careful
adjectives-dataset-64 = cautious
adjectives-dataset-65 = clever
adjectives-dataset-66 = clumsy
adjectives-dataset-67 = concerned
adjectives-dataset-68 = crazy
adjectives-dataset-69 = curious
adjectives-dataset-70 = dead
adjectives-dataset-71 = different
adjectives-dataset-72 = difficult
adjectives-dataset-73 = doubtful
adjectives-dataset-74 = easy
adjectives-dataset-75 = expensive
adjectives-dataset-76 = famous
adjectives-dataset-77 = fragile
adjectives-dataset-78 = frail
adjectives-dataset-79 = gifted
adjectives-dataset-80 = helpful
adjectives-dataset-81 = helpless
adjectives-dataset-82 = horrible
adjectives-dataset-83 = important
adjectives-dataset-84 = impossible
adjectives-dataset-85 = inexpensive
adjectives-dataset-86 = innocent
adjectives-dataset-87 = inquisitive
adjectives-dataset-88 = modern
adjectives-dataset-89 = mushy
adjectives-dataset-90 = odd
adjectives-dataset-91 = open
adjectives-dataset-92 = outstanding
adjectives-dataset-93 = poor
adjectives-dataset-94 = powerful
adjectives-dataset-95 = prickly
adjectives-dataset-96 = puzzled
adjectives-dataset-97 = real
adjectives-dataset-98 = rich
adjectives-dataset-99 = shy
adjectives-dataset-100 = sleepy
adjectives-dataset-101 = stupid
adjectives-dataset-102 = super
adjectives-dataset-103 = talented
adjectives-dataset-104 = tame
adjectives-dataset-105 = tender
adjectives-dataset-106 = tough
adjectives-dataset-107 = uninterested
adjectives-dataset-108 = vast
adjectives-dataset-109 = wandering
adjectives-dataset-110 = wild
adjectives-dataset-111 = wrong
adjectives-dataset-112 = angry
adjectives-dataset-113 = annoyed
adjectives-dataset-114 = anxious
adjectives-dataset-115 = arrogant
adjectives-dataset-116 = ashamed
adjectives-dataset-117 = awful
adjectives-dataset-118 = bad
adjectives-dataset-119 = bewildered
adjectives-dataset-120 = black
adjectives-dataset-121 = blue
adjectives-dataset-122 = bored
adjectives-dataset-123 = clumsy
adjectives-dataset-124 = combative
adjectives-dataset-125 = condemned
adjectives-dataset-126 = confused
adjectives-dataset-127 = crazy,flipped-out
adjectives-dataset-128 = creepy
adjectives-dataset-129 = cruel
adjectives-dataset-130 = dangerous
adjectives-dataset-131 = defeated
adjectives-dataset-132 = defiant
adjectives-dataset-133 = depressed
adjectives-dataset-134 = disgusted
adjectives-dataset-135 = disturbed
adjectives-dataset-136 = dizzy
adjectives-dataset-137 = dull
adjectives-dataset-138 = embarrassed
adjectives-dataset-139 = envious
adjectives-dataset-140 = evil
adjectives-dataset-141 = fierce
adjectives-dataset-142 = foolish
adjectives-dataset-143 = frantic
adjectives-dataset-144 = frightened
adjectives-dataset-145 = grieving
adjectives-dataset-146 = grumpy
adjectives-dataset-147 = helpless
adjectives-dataset-148 = homeless
adjectives-dataset-149 = hungry
adjectives-dataset-150 = hurt
adjectives-dataset-151 = ill
adjectives-dataset-152 = itchy
adjectives-dataset-153 = jealous
adjectives-dataset-154 = jittery
adjectives-dataset-155 = lazy
adjectives-dataset-156 = lonely
adjectives-dataset-157 = mysterious
adjectives-dataset-158 = nasty
adjectives-dataset-159 = naughty
adjectives-dataset-160 = nervous
adjectives-dataset-161 = nutty
adjectives-dataset-162 = obnoxious
adjectives-dataset-163 = outrageous
adjectives-dataset-164 = panicky
adjectives-dataset-165 = repulsive
adjectives-dataset-166 = scary
adjectives-dataset-167 = selfish
adjectives-dataset-168 = sore
adjectives-dataset-169 = tense
adjectives-dataset-170 = terrible
adjectives-dataset-171 = testy
adjectives-dataset-172 = thoughtless
adjectives-dataset-173 = tired
adjectives-dataset-174 = troubled
adjectives-dataset-175 = upset
adjectives-dataset-176 = uptight
adjectives-dataset-177 = weary
adjectives-dataset-178 = wicked
adjectives-dataset-179 = worried
adjectives-dataset-180 = agreeable
adjectives-dataset-181 = amused
adjectives-dataset-182 = brave
adjectives-dataset-183 = calm
adjectives-dataset-184 = charming
adjectives-dataset-185 = cheerful
adjectives-dataset-186 = comfortable
adjectives-dataset-187 = cooperative
adjectives-dataset-188 = courageous
adjectives-dataset-189 = delightful
adjectives-dataset-190 = determined
adjectives-dataset-191 = eager
adjectives-dataset-192 = elated
adjectives-dataset-193 = enchanting
adjectives-dataset-194 = encouraging
adjectives-dataset-195 = energetic
adjectives-dataset-196 = enthusiastic
adjectives-dataset-197 = excited
adjectives-dataset-198 = exuberant
adjectives-dataset-199 = fair
adjectives-dataset-200 = faithful
adjectives-dataset-201 = fantastic
adjectives-dataset-202 = fine
adjectives-dataset-203 = friendly
adjectives-dataset-204 = funny
adjectives-dataset-205 = gentle
adjectives-dataset-206 = glorious
adjectives-dataset-207 = good
adjectives-dataset-208 = happy
adjectives-dataset-209 = healthy
adjectives-dataset-210 = helpful
adjectives-dataset-211 = hilarious
adjectives-dataset-212 = jolly
adjectives-dataset-213 = joyous
adjectives-dataset-214 = kind
adjectives-dataset-215 = lively
adjectives-dataset-216 = lovely
adjectives-dataset-217 = lucky
adjectives-dataset-218 = nice
adjectives-dataset-219 = obedient
adjectives-dataset-220 = perfect
adjectives-dataset-221 = pleasant
adjectives-dataset-222 = proud
adjectives-dataset-223 = relieved
adjectives-dataset-224 = silly
adjectives-dataset-225 = smiling
adjectives-dataset-226 = splendid
adjectives-dataset-227 = successful
adjectives-dataset-228 = thankful
adjectives-dataset-229 = thoughtful
adjectives-dataset-230 = victorious
adjectives-dataset-231 = vivacious
adjectives-dataset-232 = witty
adjectives-dataset-233 = wonderful
adjectives-dataset-234 = zealous
adjectives-dataset-235 = zany
adjectives-dataset-236 = broad
adjectives-dataset-237 = chubby
adjectives-dataset-238 = crooked
adjectives-dataset-239 = curved
adjectives-dataset-240 = deep
adjectives-dataset-241 = flat
adjectives-dataset-242 = high
adjectives-dataset-243 = hollow
adjectives-dataset-244 = low
adjectives-dataset-245 = narrow
adjectives-dataset-246 = round
adjectives-dataset-247 = shallow
adjectives-dataset-248 = skinny
adjectives-dataset-249 = square
adjectives-dataset-250 = steep
adjectives-dataset-251 = straight
adjectives-dataset-252 = wide
adjectives-dataset-253 = big
adjectives-dataset-254 = colossal
adjectives-dataset-255 = fat
adjectives-dataset-256 = gigantic
adjectives-dataset-257 = great
adjectives-dataset-258 = huge
adjectives-dataset-259 = immense
adjectives-dataset-260 = large
adjectives-dataset-261 = little
adjectives-dataset-262 = mammoth
adjectives-dataset-263 = massive
adjectives-dataset-264 = miniature
adjectives-dataset-265 = petite
adjectives-dataset-266 = puny
adjectives-dataset-267 = scrawny
adjectives-dataset-268 = short
adjectives-dataset-269 = small
adjectives-dataset-270 = tall
adjectives-dataset-271 = teeny
adjectives-dataset-272 = teeny-tiny
adjectives-dataset-273 = tiny
adjectives-dataset-274 = cooing
adjectives-dataset-275 = deafening
adjectives-dataset-276 = faint
adjectives-dataset-277 = harsh
adjectives-dataset-278 = high-pitched
adjectives-dataset-279 = hissing
adjectives-dataset-280 = hushed
adjectives-dataset-281 = husky
adjectives-dataset-282 = loud
adjectives-dataset-283 = melodic
adjectives-dataset-284 = moaning
adjectives-dataset-285 = mute
adjectives-dataset-286 = noisy
adjectives-dataset-287 = purring
adjectives-dataset-288 = quiet
adjectives-dataset-289 = raspy
adjectives-dataset-290 = resonant
adjectives-dataset-291 = screeching
adjectives-dataset-292 = shrill
adjectives-dataset-293 = silent
adjectives-dataset-294 = soft
adjectives-dataset-295 = squealing
adjectives-dataset-296 = thundering
adjectives-dataset-297 = voiceless
adjectives-dataset-298 = whispering
adjectives-dataset-299 = ancient
adjectives-dataset-300 = brief
adjectives-dataset-301 = early
adjectives-dataset-302 = fast
adjectives-dataset-303 = late
adjectives-dataset-304 = long
adjectives-dataset-305 = modern
adjectives-dataset-306 = old
adjectives-dataset-307 = old-fashioned
adjectives-dataset-308 = quick
adjectives-dataset-309 = rapid
adjectives-dataset-310 = short
adjectives-dataset-311 = slow
adjectives-dataset-312 = swift
adjectives-dataset-313 = young
adjectives-dataset-314 = bitter
adjectives-dataset-315 = delicious
adjectives-dataset-316 = fresh
adjectives-dataset-317 = juicy
adjectives-dataset-318 = ripe
adjectives-dataset-319 = rotten
adjectives-dataset-320 = salty
adjectives-dataset-321 = sour
adjectives-dataset-322 = spicy
adjectives-dataset-323 = stale
adjectives-dataset-324 = sticky
adjectives-dataset-325 = strong
adjectives-dataset-326 = sweet
adjectives-dataset-327 = tart
adjectives-dataset-328 = tasteless
adjectives-dataset-329 = tasty
adjectives-dataset-330 = thirsty
adjectives-dataset-331 = fluttering
adjectives-dataset-332 = fuzzy
adjectives-dataset-333 = greasy
adjectives-dataset-334 = grubby
adjectives-dataset-335 = hard
adjectives-dataset-336 = hot
adjectives-dataset-337 = icy
adjectives-dataset-338 = loose
adjectives-dataset-339 = melted
adjectives-dataset-340 = nutritious
adjectives-dataset-341 = plastic
adjectives-dataset-342 = prickly
adjectives-dataset-343 = rainy
adjectives-dataset-344 = rough
adjectives-dataset-345 = scattered
adjectives-dataset-346 = shaggy
adjectives-dataset-347 = shaky
adjectives-dataset-348 = sharp
adjectives-dataset-349 = shivering
adjectives-dataset-350 = silky
adjectives-dataset-351 = slimy
adjectives-dataset-352 = slippery
adjectives-dataset-353 = smooth
adjectives-dataset-354 = soft
adjectives-dataset-355 = solid
adjectives-dataset-356 = steady
adjectives-dataset-357 = sticky
adjectives-dataset-358 = tender
adjectives-dataset-359 = tight
adjectives-dataset-360 = uneven
adjectives-dataset-361 = weak
adjectives-dataset-362 = wet
adjectives-dataset-363 = wooden
adjectives-dataset-364 = yummy
adjectives-dataset-365 = boiling
adjectives-dataset-366 = breezy
adjectives-dataset-367 = broken
adjectives-dataset-368 = bumpy
adjectives-dataset-369 = chilly
adjectives-dataset-370 = cold
adjectives-dataset-371 = cool
adjectives-dataset-372 = creepy
adjectives-dataset-373 = crooked
adjectives-dataset-374 = cuddly
adjectives-dataset-375 = curly
adjectives-dataset-376 = damaged
adjectives-dataset-377 = damp
adjectives-dataset-378 = dirty
adjectives-dataset-379 = dry
adjectives-dataset-380 = dusty
adjectives-dataset-381 = filthy
adjectives-dataset-382 = flaky
adjectives-dataset-383 = fluffy
adjectives-dataset-384 = freezing
adjectives-dataset-385 = hot
adjectives-dataset-386 = warm
adjectives-dataset-387 = wet
adjectives-dataset-388 = abundant
adjectives-dataset-389 = empty
adjectives-dataset-390 = few
adjectives-dataset-391 = heavy
adjectives-dataset-392 = light
adjectives-dataset-393 = many
adjectives-dataset-394 = numerous
adjectives-dataset-395 = substantial
adjectives-dataset-396 = capitalist

View File

@@ -0,0 +1,9 @@
traitor-corporations-dataset-1 = "CyberSun Industries"
traitor-corporations-dataset-2 = "Gorlex Marauders"
traitor-corporations-dataset-3 = "MI13"
traitor-corporations-dataset-4 = "Tiger Cooperative"
traitor-corporations-dataset-5 = "S.E.L.F."
traitor-corporations-dataset-6 = "Animal Rights Consortium"
traitor-corporations-dataset-7 = "Donk Corporation"
traitor-corporations-dataset-8 = "Waffle Corporation"
traitor-corporations-dataset-9 = "Interdyne Pharmaceutics"

View File

@@ -0,0 +1,631 @@
verbs-dataset-1 = accept
verbs-dataset-2 = add
verbs-dataset-3 = admire
verbs-dataset-4 = admit
verbs-dataset-5 = advise
verbs-dataset-6 = afford
verbs-dataset-7 = agree
verbs-dataset-8 = alert
verbs-dataset-9 = allow
verbs-dataset-10 = amuse
verbs-dataset-11 = analyse
verbs-dataset-12 = announce
verbs-dataset-13 = annoy
verbs-dataset-14 = answer
verbs-dataset-15 = apologise
verbs-dataset-16 = appear
verbs-dataset-17 = applaud
verbs-dataset-18 = appreciate
verbs-dataset-19 = approve
verbs-dataset-20 = argue
verbs-dataset-21 = arrange
verbs-dataset-22 = arrest
verbs-dataset-23 = arrive
verbs-dataset-24 = ask
verbs-dataset-25 = attach
verbs-dataset-26 = attack
verbs-dataset-27 = attempt
verbs-dataset-28 = attend
verbs-dataset-29 = attract
verbs-dataset-30 = avoid
verbs-dataset-31 = back
verbs-dataset-32 = bake
verbs-dataset-33 = balance
verbs-dataset-34 = ban
verbs-dataset-35 = bang
verbs-dataset-36 = bare
verbs-dataset-37 = bat
verbs-dataset-38 = bathe
verbs-dataset-39 = battle
verbs-dataset-40 = beam
verbs-dataset-41 = beg
verbs-dataset-42 = behave
verbs-dataset-43 = belong
verbs-dataset-44 = bleach
verbs-dataset-45 = bless
verbs-dataset-46 = blind
verbs-dataset-47 = blink
verbs-dataset-48 = blot
verbs-dataset-49 = blush
verbs-dataset-50 = boast
verbs-dataset-51 = boil
verbs-dataset-52 = bolt
verbs-dataset-53 = bomb
verbs-dataset-54 = book
verbs-dataset-55 = bore
verbs-dataset-56 = borrow
verbs-dataset-57 = bounce
verbs-dataset-58 = bow
verbs-dataset-59 = box
verbs-dataset-60 = brake
verbs-dataset-61 = brake
verbs-dataset-62 = branch
verbs-dataset-63 = breathe
verbs-dataset-64 = bruise
verbs-dataset-65 = brush
verbs-dataset-66 = bubble
verbs-dataset-67 = bump
verbs-dataset-68 = burn
verbs-dataset-69 = bury
verbs-dataset-70 = buzz
verbs-dataset-71 = calculate
verbs-dataset-72 = call
verbs-dataset-73 = camp
verbs-dataset-74 = care
verbs-dataset-75 = carry
verbs-dataset-76 = carve
verbs-dataset-77 = cause
verbs-dataset-78 = challenge
verbs-dataset-79 = change
verbs-dataset-80 = charge
verbs-dataset-81 = chase
verbs-dataset-82 = cheat
verbs-dataset-83 = check
verbs-dataset-84 = cheer
verbs-dataset-85 = chew
verbs-dataset-86 = choke
verbs-dataset-87 = chop
verbs-dataset-88 = claim
verbs-dataset-89 = clap
verbs-dataset-90 = clean
verbs-dataset-91 = clear
verbs-dataset-92 = clip
verbs-dataset-93 = close
verbs-dataset-94 = coach
verbs-dataset-95 = coil
verbs-dataset-96 = collect
verbs-dataset-97 = colour
verbs-dataset-98 = comb
verbs-dataset-99 = command
verbs-dataset-100 = communicate
verbs-dataset-101 = compare
verbs-dataset-102 = compete
verbs-dataset-103 = complain
verbs-dataset-104 = complete
verbs-dataset-105 = concentrate
verbs-dataset-106 = concern
verbs-dataset-107 = confess
verbs-dataset-108 = confuse
verbs-dataset-109 = connect
verbs-dataset-110 = consider
verbs-dataset-111 = consist
verbs-dataset-112 = contain
verbs-dataset-113 = continue
verbs-dataset-114 = copy
verbs-dataset-115 = correct
verbs-dataset-116 = cough
verbs-dataset-117 = count
verbs-dataset-118 = cover
verbs-dataset-119 = crack
verbs-dataset-120 = crash
verbs-dataset-121 = crawl
verbs-dataset-122 = cross
verbs-dataset-123 = crush
verbs-dataset-124 = cry
verbs-dataset-125 = cure
verbs-dataset-126 = curl
verbs-dataset-127 = curve
verbs-dataset-128 = cycle
verbs-dataset-129 = dam
verbs-dataset-130 = damage
verbs-dataset-131 = dance
verbs-dataset-132 = dare
verbs-dataset-133 = decay
verbs-dataset-134 = deceive
verbs-dataset-135 = decide
verbs-dataset-136 = decorate
verbs-dataset-137 = delay
verbs-dataset-138 = delight
verbs-dataset-139 = deliver
verbs-dataset-140 = depend
verbs-dataset-141 = describe
verbs-dataset-142 = desert
verbs-dataset-143 = deserve
verbs-dataset-144 = destroy
verbs-dataset-145 = detect
verbs-dataset-146 = develop
verbs-dataset-147 = disagree
verbs-dataset-148 = disappear
verbs-dataset-149 = disapprove
verbs-dataset-150 = disarm
verbs-dataset-151 = discover
verbs-dataset-152 = dislike
verbs-dataset-153 = divide
verbs-dataset-154 = double
verbs-dataset-155 = doubt
verbs-dataset-156 = drag
verbs-dataset-157 = drain
verbs-dataset-158 = dream
verbs-dataset-159 = dress
verbs-dataset-160 = drip
verbs-dataset-161 = drop
verbs-dataset-162 = drown
verbs-dataset-163 = drum
verbs-dataset-164 = dry
verbs-dataset-165 = dust
verbs-dataset-166 = earn
verbs-dataset-167 = educate
verbs-dataset-168 = embarrass
verbs-dataset-169 = employ
verbs-dataset-170 = empty
verbs-dataset-171 = encourage
verbs-dataset-172 = end
verbs-dataset-173 = enjoy
verbs-dataset-174 = enter
verbs-dataset-175 = entertain
verbs-dataset-176 = escape
verbs-dataset-177 = examine
verbs-dataset-178 = excite
verbs-dataset-179 = excuse
verbs-dataset-180 = exercise
verbs-dataset-181 = exist
verbs-dataset-182 = expand
verbs-dataset-183 = expect
verbs-dataset-184 = explain
verbs-dataset-185 = explode
verbs-dataset-186 = extend
verbs-dataset-187 = face
verbs-dataset-188 = fade
verbs-dataset-189 = fail
verbs-dataset-190 = fancy
verbs-dataset-191 = fasten
verbs-dataset-192 = fax
verbs-dataset-193 = fear
verbs-dataset-194 = fence
verbs-dataset-195 = fetch
verbs-dataset-196 = file
verbs-dataset-197 = fill
verbs-dataset-198 = film
verbs-dataset-199 = fire
verbs-dataset-200 = fit
verbs-dataset-201 = fix
verbs-dataset-202 = flap
verbs-dataset-203 = flash
verbs-dataset-204 = float
verbs-dataset-205 = flood
verbs-dataset-206 = flow
verbs-dataset-207 = flower
verbs-dataset-208 = fold
verbs-dataset-209 = follow
verbs-dataset-210 = fool
verbs-dataset-211 = force
verbs-dataset-212 = form
verbs-dataset-213 = found
verbs-dataset-214 = frame
verbs-dataset-215 = frighten
verbs-dataset-216 = fry
verbs-dataset-217 = gather
verbs-dataset-218 = gaze
verbs-dataset-219 = glow
verbs-dataset-220 = glue
verbs-dataset-221 = grab
verbs-dataset-222 = grate
verbs-dataset-223 = grease
verbs-dataset-224 = greet
verbs-dataset-225 = grin
verbs-dataset-226 = grip
verbs-dataset-227 = groan
verbs-dataset-228 = guarantee
verbs-dataset-229 = guard
verbs-dataset-230 = guess
verbs-dataset-231 = guide
verbs-dataset-232 = hammer
verbs-dataset-233 = hand
verbs-dataset-234 = handle
verbs-dataset-235 = hang
verbs-dataset-236 = happen
verbs-dataset-237 = harass
verbs-dataset-238 = harm
verbs-dataset-239 = hate
verbs-dataset-240 = haunt
verbs-dataset-241 = head
verbs-dataset-242 = heal
verbs-dataset-243 = heap
verbs-dataset-244 = heat
verbs-dataset-245 = help
verbs-dataset-246 = hook
verbs-dataset-247 = hop
verbs-dataset-248 = hope
verbs-dataset-249 = hover
verbs-dataset-250 = hug
verbs-dataset-251 = hum
verbs-dataset-252 = hunt
verbs-dataset-253 = hurry
verbs-dataset-254 = identify
verbs-dataset-255 = ignore
verbs-dataset-256 = imagine
verbs-dataset-257 = impress
verbs-dataset-258 = improve
verbs-dataset-259 = include
verbs-dataset-260 = increase
verbs-dataset-261 = influence
verbs-dataset-262 = inform
verbs-dataset-263 = inject
verbs-dataset-264 = injure
verbs-dataset-265 = instruct
verbs-dataset-266 = intend
verbs-dataset-267 = interest
verbs-dataset-268 = interfere
verbs-dataset-269 = interrupt
verbs-dataset-270 = introduce
verbs-dataset-271 = invent
verbs-dataset-272 = invite
verbs-dataset-273 = irritate
verbs-dataset-274 = itch
verbs-dataset-275 = jail
verbs-dataset-276 = jam
verbs-dataset-277 = jog
verbs-dataset-278 = join
verbs-dataset-279 = joke
verbs-dataset-280 = judge
verbs-dataset-281 = juggle
verbs-dataset-282 = jump
verbs-dataset-283 = kick
verbs-dataset-284 = kill
verbs-dataset-285 = kiss
verbs-dataset-286 = kneel
verbs-dataset-287 = knit
verbs-dataset-288 = knock
verbs-dataset-289 = knot
verbs-dataset-290 = label
verbs-dataset-291 = land
verbs-dataset-292 = last
verbs-dataset-293 = laugh
verbs-dataset-294 = launch
verbs-dataset-295 = learn
verbs-dataset-296 = level
verbs-dataset-297 = license
verbs-dataset-298 = lick
verbs-dataset-299 = lie
verbs-dataset-300 = lighten
verbs-dataset-301 = like
verbs-dataset-302 = list
verbs-dataset-303 = listen
verbs-dataset-304 = live
verbs-dataset-305 = load
verbs-dataset-306 = lock
verbs-dataset-307 = long
verbs-dataset-308 = look
verbs-dataset-309 = love
verbs-dataset-310 = man
verbs-dataset-311 = manage
verbs-dataset-312 = march
verbs-dataset-313 = mark
verbs-dataset-314 = marry
verbs-dataset-315 = match
verbs-dataset-316 = mate
verbs-dataset-317 = matter
verbs-dataset-318 = measure
verbs-dataset-319 = meddle
verbs-dataset-320 = melt
verbs-dataset-321 = memorise
verbs-dataset-322 = mend
verbs-dataset-323 = messup
verbs-dataset-324 = milk
verbs-dataset-325 = mine
verbs-dataset-326 = miss
verbs-dataset-327 = mix
verbs-dataset-328 = moan
verbs-dataset-329 = moor
verbs-dataset-330 = mourn
verbs-dataset-331 = move
verbs-dataset-332 = muddle
verbs-dataset-333 = mug
verbs-dataset-334 = multiply
verbs-dataset-335 = murder
verbs-dataset-336 = nail
verbs-dataset-337 = name
verbs-dataset-338 = need
verbs-dataset-339 = nest
verbs-dataset-340 = nod
verbs-dataset-341 = note
verbs-dataset-342 = notice
verbs-dataset-343 = number
verbs-dataset-344 = obey
verbs-dataset-345 = object
verbs-dataset-346 = observe
verbs-dataset-347 = obtain
verbs-dataset-348 = occur
verbs-dataset-349 = offend
verbs-dataset-350 = offer
verbs-dataset-351 = open
verbs-dataset-352 = order
verbs-dataset-353 = overflow
verbs-dataset-354 = owe
verbs-dataset-355 = own
verbs-dataset-356 = pack
verbs-dataset-357 = paddle
verbs-dataset-358 = paint
verbs-dataset-359 = park
verbs-dataset-360 = part
verbs-dataset-361 = pass
verbs-dataset-362 = paste
verbs-dataset-363 = pat
verbs-dataset-364 = pause
verbs-dataset-365 = peck
verbs-dataset-366 = pedal
verbs-dataset-367 = peel
verbs-dataset-368 = peep
verbs-dataset-369 = perform
verbs-dataset-370 = permit
verbs-dataset-371 = phone
verbs-dataset-372 = pick
verbs-dataset-373 = pinch
verbs-dataset-374 = pine
verbs-dataset-375 = place
verbs-dataset-376 = plan
verbs-dataset-377 = plant
verbs-dataset-378 = play
verbs-dataset-379 = please
verbs-dataset-380 = plug
verbs-dataset-381 = point
verbs-dataset-382 = poke
verbs-dataset-383 = polish
verbs-dataset-384 = pop
verbs-dataset-385 = possess
verbs-dataset-386 = post
verbs-dataset-387 = pour
verbs-dataset-388 = practise
verbs-dataset-389 = pray
verbs-dataset-390 = preach
verbs-dataset-391 = precede
verbs-dataset-392 = prefer
verbs-dataset-393 = prepare
verbs-dataset-394 = present
verbs-dataset-395 = preserve
verbs-dataset-396 = press
verbs-dataset-397 = pretend
verbs-dataset-398 = prevent
verbs-dataset-399 = prick
verbs-dataset-400 = print
verbs-dataset-401 = produce
verbs-dataset-402 = program
verbs-dataset-403 = promise
verbs-dataset-404 = protect
verbs-dataset-405 = provide
verbs-dataset-406 = pull
verbs-dataset-407 = pump
verbs-dataset-408 = punch
verbs-dataset-409 = puncture
verbs-dataset-410 = punish
verbs-dataset-411 = push
verbs-dataset-412 = question
verbs-dataset-413 = queue
verbs-dataset-414 = race
verbs-dataset-415 = radiate
verbs-dataset-416 = rain
verbs-dataset-417 = raise
verbs-dataset-418 = reach
verbs-dataset-419 = realise
verbs-dataset-420 = receive
verbs-dataset-421 = recognise
verbs-dataset-422 = record
verbs-dataset-423 = reduce
verbs-dataset-424 = reflect
verbs-dataset-425 = refuse
verbs-dataset-426 = regret
verbs-dataset-427 = reign
verbs-dataset-428 = reject
verbs-dataset-429 = rejoice
verbs-dataset-430 = relax
verbs-dataset-431 = release
verbs-dataset-432 = rely
verbs-dataset-433 = remain
verbs-dataset-434 = remember
verbs-dataset-435 = remind
verbs-dataset-436 = remove
verbs-dataset-437 = repair
verbs-dataset-438 = repeat
verbs-dataset-439 = replace
verbs-dataset-440 = reply
verbs-dataset-441 = report
verbs-dataset-442 = reproduce
verbs-dataset-443 = request
verbs-dataset-444 = rescue
verbs-dataset-445 = retire
verbs-dataset-446 = return
verbs-dataset-447 = rhyme
verbs-dataset-448 = rinse
verbs-dataset-449 = risk
verbs-dataset-450 = rob
verbs-dataset-451 = rock
verbs-dataset-452 = roll
verbs-dataset-453 = rot
verbs-dataset-454 = rub
verbs-dataset-455 = ruin
verbs-dataset-456 = rule
verbs-dataset-457 = rush
verbs-dataset-458 = sack
verbs-dataset-459 = sail
verbs-dataset-460 = satisfy
verbs-dataset-461 = save
verbs-dataset-462 = saw
verbs-dataset-463 = scare
verbs-dataset-464 = scatter
verbs-dataset-465 = scold
verbs-dataset-466 = scorch
verbs-dataset-467 = scrape
verbs-dataset-468 = scratch
verbs-dataset-469 = scream
verbs-dataset-470 = screw
verbs-dataset-471 = scribble
verbs-dataset-472 = scrub
verbs-dataset-473 = seal
verbs-dataset-474 = search
verbs-dataset-475 = separate
verbs-dataset-476 = serve
verbs-dataset-477 = settle
verbs-dataset-478 = shade
verbs-dataset-479 = share
verbs-dataset-480 = shave
verbs-dataset-481 = shelter
verbs-dataset-482 = shiver
verbs-dataset-483 = shock
verbs-dataset-484 = shop
verbs-dataset-485 = shriek
verbs-dataset-486 = shrug
verbs-dataset-487 = sigh
verbs-dataset-488 = sign
verbs-dataset-489 = signal
verbs-dataset-490 = sin
verbs-dataset-491 = sip
verbs-dataset-492 = ski
verbs-dataset-493 = skip
verbs-dataset-494 = slap
verbs-dataset-495 = slip
verbs-dataset-496 = slow
verbs-dataset-497 = smash
verbs-dataset-498 = smell
verbs-dataset-499 = smile
verbs-dataset-500 = smoke
verbs-dataset-501 = snatch
verbs-dataset-502 = sneeze
verbs-dataset-503 = sniff
verbs-dataset-504 = snore
verbs-dataset-505 = snow
verbs-dataset-506 = soak
verbs-dataset-507 = soothe
verbs-dataset-508 = sound
verbs-dataset-509 = spare
verbs-dataset-510 = spark
verbs-dataset-511 = sparkle
verbs-dataset-512 = spell
verbs-dataset-513 = spill
verbs-dataset-514 = spoil
verbs-dataset-515 = spot
verbs-dataset-516 = spray
verbs-dataset-517 = sprout
verbs-dataset-518 = squash
verbs-dataset-519 = squeak
verbs-dataset-520 = squeal
verbs-dataset-521 = squeeze
verbs-dataset-522 = stain
verbs-dataset-523 = stamp
verbs-dataset-524 = stare
verbs-dataset-525 = start
verbs-dataset-526 = stay
verbs-dataset-527 = steer
verbs-dataset-528 = step
verbs-dataset-529 = stir
verbs-dataset-530 = stitch
verbs-dataset-531 = stop
verbs-dataset-532 = store
verbs-dataset-533 = strap
verbs-dataset-534 = strengthen
verbs-dataset-535 = stretch
verbs-dataset-536 = stroke
verbs-dataset-537 = stuff
verbs-dataset-538 = subtract
verbs-dataset-539 = succeed
verbs-dataset-540 = suck
verbs-dataset-541 = suffer
verbs-dataset-542 = suggest
verbs-dataset-543 = suit
verbs-dataset-544 = supply
verbs-dataset-545 = support
verbs-dataset-546 = suppose
verbs-dataset-547 = surprise
verbs-dataset-548 = surround
verbs-dataset-549 = suspect
verbs-dataset-550 = suspend
verbs-dataset-551 = switch
verbs-dataset-552 = talk
verbs-dataset-553 = tame
verbs-dataset-554 = tap
verbs-dataset-555 = taste
verbs-dataset-556 = tease
verbs-dataset-557 = telephone
verbs-dataset-558 = tempt
verbs-dataset-559 = terrify
verbs-dataset-560 = test
verbs-dataset-561 = thank
verbs-dataset-562 = thaw
verbs-dataset-563 = tick
verbs-dataset-564 = tickle
verbs-dataset-565 = tie
verbs-dataset-566 = time
verbs-dataset-567 = tip
verbs-dataset-568 = tire
verbs-dataset-569 = touch
verbs-dataset-570 = tour
verbs-dataset-571 = tow
verbs-dataset-572 = trace
verbs-dataset-573 = trade
verbs-dataset-574 = train
verbs-dataset-575 = transport
verbs-dataset-576 = trap
verbs-dataset-577 = travel
verbs-dataset-578 = treat
verbs-dataset-579 = tremble
verbs-dataset-580 = trick
verbs-dataset-581 = trip
verbs-dataset-582 = trot
verbs-dataset-583 = trouble
verbs-dataset-584 = trust
verbs-dataset-585 = try
verbs-dataset-586 = tug
verbs-dataset-587 = tumble
verbs-dataset-588 = turn
verbs-dataset-589 = twist
verbs-dataset-590 = type
verbs-dataset-591 = unfasten
verbs-dataset-592 = unite
verbs-dataset-593 = unlock
verbs-dataset-594 = unpack
verbs-dataset-595 = untidy
verbs-dataset-596 = use
verbs-dataset-597 = vanish
verbs-dataset-598 = visit
verbs-dataset-599 = wail
verbs-dataset-600 = wait
verbs-dataset-601 = walk
verbs-dataset-602 = wander
verbs-dataset-603 = want
verbs-dataset-604 = warm
verbs-dataset-605 = warn
verbs-dataset-606 = wash
verbs-dataset-607 = waste
verbs-dataset-608 = watch
verbs-dataset-609 = water
verbs-dataset-610 = wave
verbs-dataset-611 = weigh
verbs-dataset-612 = welcome
verbs-dataset-613 = whine
verbs-dataset-614 = whip
verbs-dataset-615 = whirl
verbs-dataset-616 = whistle
verbs-dataset-617 = wink
verbs-dataset-618 = wipe
verbs-dataset-619 = wish
verbs-dataset-620 = wobble
verbs-dataset-621 = wonder
verbs-dataset-622 = work
verbs-dataset-623 = worry
verbs-dataset-624 = wrap
verbs-dataset-625 = wreck
verbs-dataset-626 = wrestle
verbs-dataset-627 = wriggle
verbs-dataset-628 = yawn
verbs-dataset-629 = yell
verbs-dataset-630 = zip
verbs-dataset-631 = zoom

View File

@@ -3,8 +3,10 @@ delivery-already-opened-examine = It was already opened.
delivery-recipient-no-name = Unnamed
delivery-recipient-no-job = Unknown
delivery-unlocked = You unlock the {$delivery} with your fingerprint.
delivery-opened = You open the {$delivery}.
delivery-unlocked-self = You unlock the {$delivery} with your fingerprint.
delivery-opened-self = You open the {$delivery}.
delivery-unlocked-others = {CAPITALIZE($recipient)} unlocked the {$delivery} with {POSS-ADJ($possadj)} fingerprint.
delivery-opened-others = {CAPITALIZE($recipient)} opened the {$delivery}.
delivery-unlock-verb = Unlock
delivery-open-verb = Open

View File

@@ -2,4 +2,5 @@ cmd-planet-desc = Converts the supplied map into a planet with some specific bio
cmd-planet-help = {$command} <mapid> <biome>.
cmd-planet-args = Requires 2 args only.
cmd-planet-map = Unable to parse {$map} as an existing map.
cmd-planet-map-prototype = Unable to index {$prototype} as an existing biome template prototype.
cmd-planet-success = Set map {$mapId} to Planet. NOTE! You will need to load the map (either onto a new map or by restarting the game) for atmospherics to work.

View File

@@ -20,6 +20,7 @@ steal-target-groups-stamps = stamp
steal-target-groups-door-remotes = door remote
steal-target-groups-encryption-keys = encryption key
steal-target-groups-technology-disks = technology disk
steal-target-groups-mail = mail
steal-target-groups-id-cards = ID Card
steal-target-groups-lamps = LAMP

File diff suppressed because it is too large Load Diff

View File

@@ -1,11 +1,11 @@
meta:
format: 7
category: Map
engineVersion: 247.2.0
engineVersion: 248.0.0
forkId: ""
forkVersion: ""
time: 02/26/2025 01:28:50
entityCount: 37721
time: 03/09/2025 09:10:11
entityCount: 37722
maps:
- 353
grids:
@@ -14312,7 +14312,7 @@ entities:
1: 2036
16,31:
0: 7
5: 60928
2: 60928
13,33:
1: 30583
13,34:
@@ -14329,32 +14329,32 @@ entities:
1: 61437
15,34:
0: 4371
2: 52224
3: 8
3: 52224
4: 8
15,35:
0: 8977
2: 12
3: 34816
3: 12
4: 34816
15,33:
0: 8742
3: 34816
4: 34816
15,36:
0: 17954
3: 8
4: 8
16,32:
4: 30464
5: 14
5: 30464
2: 14
16,33:
4: 7
3: 13056
5: 7
4: 13056
0: 34816
16,34:
3: 3
2: 4352
4: 3
3: 4352
0: 52360
16,35:
2: 1
3: 13056
3: 1
4: 13056
0: 34956
13,36:
1: 32624
@@ -14373,13 +14373,13 @@ entities:
1: 8739
0: 2184
16,36:
3: 30467
4: 30467
0: 8
16,37:
3: 60935
4: 60935
16,38:
0: 3840
3: 14
4: 14
16,39:
1: 47295
17,2:
@@ -14656,9 +14656,9 @@ entities:
1: 13107
0: 34944
20,32:
3: 65504
4: 65504
20,33:
3: 239
4: 239
1: 61440
20,34:
1: 65535
@@ -14973,7 +14973,7 @@ entities:
1: 49073
21,32:
1: 34952
3: 4352
4: 4352
0: 8736
22,32:
1: 48059
@@ -14994,7 +14994,7 @@ entities:
24,31:
1: 53503
21,33:
3: 1
4: 1
1: 64136
0: 34
21,34:
@@ -15330,59 +15330,59 @@ entities:
24,35:
1: 1638
25,32:
3: 4592
4: 4592
0: 58880
25,33:
3: 4369
4: 4369
0: 25828
25,34:
3: 6007
4: 6007
0: 24576
25,35:
3: 4369
4: 4369
0: 58596
25,36:
3: 241
4: 241
0: 6
1: 28672
26,32:
3: 35056
4: 35056
0: 29952
26,33:
0: 4593
26,35:
0: 29169
3: 32768
4: 32768
26,34:
0: 4465
3: 2184
4: 2184
26,36:
0: 5
3: 248
4: 248
1: 61440
27,32:
3: 13296
4: 13296
0: 50176
27,33:
0: 4592
27,34:
3: 819
4: 819
0: 4288
27,35:
0: 49393
3: 12288
4: 12288
27,36:
3: 243
4: 243
0: 4
1: 61440
28,32:
3: 240
4: 240
0: 64768
28,33:
0: 54773
28,34:
0: 53521
3: 3276
4: 3276
28,35:
0: 62965
24,37:
@@ -15400,7 +15400,7 @@ entities:
27,38:
1: 65423
28,36:
3: 240
4: 240
1: 56320
0: 13
28,37:
@@ -15651,7 +15651,7 @@ entities:
1: 28927
29,32:
1: 1092
3: 4368
4: 4368
30,29:
1: 65527
30,30:
@@ -15677,16 +15677,16 @@ entities:
32,31:
1: 49075
29,33:
3: 4369
4: 4369
1: 52428
29,34:
3: 4369
4: 4369
1: 52428
29,35:
3: 4369
4: 4369
1: 3276
29,36:
3: 17
4: 17
1: 25668
30,34:
1: 61423
@@ -16164,6 +16164,21 @@ entities:
- 0
- 0
- 0
- volume: 2500
temperature: 293.15
moles:
- 6666.982
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- volume: 2500
temperature: 293.15
moles:
@@ -16209,21 +16224,6 @@ entities:
- 0
- 0
- 0
- volume: 2500
temperature: 293.15
moles:
- 6666.982
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- volume: 2500
temperature: 235
moles:
@@ -86604,6 +86604,13 @@ entities:
- type: Transform
pos: 65.5,143.5
parent: 1
- proto: CargoMailTeleporter
entities:
- uid: 37722
components:
- type: Transform
pos: 148.5,111.5
parent: 1
- proto: Carpet
entities:
- uid: 434

View File

@@ -1,6 +1,18 @@
meta:
format: 6
postmapinit: false
format: 7
category: Map
engineVersion: 247.2.0
forkId: ""
forkVersion: ""
time: 03/08/2025 04:20:34
entityCount: 22549
maps:
- 17546
grids:
- 2
- 21128
orphans: []
nullspace: []
tilemap:
9: Space
84: FloorArcadeBlue2
@@ -113,7 +125,7 @@ entities:
version: 6
1,0:
ind: 1,0
tiles: CAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAAEAAAAAADEAAAAAAACAAAAAAACAAAAAAACAAAAAAAGAAAAAABGAAAAAACGAAAAAADGAAAAAACGAAAAAADIQAAAAAAIQAAAAAAIQAAAAAACAAAAAAADwAAAAABCAAAAAAACAAAAAAACAAAAAAADAAAAAAACAAAAAAACAAAAAAADwAAAAABDwAAAAAADwAAAAACDwAAAAADDwAAAAACDwAAAAABDwAAAAADDwAAAAAADwAAAAAADwAAAAAAGAAAAAAADwAAAAADDwAAAAADCAAAAAAACAAAAAAACAAAAAAADwAAAAAAIAAAAAACIAAAAAABGAAAAAACGAAAAAADNQAAAAAANQAAAAAANQAAAAAAGAAAAAAAGAAAAAABGAAAAAABGAAAAAABGAAAAAADCAAAAAAACAAAAAAACAAAAAAADwAAAAAAIAAAAAACDwAAAAADDwAAAAABDwAAAAADFwAAAAAAFwAAAAAAFwAAAAAADwAAAAABDwAAAAAAGAAAAAACDwAAAAABDwAAAAAACAAAAAAACAAAAAAACAAAAAAADwAAAAACGAAAAAAADwAAAAACCAAAAAAACAAAAAAAGAAAAAACGAAAAAAAGAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAAGAAAAAADGAAAAAACGAAAAAAACAAAAAAAFwAAAAABFwAAAAADFwAAAAAADwAAAAAADwAAAAACDwAAAAACCAAAAAAADwAAAAACDwAAAAACCAAAAAAACAAAAAAACAAAAAAADwAAAAADGAAAAAACDwAAAAABCAAAAAAAFwAAAAADFwAAAAADFwAAAAAADwAAAAADDwAAAAABDwAAAAABDwAAAAACDwAAAAAADwAAAAAACAAAAAAACAAAAAAACAAAAAAADwAAAAAAGAAAAAACDwAAAAABCAAAAAAAFwAAAAAAFwAAAAABFwAAAAACDwAAAAACDwAAAAACDwAAAAACCAAAAAAADwAAAAABDwAAAAABCAAAAAAACAAAAAAACAAAAAAADwAAAAAAGAAAAAADDwAAAAACCAAAAAAACAAAAAAACAAAAAAACAAAAAAADwAAAAABCAAAAAAACAAAAAAACAAAAAAADwAAAAADDwAAAAADCAAAAAAACAAAAAAACAAAAAAADwAAAAABGAAAAAADDwAAAAABDwAAAAADDwAAAAACDwAAAAADDwAAAAACDwAAAAAADwAAAAACDwAAAAADCAAAAAAADwAAAAABDwAAAAAACAAAAAAACAAAAAAACAAAAAAADwAAAAACGAAAAAADDwAAAAACGAAAAAADGAAAAAAACAAAAAAAGAAAAAADGAAAAAAADwAAAAADDwAAAAACCAAAAAAADwAAAAABCAAAAAAACAAAAAAACAAAAAAACAAAAAAADwAAAAAAGAAAAAAADwAAAAADGAAAAAADGAAAAAADNgAAAAABGAAAAAABGAAAAAAADwAAAAAADwAAAAADCAAAAAAADwAAAAABDwAAAAACCAAAAAAACAAAAAAACAAAAAAADwAAAAABGAAAAAABDwAAAAABGAAAAAAAGAAAAAABDwAAAAABGAAAAAABGAAAAAAADwAAAAACDwAAAAACCAAAAAAADwAAAAADDwAAAAACCAAAAAAACAAAAAAACAAAAAAADwAAAAACGAAAAAADDwAAAAAAGAAAAAADGAAAAAAADwAAAAAAGAAAAAABGAAAAAACDwAAAAADDwAAAAADCAAAAAAADwAAAAADDwAAAAACCAAAAAAACAAAAAAACAAAAAAADwAAAAADGAAAAAACDwAAAAADGAAAAAADGAAAAAABCAAAAAAAGAAAAAABGAAAAAADDwAAAAAADwAAAAACCAAAAAAADwAAAAAADwAAAAAC
tiles: CAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAAEAAAAAADEAAAAAAACAAAAAAACAAAAAAACAAAAAAAGAAAAAABGAAAAAACGAAAAAADGAAAAAACGAAAAAADIQAAAAAAIQAAAAAAIQAAAAAACAAAAAAADwAAAAABCAAAAAAACAAAAAAACAAAAAAADAAAAAAACAAAAAAACAAAAAAADwAAAAABDwAAAAAADwAAAAACDwAAAAADDwAAAAACDwAAAAABDwAAAAADDwAAAAAADwAAAAAADwAAAAAAGAAAAAAADwAAAAADDwAAAAADCAAAAAAACAAAAAAACAAAAAAADwAAAAAAIAAAAAACIAAAAAABGAAAAAACGAAAAAADGAAAAAAAGAAAAAAAGAAAAAAAGAAAAAAAGAAAAAABGAAAAAABGAAAAAABGAAAAAADCAAAAAAACAAAAAAACAAAAAAADwAAAAAAIAAAAAACDwAAAAADDwAAAAABDwAAAAADDwAAAAAADwAAAAAADwAAAAAADwAAAAABDwAAAAAAGAAAAAACDwAAAAABDwAAAAAACAAAAAAACAAAAAAACAAAAAAADwAAAAACGAAAAAAADwAAAAACCAAAAAAACAAAAAAAGAAAAAACGAAAAAAAGAAAAAAADwAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAACAAAAAAAGAAAAAADGAAAAAACGAAAAAAACAAAAAAADwAAAAAADwAAAAAADwAAAAAADwAAAAAADwAAAAACDwAAAAACCAAAAAAADwAAAAACDwAAAAACCAAAAAAACAAAAAAACAAAAAAADwAAAAADGAAAAAACDwAAAAABCAAAAAAADwAAAAAAGAAAAAAAGAAAAAAAGAAAAAAAGAAAAAAADwAAAAABDwAAAAACDwAAAAAADwAAAAAACAAAAAAACAAAAAAACAAAAAAADwAAAAAAGAAAAAACDwAAAAABCAAAAAAADwAAAAAADwAAAAAADwAAAAAADwAAAAACDwAAAAACDwAAAAACCAAAAAAADwAAAAABDwAAAAABCAAAAAAACAAAAAAACAAAAAAADwAAAAAAGAAAAAADDwAAAAACCAAAAAAACAAAAAAACAAAAAAACAAAAAAADwAAAAABCAAAAAAACAAAAAAACAAAAAAADwAAAAADDwAAAAADCAAAAAAACAAAAAAACAAAAAAADwAAAAABGAAAAAADDwAAAAABDwAAAAADDwAAAAACDwAAAAADDwAAAAACDwAAAAAADwAAAAACDwAAAAADCAAAAAAADwAAAAABDwAAAAAACAAAAAAACAAAAAAACAAAAAAADwAAAAACGAAAAAADDwAAAAACGAAAAAADGAAAAAAACAAAAAAAGAAAAAADGAAAAAAADwAAAAADDwAAAAACCAAAAAAADwAAAAABCAAAAAAACAAAAAAACAAAAAAACAAAAAAADwAAAAAAGAAAAAAADwAAAAADGAAAAAADGAAAAAADNgAAAAABGAAAAAABGAAAAAAADwAAAAAADwAAAAADCAAAAAAADwAAAAABDwAAAAACCAAAAAAACAAAAAAACAAAAAAADwAAAAABGAAAAAABDwAAAAABGAAAAAAAGAAAAAABDwAAAAABGAAAAAABGAAAAAAADwAAAAACDwAAAAACCAAAAAAADwAAAAADDwAAAAACCAAAAAAACAAAAAAACAAAAAAADwAAAAACGAAAAAADDwAAAAAAGAAAAAADGAAAAAAADwAAAAAAGAAAAAABGAAAAAACDwAAAAADDwAAAAADCAAAAAAADwAAAAADDwAAAAACCAAAAAAACAAAAAAACAAAAAAADwAAAAADGAAAAAACDwAAAAADGAAAAAADGAAAAAABCAAAAAAAGAAAAAABGAAAAAADDwAAAAAADwAAAAACCAAAAAAADwAAAAAADwAAAAAC
version: 6
2,-2:
ind: 2,-2
@@ -696,15 +708,6 @@ entities:
1195: -4,48
1212: 23,15
1213: 23,13
1221: 23,8
1222: 23,7
1223: 23,6
1224: 24,6
1225: 24,7
1226: 24,8
1227: 25,6
1234: 25,7
1235: 25,8
1236: 26,20
1237: 25,20
1238: 24,20
@@ -1590,9 +1593,6 @@ entities:
1185: -4,45
1186: -4,46
1187: -4,47
1231: 26,6
1232: 26,7
1233: 26,8
1360: 58,-35
1369: 56,-35
1787: 70,-30
@@ -1805,7 +1805,6 @@ entities:
id: BrickTileWhiteCornerNe
decals:
1294: 28,15
1327: 28,8
1344: 36,22
1345: 27,14
- node:
@@ -1866,7 +1865,6 @@ entities:
id: BrickTileWhiteCornerSe
decals:
1293: 28,10
1326: 28,6
1342: 36,17
1346: 27,11
- node:
@@ -1919,7 +1917,7 @@ entities:
color: '#A4610696'
id: BrickTileWhiteInnerNe
decals:
1329: 26,8
7665: 23,6
- node:
color: '#DE3A3A96'
id: BrickTileWhiteInnerNe
@@ -1937,6 +1935,11 @@ entities:
1398: 45,5
6039: 52,-1
6056: 51,-7
- node:
color: '#A4610696'
id: BrickTileWhiteInnerNw
decals:
7666: 28,6
- node:
color: '#334E6DC8'
id: BrickTileWhiteInnerSe
@@ -1955,7 +1958,7 @@ entities:
id: BrickTileWhiteInnerSe
decals:
1324: 31,23
1328: 26,6
7667: 23,8
- node:
color: '#DE3A3A96'
id: BrickTileWhiteInnerSe
@@ -1977,6 +1980,7 @@ entities:
id: BrickTileWhiteInnerSw
decals:
1325: 30,17
7668: 28,8
- node:
color: '#DE3A3A96'
id: BrickTileWhiteInnerSw
@@ -2060,7 +2064,6 @@ entities:
color: '#A4610696'
id: BrickTileWhiteLineE
decals:
1277: 28,7
1286: 28,14
1287: 28,13
1288: 28,12
@@ -2082,6 +2085,7 @@ entities:
1339: 36,18
1349: 27,13
1350: 27,12
7669: 23,7
- node:
color: '#D381C996'
id: BrickTileWhiteLineE
@@ -2198,12 +2202,15 @@ entities:
color: '#A4610696'
id: BrickTileWhiteLineN
decals:
1275: 27,8
1283: 25,15
1284: 26,15
1285: 27,15
1340: 34,22
1341: 35,22
7661: 27,6
7662: 26,6
7663: 25,6
7664: 24,6
- node:
color: '#D381C996'
id: BrickTileWhiteLineN
@@ -2343,7 +2350,6 @@ entities:
color: '#A4610696'
id: BrickTileWhiteLineS
decals:
1276: 27,6
1290: 25,10
1291: 26,10
1292: 27,10
@@ -2356,6 +2362,10 @@ entities:
1330: 34,17
1331: 35,17
1890: 24,-43
7670: 27,8
7671: 26,8
7672: 25,8
7673: 24,8
- node:
color: '#D381C996'
id: BrickTileWhiteLineS
@@ -2505,6 +2515,7 @@ entities:
1338: 33,21
1351: 26,12
1352: 26,13
7674: 28,7
- node:
color: '#D381C996'
id: BrickTileWhiteLineW
@@ -3007,9 +3018,6 @@ entities:
409: -23,-26
1214: 23,14
1216: 24,12
1228: 25,6
1229: 24,6
1230: 23,6
1247: 24,21
1248: 25,21
1249: 26,21
@@ -3140,9 +3148,6 @@ entities:
color: '#FFFFFFFF'
id: Delivery
decals:
2839: 24,5
2840: 25,5
2841: 26,5
2842: 14,1
2843: 14,-12
2844: 0,14
@@ -3354,14 +3359,10 @@ entities:
5327: 32,8
5328: 34,9
5329: 32,7
5330: 26,7
5331: 24,7
5332: 24,3
5333: 24,2
5334: 23,2
5335: 20,6
5336: 20,9
5337: 23,3
5338: 32,3
5339: 34,2
5340: 32,-2
@@ -4263,10 +4264,6 @@ entities:
3841: 24,10
3842: 26,10
3843: 27,10
3844: 28,7
3845: 27,8
3846: 27,6
3847: 28,6
3848: 30,6
3849: 30,8
3850: 30,9
@@ -4309,7 +4306,6 @@ entities:
3888: 33,15
3889: 33,15
3890: 32,13
3891: 26,7
3892: 23,2
3893: 26,2
3894: 20,2
@@ -5560,6 +5556,9 @@ entities:
7590: -45,23
7591: -44,24
7609: -34,35
7675: 26,4
7676: 25,4
7688: 27,4
- node:
cleanable: True
angle: 1.5707963267948966 rad
@@ -5593,6 +5592,13 @@ entities:
6285: 91,-20
6288: 87,-20
6291: 88,-19
- node:
cleanable: True
angle: -4.71238898038469 rad
color: '#FFFFFFFF'
id: DirtHeavyMonotile
decals:
7687: 27,3
- node:
color: '#FFFFFFFF'
id: DirtHeavyMonotile
@@ -5656,8 +5662,6 @@ entities:
3058: 20,6
3059: 20,3
3060: 22,3
3061: 25,3
3062: 27,3
3063: 30,3
3064: 33,3
3065: 36,3
@@ -5683,7 +5687,6 @@ entities:
3085: 35,3
3086: 32,3
3087: 31,3
3088: 26,3
3089: 22,3
3090: 20,6
3091: 20,9
@@ -5797,14 +5800,6 @@ entities:
3200: 62,0
3201: 62,3
3202: 62,4
3203: 28,3
3204: 28,3
3205: 24,8
3206: 24,6
3207: 23,8
3208: 25,7
3209: 24,7
3210: 24,6
3211: 25,11
3212: 25,13
3213: 25,14
@@ -6030,7 +6025,6 @@ entities:
3433: 5,-15
3434: 4,-15
3435: 4,-15
3436: 25,7
3437: 20,16
3438: 20,18
3439: 15,26
@@ -6546,6 +6540,12 @@ entities:
7592: -44,23
7610: -33,35
7613: -6,-42
7677: 27,3
7678: 28,3
7679: 26,3
7683: 24,3
7691: 26,7
7708: 24,7
- node:
cleanable: True
angle: 1.5707963267948966 rad
@@ -6557,6 +6557,9 @@ entities:
6312: 16,-30
6313: 12,-30
6314: 12,-30
7684: 26,3
7685: 25,3
7686: 23,3
- node:
cleanable: True
angle: -6.283185307179586 rad
@@ -6666,6 +6669,15 @@ entities:
7611: -34,34
7614: -5,-42
7615: -5,-42
7693: 24,6
7694: 25,6
7695: 23,8
7696: 25,8
7697: 26,8
7698: 27,8
7699: 28,7
7700: 28,6
7707: 27,8
- node:
cleanable: True
angle: 1.5707963267948966 rad
@@ -6759,6 +6771,14 @@ entities:
7612: -33,34
7616: -4,-42
7617: -4,-40
7689: 28,4
7690: 24,4
7701: 28,7
7702: 28,6
7703: 27,6
7704: 26,6
7705: 24,8
7706: 25,8
- node:
cleanable: True
angle: 1.5707963267948966 rad
@@ -8001,9 +8021,6 @@ entities:
1600: -14,21
1601: -15,21
1602: -16,21
1616: 28,4
1617: 27,4
1618: 23,4
1619: 22,4
1823: 57,-17
1824: 58,-17
@@ -8264,9 +8281,12 @@ entities:
1610: 21,5
1611: 21,4
1612: 22,4
1613: 23,4
1614: 27,4
1615: 28,4
7709: 23,4
7710: 24,4
7711: 25,4
7712: 26,4
7713: 27,4
7714: 28,4
- node:
color: '#D381C996'
id: QuarterTileOverlayGreyscale90
@@ -11762,7 +11782,6 @@ entities:
- type: MovedGrids
- type: Broadphase
- type: OccluderTree
- type: LoadedMap
- type: Parallax
parallax: CoreStation
- uid: 21128
@@ -14394,13 +14413,6 @@ entities:
- type: Transform
pos: 26.5,16.5
parent: 2
- uid: 5492
components:
- type: MetaData
name: Cargo break room airlock
- type: Transform
pos: 30.5,11.5
parent: 2
- uid: 5571
components:
- type: MetaData
@@ -14410,10 +14422,16 @@ entities:
parent: 2
- proto: AirlockCargoLocked
entities:
- uid: 3105
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 30.5,11.5
parent: 2
- uid: 4342
components:
- type: MetaData
name: Cargo secure storage airlock
name: Cargo mail room airlock
- type: Transform
rot: -1.5707963267948966 rad
pos: 26.5,9.5
@@ -14426,6 +14444,14 @@ entities:
rot: -1.5707963267948966 rad
pos: 24.5,10.5
parent: 2
- uid: 5564
components:
- type: MetaData
name: Cargo mail room airlock
- type: Transform
rot: -1.5707963267948966 rad
pos: 27.5,5.5
parent: 2
- proto: AirlockChapelLocked
entities:
- uid: 14
@@ -21341,21 +21367,6 @@ entities:
- type: Transform
pos: 3.5,-13.5
parent: 2
- uid: 5464
components:
- type: Transform
pos: 24.5,5.5
parent: 2
- uid: 5465
components:
- type: Transform
pos: 25.5,5.5
parent: 2
- uid: 5466
components:
- type: Transform
pos: 26.5,5.5
parent: 2
- uid: 5516
components:
- type: Transform
@@ -22117,12 +22128,6 @@ entities:
rot: -1.5707963267948966 rad
pos: -34.5,35.5
parent: 2
- uid: 21606
components:
- type: Transform
rot: 3.141592653589793 rad
pos: 27.5,5.5
parent: 2
- uid: 21610
components:
- type: Transform
@@ -49730,6 +49735,13 @@ entities:
- type: Transform
pos: 74.5,-11.5
parent: 2
- proto: CargoMailTeleporter
entities:
- uid: 5466
components:
- type: Transform
pos: 25.5,8.5
parent: 2
- proto: Carpet
entities:
- uid: 4993
@@ -58154,12 +58166,6 @@ entities:
rot: -1.5707963267948966 rad
pos: 28.5,-31.5
parent: 2
- uid: 4306
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 28.5,6.5
parent: 2
- uid: 4318
components:
- type: Transform
@@ -59603,6 +59609,11 @@ entities:
- type: Transform
pos: 42.5,11.5
parent: 2
- uid: 22481
components:
- type: Transform
pos: 25.535229,6.5731683
parent: 2
- proto: ChairPilotSeat
entities:
- uid: 21234
@@ -61440,6 +61451,15 @@ entities:
- type: Transform
pos: -35.36938,-10.505542
parent: 2
- proto: ClothingMaskBlushingMime
entities:
- uid: 8192
components:
- type: Transform
parent: 16657
- type: Physics
canCollide: False
- type: InsideEntityStorage
- proto: ClothingMaskBreath
entities:
- uid: 3602
@@ -61504,15 +61524,6 @@ entities:
- type: Transform
pos: 37.5265,-16.39656
parent: 2
- proto: ClothingMaskSexyMime
entities:
- uid: 8192
components:
- type: Transform
parent: 16657
- type: Physics
canCollide: False
- type: InsideEntityStorage
- proto: ClothingNeckAromanticPin
entities:
- uid: 21450
@@ -62864,16 +62875,16 @@ entities:
bodyType: Static
- proto: CrateEmptySpawner
entities:
- uid: 3107
components:
- type: Transform
pos: 30.5,19.5
parent: 2
- uid: 4613
components:
- type: Transform
pos: 82.5,-29.5
parent: 2
- uid: 5564
components:
- type: Transform
pos: 24.5,7.5
parent: 2
- uid: 5608
components:
- type: Transform
@@ -62944,15 +62955,15 @@ entities:
parent: 2
- proto: CrateFilledSpawner
entities:
- uid: 3106
components:
- type: Transform
pos: 26.5,19.5
parent: 2
- uid: 4260
components:
- type: Transform
pos: 23.5,8.5
parent: 2
- uid: 5565
components:
- type: Transform
pos: 24.5,6.5
pos: 30.5,20.5
parent: 2
- uid: 5610
components:
@@ -63150,7 +63161,7 @@ entities:
- uid: 5752
components:
- type: Transform
pos: 27.538889,17.438148
pos: 27.621338,17.486925
parent: 2
- uid: 12912
components:
@@ -63959,6 +63970,11 @@ entities:
- type: Transform
pos: 58.432995,-15.399401
parent: 2
- uid: 8558
components:
- type: Transform
pos: 24.485939,5.594231
parent: 2
- uid: 15023
components:
- type: Transform
@@ -70991,6 +71007,11 @@ entities:
- type: FaxMachine
name: Quartermaster
destinationAddress: Quartermaster
- uid: 5753
components:
- type: Transform
pos: 23.5,8.5
parent: 2
- uid: 7155
components:
- type: Transform
@@ -71094,6 +71115,11 @@ entities:
parent: 2
- type: Physics
bodyType: Static
- uid: 6481
components:
- type: Transform
pos: 23.5,6.5
parent: 2
- uid: 17533
components:
- type: Transform
@@ -71111,6 +71137,11 @@ entities:
- type: Transform
pos: -50.5,-14.5
parent: 2
- uid: 6482
components:
- type: Transform
pos: 26.5,6.5
parent: 2
- proto: filingCabinetTallRandom
entities:
- uid: 4656
@@ -73978,21 +74009,6 @@ entities:
rot: 1.5707963267948966 rad
pos: 36.5,18.5
parent: 2
- uid: 8557
components:
- type: Transform
pos: 26.5,6.5
parent: 2
- uid: 8558
components:
- type: Transform
pos: 25.5,6.5
parent: 2
- uid: 8559
components:
- type: Transform
pos: 24.5,6.5
parent: 2
- uid: 8583
components:
- type: Transform
@@ -75849,6 +75865,16 @@ entities:
- 22150
- 22432
- 22431
- uid: 22528
components:
- type: Transform
pos: 24.5,5.5
parent: 2
- uid: 22529
components:
- type: Transform
pos: 25.5,5.5
parent: 2
- proto: Fireplace
entities:
- uid: 1067
@@ -102606,6 +102632,11 @@ entities:
- type: Transform
pos: 28.47453,10.806109
parent: 2
- uid: 6480
components:
- type: Transform
pos: 24.579689,8.521026
parent: 2
- uid: 7409
components:
- type: Transform
@@ -105530,7 +105561,7 @@ entities:
- uid: 2828
components:
- type: Transform
pos: 28.5,8.5
pos: 27.322725,17.643759
parent: 2
- proto: MedicalBed
entities:
@@ -106711,6 +106742,12 @@ entities:
- type: Transform
pos: 27.520927,-44.445698
parent: 2
- uid: 22530
components:
- type: Transform
rot: 3.141592653589793 rad
pos: 25.505028,5.572786
parent: 2
- proto: PaperBin10
entities:
- uid: 1527
@@ -106776,6 +106813,13 @@ entities:
- type: Transform
pos: 45.5,-23.5
parent: 2
- proto: PaperBin20
entities:
- uid: 8559
components:
- type: Transform
pos: 23.5,7.5
parent: 2
- proto: PaperOffice
entities:
- uid: 1530
@@ -106991,6 +107035,12 @@ entities:
- type: Transform
pos: -61.67519,-24.449446
parent: 2
- uid: 22531
components:
- type: Transform
rot: 3.141592653589793 rad
pos: 25.614403,5.572786
parent: 2
- proto: PersonalAI
entities:
- uid: 3
@@ -107922,6 +107972,11 @@ entities:
- type: Transform
pos: -14.5,34.5
parent: 2
- uid: 5464
components:
- type: Transform
pos: 28.5,8.5
parent: 2
- uid: 5566
components:
- type: Transform
@@ -109328,15 +109383,6 @@ entities:
enabled: False
- type: ApcPowerReceiver
powerLoad: 0
- uid: 4305
components:
- type: Transform
pos: 27.5,4.5
parent: 2
- type: PointLight
enabled: False
- type: ApcPowerReceiver
powerLoad: 0
- uid: 4343
components:
- type: Transform
@@ -111158,11 +111204,6 @@ entities:
rot: 1.5707963267948966 rad
pos: 5.5,33.5
parent: 2
- uid: 5463
components:
- type: Transform
pos: 28.5,8.5
parent: 2
- uid: 5561
components:
- type: Transform
@@ -111231,6 +111272,11 @@ entities:
rot: 1.5707963267948966 rad
pos: 16.5,-47.5
parent: 2
- uid: 8557
components:
- type: Transform
pos: 24.5,8.5
parent: 2
- uid: 9121
components:
- type: Transform
@@ -112286,18 +112332,6 @@ entities:
rot: 3.141592653589793 rad
pos: -43.5,-48.5
parent: 2
- uid: 6479
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 27.5,4.5
parent: 2
- uid: 6480
components:
- type: Transform
rot: 1.5707963267948966 rad
pos: 23.5,4.5
parent: 2
- uid: 7118
components:
- type: Transform
@@ -112581,17 +112615,6 @@ entities:
rot: -1.5707963267948966 rad
pos: -43.5,-29.5
parent: 2
- uid: 6481
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 23.5,3.5
parent: 2
- uid: 6482
components:
- type: Transform
pos: 27.5,3.5
parent: 2
- uid: 7122
components:
- type: Transform
@@ -117925,6 +117948,16 @@ entities:
rot: -1.5707963267948966 rad
pos: 32.5,20.5
parent: 2
- uid: 5757
components:
- type: Transform
pos: 25.5,5.5
parent: 2
- uid: 6479
components:
- type: Transform
pos: 24.5,5.5
parent: 2
- uid: 7033
components:
- type: Transform
@@ -118619,22 +118652,6 @@ entities:
- Pressed: Toggle
22861:
- Pressed: Toggle
- uid: 5757
components:
- type: MetaData
name: Blast doors button
- type: Transform
rot: 3.141592653589793 rad
pos: 27.5,5.5
parent: 2
- type: DeviceLinkSource
linkedPorts:
5465:
- Pressed: Toggle
5466:
- Pressed: Toggle
5464:
- Pressed: Toggle
- uid: 6961
components:
- type: MetaData
@@ -120176,6 +120193,12 @@ entities:
parent: 2
- proto: SignMail
entities:
- uid: 5492
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 26.5,5.5
parent: 2
- uid: 6815
components:
- type: Transform
@@ -121329,10 +121352,10 @@ entities:
parent: 2
- proto: SpawnMechRipley
entities:
- uid: 22481
- uid: 5463
components:
- type: Transform
pos: 27.5,8.5
pos: 25.5,21.5
parent: 2
- proto: SpawnMobAlexander
entities:
@@ -121997,23 +122020,6 @@ entities:
- type: Transform
pos: 58.459965,18.571264
parent: 2
- proto: StairDark
entities:
- uid: 3105
components:
- type: Transform
pos: 26.5,4.5
parent: 2
- uid: 3106
components:
- type: Transform
pos: 25.5,4.5
parent: 2
- uid: 3107
components:
- type: Transform
pos: 24.5,4.5
parent: 2
- proto: Stairs
entities:
- uid: 2682
@@ -126426,6 +126432,18 @@ entities:
rot: -1.5707963267948966 rad
pos: 28.5,10.5
parent: 2
- uid: 4274
components:
- type: Transform
rot: 3.141592653589793 rad
pos: 23.5,8.5
parent: 2
- uid: 4305
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 24.5,5.5
parent: 2
- uid: 4361
components:
- type: Transform
@@ -126573,6 +126591,12 @@ entities:
rot: 1.5707963267948966 rad
pos: 22.5,13.5
parent: 2
- uid: 5465
components:
- type: Transform
rot: 3.141592653589793 rad
pos: 23.5,7.5
parent: 2
- uid: 5527
components:
- type: Transform
@@ -126583,6 +126607,12 @@ entities:
- type: Transform
pos: 32.5,20.5
parent: 2
- uid: 5565
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 25.5,5.5
parent: 2
- uid: 5621
components:
- type: Transform
@@ -130470,11 +130500,6 @@ entities:
- type: Transform
pos: 29.5,5.5
parent: 2
- uid: 4274
components:
- type: Transform
pos: 27.5,5.5
parent: 2
- uid: 4278
components:
- type: Transform
@@ -134707,6 +134732,12 @@ entities:
rot: -1.5707963267948966 rad
pos: 9.5,-49.5
parent: 2
- uid: 21606
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 26.5,5.5
parent: 2
- uid: 21671
components:
- type: Transform
@@ -148878,16 +148909,17 @@ entities:
- type: Transform
pos: -3.4365067,-12.554331
parent: 2
- uid: 4306
components:
- type: Transform
rot: -1.5707963267948966 rad
pos: 27.666475,17.318974
parent: 2
- uid: 5745
components:
- type: Transform
pos: 45.357437,14.368599
parent: 2
- uid: 5753
components:
- type: Transform
pos: 27.456333,17.465668
parent: 2
- uid: 15160
components:
- type: Transform

File diff suppressed because it is too large Load Diff

View File

@@ -1,11 +1,11 @@
meta:
format: 7
category: Map
engineVersion: 247.2.0
engineVersion: 248.0.0
forkId: ""
forkVersion: ""
time: 03/08/2025 00:22:15
entityCount: 26217
time: 03/09/2025 09:02:52
entityCount: 26218
maps:
- 1
grids:
@@ -54753,6 +54753,13 @@ entities:
- type: Transform
pos: -129.5,7.5
parent: 2
- proto: CargoMailTeleporter
entities:
- uid: 22056
components:
- type: Transform
pos: -102.5,16.5
parent: 2
- proto: Carpet
entities:
- uid: 1601
@@ -166255,7 +166262,7 @@ entities:
lastSignals:
DoorStatus: True
- type: Door
secondsUntilStateChange: -199285.47
secondsUntilStateChange: -199343.58
state: Opening
- type: Airlock
autoClose: False

View File

@@ -1,3 +1,14 @@
- type: entity
parent: Bookshelf
id: BookshelfFilled
suffix: random filled
components:
- type: EntityTableContainerFill
containers:
storagebase: !type:NestedSelector
tableId: BookshelfEntityTable
# Entity tables
- type: entityTable
id: BookshelfEntityTable
table: !type:AllSelector
@@ -7,64 +18,74 @@
amount: !type:RangeNumberSelector
range: 0, 4
# Guidebooks
- !type:GroupSelector
children:
- id: BookBartendersManual
- id: BookChemicalCompendium
- id: BookEngineersHandbook
- id: BookHowToCookForFortySpaceman
- id: BookHowToKeepStationClean
- id: BookHowToRockAndStone
- id: BookHowToSurvive
- id: BookLeafLoversSecret
- id: BookMedicalReferenceBook
- id: BookScientistsGuidebook
- id: BookSecurity
- id: BookSpaceEncyclopedia
- id: BookSpaceLaw
- id: BookTheBookOfControl
- !type:NestedSelector
tableId: RandomGuidebookTable
# Handwritten books
- !type:GroupSelector
- !type:NestedSelector
rolls: !type:RangeNumberSelector
range: 0, 2
children:
- id: BookAurora
- id: BookCafe
- id: BookEarth
- id: BookFeather
- id: BookIanAntarctica
- id: BookIanArctic
- id: BookIanCity
- id: BookIanDesert
- id: BookIanLostWolfPup
- id: BookIanMountain
- id: BookIanOcean
- id: BookIanRanch
- id: BookInspiration
- id: BookJourney
- id: BookMap
- id: BookMedicalOfficer
- id: BookMorgue
- id: BookNames
- id: BookNarsieLegend
- id: BookPossum
- id: BookRufus
- id: BookSlothClownMMD
- id: BookSlothClownPranks
- id: BookSlothClownSSS
- id: BookStruck
- id: BookSun
- id: BookTemple
- id: BookTruth
- id: BookWatched
- id: BookWorld
tableId: RandomHandwrittenBookTable
- type: entity
id: BookshelfFilled
parent: Bookshelf
suffix: random filled
components:
- type: EntityTableContainerFill
containers:
storagebase: !type:NestedSelector
tableId: BookshelfEntityTable
- type: entityTable
id: RandomHandwrittenBookTable
table: !type:GroupSelector
children:
- id: BookAurora
- id: BookCafe
- id: BookEarth
- id: BookFeather
- id: BookIanAntarctica
- id: BookIanArctic
- id: BookIanCity
- id: BookIanDesert
- id: BookIanLostWolfPup
- id: BookIanMountain
- id: BookIanOcean
- id: BookIanRanch
- id: BookInspiration
- id: BookJourney
- id: BookMap
- id: BookMedicalOfficer
- id: BookMorgue
- id: BookNames
- id: BookNarsieLegend
- id: BookPossum
- id: BookRufus
- id: BookSlothClownMMD
- id: BookSlothClownPranks
- id: BookSlothClownSSS
- id: BookStruck
- id: BookSun
- id: BookTemple
- id: BookTruth
- id: BookWatched
- id: BookWorld
- type: entityTable
id: RandomGuidebookTable
table: !type:GroupSelector
children:
- id: BookBartendersManual
- id: BookChemicalCompendium
- id: BookEngineersHandbook
- id: BookHowToCookForFortySpaceman
- id: BookHowToKeepStationClean
- id: BookHowToRockAndStone
- id: BookHowToSurvive
- id: BookLeafLoversSecret
- id: BookMedicalReferenceBook
- id: BookScientistsGuidebook
- id: BookSecurity
- id: BookSpaceEncyclopedia
- id: BookSpaceLaw
- id: BookTheBookOfControl
- type: entityTable
id: RandomBookTable
table: !type:GroupSelector
children:
- id: BookRandomStory
- !type:NestedSelector
tableId: RandomGuidebookTable
- !type:NestedSelector
tableId: RandomHandwrittenBookTable

View File

@@ -1,399 +1,5 @@
- type: dataset
id: adjectives
- type: localizedDataset
id: Adjectives
values:
- adorable
- adventurous
- aggressive
- alert
- attractive
- average
- beautiful
- blue-eyed
- bloody
- blushing
- bright
- clean
- clear
- cloudy
- colorful
- crowded
- cute
- dark
- drab
- distinct
- dull
- elegant
- excited
- fancy
- filthy
- glamorous
- gleaming
- gorgeous
- graceful
- grotesque
- handsome
- homely
- light
- long
- magnificent
- misty
- motionless
- muddy
- old-fashioned
- plain
- poised
- precious
- quaint
- shiny
- smoggy
- sparkling
- spotless
- stormy
- strange
- ugly
- ugliest
- unsightly
- unusual
- wide-eyed
- alive
- annoying
- bad
- better
- beautiful
- brainy
- breakable
- busy
- careful
- cautious
- clever
- clumsy
- concerned
- crazy
- curious
- dead
- different
- difficult
- doubtful
- easy
- expensive
- famous
- fragile
- frail
- gifted
- helpful
- helpless
- horrible
- important
- impossible
- inexpensive
- innocent
- inquisitive
- modern
- mushy
- odd
- open
- outstanding
- poor
- powerful
- prickly
- puzzled
- real
- rich
- shy
- sleepy
- stupid
- super
- talented
- tame
- tender
- tough
- uninterested
- vast
- wandering
- wild
- wrong
- angry
- annoyed
- anxious
- arrogant
- ashamed
- awful
- bad
- bewildered
- black
- blue
- bored
- clumsy
- combative
- condemned
- confused
- crazy,flipped-out
- creepy
- cruel
- dangerous
- defeated
- defiant
- depressed
- disgusted
- disturbed
- dizzy
- dull
- embarrassed
- envious
- evil
- fierce
- foolish
- frantic
- frightened
- grieving
- grumpy
- helpless
- homeless
- hungry
- hurt
- ill
- itchy
- jealous
- jittery
- lazy
- lonely
- mysterious
- nasty
- naughty
- nervous
- nutty
- obnoxious
- outrageous
- panicky
- repulsive
- scary
- selfish
- sore
- tense
- terrible
- testy
- thoughtless
- tired
- troubled
- upset
- uptight
- weary
- wicked
- worried
- agreeable
- amused
- brave
- calm
- charming
- cheerful
- comfortable
- cooperative
- courageous
- delightful
- determined
- eager
- elated
- enchanting
- encouraging
- energetic
- enthusiastic
- excited
- exuberant
- fair
- faithful
- fantastic
- fine
- friendly
- funny
- gentle
- glorious
- good
- happy
- healthy
- helpful
- hilarious
- jolly
- joyous
- kind
- lively
- lovely
- lucky
- nice
- obedient
- perfect
- pleasant
- proud
- relieved
- silly
- smiling
- splendid
- successful
- thankful
- thoughtful
- victorious
- vivacious
- witty
- wonderful
- zealous
- zany
- broad
- chubby
- crooked
- curved
- deep
- flat
- high
- hollow
- low
- narrow
- round
- shallow
- skinny
- square
- steep
- straight
- wide
- big
- colossal
- fat
- gigantic
- great
- huge
- immense
- large
- little
- mammoth
- massive
- miniature
- petite
- puny
- scrawny
- short
- small
- tall
- teeny
- teeny-tiny
- tiny
- cooing
- deafening
- faint
- harsh
- high-pitched
- hissing
- hushed
- husky
- loud
- melodic
- moaning
- mute
- noisy
- purring
- quiet
- raspy
- resonant
- screeching
- shrill
- silent
- soft
- squealing
- thundering
- voiceless
- whispering
- ancient
- brief
- early
- fast
- late
- long
- modern
- old
- old-fashioned
- quick
- rapid
- short
- slow
- swift
- young
- bitter
- delicious
- fresh
- juicy
- ripe
- rotten
- salty
- sour
- spicy
- stale
- sticky
- strong
- sweet
- tart
- tasteless
- tasty
- thirsty
- fluttering
- fuzzy
- greasy
- grubby
- hard
- hot
- icy
- loose
- melted
- nutritious
- plastic
- prickly
- rainy
- rough
- scattered
- shaggy
- shaky
- sharp
- shivering
- silky
- slimy
- slippery
- smooth
- soft
- solid
- steady
- sticky
- tender
- tight
- uneven
- weak
- wet
- wooden
- yummy
- boiling
- breezy
- broken
- bumpy
- chilly
- cold
- cool
- creepy
- crooked
- cuddly
- curly
- damaged
- damp
- dirty
- dry
- dusty
- filthy
- flaky
- fluffy
- freezing
- hot
- warm
- wet
- abundant
- empty
- few
- heavy
- light
- many
- numerous
- substantial
- capitalist
prefix: adjectives-dataset-
count: 396

View File

@@ -1,12 +1,5 @@
- type: dataset
- type: localizedDataset
id: TraitorCorporations
values:
- "CyberSun Industries"
- "Gorlex Marauders"
- "MI13"
- "Tiger Cooperative"
- "S.E.L.F."
- "Animal Rights Consortium"
- "Donk Corporation"
- "Waffle Corporation"
- "Interdyne Pharmaceutics"
prefix: traitor-corporations-dataset-
count: 9

View File

@@ -1,634 +1,5 @@
- type: dataset
id: verbs
- type: localizedDataset
id: Verbs
values:
- accept
- add
- admire
- admit
- advise
- afford
- agree
- alert
- allow
- amuse
- analyse
- announce
- annoy
- answer
- apologise
- appear
- applaud
- appreciate
- approve
- argue
- arrange
- arrest
- arrive
- ask
- attach
- attack
- attempt
- attend
- attract
- avoid
- back
- bake
- balance
- ban
- bang
- bare
- bat
- bathe
- battle
- beam
- beg
- behave
- belong
- bleach
- bless
- blind
- blink
- blot
- blush
- boast
- boil
- bolt
- bomb
- book
- bore
- borrow
- bounce
- bow
- box
- brake
- brake
- branch
- breathe
- bruise
- brush
- bubble
- bump
- burn
- bury
- buzz
- calculate
- call
- camp
- care
- carry
- carve
- cause
- challenge
- change
- charge
- chase
- cheat
- check
- cheer
- chew
- choke
- chop
- claim
- clap
- clean
- clear
- clip
- close
- coach
- coil
- collect
- colour
- comb
- command
- communicate
- compare
- compete
- complain
- complete
- concentrate
- concern
- confess
- confuse
- connect
- consider
- consist
- contain
- continue
- copy
- correct
- cough
- count
- cover
- crack
- crash
- crawl
- cross
- crush
- cry
- cure
- curl
- curve
- cycle
- dam
- damage
- dance
- dare
- decay
- deceive
- decide
- decorate
- delay
- delight
- deliver
- depend
- describe
- desert
- deserve
- destroy
- detect
- develop
- disagree
- disappear
- disapprove
- disarm
- discover
- dislike
- divide
- double
- doubt
- drag
- drain
- dream
- dress
- drip
- drop
- drown
- drum
- dry
- dust
- earn
- educate
- embarrass
- employ
- empty
- encourage
- end
- enjoy
- enter
- entertain
- escape
- examine
- excite
- excuse
- exercise
- exist
- expand
- expect
- explain
- explode
- extend
- face
- fade
- fail
- fancy
- fasten
- fax
- fear
- fence
- fetch
- file
- fill
- film
- fire
- fit
- fix
- flap
- flash
- float
- flood
- flow
- flower
- fold
- follow
- fool
- force
- form
- found
- frame
- frighten
- fry
- gather
- gaze
- glow
- glue
- grab
- grate
- grease
- greet
- grin
- grip
- groan
- guarantee
- guard
- guess
- guide
- hammer
- hand
- handle
- hang
- happen
- harass
- harm
- hate
- haunt
- head
- heal
- heap
- heat
- help
- hook
- hop
- hope
- hover
- hug
- hum
- hunt
- hurry
- identify
- ignore
- imagine
- impress
- improve
- include
- increase
- influence
- inform
- inject
- injure
- instruct
- intend
- interest
- interfere
- interrupt
- introduce
- invent
- invite
- irritate
- itch
- jail
- jam
- jog
- join
- joke
- judge
- juggle
- jump
- kick
- kill
- kiss
- kneel
- knit
- knock
- knot
- label
- land
- last
- laugh
- launch
- learn
- level
- license
- lick
- lie
- lighten
- like
- list
- listen
- live
- load
- lock
- long
- look
- love
- man
- manage
- march
- mark
- marry
- match
- mate
- matter
- measure
- meddle
- melt
- memorise
- mend
- messup
- milk
- mine
- miss
- mix
- moan
- moor
- mourn
- move
- muddle
- mug
- multiply
- murder
- nail
- name
- need
- nest
- nod
- note
- notice
- number
- obey
- object
- observe
- obtain
- occur
- offend
- offer
- open
- order
- overflow
- owe
- own
- pack
- paddle
- paint
- park
- part
- pass
- paste
- pat
- pause
- peck
- pedal
- peel
- peep
- perform
- permit
- phone
- pick
- pinch
- pine
- place
- plan
- plant
- play
- please
- plug
- point
- poke
- polish
- pop
- possess
- post
- pour
- practise
- pray
- preach
- precede
- prefer
- prepare
- present
- preserve
- press
- pretend
- prevent
- prick
- print
- produce
- program
- promise
- protect
- provide
- pull
- pump
- punch
- puncture
- punish
- push
- question
- queue
- race
- radiate
- rain
- raise
- reach
- realise
- receive
- recognise
- record
- reduce
- reflect
- refuse
- regret
- reign
- reject
- rejoice
- relax
- release
- rely
- remain
- remember
- remind
- remove
- repair
- repeat
- replace
- reply
- report
- reproduce
- request
- rescue
- retire
- return
- rhyme
- rinse
- risk
- rob
- rock
- roll
- rot
- rub
- ruin
- rule
- rush
- sack
- sail
- satisfy
- save
- saw
- scare
- scatter
- scold
- scorch
- scrape
- scratch
- scream
- screw
- scribble
- scrub
- seal
- search
- separate
- serve
- settle
- shade
- share
- shave
- shelter
- shiver
- shock
- shop
- shriek
- shrug
- sigh
- sign
- signal
- sin
- sip
- ski
- skip
- slap
- slip
- slow
- smash
- smell
- smile
- smoke
- snatch
- sneeze
- sniff
- snore
- snow
- soak
- soothe
- sound
- spare
- spark
- sparkle
- spell
- spill
- spoil
- spot
- spray
- sprout
- squash
- squeak
- squeal
- squeeze
- stain
- stamp
- stare
- start
- stay
- steer
- step
- stir
- stitch
- stop
- store
- strap
- strengthen
- stretch
- stroke
- stuff
- subtract
- succeed
- suck
- suffer
- suggest
- suit
- supply
- support
- suppose
- surprise
- surround
- suspect
- suspend
- switch
- talk
- tame
- tap
- taste
- tease
- telephone
- tempt
- terrify
- test
- thank
- thaw
- tick
- tickle
- tie
- time
- tip
- tire
- touch
- tour
- tow
- trace
- trade
- train
- transport
- trap
- travel
- treat
- tremble
- trick
- trip
- trot
- trouble
- trust
- try
- tug
- tumble
- turn
- twist
- type
- unfasten
- unite
- unlock
- unpack
- untidy
- use
- vanish
- visit
- wail
- wait
- walk
- wander
- want
- warm
- warn
- wash
- waste
- watch
- water
- wave
- weigh
- welcome
- whine
- whip
- whirl
- whistle
- wink
- wipe
- wish
- wobble
- wonder
- work
- worry
- wrap
- wreck
- wrestle
- wriggle
- yawn
- yell
- zip
- zoom
prefix: verbs-dataset-
count: 631

View File

@@ -10,42 +10,60 @@
- state: green
- sprite: Objects/Consumable/Drinks/dr_gibb.rsi
state: icon
- type: RandomSpawner
prototypes:
- DrinkColaBottleFull
- DrinkSpaceMountainWindBottleFull
- DrinkSpaceUpBottleFull
- DrinkWaterBottleFull
- DrinkColaCan
- DrinkIcedTeaCan
- DrinkLemonLimeCan
- DrinkLemonLimeCranberryCan
- DrinkGrapeCan
- DrinkRootBeerCan
- DrinkSodaWaterCan
- DrinkSpaceMountainWindCan
- DrinkSpaceUpCan
- DrinkStarkistCan
- DrinkTonicWaterCan
- DrinkFourteenLokoCan
- DrinkChangelingStingCan
- DrinkDrGibbCan
- DrinkEnergyDrinkCan
- DrinkShamblersJuiceCan
- DrinkSolDryCan
- DrinkPwrGameCan
- DrinkHotCoco
- DrinkHotCoffee
- DrinkCafeLatte
- DrinkTeacup
- DrinkGreenTea
- DrinkWaterCup
- DrinkBeerCan
- DrinkWineCan
chance: 0.8
offset: 0.0
#rare
rarePrototypes:
- DrinkNukieCan
- DrinkLean
rareChance: 0.01
- type: EntityTableSpawner
table: !type:NestedSelector
tableId: RandomAllSodaTable
prob: 0.8
- type: entityTable
id: RandomAllSodaTable
table: !type:GroupSelector
children:
- !type:NestedSelector
tableId: RandomCommonSodaTable
weight: 0.95
- !type:NestedSelector
tableId: RandomRareSodaTable
weight: 0.05
- type: entityTable
id: RandomCommonSodaTable
table: !type:GroupSelector
children:
- id: DrinkBeerCan
- id: DrinkCafeLatte
- id: DrinkChangelingStingCan
- id: DrinkColaBottleFull
- id: DrinkColaCan
- id: DrinkDrGibbCan
- id: DrinkEnergyDrinkCan
- id: DrinkFourteenLokoCan
- id: DrinkGrapeCan
- id: DrinkGreenTea
- id: DrinkHotCoco
- id: DrinkHotCoffee
- id: DrinkIcedTeaCan
- id: DrinkLemonLimeCan
- id: DrinkLemonLimeCranberryCan
- id: DrinkPwrGameCan
- id: DrinkRootBeerCan
- id: DrinkShamblersJuiceCan
- id: DrinkSodaWaterCan
- id: DrinkSolDryCan
- id: DrinkSpaceMountainWindBottleFull
- id: DrinkSpaceMountainWindCan
- id: DrinkSpaceUpBottleFull
- id: DrinkSpaceUpCan
- id: DrinkStarkistCan
- id: DrinkTeacup
- id: DrinkTonicWaterCan
- id: DrinkWaterBottleFull
- id: DrinkWaterCup
- id: DrinkWineCan
- type: entityTable
id: RandomRareSodaTable
table: !type:GroupSelector
children:
- id: DrinkNukieCan
- id: DrinkLean

View File

@@ -11,39 +11,43 @@
- state: red
- sprite: Objects/Consumable/Food/snacks.rsi
state: cheesiehonkers
- type: RandomSpawner
#small item
prototypes:
- FoodSnackBoritos
- FoodSnackCheesie
- FoodSnackChips
- FoodSnackChocolate
- FoodSnackEnergy
- FoodSnackChocolateBar
- FoodSnackPopcorn
- FoodSnackRaisins
- FoodSnackSus
- FoodSnackSyndi
- FoodSnackChowMein
- FoodSnackDanDanNoodles
- FoodSnackCookieFortune
- FoodSnackNutribrick
- FoodSnackMREBrownie
- FoodFrozenSandwich
- FoodFrozenSandwichStrawberry
- FoodFrozenFreezy
- FoodFrozenSundae
- FoodFrozenCornuto
- FoodFrozenPopsicleOrange
- FoodFrozenPopsicleBerry
- FoodFrozenPopsicleJumbo
- FoodFrozenSnowcone
- FoodFrozenSnowconeBerry
- FoodFrozenSnowconeFruit
- FoodFrozenSnowconeClown
- FoodFrozenSnowconeMime
- FoodFrozenSnowconeRainbow
- FoodSnackPistachios
- FoodSnackSemki
chance: 0.8
offset: 0.0
- type: EntityTableSpawner
table: !type:NestedSelector
tableId: RandomSnackTable
prob: 0.8
- type: entityTable
id: RandomSnackTable
table: !type:GroupSelector
children:
- id: FoodFrozenCornuto
- id: FoodFrozenFreezy
- id: FoodFrozenPopsicleBerry
- id: FoodFrozenPopsicleJumbo
- id: FoodFrozenPopsicleOrange
- id: FoodFrozenSandwich
- id: FoodFrozenSandwichStrawberry
- id: FoodFrozenSnowcone
- id: FoodFrozenSnowconeBerry
- id: FoodFrozenSnowconeClown
- id: FoodFrozenSnowconeFruit
- id: FoodFrozenSnowconeMime
- id: FoodFrozenSnowconeRainbow
- id: FoodFrozenSundae
- id: FoodSnackBoritos
- id: FoodSnackCheesie
- id: FoodSnackChips
- id: FoodSnackChocolate
- id: FoodSnackChocolateBar
- id: FoodSnackChowMein
- id: FoodSnackCookieFortune
- id: FoodSnackDanDanNoodles
- id: FoodSnackEnergy
- id: FoodSnackMREBrownie
- id: FoodSnackNutribrick
- id: FoodSnackPistachios
- id: FoodSnackPopcorn
- id: FoodSnackRaisins
- id: FoodSnackSemki
- id: FoodSnackSus
- id: FoodSnackSyndi

View File

@@ -39,6 +39,8 @@
- type: ContainerContainer
containers:
delivery: !type:Container
- type: StealTarget
stealGroup: Mail
- type: entity
parent: BaseDelivery
@@ -74,7 +76,7 @@
- type: Item
size: Huge
- type: Delivery
spesoReward: 1000
spesoReward: 800
- type: EntityTableContainerFill
containers:
delivery: !type:NestedSelector
@@ -113,7 +115,7 @@
- type: Item
storedRotation: 90
- type: Delivery
spesoReward: 500
spesoReward: 400
- type: EntityTableContainerFill
containers:
delivery: !type:NestedSelector

View File

@@ -64,29 +64,30 @@
children:
- !type:NestedSelector # Don't you love getting mailed trash?
tableId: GenericTrashItems
- !type:GroupSelector
weight: 7
children:
- id: MailRobustToolsSpam
- id: MailNanotrasenSpam
- id: MailSyndicateSpam
- id: MailScienceSpiderClanSpam
- id: MailAllAccessSpam
- id: MailCentcommRetributionSpam
- id: MailAlternativeDimensionSpam
- id: MailNarsieCultSpam
- id: MailRageCageSpam
- id: MailVoyageAdvertisementSpam
- id: MailEvilLizardSpam
- id: MailParentsNeedMoneySpam
- !type:NestedSelector
weight: 4
tableId: SpamMailTable
- !type:NestedSelector
weight: 2
tableId: RandomBookTable
- !type:NestedSelector
weight: 2
tableId: RandomSnackTable
- !type:NestedSelector
weight: 2
tableId: RandomAllSodaTable
- type: entityTable # TODO: Add more variety!
id: LetterUncommonEntityTable # Some more varied things, should never be more expensive than 100 spesos
table: !type:GroupSelector
children:
- id: MobCockroach
- !type:NestedSelector
tableId: RandomSafePillTable
- !type:NestedSelector
tableId: RandomSafeSyringeTable
- !type:NestedSelector
tableId: UncommonLetterBundleTable
- id: SpaceCash100
- id: StrangePill
- id: Joint
- type: entityTable # TODO: Add more variety!
@@ -94,9 +95,16 @@
table: !type:GroupSelector
children:
- id: ResearchDisk5000
- id: ClothingHeadHatHairflower
- id: ClothingHeadHatFlowerWreath
- id: JointRainbow
- id: StrangePill
amount: !type:RangeNumberSelector
range: 1, 3
- !type:GroupSelector
children:
- id: Brutepack
- id: Ointment
- id: Gauze
- id: Bloodpack
# Packages
# TODO: Currently mostly maints loot, should be updated in the future.

View File

@@ -0,0 +1,46 @@
# Basically all different loot tables that the mail can choose from
# Common
- type: entityTable
id: SpamMailTable
table: !type:GroupSelector
children:
- id: MailAllAccessSpam
- id: MailAlternativeDimensionSpam
- id: MailCentcommRetributionSpam
- id: MailEvilLizardSpam
- id: MailNanotrasenSpam
- id: MailNarsieCultSpam
- id: MailParentsNeedMoneySpam
- id: MailRageCageSpam
- id: MailRobustToolsSpam
- id: MailScienceSpiderClanSpam
- id: MailSyndicateSpam
- id: MailVoyageAdvertisementSpam
# Letter Bundles
## Basically items that should always spawn together, specific to letters
- type: entityTable
id: UncommonLetterBundleTable
table: !type:GroupSelector
children:
- !type:NestedSelector
tableId: LetterBundleDarts
- !type:NestedSelector
tableId: LetterBundleLetter
- type: entityTable
id: LetterBundleDarts
table: !type:AllSelector
children:
- id: Dart
- id: DartBlue
- id: DartPurple
- id: DartYellow
- type: entityTable
id: LetterBundleLetter
table: !type:AllSelector
children:
- id: Paper
- id: Pen

View File

@@ -1044,3 +1044,37 @@
reagents:
- ReagentId: Stimulants
Quantity: 15
# Entity Tables
- type: entityTable
id: RandomSafePillTable
table: !type:GroupSelector
children:
- id: PillBicaridine
- id: PillCharcoal
- id: PillCopper
- id: PillDermaline
- id: PillDexalin
- id: PillDylovene
- id: PillHyronalin
- id: PillIron
- id: PillKelotane
- id: PillPotassiumIodide
- id: PillTricordrazine
- id: StrangePill
- type: entityTable
id: RandomSafeSyringeTable
table: !type:GroupSelector
children:
- id: SyringeBicaridine
- id: SyringeDermaline
- id: SyringeEphedrine
- id: SyringeEthylredoxrazine
- id: SyringeHyronalin
- id: SyringeInaprovaline
- id: SyringeIpecac
- id: SyringePhalanximine
- id: SyringeSaline
- id: SyringeSigynate
- id: SyringeTranexamicAcid

View File

@@ -121,7 +121,7 @@
- type: RandomMetadata
nameSegments:
- nukeops-role-commander
- SyndicateNamesElite
- NamesSyndicateElite
- type: NpcFactionMember
factions:
- Syndicate

View File

@@ -5,7 +5,7 @@
- Bagel
- Box
- Convex
- Core
#- Core
- Elkridge
- Fland
#- Gate

View File

@@ -58,13 +58,14 @@
- type: weightedRandom
id: ThiefObjectiveGroupCollection
weights:
HeadCloakStealCollectionObjective: 1 #command
HeadCloakStealCollectionObjective: 1 #command
HeadBedsheetStealCollectionObjective: 1
StampStealCollectionObjective: 1
DoorRemoteStealCollectionObjective: 1
TechnologyDiskStealCollectionObjective: 1 #rnd
TechnologyDiskStealCollectionObjective: 1 #sci
MailStealCollectionObjective: 1 #cargo
IDCardsStealCollectionObjective: 1
LAMPStealCollectionObjective: 2 #only for moth
LAMPStealCollectionObjective: 2 #only for moth
- type: weightedRandom
id: ThiefObjectiveGroupItem

View File

@@ -128,6 +128,13 @@
sprite: Objects/Misc/module.rsi
state: datadisk_base
- type: stealTargetGroup
id: Mail
name: steal-target-groups-mail
sprite:
sprite: Objects/Specific/Cargo/mail.rsi
state: icon
- type: stealTargetGroup
id: IDCard
name: steal-target-groups-id-cards

View File

@@ -111,6 +111,20 @@
- type: Objective
difficulty: 0.8
- type: entity
parent: BaseThiefStealCollectionObjective
id: MailStealCollectionObjective
components:
- type: NotJobRequirement
job: CargoTechnician
- type: StealCondition
stealGroup: Mail
minCollectionSize: 4
maxCollectionSize: 8
verifyMapExistence: false
- type: Objective
difficulty: 0.8
- type: entity
parent: BaseThiefStealCollectionObjective
id: IDCardsStealCollectionObjective

Binary file not shown.

After

Width:  |  Height:  |  Size: 151 B

View File

@@ -1,7 +1,7 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
"copyright": "Taken from desertrose at https://github.com/DesertRose2/desertrose/commit/0b8f7b7694a4a814724ba8ed59f695916ce845ce , https://github.com/DesertRose2/desertrose/blob/master/icons/obj/guns/projectile.dmi",
"copyright": "Taken from desertrose at https://github.com/DesertRose2/desertrose/commit/0b8f7b7694a4a814724ba8ed59f695916ce845ce , https://github.com/DesertRose2/desertrose/blob/master/icons/obj/guns/projectile.dmi, equipped-SUITSTORAGE modified from equipped-BELT by Prole0 (GitHub)",
"size": {
"x": 32,
"y": 32
@@ -24,6 +24,10 @@
{
"name": "equipped-BELT",
"directions": 4
},
{
"name": "equipped-SUITSTORAGE",
"directions": 4
}
]
}