Co-authored-by: 20kdc <asdd2808@gmail.com>
Co-authored-by: Vera Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
This commit is contained in:
wrexbe
2021-12-23 04:14:01 -08:00
committed by GitHub
parent 6a9122d209
commit 40278353d3
34 changed files with 4794 additions and 11 deletions

View File

@@ -98,6 +98,7 @@ namespace Content.Client.Entry
prototypes.RegisterIgnore("advertisementsPack");
prototypes.RegisterIgnore("metabolizerType");
prototypes.RegisterIgnore("metabolismGroup");
prototypes.RegisterIgnore("salvageMap");
prototypes.RegisterIgnore("gamePreset");
prototypes.RegisterIgnore("gameRule");

View File

@@ -126,6 +126,8 @@ namespace Content.Client.Entry
"Toys",
"SurgeryTool",
"EmitSoundOnThrow",
"Salvage",
"SalvageMagnet",
"Flash",
"Docking",
"Telecrystal",

View File

@@ -29,7 +29,7 @@ namespace Content.Server.Atmos.Commands
var entityManager = IoCManager.Resolve<IEntityManager>();
var atmosphereSystem = EntitySystem.Get<AtmosphereSystem>();
var mixtures = new GasMixture[5];
var mixtures = new GasMixture[6];
for (var i = 0; i < mixtures.Length; i++)
mixtures[i] = new GasMixture(Atmospherics.CellVolume) { Temperature = Atmospherics.T20C };
@@ -48,6 +48,11 @@ namespace Content.Server.Atmos.Commands
// 4: Plasma (GM)
mixtures[4].AdjustMoles(Gas.Plasma, Atmospherics.MolesCellGasMiner);
// 5: Instant Plasmafire (r)
mixtures[5].AdjustMoles(Gas.Oxygen, Atmospherics.MolesCellGasMiner);
mixtures[5].AdjustMoles(Gas.Plasma, Atmospherics.MolesCellGasMiner);
mixtures[5].Temperature = 5000f;
foreach (var gid in args)
{
// I like offering detailed error messages, that's why I don't use one of the extension methods.

View File

@@ -0,0 +1,51 @@
using Robust.Shared.GameObjects;
using Robust.Shared.Maths;
using Robust.Shared.Serialization.Manager.Attributes;
using Robust.Shared.ViewVariables;
using System;
namespace Content.Server.Salvage
{
/// <summary>
/// A salvage magnet.
/// </summary>
[RegisterComponent]
[ComponentProtoName("SalvageMagnet")]
public class SalvageMagnetComponent : Component
{
/// <summary>
/// Offset relative to magnet that salvage should spawn.
/// Keep in sync with marker sprite (if any???)
/// </summary>
[ViewVariables(VVAccess.ReadWrite)]
[DataField("offset")]
public Vector2 Offset = Vector2.Zero; // TODO: Maybe specify a direction, and find the nearest edge of the magnets grid the salvage can fit at
/// <summary>
/// The entity attached to the magnet
/// </summary>
[ViewVariables(VVAccess.ReadOnly)]
[DataField("attachedEntity")]
public EntityUid? AttachedEntity = null;
/// <summary>
/// Current state of this magnet
/// </summary>
[ViewVariables(VVAccess.ReadOnly)]
[DataField("magnetState")]
public MagnetState MagnetState = MagnetState.Inactive;
}
public record struct MagnetState(MagnetStateType StateType, TimeSpan Until)
{
public static readonly MagnetState Inactive = new (MagnetStateType.Inactive, TimeSpan.Zero);
};
public enum MagnetStateType
{
Inactive,
Attaching,
Holding,
Detaching,
CoolingDown,
}
}

View File

@@ -0,0 +1,38 @@
using System.Collections.Generic;
using System.Linq;
using Content.Server.Objectives.Interfaces;
using Robust.Shared.Prototypes;
using Robust.Shared.Serialization.Manager.Attributes;
using Robust.Shared.ViewVariables;
namespace Content.Server.Salvage
{
[Prototype("salvageMap")]
public class SalvageMapPrototype : IPrototype
{
[ViewVariables]
[DataField("id", required: true)]
public string ID { get; } = default!;
/// <summary>
/// Relative directory path to the given map, i.e. `Maps/Salvage/test.yml`
/// </summary>
[ViewVariables]
[DataField("mapPath", required: true)]
public string MapPath { get; } = default!;
/// <summary>
/// Size *from 0,0* in units of the map (used to determine if it fits)
/// </summary>
[ViewVariables]
[DataField("size", required: true)]
public float Size { get; } = 1.0f; // TODO: Find a way to figure out the size automatically
/// <summary>
/// Name for admin use
/// </summary>
[ViewVariables]
[DataField("name")]
public string Name { get; } = "";
}
}

View File

@@ -0,0 +1,378 @@
using Content.Server.Chat.Managers;
using Content.Server.GameTicking;
using Content.Shared.CCVar;
using Content.Shared.Examine;
using Content.Shared.GameTicking;
using Content.Shared.Interaction;
using Content.Shared.Popups;
using Robust.Server.Maps;
using Robust.Shared.Configuration;
using Robust.Shared.GameObjects;
using Robust.Shared.IoC;
using Robust.Shared.Localization;
using Robust.Shared.Log;
using Robust.Shared.Map;
using Robust.Shared.Maths;
using Robust.Shared.Player;
using Robust.Shared.Prototypes;
using Robust.Shared.Random;
using Robust.Shared.Timing;
using Robust.Shared.Utility;
using System;
using System.Collections.Generic;
using System.Linq;
namespace Content.Server.Salvage
{
public class SalvageSystem : EntitySystem
{
[Dependency] private readonly IChatManager _chatManager = default!;
[Dependency] private readonly IPauseManager _pauseManager = default!;
[Dependency] private readonly IMapLoader _mapLoader = default!;
[Dependency] private readonly IMapManager _mapManager = default!;
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
[Dependency] private readonly IConfigurationManager _configurationManager = default!;
[Dependency] private readonly IRobustRandom _random = default!;
[Dependency] private readonly SharedPopupSystem _popupSystem = default!;
private static readonly TimeSpan AttachingTime = TimeSpan.FromSeconds(30);
private static readonly TimeSpan HoldTime = TimeSpan.FromMinutes(4);
private static readonly TimeSpan DetachingTime = TimeSpan.FromSeconds(30);
private static readonly TimeSpan CooldownTime = TimeSpan.FromMinutes(1);
private readonly Dictionary<GridId, SalvageGridState> _salvageGridStates = new();
public override void Initialize()
{
base.Initialize();
SubscribeLocalEvent<SalvageMagnetComponent, InteractHandEvent>(OnInteractHand);
SubscribeLocalEvent<SalvageMagnetComponent, ExaminedEvent>(OnExamined);
SubscribeLocalEvent<SalvageMagnetComponent, ComponentShutdown>(OnMagnetRemoval);
SubscribeLocalEvent<GridRemovalEvent>(OnGridRemoval);
// Can't use RoundRestartCleanupEvent, I need to clean up before the grid, and components are gone to prevent the announcements
SubscribeLocalEvent<GameRunLevelChangedEvent>(OnRoundEnd);
}
private void OnRoundEnd(GameRunLevelChangedEvent ev)
{
if(ev.New != GameRunLevel.InRound)
{
_salvageGridStates.Clear();
}
}
private void OnGridRemoval(GridRemovalEvent ev)
{
// If we ever want to give magnets names, and announce them individually, we would need to loop this, before removing it.
if (_salvageGridStates.Remove(ev.GridId))
{
Report("salvage-system-announcement-spawn-magnet-lost");
// For the very unlikely possibility that the salvage magnet was on a salvage, we will not return here
}
foreach(var gridState in _salvageGridStates)
{
foreach(var magnet in gridState.Value.ActiveMagnets)
{
if (magnet.AttachedEntity == ev.EntityUid)
{
magnet.AttachedEntity = null;
magnet.MagnetState = MagnetState.Inactive;
Report("salvage-system-announcement-lost");
return;
}
}
}
}
private void OnMagnetRemoval(EntityUid uid, SalvageMagnetComponent component, ComponentShutdown args)
{
if (component.MagnetState.StateType == MagnetStateType.Inactive) return;
var magnetTranform = EntityManager.GetComponent<TransformComponent>(component.Owner);
if (!_salvageGridStates.TryGetValue(magnetTranform.GridID, out var salvageGridState))
{
return;
}
salvageGridState.ActiveMagnets.Remove(component);
Report("salvage-system-announcement-spawn-magnet-lost");
if (component.AttachedEntity.HasValue)
{
SafeDeleteSalvage(component.AttachedEntity.Value);
component.AttachedEntity = null;
Report("salvage-system-announcement-lost");
}
else if (component.MagnetState is { StateType: MagnetStateType.Attaching })
{
Report("salvage-system-announcement-spawn-no-debris-available");
}
component.MagnetState = MagnetState.Inactive;
}
private void OnExamined(EntityUid uid, SalvageMagnetComponent component, ExaminedEvent args)
{
if (!args.IsInDetailsRange)
return;
switch (component.MagnetState.StateType)
{
case MagnetStateType.Inactive:
args.PushMarkup(Loc.GetString("salvage-system-magnet-examined-inactive"));
break;
case MagnetStateType.Attaching:
args.PushMarkup(Loc.GetString("salvage-system-magnet-examined-pulling-in"));
break;
case MagnetStateType.Detaching:
args.PushMarkup(Loc.GetString("salvage-system-magnet-examined-releasing"));
break;
case MagnetStateType.CoolingDown:
args.PushMarkup(Loc.GetString("salvage-system-magnet-examined-cooling-down"));
break;
case MagnetStateType.Holding:
var magnetTranform = EntityManager.GetComponent<TransformComponent>(component.Owner);
if (_salvageGridStates.TryGetValue(magnetTranform.GridID, out var salvageGridState))
{
var remainingTime = component.MagnetState.Until - salvageGridState.CurrentTime;
args.PushMarkup(Loc.GetString("salvage-system-magnet-examined-active", ("timeLeft", remainingTime.TotalSeconds)));
}
else
{
Logger.WarningS("salvage", "Failed to load salvage grid state, can't display remaining time");
}
break;
default:
throw new NotImplementedException("Unexpected magnet state type");
}
}
private void OnInteractHand(EntityUid uid, SalvageMagnetComponent component, InteractHandEvent args)
{
if (args.Handled)
return;
args.Handled = true;
StartMagnet(component, args.User);
}
private void StartMagnet(SalvageMagnetComponent component, EntityUid user)
{
switch (component.MagnetState.StateType)
{
case MagnetStateType.Inactive:
ShowPopup("salvage-system-report-activate-success", component, user);
var magnetTranform = EntityManager.GetComponent<TransformComponent>(component.Owner);
SalvageGridState? gridState;
if (!_salvageGridStates.TryGetValue(magnetTranform.GridID, out gridState))
{
gridState = new SalvageGridState();
_salvageGridStates[magnetTranform.GridID] = gridState;
}
gridState.ActiveMagnets.Add(component);
component.MagnetState = new MagnetState(MagnetStateType.Attaching, gridState.CurrentTime + AttachingTime);
Report("salvage-system-report-activate-success");
break;
case MagnetStateType.Attaching:
case MagnetStateType.Holding:
ShowPopup("salvage-system-report-already-active", component, user);
break;
case MagnetStateType.Detaching:
case MagnetStateType.CoolingDown:
ShowPopup("salvage-system-report-cooling-down", component, user);
break;
default:
throw new NotImplementedException("Unexpected magnet state type");
}
}
private void ShowPopup(string messageKey, SalvageMagnetComponent component, EntityUid user)
{
_popupSystem.PopupEntity(Loc.GetString(messageKey), component.Owner, Filter.Entities(user));
}
private void SafeDeleteSalvage(EntityUid salvage)
{
if(!EntityManager.TryGetComponent<TransformComponent>(salvage, out var salvageTransform))
{
Logger.ErrorS("salvage", "Salvage entity was missing transform component");
return;
}
var parentTransform = salvageTransform.Parent!;
foreach (var player in Filter.Empty().AddInGrid(salvageTransform.GridID, EntityManager).Recipients)
{
if (player.AttachedEntity.HasValue)
{
var playerTransform = EntityManager.GetComponent<TransformComponent>(player.AttachedEntity.Value);
playerTransform.AttachParent(parentTransform);
}
}
EntityManager.QueueDeleteEntity(salvage);
}
private bool TryGetSalvagePlacementLocation(out MapCoordinates coords, out Angle angle)
{
coords = MapCoordinates.Nullspace;
angle = Angle.Zero;
foreach (var (smc, tsc) in EntityManager.EntityQuery<SalvageMagnetComponent, TransformComponent>(true))
{
coords = new EntityCoordinates(smc.Owner, smc.Offset).ToMap(EntityManager);
var grid = tsc.GridID;
if (grid != GridId.Invalid)
{
// Has a valid grid - synchronize angle so that salvage doesn't have to deal with cross-grid manipulation issues
angle = tsc.WorldRotation;
}
return true;
}
return false;
}
private IEnumerable<SalvageMapPrototype> GetAllSalvageMaps() =>
_prototypeManager.EnumeratePrototypes<SalvageMapPrototype>();
private bool SpawnSalvage(SalvageMagnetComponent component)
{
if (!TryGetSalvagePlacementLocation(out var spl, out var spAngle))
{
Report("salvage-system-announcement-spawn-magnet-lost");
return false;
}
SalvageMapPrototype? map = null;
var forcedSalvage = _configurationManager.GetCVar<string>(CCVars.SalvageForced);
List<SalvageMapPrototype> allSalvageMaps;
if (string.IsNullOrWhiteSpace(forcedSalvage))
{
allSalvageMaps = GetAllSalvageMaps().ToList();
}
else
{
allSalvageMaps = new();
if (_prototypeManager.TryIndex<SalvageMapPrototype>(forcedSalvage, out map))
{
allSalvageMaps.Add(map);
}
else
{
Logger.ErrorS("c.s.salvage", $"Unable to get forced salvage map prototype {forcedSalvage}");
}
}
for (var i = 0; i < allSalvageMaps.Count; i++)
{
map = _random.PickAndTake(allSalvageMaps);
var box2 = Box2.CenteredAround(spl.Position, new Vector2(map.Size * 2.0f, map.Size * 2.0f));
var box2rot = new Box2Rotated(box2, spAngle, spl.Position);
// This doesn't stop it from spawning on top of random things in space
// Might be better like this, ghosts could stop it before
if (_mapManager.FindGridsIntersecting(spl.MapId, box2rot).Any())
{
map = null;
}
else
{
break;
}
}
if (map == null)
{
Report("salvage-system-announcement-spawn-no-debris-available");
return false;
}
var bp = _mapLoader.LoadBlueprint(spl.MapId, map.MapPath);
if (bp == null)
{
Report("salvage-system-announcement-spawn-debris-disintegrated");
return false;
}
var salvageEntityId = bp.GridEntityId;
component.AttachedEntity = salvageEntityId;
var pulledTransform = EntityManager.GetComponent<TransformComponent>(salvageEntityId);
pulledTransform.Coordinates = EntityCoordinates.FromMap(_mapManager, spl);
pulledTransform.WorldRotation = spAngle;
Report("salvage-system-announcement-arrived", ("timeLeft", HoldTime.TotalSeconds));
return true;
}
private void Report(string messageKey) =>
_chatManager.DispatchStationAnnouncement(Loc.GetString(messageKey), Loc.GetString("salvage-system-announcement-source"));
private void Report(string messageKey, params (string, object)[] args) =>
_chatManager.DispatchStationAnnouncement(Loc.GetString(messageKey, args), Loc.GetString("salvage-system-announcement-source"));
private void Transition(SalvageMagnetComponent magnet, TimeSpan currentTime)
{
switch (magnet.MagnetState.StateType)
{
case MagnetStateType.Attaching:
if (SpawnSalvage(magnet))
{
magnet.MagnetState = new MagnetState(MagnetStateType.Holding, currentTime + HoldTime);
}
else
{
magnet.MagnetState = new MagnetState(MagnetStateType.CoolingDown, currentTime + CooldownTime);
}
break;
case MagnetStateType.Holding:
Report("salvage-system-announcement-losing", ("timeLeft", DetachingTime.TotalSeconds));
magnet.MagnetState = new MagnetState(MagnetStateType.Detaching, currentTime + DetachingTime);
break;
case MagnetStateType.Detaching:
if (magnet.AttachedEntity.HasValue)
{
SafeDeleteSalvage(magnet.AttachedEntity.Value);
}
else
{
Logger.ErrorS("salvage", "Salvage detaching was expecting attached entity but it was null");
}
Report("salvage-system-announcement-lost");
magnet.MagnetState = new MagnetState(MagnetStateType.CoolingDown, currentTime + CooldownTime);
break;
case MagnetStateType.CoolingDown:
magnet.MagnetState = MagnetState.Inactive;
break;
}
}
public override void Update(float frameTime)
{
var secondsPassed = TimeSpan.FromSeconds(frameTime);
// Keep track of time, and state per grid
foreach (var gridIdAndState in _salvageGridStates)
{
var state = gridIdAndState.Value;
if (state.ActiveMagnets.Count == 0) continue;
var gridId = gridIdAndState.Key;
// Not handling the case where the salvage we spawned got paused
// They both need to be paused, or it doesn't make sense
if (_pauseManager.IsGridPaused(gridId)) continue;
state.CurrentTime += secondsPassed;
var deleteQueue = new RemQueue<SalvageMagnetComponent>();
foreach(var magnet in state.ActiveMagnets)
{
if (magnet.MagnetState.Until > state.CurrentTime) continue;
Transition(magnet, state.CurrentTime);
if (magnet.MagnetState.StateType == MagnetStateType.Inactive)
{
deleteQueue.Add(magnet);
}
}
foreach(var magnet in deleteQueue)
{
state.ActiveMagnets.Remove(magnet);
}
}
}
}
public class SalvageGridState
{
public TimeSpan CurrentTime { get; set; }
public List<SalvageMagnetComponent> ActiveMagnets { get; } = new();
}
}

View File

@@ -593,5 +593,15 @@ namespace Content.Shared.CCVar
/// </summary>
public static readonly CVarDef<bool> RestrictedNames =
CVarDef.Create("ic.restricted_names", true, CVar.SERVER | CVar.REPLICATED);
/*
* Salvage
*/
/// <summary>
/// Forced salvage map prototype name (if empty, randomly selected)
/// </summary>
public static readonly CVarDef<string>
SalvageForced = CVarDef.Create("salvage.forced", "", CVar.SERVERONLY);
}
}

View File

@@ -0,0 +1,18 @@
salvage-system-announcement-source = Salvage Control System
salvage-system-announcement-arrived = A piece of salvagable debris has been pulled in. Estimated hold time: {$timeLeft} seconds.
salvage-system-announcement-losing = The magnet is no longer able to hold the salvagable debris. Estimated time until loss: {$timeLeft} seconds.
salvage-system-announcement-lost = The salvagable debris have been lost.
salvage-system-announcement-spawn-magnet-lost = The salvage magnet has been lost.
salvage-system-announcement-spawn-no-debris-available = No debris could be recovered by the salvage magnet.
salvage-system-announcement-spawn-debris-disintegrated = Debris disintegrated during orbital transfer.
salvage-system-report-already-active = The salvage magnet is already active.
salvage-system-report-cooling-down = The salvage magnet is cooling down.
salvage-system-report-activate-success = The salvage magnet is pulling in a piece of debris!
salvage-system-magnet-examined-inactive = The salvage magnet is inactive.
salvage-system-magnet-examined-pulling-in = The salvage magnet is attempting to pull in salvage.
salvage-system-magnet-examined-active = The salvage magnet is holding salvage in place. Can hold for {$timeLeft} seconds.
salvage-system-magnet-examined-releasing = The salvage magnet is releasing the salvage.
salvage-system-magnet-examined-cooling-down = The salvage magnet is cooling down.

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,407 @@
meta:
format: 2
name: DemoStation
author: Space-Wizards
postmapinit: false
tilemap:
0: space
1: floor_asteroid_coarse_sand0
2: floor_asteroid_coarse_sand1
3: floor_asteroid_coarse_sand2
4: floor_asteroid_coarse_sand_dug
5: floor_asteroid_sand
6: floor_asteroid_tile
7: floor_blue
8: floor_blue_circuit
9: floor_dark
10: floor_elevator_shaft
11: floor_freezer
12: floor_glass
13: floor_gold
14: floor_green_circuit
15: floor_hydro
16: floor_lino
17: floor_mono
18: floor_reinforced
19: floor_rglass
20: floor_rock_vault
21: floor_showroom
22: floor_silver
23: floor_snow
24: floor_steel
25: floor_steel_dirty
26: floor_techmaint
27: floor_white
28: floor_wood
29: lattice
30: plating
31: underplating
grids:
- settings:
chunksize: 16
tilesize: 1
chunks:
- ind: "-1,-1"
tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0AAAAdAAAAHQAAAB0AAAAdAAAAHQAAAB0AAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAAAAAAAAAAAAAAAAAHQAAAB0AAAAdAAAAHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAAAAAAAAAAAAAAAAAB0AAAAAAAAAAAAAAB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0AAAAAAAAAAAAAAAAAAAAdAAAAAAAAAB0AAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAHQAAAB0AAAAdAAAAHQAAAB0AAAAdAAAADQAAAA==
- ind: "0,-1"
tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAHQAAAB0AAAAdAAAAHQAAAB0AAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAB0AAAAdAAAAAAAAAAAAAAAAAAAAHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAAAAAAAAAAAAAAAAAB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAAAAAAB0AAAAAAAAAAAAAAAAAAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAB0AAAAdAAAAHQAAAB0AAAAdAAAAHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
- ind: "-1,0"
tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAAAAAAAAAAAAAAAAAHQAAAAAAAAAdAAAAHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAAAAAAAAAAAAAAAAAB0AAAAAAAAAAAAAAB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0AAAAAAAAAAAAAAAAAAAAdAAAAHQAAAB0AAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAHQAAAB0AAAAdAAAAHQAAAB0AAAAdAAAAHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
- ind: "0,0"
tiles: HQAAAAAAAAAdAAAAAAAAAAAAAAAAAAAAHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAAAAAAAAAAAAAAAAAB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAHQAAAB0AAAAAAAAAAAAAAAAAAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAB0AAAAdAAAAHQAAAB0AAAAdAAAAHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
entities:
- uid: 0
components:
- pos: 0.5,0.5
parent: null
type: Transform
- index: 0
type: MapGrid
- angularDamping: 0.3
fixedRotation: False
bodyType: Dynamic
type: Physics
- fixtures:
- shape: !type:PolygonShape
vertices:
- 0,-2
- 0,-1
- -2,-1
- -2,-2
id: grid_chunk--2--2
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- -3,-3
- -3,-1
- -4,-1
- -4,-3
id: grid_chunk--4--3
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- -7,-7
- -7,-1
- -8,-1
- -8,-7
id: grid_chunk--8--7
mask:
- MapGrid
layer:
- MapGrid
mass: 24
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,-3
- 0,-2
- -1,-2
- -1,-3
id: grid_chunk--1--3
mask:
- MapGrid
layer:
- MapGrid
mass: 4
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,-4
- 0,-3
- -4,-3
- -4,-4
id: grid_chunk--4--4
mask:
- MapGrid
layer:
- MapGrid
mass: 16
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 7,-7
- 7,-1
- 6,-1
- 6,-7
id: grid_chunk-6--7
mask:
- MapGrid
layer:
- MapGrid
mass: 24
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 3,-3
- 3,-1
- 2,-1
- 2,-3
id: grid_chunk-2--3
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 1,-2
- 1,-1
- 0,-1
- 0,-2
id: grid_chunk-0--2
mask:
- MapGrid
layer:
- MapGrid
mass: 4
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 3,-4
- 3,-3
- 0,-3
- 0,-4
id: grid_chunk-0--4
mask:
- MapGrid
layer:
- MapGrid
mass: 12
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,3
- 0,6
- -1,6
- -1,3
id: grid_chunk--1-3
mask:
- MapGrid
layer:
- MapGrid
mass: 12
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- -7,0
- -7,6
- -8,6
- -8,0
id: grid_chunk--8-0
mask:
- MapGrid
layer:
- MapGrid
mass: 24
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,2
- 0,3
- -4,3
- -4,2
id: grid_chunk--4-2
mask:
- MapGrid
layer:
- MapGrid
mass: 16
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,1
- 0,2
- -1,2
- -1,1
id: grid_chunk--1-1
mask:
- MapGrid
layer:
- MapGrid
mass: 4
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 7,0
- 7,6
- 6,6
- 6,0
id: grid_chunk-6-0
mask:
- MapGrid
layer:
- MapGrid
mass: 24
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 3,2
- 3,3
- 0,3
- 0,2
id: grid_chunk-0-2
mask:
- MapGrid
layer:
- MapGrid
mass: 12
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 3,0
- 3,2
- 2,2
- 2,0
id: grid_chunk-2-0
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,6
- 0,7
- -8,7
- -8,6
id: grid_chunk--8-6
mask:
- MapGrid
layer:
- MapGrid
mass: 32
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,-1
- 0,0
- -8,0
- -8,-1
id: grid_chunk--8--1
mask:
- MapGrid
layer:
- MapGrid
mass: 32
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,-7
- 0,-4
- -1,-4
- -1,-7
id: grid_chunk--1--7
mask:
- MapGrid
layer:
- MapGrid
mass: 12
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,-8
- 0,-7
- -8,-7
- -8,-8
id: grid_chunk--8--8
mask:
- MapGrid
layer:
- MapGrid
mass: 32
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 7,-1
- 7,0
- 0,0
- 0,-1
id: grid_chunk-0--1
mask:
- MapGrid
layer:
- MapGrid
mass: 28
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 7,-8
- 7,-7
- 0,-7
- 0,-8
id: grid_chunk-0--8
mask:
- MapGrid
layer:
- MapGrid
mass: 28
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 7,6
- 7,7
- 0,7
- 0,6
id: grid_chunk-0-6
mask:
- MapGrid
layer:
- MapGrid
mass: 28
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- -3,0
- -3,2
- -4,2
- -4,0
id: grid_chunk--4-0
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,0
- 0,1
- -2,1
- -2,0
id: grid_chunk--2-0
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 1,0
- 1,1
- 0,1
- 0,0
id: grid_chunk-0-0
mask:
- MapGrid
layer:
- MapGrid
mass: 4
restitution: 0.1
type: Fixtures
- gravityShakeSound: !type:SoundPathSpecifier
path: /Audio/Effects/alert.ogg
type: Gravity
...

View File

@@ -0,0 +1,318 @@
meta:
format: 2
name: DemoStation
author: Space-Wizards
postmapinit: false
tilemap:
0: space
1: floor_asteroid_coarse_sand0
2: floor_asteroid_coarse_sand1
3: floor_asteroid_coarse_sand2
4: floor_asteroid_coarse_sand_dug
5: floor_asteroid_sand
6: floor_asteroid_tile
7: floor_blue
8: floor_blue_circuit
9: floor_dark
10: floor_elevator_shaft
11: floor_freezer
12: floor_glass
13: floor_gold
14: floor_green_circuit
15: floor_hydro
16: floor_lino
17: floor_mono
18: floor_reinforced
19: floor_rglass
20: floor_rock_vault
21: floor_showroom
22: floor_silver
23: floor_snow
24: floor_steel
25: floor_steel_dirty
26: floor_techmaint
27: floor_white
28: floor_wood
29: lattice
30: plating
31: underplating
grids:
- settings:
chunksize: 16
tilesize: 1
chunks:
- ind: "-1,-1"
tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAB4AAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAHgAAAA==
- ind: "0,-1"
tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAHgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
- ind: "0,0"
tiles: HgAAAB0AAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
- ind: "-1,0"
tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAAAeAAAAHgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHgAAAB4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
entities:
- uid: 0
components:
- pos: 0.5, 0.5
parent: null
type: Transform
- index: 0
type: MapGrid
- angularDamping: 0.3
fixedRotation: False
bodyType: Dynamic
type: Physics
- fixtures:
- shape: !type:PolygonShape
vertices:
- 0,-2
- 0,-1
- -3,-1
- -3,-2
id: grid_chunk--3--2
mask:
- MapGrid
layer:
- MapGrid
mass: 12
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 1,-3
- 1,-2
- 0,-2
- 0,-3
id: grid_chunk-0--3
mask:
- MapGrid
layer:
- MapGrid
mass: 4
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 1,1
- 1,3
- 0,3
- 0,1
id: grid_chunk-0-1
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,0
- 0,1
- -3,1
- -3,0
id: grid_chunk--3-0
mask:
- MapGrid
layer:
- MapGrid
mass: 12
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- -1,-4
- -1,-2
- -2,-2
- -2,-4
id: grid_chunk--2--4
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 3,0
- 3,1
- 0,1
- 0,0
id: grid_chunk-0-0
mask:
- MapGrid
layer:
- MapGrid
mass: 12
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,1
- 0,2
- -2,2
- -2,1
id: grid_chunk--2-1
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,-1
- 0,0
- -2,0
- -2,-1
id: grid_chunk--2--1
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 2,-2
- 2,-1
- 0,-1
- 0,-2
id: grid_chunk-0--2
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 1,-1
- 1,0
- 0,0
- 0,-1
id: grid_chunk-0--1
mask:
- MapGrid
layer:
- MapGrid
mass: 4
restitution: 0.1
type: Fixtures
- gravityShakeSound: !type:SoundPathSpecifier
path: /Audio/Effects/alert.ogg
type: Gravity
- uid: 1
type: WallSolid
components:
- pos: -1.5,1.5
parent: 0
type: Transform
- uid: 2
type: WallSolid
components:
- pos: 0.5,1.5
parent: 0
type: Transform
- uid: 3
type: Girder
components:
- pos: 1.5,-1.5
parent: 0
type: Transform
- uid: 4
type: AirlockEngineeringLocked
components:
- pos: -0.5,1.5
parent: 0
type: Transform
- containers:
board: !type:Container
ents: []
type: ContainerContainer
- uid: 5
type: Girder
components:
- pos: -2.5,0.5
parent: 0
type: Transform
- uid: 6
type: Girder
components:
- pos: -1.5,-2.5
parent: 0
type: Transform
- uid: 7
type: SalvageCanisterSpawner
components:
- pos: -1.5,0.5
parent: 0
type: Transform
- uid: 8
type: SalvageMaterialCrateSpawner
components:
- pos: -1.5,-0.5
parent: 0
type: Transform
- uid: 9
type: SalvageMobSpawner
components:
- pos: -1.5,-1.5
parent: 0
type: Transform
- uid: 10
type: SalvageMaterialCrateSpawner
components:
- pos: -0.5,-0.5
parent: 0
type: Transform
- uid: 11
type: SalvageMaterialCrateSpawner
components:
- pos: -0.5,-1.5
parent: 0
type: Transform
- uid: 12
type: SalvageMaterialCrateSpawner
components:
- pos: -0.5,0.5
parent: 0
type: Transform
- uid: 13
type: SalvageMobSpawner
components:
- pos: 0.5,-1.5
parent: 0
type: Transform
- uid: 14
type: PoweredSmallLight
components:
- pos: 0.5,0.5
parent: 0
type: Transform
- powerLoad: 0
type: ApcPowerReceiver
- enabled: False
type: AmbientSound
- containers:
light_bulb: !type:ContainerSlot {}
type: ContainerContainer
- uid: 15
type: CableApcExtension
components:
- pos: -0.5,1.5
parent: 0
type: Transform
- canCollide: False
type: Physics
- uid: 16
type: CableApcExtension
components:
- pos: -0.5,0.5
parent: 0
type: Transform
- canCollide: False
type: Physics
- uid: 17
type: CableApcExtension
components:
- pos: 0.5,0.5
parent: 0
type: Transform
- canCollide: False
type: Physics
...

View File

@@ -0,0 +1,621 @@
meta:
format: 2
name: DemoStation
author: Space-Wizards
postmapinit: false
tilemap:
0: space
1: floor_asteroid_coarse_sand0
2: floor_asteroid_coarse_sand1
3: floor_asteroid_coarse_sand2
4: floor_asteroid_coarse_sand_dug
5: floor_asteroid_sand
6: floor_asteroid_tile
7: floor_blue
8: floor_blue_circuit
9: floor_dark
10: floor_elevator_shaft
11: floor_freezer
12: floor_glass
13: floor_gold
14: floor_green_circuit
15: floor_hydro
16: floor_lino
17: floor_mono
18: floor_reinforced
19: floor_rglass
20: floor_rock_vault
21: floor_showroom
22: floor_silver
23: floor_snow
24: floor_steel
25: floor_steel_dirty
26: floor_techmaint
27: floor_white
28: floor_wood
29: lattice
30: plating
31: underplating
grids:
- settings:
chunksize: 16
tilesize: 1
chunks:
- ind: "-1,-1"
tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAHgAAAB4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAB4AAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAB4AAAAcAAAAHAAAAA==
- ind: "0,-1"
tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAAAeAAAAHgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAAAHAAAAB4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAABwAAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
- ind: "-1,0"
tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHgAAAB4AAAAeAAAAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAAAeAAAAHgAAAB4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAHQAAAB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
- ind: "0,0"
tiles: HAAAAB4AAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAAAeAAAAHgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
entities:
- uid: 0
components:
- pos: 0.5,0.5
parent: null
type: Transform
- index: 0
type: MapGrid
- angularDamping: 0.3
fixedRotation: False
bodyType: Dynamic
type: Physics
- fixtures:
- shape: !type:PolygonShape
vertices:
- 0,-3
- 0,-1
- -3,-1
- -3,-3
id: grid_chunk--3--3
mask:
- MapGrid
layer:
- MapGrid
mass: 24
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,-1
- 0,0
- -4,0
- -4,-1
id: grid_chunk--4--1
mask:
- MapGrid
layer:
- MapGrid
mass: 16
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 3,-4
- 3,-3
- 2,-3
- 2,-4
id: grid_chunk-2--4
mask:
- MapGrid
layer:
- MapGrid
mass: 4
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 3,-3
- 3,0
- 0,0
- 0,-3
id: grid_chunk-0--3
mask:
- MapGrid
layer:
- MapGrid
mass: 36
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,0
- 0,2
- -4,2
- -4,0
id: grid_chunk--4-0
mask:
- MapGrid
layer:
- MapGrid
mass: 32
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- -1,2
- -1,3
- -4,3
- -4,2
id: grid_chunk--4-2
mask:
- MapGrid
layer:
- MapGrid
mass: 12
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 3,0
- 3,2
- 0,2
- 0,0
id: grid_chunk-0-0
mask:
- MapGrid
layer:
- MapGrid
mass: 24
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 1,2
- 1,3
- 0,3
- 0,2
id: grid_chunk-0-2
mask:
- MapGrid
layer:
- MapGrid
mass: 4
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- -3,-3
- -3,-1
- -4,-1
- -4,-3
id: grid_chunk--4--3
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 1,-2
- 1,-1
- 0,-1
- 0,-2
id: grid_chunk-0--2
mask:
- MapGrid
layer:
- MapGrid
mass: 4
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,-3
- 0,-2
- -1,-2
- -1,-3
id: grid_chunk--1--3
mask:
- MapGrid
layer:
- MapGrid
mass: 4
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 3,0
- 3,2
- 2,2
- 2,0
id: grid_chunk-2-0
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,-2
- 0,-1
- -2,-1
- -2,-2
id: grid_chunk--2--2
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,-4
- 0,-3
- -4,-3
- -4,-4
id: grid_chunk--4--4
mask:
- MapGrid
layer:
- MapGrid
mass: 16
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,1
- 0,2
- -1,2
- -1,1
id: grid_chunk--1-1
mask:
- MapGrid
layer:
- MapGrid
mass: 4
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 3,-3
- 3,-1
- 2,-1
- 2,-3
id: grid_chunk-2--3
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 3,-1
- 3,0
- 0,0
- 0,-1
id: grid_chunk-0--1
mask:
- MapGrid
layer:
- MapGrid
mass: 12
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 3,-4
- 3,-3
- 0,-3
- 0,-4
id: grid_chunk-0--4
mask:
- MapGrid
layer:
- MapGrid
mass: 12
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,0
- 0,1
- -2,1
- -2,0
id: grid_chunk--2-0
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
type: Fixtures
- gravityShakeSound: !type:SoundPathSpecifier
path: /Audio/Effects/alert.ogg
type: Gravity
- uid: 1
type: WallSolid
components:
- pos: -3.5,1.5
parent: 0
type: Transform
- uid: 2
type: WallSolid
components:
- pos: -2.5,1.5
parent: 0
type: Transform
- uid: 3
type: WallSolid
components:
- pos: -1.5,1.5
parent: 0
type: Transform
- uid: 4
type: AirlockMaintEngiLocked
components:
- name: Entleins Wohnstätte
type: MetaData
- pos: -0.5,1.5
parent: 0
type: Transform
- containers:
board: !type:Container
ents: []
type: ContainerContainer
- uid: 5
type: WallSolid
components:
- pos: 0.5,1.5
parent: 0
type: Transform
- uid: 6
type: WallSolid
components:
- pos: 1.5,1.5
parent: 0
type: Transform
- uid: 7
type: WallSolid
components:
- pos: 2.5,1.5
parent: 0
type: Transform
- uid: 8
type: ReinforcedWindow
components:
- pos: 1.5,-2.5
parent: 0
type: Transform
- uid: 9
type: ReinforcedWindow
components:
- pos: 0.5,-2.5
parent: 0
type: Transform
- uid: 10
type: ReinforcedWindow
components:
- pos: -0.5,-2.5
parent: 0
type: Transform
- uid: 11
type: ReinforcedWindow
components:
- pos: -1.5,-2.5
parent: 0
type: Transform
- uid: 12
type: FigureSpawner
components:
- pos: 1.5,-0.5
parent: 0
type: Transform
- uid: 13
type: WallSolid
components:
- pos: 2.5,-2.5
parent: 0
type: Transform
- uid: 14
type: ClosetMaintenanceFilledRandom
components:
- pos: -1.5,0.5
parent: 0
type: Transform
- isPlaceable: False
type: PlaceableSurface
- containers:
EntityStorageComponent: !type:Container
ents: []
type: ContainerContainer
- uid: 15
type: TableCarpet
components:
- pos: 0.5,-0.5
parent: 0
type: Transform
- uid: 16
type: TableCarpet
components:
- pos: 1.5,-0.5
parent: 0
type: Transform
- uid: 17
type: d20Dice
components:
- pos: 0.35689956,-0.2576263
parent: 0
type: Transform
- canCollide: False
type: Physics
- uid: 18
type: SalvageLorePaperGamingSpawner
components:
- pos: 0.79439956,-0.4295013
parent: 0
type: Transform
- canCollide: False
type: Physics
- fixtures: []
type: Fixtures
- uid: 19
type: SalvageMaterialCrateSpawner
components:
- pos: 2.5,-1.5
parent: 0
type: Transform
- uid: 20
type: SalvageMaterialCrateSpawner
components:
- pos: -3.5,0.5
parent: 0
type: Transform
- uid: 21
type: RandomArcade
components:
- pos: -2.5,0.5
parent: 0
type: Transform
- uid: 22
type: SalvageMobSpawner
components:
- pos: -0.5,-1.5
parent: 0
type: Transform
- uid: 23
type: Grille
components:
- pos: -2.5,-2.5
parent: 0
type: Transform
- uid: 24
type: Grille
components:
- pos: -1.5,-2.5
parent: 0
type: Transform
- uid: 25
type: Grille
components:
- pos: -0.5,-2.5
parent: 0
type: Transform
- uid: 26
type: Grille
components:
- pos: 0.5,-2.5
parent: 0
type: Transform
- uid: 27
type: Grille
components:
- pos: 1.5,-2.5
parent: 0
type: Transform
- uid: 28
type: CableApcExtension
components:
- pos: -0.5,1.5
parent: 0
type: Transform
- canCollide: False
type: Physics
- uid: 29
type: CableApcExtension
components:
- pos: -0.5,0.5
parent: 0
type: Transform
- visible: False
type: Sprite
- canCollide: False
type: Physics
- uid: 30
type: CableApcExtension
components:
- pos: -0.5,-0.5
parent: 0
type: Transform
- visible: False
type: Sprite
- canCollide: False
type: Physics
- uid: 31
type: CableApcExtension
components:
- pos: -0.5,-1.5
parent: 0
type: Transform
- canCollide: False
type: Physics
- uid: 32
type: CableApcExtension
components:
- pos: 0.5,-1.5
parent: 0
type: Transform
- visible: False
type: Sprite
- canCollide: False
type: Physics
- uid: 33
type: CableApcExtension
components:
- pos: -1.5,-1.5
parent: 0
type: Transform
- canCollide: False
type: Physics
- uid: 34
type: CableApcExtension
components:
- pos: 1.5,-1.5
parent: 0
type: Transform
- visible: False
type: Sprite
- canCollide: False
type: Physics
- uid: 35
type: CableApcExtension
components:
- pos: 2.5,-1.5
parent: 0
type: Transform
- canCollide: False
type: Physics
- uid: 36
type: PoweredSmallLight
components:
- rot: 3.141592653589793 rad
pos: 2.5,-1.5
parent: 0
type: Transform
- powerLoad: 0
type: ApcPowerReceiver
- enabled: False
type: AmbientSound
- containers:
light_bulb: !type:ContainerSlot {}
type: ContainerContainer
- uid: 37
type: PoweredSmallLight
components:
- pos: -2.5,0.5
parent: 0
type: Transform
- powerLoad: 0
type: ApcPowerReceiver
- enabled: False
type: AmbientSound
- containers:
light_bulb: !type:ContainerSlot {}
type: ContainerContainer
- uid: 38
type: CableApcExtension
components:
- pos: -1.5,0.5
parent: 0
type: Transform
- canCollide: False
type: Physics
- uid: 39
type: CableApcExtension
components:
- pos: -2.5,0.5
parent: 0
type: Transform
- canCollide: False
type: Physics
- uid: 40
type: CableApcExtension
components:
- pos: 0.5,0.5
parent: 0
type: Transform
- visible: False
type: Sprite
- canCollide: False
type: Physics
...

View File

@@ -0,0 +1,563 @@
meta:
format: 2
name: DemoStation
author: Space-Wizards
postmapinit: false
tilemap:
0: space
1: floor_asteroid_coarse_sand0
2: floor_asteroid_coarse_sand1
3: floor_asteroid_coarse_sand2
4: floor_asteroid_coarse_sand_dug
5: floor_asteroid_sand
6: floor_asteroid_tile
7: floor_blue
8: floor_blue_circuit
9: floor_dark
10: floor_elevator_shaft
11: floor_freezer
12: floor_glass
13: floor_gold
14: floor_green_circuit
15: floor_hydro
16: floor_lino
17: floor_mono
18: floor_reinforced
19: floor_rglass
20: floor_rock_vault
21: floor_showroom
22: floor_silver
23: floor_snow
24: floor_steel
25: floor_steel_dirty
26: floor_techmaint
27: floor_white
28: floor_wood
29: lattice
30: plating
31: underplating
grids:
- settings:
chunksize: 16
tilesize: 1
chunks:
- ind: "-1,-1"
tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABQAAAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAAFAAAABQAAAA==
- ind: "0,-1"
tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
- ind: "-1,0"
tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAAFAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAAABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
- ind: "0,0"
tiles: BQAAAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
entities:
- uid: 0
components:
- pos: 0.5,0.5
parent: null
type: Transform
- index: 0
type: MapGrid
- angularDamping: 0.3
fixedRotation: False
bodyType: Dynamic
type: Physics
- fixtures:
- shape: !type:PolygonShape
vertices:
- 3,0
- 3,1
- 0,1
- 0,0
id: grid_chunk-0-0
mask:
- MapGrid
layer:
- MapGrid
mass: 12
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 1,-3
- 1,-2
- 0,-2
- 0,-3
id: grid_chunk-0--3
mask:
- MapGrid
layer:
- MapGrid
mass: 4
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 3,-2
- 3,0
- 0,0
- 0,-2
id: grid_chunk-0--2
mask:
- MapGrid
layer:
- MapGrid
mass: 24
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 2,1
- 2,2
- 0,2
- 0,1
id: grid_chunk-0-1
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 1,2
- 1,3
- 0,3
- 0,2
id: grid_chunk-0-2
mask:
- MapGrid
layer:
- MapGrid
mass: 4
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,0
- 0,2
- -4,2
- -4,0
id: grid_chunk--4-0
mask:
- MapGrid
layer:
- MapGrid
mass: 32
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,-4
- 0,-2
- -3,-2
- -3,-4
id: grid_chunk--3--4
mask:
- MapGrid
layer:
- MapGrid
mass: 24
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,-2
- 0,0
- -4,0
- -4,-2
id: grid_chunk--4--2
mask:
- MapGrid
layer:
- MapGrid
mass: 32
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,2
- 0,3
- -3,3
- -3,2
id: grid_chunk--3-2
mask:
- MapGrid
layer:
- MapGrid
mass: 12
restitution: 0.1
type: Fixtures
- gravityShakeSound: !type:SoundPathSpecifier
path: /Audio/Effects/alert.ogg
type: Gravity
- tiles:
-4,-2: 0
-4,-1: 0
-3,-4: 0
-3,-3: 0
-3,-2: 0
-3,-1: 0
-2,-4: 0
-2,-3: 0
-2,-2: 0
-2,-1: 1
-1,-4: 0
-1,-3: 0
-1,-2: 1
-1,-1: 2
0,-3: 0
0,-2: 0
0,-1: 1
1,-2: 0
1,-1: 0
2,-2: 0
2,-1: 0
-4,0: 0
-4,1: 0
-3,0: 0
-3,1: 0
-3,2: 0
-2,0: 3
-2,1: 0
-2,2: 0
-1,0: 1
-1,1: 0
-1,2: 0
0,0: 0
0,1: 0
0,2: 0
1,0: 0
1,1: 0
2,0: 0
uniqueMixes:
- volume: 2500
temperature: 293.15
moles:
- 21.824879
- 82.10312
- 0
- 0
- 0
- 0
- 0
- 0
- volume: 2500
temperature: 293.15
moles:
- 0
- 0
- 0
- 6666.982
- 0
- 0
- 0
- 0
- volume: 2500
temperature: 9000
moles:
- 0
- 0
- 0
- 6666.982
- 0
- 0
- 0
- 0
- volume: 2500
temperature: 293.15
moles:
- 6666.982
- 0
- 0
- 0
- 0
- 0
- 0
- 0
type: GridAtmosphere
- uid: 1
type: AsteroidRock
components:
- pos: -2.5,2.5
parent: 0
type: Transform
- uid: 2
type: AsteroidRock
components:
- pos: -2.5,1.5
parent: 0
type: Transform
- uid: 3
type: AsteroidRock
components:
- pos: -2.5,0.5
parent: 0
type: Transform
- uid: 4
type: AsteroidRock
components:
- pos: -2.5,-0.5
parent: 0
type: Transform
- uid: 5
type: AsteroidRock
components:
- pos: -2.5,-1.5
parent: 0
type: Transform
- uid: 6
type: AsteroidRock
components:
- pos: -2.5,-2.5
parent: 0
type: Transform
- uid: 7
type: AsteroidRock
components:
- pos: -1.5,2.5
parent: 0
type: Transform
- uid: 8
type: AsteroidRock
components:
- pos: -1.5,1.5
parent: 0
type: Transform
- uid: 9
type: SalvageMobSpawner
components:
- pos: -1.5,0.5
parent: 0
type: Transform
- uid: 10
type: CrateMaterialPlasteel
components:
- pos: -1.5,-0.5
parent: 0
type: Transform
- isPlaceable: False
type: PlaceableSurface
- containers:
EntityStorageComponent: !type:Container
ents: []
PaperLabel: !type:ContainerSlot {}
type: ContainerContainer
- uid: 11
type: AsteroidRock
components:
- pos: -1.5,-1.5
parent: 0
type: Transform
- uid: 12
type: AsteroidRock
components:
- pos: -1.5,-2.5
parent: 0
type: Transform
- uid: 13
type: AsteroidRock
components:
- pos: -0.5,2.5
parent: 0
type: Transform
- uid: 14
type: AsteroidRock
components:
- pos: -0.5,1.5
parent: 0
type: Transform
- uid: 15
type: CrateMaterialPlastic
components:
- pos: -0.5,0.5
parent: 0
type: Transform
- isPlaceable: False
type: PlaceableSurface
- containers:
EntityStorageComponent: !type:Container
ents: []
PaperLabel: !type:ContainerSlot {}
type: ContainerContainer
- uid: 16
type: CrateMaterialGlass
components:
- pos: 0.5,-0.5
parent: 0
type: Transform
- isPlaceable: False
type: PlaceableSurface
- containers:
EntityStorageComponent: !type:Container
ents: []
PaperLabel: !type:ContainerSlot {}
type: ContainerContainer
- uid: 17
type: SalvageMaterialCrateSpawner
components:
- pos: -0.5,-1.5
parent: 0
type: Transform
- uid: 18
type: AsteroidRock
components:
- pos: -0.5,-2.5
parent: 0
type: Transform
- uid: 19
type: AsteroidRock
components:
- pos: 0.5,2.5
parent: 0
type: Transform
- uid: 20
type: AsteroidRock
components:
- pos: 0.5,1.5
parent: 0
type: Transform
- uid: 21
type: AsteroidRock
components:
- pos: 0.5,0.5
parent: 0
type: Transform
- uid: 22
type: CrateMaterialSteel
components:
- pos: -0.5,-0.5
parent: 0
type: Transform
- isPlaceable: False
type: PlaceableSurface
- containers:
EntityStorageComponent: !type:Container
ents: []
PaperLabel: !type:ContainerSlot {}
type: ContainerContainer
- uid: 23
type: AsteroidRock
components:
- pos: 0.5,-1.5
parent: 0
type: Transform
- uid: 24
type: AsteroidRock
components:
- pos: 0.5,-2.5
parent: 0
type: Transform
- uid: 25
type: AsteroidRock
components:
- pos: -3.5,1.5
parent: 0
type: Transform
- uid: 26
type: AsteroidRock
components:
- pos: -3.5,0.5
parent: 0
type: Transform
- uid: 27
type: AsteroidRock
components:
- pos: -3.5,-0.5
parent: 0
type: Transform
- uid: 28
type: AsteroidRock
components:
- pos: -3.5,-1.5
parent: 0
type: Transform
- uid: 29
type: AsteroidRock
components:
- pos: 1.5,1.5
parent: 0
type: Transform
- uid: 30
type: AsteroidRock
components:
- pos: 1.5,0.5
parent: 0
type: Transform
- uid: 31
type: AsteroidRock
components:
- pos: 1.5,-0.5
parent: 0
type: Transform
- uid: 32
type: AsteroidRock
components:
- pos: 1.5,-1.5
parent: 0
type: Transform
- uid: 33
type: AsteroidRock
components:
- pos: 2.5,0.5
parent: 0
type: Transform
- uid: 34
type: AsteroidRock
components:
- pos: 2.5,-0.5
parent: 0
type: Transform
- uid: 35
type: AsteroidRock
components:
- pos: 2.5,-1.5
parent: 0
type: Transform
- uid: 36
type: AsteroidRock
components:
- pos: -2.5,-3.5
parent: 0
type: Transform
- uid: 37
type: AsteroidRock
components:
- pos: -1.5,-3.5
parent: 0
type: Transform
- uid: 38
type: AsteroidRock
components:
- pos: -0.5,-3.5
parent: 0
type: Transform
- uid: 39
type: AtmosFixOxygenMarker
components:
- pos: -1.5,0.5
parent: 0
type: Transform
- uid: 40
type: AtmosFixPlasmaMarker
components:
- pos: -0.5,0.5
parent: 0
type: Transform
- uid: 41
type: AtmosFixPlasmaMarker
components:
- pos: -0.5,-0.5
parent: 0
type: Transform
- uid: 42
type: AtmosFixPlasmaMarker
components:
- pos: -1.5,-0.5
parent: 0
type: Transform
- uid: 43
type: AtmosFixPlasmaMarker
components:
- pos: 0.5,-0.5
parent: 0
type: Transform
- uid: 44
type: AtmosFixPlasmaMarker
components:
- pos: -0.5,-1.5
parent: 0
type: Transform
...

View File

@@ -0,0 +1,277 @@
meta:
format: 2
name: DemoStation
author: Space-Wizards
postmapinit: false
tilemap:
0: space
1: floor_asteroid_coarse_sand0
2: floor_asteroid_coarse_sand1
3: floor_asteroid_coarse_sand2
4: floor_asteroid_coarse_sand_dug
5: floor_asteroid_sand
6: floor_asteroid_tile
7: floor_blue
8: floor_blue_circuit
9: floor_dark
10: floor_elevator_shaft
11: floor_freezer
12: floor_glass
13: floor_gold
14: floor_green_circuit
15: floor_hydro
16: floor_lino
17: floor_mono
18: floor_reinforced
19: floor_rglass
20: floor_rock_vault
21: floor_showroom
22: floor_silver
23: floor_snow
24: floor_steel
25: floor_steel_dirty
26: floor_techmaint
27: floor_white
28: floor_wood
29: lattice
30: plating
31: underplating
grids:
- settings:
chunksize: 16
tilesize: 1
chunks:
- ind: "-1,-1"
tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAB0AAAAdAAAAHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0AAAAAAAAAAAAAAB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAAAAAAB0AAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAB0AAAAdAAAADQAAAA==
- ind: "0,-1"
tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAB0AAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAAAAAAB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAB0AAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
- ind: "-1,0"
tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAAAAAAAdAAAAHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0AAAAAAAAAAAAAAB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAHQAAAB0AAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
- ind: "0,0"
tiles: HQAAAAAAAAAdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAHQAAAB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
entities:
- uid: 0
components:
- pos: 0.5, 0.5
parent: null
type: Transform
- index: 0
type: MapGrid
- angularDamping: 0.3
fixedRotation: False
bodyType: Dynamic
type: Physics
- fixtures:
- shape: !type:PolygonShape
vertices:
- -3,-3
- -3,-1
- -4,-1
- -4,-3
id: grid_chunk--4--3
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 1,-2
- 1,-1
- 0,-1
- 0,-2
id: grid_chunk-0--2
mask:
- MapGrid
layer:
- MapGrid
mass: 4
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,-3
- 0,-2
- -1,-2
- -1,-3
id: grid_chunk--1--3
mask:
- MapGrid
layer:
- MapGrid
mass: 4
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- -3,0
- -3,2
- -4,2
- -4,0
id: grid_chunk--4-0
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 3,0
- 3,2
- 2,2
- 2,0
id: grid_chunk-2-0
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,-2
- 0,-1
- -2,-1
- -2,-2
id: grid_chunk--2--2
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,-4
- 0,-3
- -4,-3
- -4,-4
id: grid_chunk--4--4
mask:
- MapGrid
layer:
- MapGrid
mass: 16
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,-1
- 0,0
- -4,0
- -4,-1
id: grid_chunk--4--1
mask:
- MapGrid
layer:
- MapGrid
mass: 16
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,1
- 0,2
- -1,2
- -1,1
id: grid_chunk--1-1
mask:
- MapGrid
layer:
- MapGrid
mass: 4
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 3,2
- 3,3
- 0,3
- 0,2
id: grid_chunk-0-2
mask:
- MapGrid
layer:
- MapGrid
mass: 12
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 1,0
- 1,1
- 0,1
- 0,0
id: grid_chunk-0-0
mask:
- MapGrid
layer:
- MapGrid
mass: 4
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 3,-3
- 3,-1
- 2,-1
- 2,-3
id: grid_chunk-2--3
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 3,-1
- 3,0
- 0,0
- 0,-1
id: grid_chunk-0--1
mask:
- MapGrid
layer:
- MapGrid
mass: 12
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 3,-4
- 3,-3
- 0,-3
- 0,-4
id: grid_chunk-0--4
mask:
- MapGrid
layer:
- MapGrid
mass: 12
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,2
- 0,3
- -4,3
- -4,2
id: grid_chunk--4-2
mask:
- MapGrid
layer:
- MapGrid
mass: 16
restitution: 0.1
- shape: !type:PolygonShape
vertices:
- 0,0
- 0,1
- -2,1
- -2,0
id: grid_chunk--2-0
mask:
- MapGrid
layer:
- MapGrid
mass: 8
restitution: 0.1
type: Fixtures
- gravityShakeSound: !type:SoundPathSpecifier
path: /Audio/Effects/alert.ogg
type: Gravity
...

View File

@@ -5625,4 +5625,17 @@ entities:
- pos: 0.5,-9.5
parent: 0
type: Transform
- uid: 559
type: SalvageLocator
components:
- pos: 0.5,5.5
rot: 3.141592653589793 rad
parent: 0
type: Transform
- uid: 560
type: CrateSalvageEquipment
components:
- pos: 2.5,5.5
parent: 0
type: Transform
...

View File

@@ -27006,21 +27006,14 @@ entities:
parent: 0
type: Transform
- uid: 2090
type: CrateGenericSteel
type: SalvageMagnet
components:
- pos: 6.5,32.5
rot: -1.5707963267948966 rad
parent: 0
type: Transform
- isPlaceable: False
type: PlaceableSurface
- containers:
EntityStorageComponent: !type:Container
ents: []
labelSlot: !type:ContainerSlot {}
PaperLabel: !type:ContainerSlot {}
type: ContainerContainer
- uid: 2091
type: CrateGenericSteel
type: CrateSalvageEquipment
components:
- pos: 7.5,31.5
parent: 0

View File

@@ -72557,4 +72557,17 @@ entities:
- pos: 14.5,-0.5
parent: 853
type: Transform
- uid: 7116
type: SalvageMagnet
components:
- rot: 3.141592697301183 rad
pos: 23.5,11.5
parent: 853
type: Transform
- uid: 7117
type: CrateSalvageEquipment
components:
- pos: 23.5,13.5
parent: 853
type: Transform
...

View File

@@ -0,0 +1,82 @@
- type: entity
id: CrateSalvageEquipment
name: "salvage equipment crate"
description: For the daring.
suffix: Filled
parent: CrateGenericSteel
components:
- type: StorageFill
contents:
- id: ClothingHeadHelmetHardsuitSalvage
- id: ClothingOuterHardsuitSalvage
- id: ClothingMaskBreath
- id: OxygenTankFilled
- id: FireExtinguisher
- id: ClothingShoesBootsMag
- id: Pickaxe
# bare-minimum for cutting apart walls
# not giving them wirecutters/etc. for balance reasons
- id: Welder
- id: Wrench
- id: Screwdriver
- id: Crowbar
- type: entity
id: CrateSalvageAssortedGoodies
suffix: Filled, Salvage Random
abstract: true # You should use SalvageMaterialCrateSpawner instead
parent: CrateGenericSteel
components:
- type: StorageFill
contents:
# Normal (10%)
- id: ToolboxEmergencyFilled
prob: 0.1
- id: ClothingMaskBreath
prob: 0.1
- id: OxygenTankFilled
prob: 0.1
- id: SheetPlasma
prob: 0.1
# - Service
- id: CrayonBox
prob: 0.1
# - Medical
- id: MedkitFilled
prob: 0.1
- id: BoxSyringe
prob: 0.1
- id: BoxBeaker
prob: 0.1
# - Scaf
- id: ClothingHeadHelmetScaf
prob: 0.1
- id: ClothingOuterArmorScaf
prob: 0.1
# - Heh
- id: SalvageHumanCorpse
prob: 0.1
# Interesting (1%)
# - Ammo
- id: BoxMagnum
prob: 0.01
# - #shinies
- id: PowerCellLargeHyper
prob: 0.01
# Just no (0.1%)
# - Working guns
- id: RevolverDeckard
prob: 0.001
- id: RevolverInspector
prob: 0.001
# - Skub
- id: Skub
prob: 0.001
# TRAITOR EQUIPMENT (0.01%)
- id: Telecrystal10
prob: 0.0001
- id: RevolverPredator
prob: 0.0001
- id: RevolverMateba
prob: 0.0001

View File

@@ -0,0 +1,101 @@
# ---- SPECIFICS ----
- type: entity
id: PaperWrittenSalvageLoreMedium1PlasmaTrap
abstract: true # keep this from spamming spawn sheet
suffix: "Salvage: Lore: Medium 1: Plasma Trap"
parent: PaperWritten
components:
- type: Paper
content: |
Heheheheh, no way in hell they're going to get at our stash NOW, is there?
I rigged the area where our stuff's at to be a toasty thousand K.
You know how to drain it when we need it out.
- J.
# ---- GAMING ----
- type: entity
name: Salvage Lore Paper Gaming Spawner
id: SalvageLorePaperGamingSpawner
parent: MarkerBase
components:
- type: Sprite
layers:
- state: red
- texture: Objects/Misc/bureaucracy.rsi/paper_words.png
- type: RandomSpawner
prototypes:
- PaperWrittenSalvageLoreGaming1
- PaperWrittenSalvageLoreGaming2
- PaperWrittenSalvageLoreGaming3
- PaperWrittenSalvageLoreGaming4
offset: 0.1
- type: entity
id: PaperWrittenSalvageLoreGaming1
abstract: true # keep this from spamming spawn sheet
suffix: "Salvage: Lore: Gaming 1"
parent: PaperWritten
components:
- type: Paper
content: |
Can't stay for the game.
Engineering want me to keep a close eye on the singularity SMESes.
Leaving this so you know what's up.
Sorry.
- Alexander
- type: entity
id: PaperWrittenSalvageLoreGaming2
abstract: true # keep this from spamming spawn sheet
suffix: "Salvage: Lore: Gaming 2"
parent: PaperWritten
components:
- type: Paper
content: |
Johny Clowe
Class: Druid
Alignment: Neutral Good
Str: 1,294,139
Dex: 4,102,103
Con: 9,522,913
Int: 528,491
Wis: 1
Cha: 1
Where's the age?
Why are those ability scores so ridiculous?
What even are you trying to do here, Leah? - Your Friendly DM
- type: entity
id: PaperWrittenSalvageLoreGaming3
abstract: true # keep this from spamming spawn sheet
suffix: "Salvage: Lore: Gaming 3"
parent: PaperWritten
components:
- type: Paper
content: |
THE GIANT SPACE FLY FROM SPACE
Session 1: They should have just learned what's going on with the world and the Giant Space Fly.
Session 2: They should know to ask the Wizard's Court about seismic distortions.
Session 3: On their way to underground lair.
Session 4: Just ran into the Architect Of Flies.
Oh dear goodness they just started randomly killing everybody
- type: entity
id: PaperWrittenSalvageLoreGaming4
abstract: true # keep this from spamming spawn sheet
suffix: "Salvage: Lore: Gaming 4"
parent: PaperWritten
components:
- type: Paper
content: |
Won't be able to come to the meet, chemist blew up the hospital again.
Fifth time this shift.
It's amazing.
But not in a good way.
Cheers, - Arielle
# ----

View File

@@ -0,0 +1,67 @@
- type: entity
name: Salvage Material Crate Spawner
id: SalvageMaterialCrateSpawner
parent: MarkerBase
components:
- type: Sprite
layers:
- state: red
- texture: Structures/Storage/Crates/generic.rsi/crate_icon.png
- type: RandomSpawner
rarePrototypes:
- SalvageHumanCorpse
- CrateMaterialPlasteel
- CrateMaterialWood
- CrateMaterialPlastic
- CrateSalvageEquipment
- CrateMaterialSteel
- CrateMaterialGlass
rareChance: 0.4
prototypes:
- CrateSalvageAssortedGoodies
chance: 0.9
offset: 0.0
- type: entity
name: Salvage Canister Spawner
id: SalvageCanisterSpawner
parent: MarkerBase
components:
- type: Sprite
layers:
- state: red
- texture: Structures/Storage/canister.rsi/blue.png
- type: RandomSpawner
rarePrototypes:
- PlasmaCanister
rareChance: 0.03
prototypes:
- AirCanister
- NitrogenCanister
- OxygenCanister
- CarbonDioxideCanister
- WaterVaporCanister
chance: 0.9
offset: 0.0
- type: entity
name: Salvage Mob Spawner
id: SalvageMobSpawner
parent: MarkerBase
components:
- type: Sprite
layers:
- state: red
- texture: Mobs/Aliens/Carps/space.rsi/icon.png
- type: RandomSpawner
prototypes:
- MobCarp
- MobCarp
- MobCarp
- MobCarp
- MobCarp
- PlushieCarp
- DehydratedSpaceCarp
chance: 0.25
offset: 0.2

View File

@@ -66,3 +66,20 @@
- type: AtmosFixMarker
mode: 4
- type: entity
name: Atmos Fix Instant Plasmafire Marker
id: AtmosFixInstantPlasmaFireMarker
description: "INSTANT PLASMAFIRE"
parent: MarkerBase
components:
- type: Sprite
layers:
- sprite: Markers/atmos.rsi # {
state: base-hot
shader: unshaded
- sprite: Markers/atmos.rsi
shader: unshaded # }
state: fire
- type: AtmosFixMarker
mode: 5

View File

@@ -28,3 +28,16 @@
- Thirst
- Idle
- Spirate
- type: entity
parent: MobHumanBase
suffix: Dead
id: SalvageHumanCorpse
name: unidentified human
description: We barely knew ye.
components:
- type: Damageable
damage:
types:
Blunt: 200

View File

@@ -0,0 +1,25 @@
- type: entity
id: SalvageMagnet
parent: BaseMachine
name: salvage magnet
description: "Pulls in salvage."
components:
- type: Sprite
layers:
- sprite: Structures/Machines/salvage.rsi
state: salvage-magnet
# Ideally, there'd be lights indicating power usage and a big red lamp indicating loss
- type: Rotatable
- type: SalvageMagnet
offset: 0, -32
# For Knightship
- type: entity
id: SalvageLocator
parent: SalvageMagnet
name: salvage locator
description: "Locates salvage."
components:
- type: SalvageMagnet
offset: 0, -12

View File

@@ -23,6 +23,7 @@
- type: Occluder
sizeX: 32
sizeY: 32
- type: Airtight
- type: Appearance
visuals:
- type: AsteroidRockVisualizer

View File

@@ -0,0 +1,33 @@
# ALL SALVAGE MAPS SHOULD BE SETUP SUCH THAT TILE REF -1,-1 IS THEIR OFFICIAL CENTRE,
# AND FOR EASE OF UNDERSTANDING, USE - pos: 0.5, 0.5 FOR SAVED POSITION.
# "Small"-class maps - Max size square: 7x7, indicated size: 3.5
- type: salvageMap
id: small1
name: "Small / Engineering Storage 1"
mapPath: Maps/Salvage/small-1.yml
size: 3.5
- type: salvageMap
id: small2
name: "Small / Gaming Nook 1"
mapPath: Maps/Salvage/small-2.yml
size: 3.5
# Small - Asteroids
- type: salvageMap
id: smallA1
name: "Small / Asteroid 1 Plasmafire"
mapPath: Maps/Salvage/small-a-1.yml
size: 3.5
# "Medium"-class maps - Max size square: 15x15, indicated size: 7.5
- type: salvageMap
id: medium1
name: "Medium / Plasma-Trapped Cache 1"
mapPath: Maps/Salvage/medium-1.yml
size: 7.5

View File

@@ -9,6 +9,7 @@
access:
- Cargo
- Maintenance
- External
- type: startingGear
id: CargoTechGear

View File

@@ -10,6 +10,7 @@
- Cargo
# - Quartermaster
- Maintenance
- External
- type: startingGear
id: QuartermasterGear

View File

@@ -0,0 +1,14 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
"copyright": "Space Wizards Federation",
"size": {
"x": 32,
"y": 32
},
"states": [
{
"name": "mono"
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 271 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 255 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 227 B

View File

@@ -10,6 +10,9 @@
{
"name": "base"
},
{
"name": "base-hot"
},
{
"name": "vacuum"
},
@@ -24,6 +27,9 @@
},
{
"name": "watervapour"
},
{
"name": "fire"
}
]
}

View File

@@ -0,0 +1,17 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
"copyright": "Edit by 20kdc using small parts of autolathe from https://github.com/tgstation/tgstation/blob/acb091f9744e9ab7d5a27fb32dd0c03bd019f58c/icons/obj/stationobjs.dmi (may be an earlier version) and tcboss from https://github.com/tgstation/tgstation/blob/e32357e6b0ec0f0a1821d2773f0d1e1d6ce7d494/icons/obj/computer.dmi (may be an earlier version)",
"size": {
"x": 32,
"y": 64
},
"states": [
{
"name": "salvage-magnet",
"directions": 4,
"commentary": "So presumably the lights would represent the power usage of the magnet, when that's in, and the big red lamp would mean something's being lost."
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB