From bf03f277091de0eec8debfdd2e4146c08651254e Mon Sep 17 00:00:00 2001 From: Meta Vens Date: Sun, 14 Jun 2026 21:30:31 +0100 Subject: [PATCH] Demote zone construction data names --- .voidbot/state/aetheria.cc | Bin 86787 -> 87010 bytes .../Routing/Spline/Bundling/TimeMeasurer.cs | 4 +- .../TypelessContractlessStandardResolver.cs | 8 +++- Assets/Scripts/ServerShared/Zone.cs | 18 ++++----- .../{ZoneData.cs => ZoneConstructionData.cs} | 16 ++++---- ...a.cs.meta => ZoneConstructionData.cs.meta} | 0 Assets/Scripts/ServerShared/ZoneGenerator.cs | 36 ++++++++--------- docs/aetheria-perfect-machine-map.md | 38 ++++++++++++------ 8 files changed, 69 insertions(+), 51 deletions(-) rename Assets/Scripts/ServerShared/{ZoneData.cs => ZoneConstructionData.cs} (81%) rename Assets/Scripts/ServerShared/{ZoneData.cs.meta => ZoneConstructionData.cs.meta} (100%) diff --git a/.voidbot/state/aetheria.cc b/.voidbot/state/aetheria.cc index 4e60cd283bf87a66c5ce9f650e1bd76bf0e4a040..692a04a75c02a0a7cf558e5d597c9cf2cbbb591f 100644 GIT binary patch delta 2712 zcmai0-)~e!6wamK4=4nUMNxv2m>ALS-R-utwbW>#(AM-9-2$;{$n3qdyF>4txy;P% zQb=5c1YhJqZsMA#4+JU!O~fbSi-~V0z8D`&;L$(8gug(~nY-J)m7+<1+&eS(oNvDK zeP`zKH{1Tawe9YWE#1Y!Nbybhaf?Gk&D|5uzU0>}mv(kWhx?a4b9xflRo~tjY+jsn zUPzwW`tp_|YnKmfy?0=%Gd$G%D(`IHb6yIT^Q6#5#h&3(l;r+l7Hl#*LG=WuVw0It zEHc5CM4E*PpUkN;-{gZ(t^jVN375K_#fq<)Fg6NI^%4x^)u^blX5Tx`OAR;0-`*f+ znv|JGW6g-EQ9}Z*4f0_q7dRCd2vVh*R1tnFppIb<#_B8x@PA}E(JqClX_d`WZyE50mIF%8##F)Pxqx+ntmgu@!U7=4 zXC5ibSol<}9wHoeYgQu`Kn%;EqMorYifI|F00lzUNj0Voh>?4c zGF^zXKCGWTx_G*@I5s;zwlIFWc)IW?-qP5_G+6}6&oHWE)ykpR*_cBxvT$^MZeek1 zc7jxZ2}J0#a(t$0KT#y2rq)YBYP=d3RS*EwZ8a>*Ak_lkk7)pI^H~KpugMJel+?0f z+!>%LaK|B7b&>@UQ`$uo%DrWn&|v8Y&Rwic^ZKaM^JI(5ru&w&w?VjwV&jryu>ruu zivg9c$vE)IGGh?|eIuB*l|35Sbtq)a1NsEU&ZBKpmm689%D2?}38tVE`D6uRr7LXlT(8-_4}3;Y zcO{`Z8Vu1AJCp*T$4W6cjR468YjRo@QX6n5e6a5Cwqwyj*e1bVaNhVnelA!Y=nMD5 z953?#`--mdP`h`i@ZdmNU={uOrR3v3daj+?`PyST_swN4{F@aXuuC^UQukj;9-iFy zEG~w&o|#Op-^Vb?m0C|DvwV6?Yi4wQK8UN($n%-TmS1Rhnfzj_U4Z~hyIYkEI1LQd zUbQiu#WMQu;Mj%o3w<(1`tl_>r3K3$h8_kF)qJ)+ZH$)4(fo@R^>=KA`{*#J$@#Q=BDSyV4+ZO2i#(%k90H%Fe9iRTw6fe*iT4d6Z{2L zB@%j{?Pyuo5xk(FrmubS+`8h^T*7O#X@l~R~XFo4J;P>M*52*g~A(!KKOe( zj{N^y)BJ11*?aH~Ce7K-^FubZy^pQMcqD!c81P8M_O=#c*KdA*%y~7r@OO9iUO1Ti z*0rZI(BD_Ui{kG)*6)M;#pGev^KeIeqPcz22|BmO{^9`M9-CiGIv-_6hj8@X@Rak@ L)0yG^gG>Jarb6RZ delta 2561 zcmaJ@&2Jk;9Mv{yDX8Vr7D^)Mw1Sifdu=!UO2S8*q)k)xOKk&EkdVf^V|&Q%&N4F_ zH$|$2dO=(etmvLm5iJEodmz1V;Q(hUaY>OtLR`4-<$dS z*5>P9Z@znT)3)09#Mse^gNNPf(XouqInSlPZ2I__-fH^a!0uEGwEH%W*Yb^92ls56 z`t|zg;Qi4-=jf6BHOh30Nlwcw(p)c>JrOA_6HjvymFq#mV#y<&eKhI3`^rOS-x8T2v9;N`F|{?NrixE2Kjc-4fF5jcCYRa>Aw{{V6JepuR{n ziKTd-*{p;s1Z@|)r~B%e>XuW^OP#0 zv1$peh-4w<5%CjA>p`~nb!X@$=LsnY&;ESNd7<-|;!7x96PcjXkP)S+W`st*U8O`( zpw|#Gq}nBCiZV0{;{f{<3Tp$#yxg~$R0yzEB1jPHkR$a@7Y=1&0zvNas9E74kRm@d z6qdjUi@NA;2+%uUr`{s5De~-|2t%%wOD+SiBuW$jTo4g+kNf_4S?Bsyd>-R^hH5%W z+Ta+4gEyZAOf!FyT*YQ0%+B>W8|cxfM2e)@%8tG140j4S)v5Mcq3{_Fgt6f*rpn}{ z4HKLO%JeU#5lPfE&|(XEjjzl0&k^~FgD$*338I=qM|{-nw&;ZEV@x-EXQ>6Bs`9xA7)PW zohYpd&eUkSGtjQhO~)_?&>)fxAw)Y;m;w{hFIg3xnx7$UMq`X-gL+I8J2_O+P!TE( z92~p{{3>9pGl&8T!UXEF$EBBmirvT9EUsJn;zieo%SYFL9lgdytG};}E z{)r_sm(N2OGs0>b|1^MS`sIf^IuuSdVu8&Y$Cl@1Wl+;C3MB!0!(5!`OLp14m$N&E3F7IsAGdTKI_FL%Izi)Jf~e>| z34DaZgn>rPLeY{5J@shk>l&3tsp>Sr zg==6*rV=aQ^zO>@9b<|pW0LU3nnGC4b|K_2Q5rl#F@*vHRw9@jcnY{IhKMjLJm!~G z0PE>_E-EYPZZU5$78viskR$~Vqxic;qYa{S??CU6%th8v>GhkEHCCsypSL;tw)LCs zjUCQVy7ixD7Z&$yufpZL$mIdO9~>8?TO$ zHkFY internal class TimeMeasurer { -#if DEBUG && TEST_MSAGL +#if DEBUG && TEST_MSAGL && REPORTING static DebugHelpers.Timer timer; static TimeMeasurer() { timer = new DebugHelpers.Timer(); @@ -17,7 +17,7 @@ namespace Microsoft.Msagl.Routing.Spline.Bundling { internal delegate void Task(); internal static void DebugOutput(string str) { -#if DEBUG && TEST_MSAGL +#if DEBUG && TEST_MSAGL && REPORTING timer.Stop(); Console.Write("{0}: ", String.Format("{0:0.000}", timer.Duration)); Console.WriteLine(str); diff --git a/Assets/Plugins/MessagePack/Resolvers/TypelessContractlessStandardResolver.cs b/Assets/Plugins/MessagePack/Resolvers/TypelessContractlessStandardResolver.cs index 0c8167bab..405f38e5d 100644 --- a/Assets/Plugins/MessagePack/Resolvers/TypelessContractlessStandardResolver.cs +++ b/Assets/Plugins/MessagePack/Resolvers/TypelessContractlessStandardResolver.cs @@ -34,13 +34,17 @@ namespace MessagePack.Resolvers ForceSizePrimitiveObjectResolver.Instance, // Preserve particular integer types BuiltinResolver.Instance, // Try Builtin AttributeFormatterResolver.Instance, // Try use [MessagePackFormatter] -#if !ENABLE_IL2CPP +#if !ENABLE_IL2CPP && !NET_STANDARD_2_0 DynamicEnumResolver.Instance, // Try Enum +#endif +#if !ENABLE_IL2CPP DynamicGenericResolver.Instance, // Try Array, Tuple, Collection +#endif +#if !ENABLE_IL2CPP && !NET_STANDARD_2_0 DynamicUnionResolver.Instance, // Try Union(Interface) DynamicObjectResolver.Instance, // Try Object -#endif DynamicContractlessObjectResolverAllowPrivate.Instance, // Serializes keys as strings +#endif TypelessObjectResolver.Instance, }; diff --git a/Assets/Scripts/ServerShared/Zone.cs b/Assets/Scripts/ServerShared/Zone.cs index 710ff610c..e953e1ff8 100644 --- a/Assets/Scripts/ServerShared/Zone.cs +++ b/Assets/Scripts/ServerShared/Zone.cs @@ -58,17 +58,17 @@ public class Zone Orbits.Add(orbit.ID, new Orbit(Settings, orbit)); } - foreach (var planet in blueprint.Planets) + foreach (var planet in blueprint.Bodies) { switch (planet) { - case AsteroidBeltData belt: + case AsteroidBeltConstructionData belt: AsteroidBelts[belt.ID] = new AsteroidBelt(belt); break; - case SunData sun: + case SunConstructionData sun: PlanetInstances.Add(sun.ID, new Sun(settings, sun, Orbits[planet.Orbit])); break; - case GasGiantData gas: + case GasGiantConstructionData gas: PlanetInstances.Add(gas.ID, new GasGiant(settings, gas, Orbits[planet.Orbit])); break; default: @@ -379,7 +379,7 @@ public class Planet public float GravityWellRadius; public float BodyRadius; - public Planet(PlanetSettings settings, BodyData data, Orbit orbit) + public Planet(PlanetSettings settings, BodyConstructionData data, Orbit orbit) { Settings = settings; Orbit = orbit; @@ -421,7 +421,7 @@ public class GasGiant : Planet public float GravityWavesRadius; public float GravityWavesSpeed; - public GasGiant(PlanetSettings settings, GasGiantData data, Orbit orbit) : base(settings, data, orbit) + public GasGiant(PlanetSettings settings, GasGiantConstructionData data, Orbit orbit) : base(settings, data, orbit) { FirstOffsetDomainRotationSpeed = data.FirstOffsetDomainRotationSpeed; FirstOffsetRotationSpeed = data.FirstOffsetRotationSpeed; @@ -453,7 +453,7 @@ public class Sun : GasGiant public float LightRadiusMultiplier { get; } public float LightRadius; - public Sun(PlanetSettings settings, SunData data, Orbit orbit) : base(settings, data, orbit) + public Sun(PlanetSettings settings, SunConstructionData data, Orbit orbit) : base(settings, data, orbit) { LightColor = data.LightColor; FogTintColor = data.FogTintColor; @@ -489,7 +489,7 @@ public class AsteroidBelt public Dictionary Damage = new Dictionary(); public Dictionary<(Entity, int), float> MiningAccumulator = new Dictionary<(Entity, int), float>(); - public AsteroidBelt(AsteroidBeltData data) + public AsteroidBelt(AsteroidBeltConstructionData data) { _asteroids = data.Asteroids; ID = data.ID; @@ -532,7 +532,7 @@ public class Orbit return new float2(cos(phase), sin(phase)); } - public Orbit(PlanetSettings settings, OrbitData data) + public Orbit(PlanetSettings settings, OrbitConstructionData data) { ID = data.ID; Parent = data.Parent; diff --git a/Assets/Scripts/ServerShared/ZoneData.cs b/Assets/Scripts/ServerShared/ZoneConstructionData.cs similarity index 81% rename from Assets/Scripts/ServerShared/ZoneData.cs rename to Assets/Scripts/ServerShared/ZoneConstructionData.cs index 5f4c89212..5535cfaf7 100644 --- a/Assets/Scripts/ServerShared/ZoneData.cs +++ b/Assets/Scripts/ServerShared/ZoneConstructionData.cs @@ -13,15 +13,15 @@ using float3 = Unity.Mathematics.float3; public class ZoneConstructionBlueprint { - public List Planets = new List(); - public List Orbits = new List(); + public List Bodies = new List(); + public List Orbits = new List(); public List Entities = new List(); public float Radius = 2000; public float Mass = 10000; public double Time; } -public abstract class BodyData : INamedEntry +public abstract class BodyConstructionData : INamedEntry { public Guid ID = Guid.NewGuid(); @@ -48,17 +48,17 @@ public abstract class BodyData : INamedEntry } } -public class PlanetData : BodyData +public class PlanetConstructionData : BodyConstructionData { } -public class AsteroidBeltData : BodyData +public class AsteroidBeltConstructionData : BodyConstructionData { public Asteroid[] Asteroids; } -public class GasGiantData : BodyData +public class GasGiantConstructionData : BodyConstructionData { public float FirstOffsetDomainRotationSpeed = 1; @@ -83,7 +83,7 @@ public class GasGiantData : BodyData public float4[] Colors = new float4[0]; } -public class SunData : GasGiantData +public class SunConstructionData : GasGiantConstructionData { public float3 LightColor = float3.zero; @@ -103,7 +103,7 @@ public class Asteroid public float RotationSpeed; } -public class OrbitData +public class OrbitConstructionData { public Guid ID = Guid.NewGuid(); diff --git a/Assets/Scripts/ServerShared/ZoneData.cs.meta b/Assets/Scripts/ServerShared/ZoneConstructionData.cs.meta similarity index 100% rename from Assets/Scripts/ServerShared/ZoneData.cs.meta rename to Assets/Scripts/ServerShared/ZoneConstructionData.cs.meta diff --git a/Assets/Scripts/ServerShared/ZoneGenerator.cs b/Assets/Scripts/ServerShared/ZoneGenerator.cs index c537c1603..eb9acc030 100644 --- a/Assets/Scripts/ServerShared/ZoneGenerator.cs +++ b/Assets/Scripts/ServerShared/ZoneGenerator.cs @@ -94,13 +94,13 @@ public static class ZoneGenerator planets.AddRange(GenerateEntities(zoneSettings, ref random, blueprint.Mass, blueprint.Radius, float2.zero)); // Create collections to map between zone generator output and database entries - var orbitMap = new Dictionary(); - var orbitInverseMap = new Dictionary(); + var orbitMap = new Dictionary(); + var orbitInverseMap = new Dictionary(); // Create orbit database entries blueprint.Orbits = planets.Select(planet => { - var data = new OrbitData + var data = new OrbitConstructionData { FixedPosition = planet.FixedPosition, Distance = planet.Distance, @@ -112,7 +112,7 @@ public static class ZoneGenerator return data; }).ToList(); - // Link OrbitData parents to database GUIDs + // Link orbit construction parents to generated orbit IDs. foreach (var data in blueprint.Orbits) data.Parent = orbitInverseMap[data].Parent != null ? orbitMap[orbitInverseMap[data].Parent].ID @@ -122,7 +122,7 @@ public static class ZoneGenerator // var resourceMaps = mapLayers.Values // .ToDictionary(m => m.ID, m => m.Evaluate(zone.Position, settings.ShapeSettings)); - blueprint.Planets = planets.Where(p=>!p.Empty).Select(planet => + blueprint.Bodies = planets.Where(p=>!p.Empty).Select(planet => { // Dictionary planetResources = new Dictionary(); BodyType bodyType = planet.Belt ? BodyType.Asteroid : @@ -139,21 +139,21 @@ public static class ZoneGenerator // } // } - BodyData planetData; + BodyConstructionData planetData; switch (bodyType) { case BodyType.Asteroid: - planetData = new AsteroidBeltData(); + planetData = new AsteroidBeltConstructionData(); break; case BodyType.Planetoid: case BodyType.Planet: - planetData = new PlanetData(); + planetData = new PlanetConstructionData(); break; case BodyType.GasGiant: - planetData = new GasGiantData(); + planetData = new GasGiantConstructionData(); break; case BodyType.Sun: - planetData = new SunData(); + planetData = new SunConstructionData(); break; default: throw new ArgumentOutOfRangeException(); @@ -163,7 +163,7 @@ public static class ZoneGenerator planetData.Orbit = orbitMap[planet].ID; // planetData.Resources = planetResources; planetData.Name = planetData.ID.ToString().Substring(0, 8); - if (planetData is AsteroidBeltData beltData) + if (planetData is AsteroidBeltConstructionData beltData) { beltData.Asteroids = Enumerable.Range(0, (int) zoneSettings.AsteroidCount.Evaluate(beltData.Mass * orbitMap[planet].Distance)) @@ -177,9 +177,9 @@ public static class ZoneGenerator //.OrderByDescending(a=>a.Size) .ToArray(); } - else if (planetData is GasGiantData gas) + else if (planetData is GasGiantConstructionData gas) { - if (gas is SunData sun) + if (gas is SunConstructionData sun) { float primary = random.NextFloat(); float secondary = frac(primary + 1 + zoneSettings.SunSecondaryColorDistance * (random.NextFloat() > .5 ? 1 : -1)); @@ -250,9 +250,9 @@ public static class ZoneGenerator return loadoutGenerators[faction]; } - OrbitData CreateLagrangeOrbit(OrbitData baseOrbit) + OrbitConstructionData CreateLagrangeOrbit(OrbitConstructionData baseOrbit) { - var lagrangeOrbit = new OrbitData + var lagrangeOrbit = new OrbitConstructionData { ID = Guid.NewGuid(), Parent = baseOrbit.Parent, @@ -263,11 +263,11 @@ public static class ZoneGenerator return lagrangeOrbit; } - void PlaceTurret(OrbitData orbit, LoadoutGenerator loadoutGenerator, int distanceMultiplier) + void PlaceTurret(OrbitConstructionData orbit, LoadoutGenerator loadoutGenerator, int distanceMultiplier) { var phase = 20f * distanceMultiplier / orbit.Distance; - var turretOrbit = new OrbitData + var turretOrbit = new OrbitConstructionData { ID = Guid.NewGuid(), Parent = orbit.Parent, @@ -281,7 +281,7 @@ public static class ZoneGenerator blueprint.Entities.Add(turret); } - void PlaceTurrets(OrbitData orbit, LoadoutGenerator loadoutGenerator, int count) + void PlaceTurrets(OrbitConstructionData orbit, LoadoutGenerator loadoutGenerator, int count) { for(int t=0; t