2026-07-11 01:08:31 +01:00
|
|
|
using GameCult.Caching;
|
|
|
|
|
using MessagePack;
|
|
|
|
|
|
|
|
|
|
namespace Aetheria.State.Documents;
|
|
|
|
|
|
|
|
|
|
[CultDocument("aetheria.game_session", "aetheria.game_session.v1")]
|
|
|
|
|
[CultGlobal]
|
|
|
|
|
[MessagePackObject]
|
|
|
|
|
public sealed class AetheriaGameSessionState
|
|
|
|
|
{
|
|
|
|
|
public const string TerminusMode = "terminus";
|
2026-07-17 08:48:56 +01:00
|
|
|
public const string AetheriaMode = "aetheria";
|
2026-07-11 01:08:31 +01:00
|
|
|
|
|
|
|
|
[Key(0)] public string Mode { get; set; } = TerminusMode;
|
|
|
|
|
[Key(1)] public string SessionId { get; set; } = "";
|
|
|
|
|
[Key(2)] public string RunId { get; set; } = "";
|
|
|
|
|
[Key(3)] public string ControlledEntityKey { get; set; } = "";
|
|
|
|
|
[Key(4)] public string EntrySurfaceId { get; set; } = "aetheria.pilot";
|
|
|
|
|
[Key(5)] public string LastStartCommandId { get; set; } = "";
|
|
|
|
|
[Key(6)] public string UpdatedAtUtc { get; set; } = "";
|
2026-07-14 00:50:13 +01:00
|
|
|
[Key(7)] public double SimulationRate { get; set; } = 1;
|
2026-07-17 07:28:53 +01:00
|
|
|
[Key(8)] public double? EffectiveSimulationRate { get; set; } = 1;
|
2026-07-11 01:08:31 +01:00
|
|
|
}
|