The Contents of a Save: Difference between revisions

From Medieval Engineers Wiki
Jump to navigation Jump to search
mNo edit summary
 
(9 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{SEO|image_url=http://www.medievalengineerswiki.com/images/5/58/SaveFolder.png|description=This guide is intended to give you some basic information about what is inside of your saves.}}
{{Thumbnail|SaveFolder.png|{{PAGENAME}} }}
{{Thumbnail|SaveFolder.png|{{PAGENAME}} }}
{{Draft}}
{{Stub}}
This guide is intended to give you some basic information about what is inside of your saves. This information can be useful for a lot of reasons: restoring backups, changing world settings, editing or deleting player information, or anything else you can think of. Some extreme examples include adding planets, adding or removing grids, and modifying grids and inventories. These extreme examples won't be covered here but the information provided should help with the more reasonable ones.
This guide is intended to give you some basic information about what is inside of your saves. This information can be useful for a lot of reasons: restoring backups, changing world settings, editing or deleting player information, or anything else you can think of. Some extreme examples include adding planets, adding or removing grids, and modifying grids and inventories. These extreme examples won't be covered here but the information provided should help with the more reasonable ones.
{{Version <!-- Do not change the version until the entire page is up-to-date -->
{{Version <!-- Do not change the version until the entire page is up-to-date -->
Line 32: Line 33:
{{Expandable
{{Expandable
|title=Annotated player file
|title=Annotated player file
|content=<source lang="xml"><?xml version="1.0" encoding="utf-8"?> <!-- This file is XML: don't touch this line -->
|content=<syntaxhighlight lang="xml" line>
<?xml version="1.0" encoding="utf-8"?> <!-- This file is XML: don't touch this line -->


<MyObjectBuilder_PlayerStorage xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <!-- This is the container for the player's storage and it specifies
<MyObjectBuilder_PlayerStorage xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <!-- This is the container for the player's storage and it specifies
Line 238: Line 240:
     </Slots>
     </Slots>
   </Toolbar>
   </Toolbar>
</MyObjectBuilder_PlayerStorage></source>
</MyObjectBuilder_PlayerStorage>
</syntaxhighlight>
}}
}}


Line 250: Line 253:


==Thumbnail==
==Thumbnail==
thumb.jpg is a screenshot captured by the active camera when the world is saved. This file is not created by dedicated servers because the server has no active camera and no rendering at all.


==Configuration==
{{Expandable
|title=Annotated Sandbox.sbc
|content=<syntaxhighlight lang="xml" line>
<?xml version="1.0"?> <!-- TO DO -->
<MyObjectBuilder_Checkpoint xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <!-- TO DO -->
  <CurrentSector x="0" y="0" z="0" /> <!-- TO DO -->
  <ElapsedGameTime>6019662240000</ElapsedGameTime> <!-- TO DO -->
  <SessionName>New World</SessionName> <!-- TO DO -->
  <SpectatorPosition> <!-- TO DO -->
    <Position x="-1526.9893644906333" y="2910.315897765468" z="3976.0199199058011" /> <!-- TO DO -->
    <Forward x="0.161947548" y="-0.7656152" z="0.6225804" /> <!-- TO DO -->
    <Up x="-0.296127647" y="0.564125359" z="0.77076" /> <!-- TO DO -->
  </SpectatorPosition>
  <CameraEntity>102663082422568315</CameraEntity> <!-- TO DO -->
  <CameraSubtype>DefaultFirstPerson</CameraSubtype> <!-- TO DO -->
  <ControlledObject>102663082422568315</ControlledObject> <!-- TO DO -->
  <Password /> <!-- Not used -->
  <Description /> <!-- TO DO -->
  <LastSaveTime>2017-11-26T21:21:21.4403457+01:00</LastSaveTime> <!-- TO DO -->
  <CharacterToolbar> <!-- No longer used -->
    ...
  </CharacterToolbar>
  <Settings xsi:type="MyObjectBuilder_MedievalSessionSettings"> <!-- TO DO -->
    <GameMode>Survival</GameMode> <!-- TO DO -->
    <InventorySizeMultiplier>2</InventorySizeMultiplier> <!-- TO DO -->
    <OnlineMode>OFFLINE</OnlineMode> <!-- TO DO -->
    <MaxPlayers>4</MaxPlayers> <!-- TO DO -->
    <MaxFloatingObjects>64</MaxFloatingObjects> <!-- TO DO -->
    <MaxBackupSaves>12</MaxBackupSaves> <!-- TO DO -->
    <EnableSpectator>true</EnableSpectator> <!-- TO DO -->
    <EnableCopyPaste>true</EnableCopyPaste> <!-- TO DO -->
    <ShowPlayerNamesOnHud>true</ShowPlayerNamesOnHud> <!-- TO DO -->
    <WorldSizeKm>0</WorldSizeKm> <!-- TO DO -->
    <AutoSaveInMinutes>5</AutoSaveInMinutes> <!-- TO DO -->
    <ProceduralSeed>0</ProceduralSeed> <!-- TO DO -->
    <DestructibleBlocks>true</DestructibleBlocks> <!-- TO DO -->
    <ViewDistance>2600</ViewDistance> <!-- TO DO -->
    <Enable3rdPersonView>true</Enable3rdPersonView> <!-- TO DO -->
    <EnableConvertToStation>false</EnableConvertToStation> <!-- TO DO -->
    <EnableSunRotation>true</EnableSunRotation> <!-- TO DO -->
    <PhysicsIterations>4</PhysicsIterations> <!-- TO DO -->
    <SunRotationIntervalMinutes>60</SunRotationIntervalMinutes> <!-- TO DO -->
    <DaysPerSeason>2</DaysPerSeason> <!-- TO DO -->
    <MaxSolarAltitude>0.410152376</MaxSolarAltitude> <!-- TO DO -->
    <EnableVoxelDestruction>true</EnableVoxelDestruction> <!-- TO DO -->
    <EnableStructuralSimulation>false</EnableStructuralSimulation> <!-- TO DO -->
    <MaxActiveFracturePieces>300</MaxActiveFracturePieces> <!-- TO DO -->
    <DayNightRatio>0.6666667</DayNightRatio> <!-- TO DO -->
    <EnableLargeDynamicGridDecay>true</EnableLargeDynamicGridDecay> <!-- TO DO -->
    <ResourceDecayTime>600</ResourceDecayTime> <!-- TO DO -->
    <AbandonedGridDecayTime>5</AbandonedGridDecayTime> <!-- TO DO -->
    <MaximumBots>20</MaximumBots> <!-- TO DO -->
    <ServantsPerPlayer>0</ServantsPerPlayer> <!-- TO DO -->
    <EnableBarbarians>false</EnableBarbarians> <!-- TO DO -->
    <EnableAnimals>true</EnableAnimals> <!-- TO DO -->
    <EnableFastTravel>true</EnableFastTravel> <!-- TO DO -->
    <EnableTravelReachability>true</EnableTravelReachability> <!-- TO DO -->
    <EnableTravelToEmptyAreas>true</EnableTravelToEmptyAreas> <!-- TO DO -->
    <TravelCooldown>0</TravelCooldown> <!-- TO DO -->
    <TravelMaxDistance>80</TravelMaxDistance> <!-- TO DO -->
  </Settings>
  <GameVersion>0.6.1.15843224</GameVersion> <!-- TO DO -->
  <Mods /> <!-- TO DO -->
  <PromotedUsers> <!-- TO DO -->
    <unsignedLong>76561198076684634</unsignedLong> <!-- TO DO -->
  </PromotedUsers> <!-- TO DO -->
  <Scenario Type="MyObjectBuilder_ScenarioDefinition" Subtype="VillageStart" /> <!-- TO DO -->
  <RespawnCooldowns /> <!-- TO DO -->
  <IdentityCollection> <!-- TO DO -->
    <Identities> <!-- TO DO -->
      <Identity IdentityId="144115188075855874" EntityId="0" DisplayName="Marek" /> <!-- TO DO -->
      <Identity IdentityId="144115188075855878" EntityId="0" DisplayName="Barbarossa" /> <!-- TO DO -->
      <Identity IdentityId="144115188075855873" EntityId="102663082422568315" DisplayName="SteamName" /> <!-- TO DO -->
    </Identities>
  </IdentityCollection>
  <ChatHistory /> <!-- TO DO -->
  <FactionChatHistory /> <!-- TO DO -->
  <SessionComponents /> <!-- TO DO -->


==Configuration==
  <GameDefinition Type="MyObjectBuilder_SessionDefinition" Subtype="Medieval.Planets" /> <!-- TO DO -->
 
  <InGameTime>1081-07-01T07:00:00</InGameTime> <!-- TO DO -->


</MyObjectBuilder_Checkpoint>
</syntaxhighlight>
}}


==Save==
==Save==
{{Expandable
|title=Annotated SANDBOX_0_0_0_.sbs Top Level Only
|content=<syntaxhighlight lang="xml" line>
<?xml version="1.0"?> <!-- TO DO -->
<MyObjectBuilder_Sector xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <!-- TO DO -->
  <EnvironmentDefinition Type="MyObjectBuilder_EnvironmentDefinition" Subtype="MEPlanets" /> <!-- TO DO -->
  <SessionComponents> <!-- TO DO -->
    <MyObjectBuilder_SessionComponent xsi:type="MyObjectBuilder_AIComponent" /> <!-- TO DO -->
    <MyObjectBuilder_SessionComponent xsi:type="MyObjectBuilder_EnvironmentBotSpawningSystem"> <!-- TO DO -->
      <TimeSinceLastEventInMs>117659</TimeSinceLastEventInMs> <!-- TO DO -->
    </MyObjectBuilder_SessionComponent>
    <MyObjectBuilder_SessionComponent xsi:type="MyObjectBuilder_CoordinateSystem"> <!-- TO DO -->
    <MyObjectBuilder_SessionComponent xsi:type="MyObjectBuilder_SectorWeatherComponent"> <!-- TO DO -->
      <DayOffset>1.33964411E+10</DayOffset> <!-- TO DO -->
      <DayAngleOffset>-72</DayAngleOffset> <!-- TO DO -->
    </MyObjectBuilder_SessionComponent>
    <MyObjectBuilder_SessionComponent xsi:type="MyObjectBuilder_SpacePlanetTrackComponent" /> <!-- TO DO -->
    <MyObjectBuilder_SessionComponent xsi:type="SessionComponentResearch"> <!-- TO DO -->
      <Research Identity="144115188075855873"> <!-- TO DO -->
        <Entry Type="MyObjectBuilder_ResearchDefinition" Subtype="Tutorial" /> <!-- TO DO -->
        <Entry Type="MyObjectBuilder_ResearchDefinition" Subtype="MilitarySmelting" /> <!-- TO DO -->
... <!-- TO DO -->
      </Research>
    </MyObjectBuilder_SessionComponent>
    <MyObjectBuilder_SessionComponent xsi:type="MyObjectBuilder_DiplomacyManager" /> <!-- TO DO -->
    <MyObjectBuilder_SessionComponent xsi:type="MyObjectBuilder_BannerComponent"> <!-- TO DO -->
      <Banner BannerId="225019037703678515"> <!-- TO DO -->


        <BackgroundColor x="1" y="0" z="0" /> <!-- TO DO -->


==Voxels==
        <Layers> <!-- TO DO -->
 
          <BannerLayer ModId="" Pattern="BendsRightSmall"> <!-- TO DO -->
 
            <Color x="0" y="0" z="1" /> <!-- TO DO -->
 
          </BannerLayer>
          <BannerLayer ModId="" Pattern="DragonWolf"> <!-- TO DO -->
 
            <Color x="1" y="1" z="0" /> <!-- TO DO -->
 
          </BannerLayer>
        </Layers>
        <BonusPattern>0</BonusPattern> <!-- TO DO -->
 
      </Banner>
  ... <!-- TO DO -->
 
    </MyObjectBuilder_SessionComponent>
    <MyObjectBuilder_SessionComponent xsi:type="MyObjectBuilder_DecaySystem" /> <!-- TO DO -->
 
    <MyObjectBuilder_SessionComponent xsi:type="MyObjectBuilder_FastTravelSystem"> <!-- TO DO -->
 
      <Cooldowns /> <!-- TO DO -->
 
    </MyObjectBuilder_SessionComponent>
    <MyObjectBuilder_SessionComponent xsi:type="MyObjectBuilder_FactionManager"> <!-- TO DO -->
 
      ... <!-- TO DO -->
 
      <Faction Id="2" Tag="ENGI" Name="Engineer's Guild House" PublicInfo="Association of craftsman trained in engineering. Engineers design, build, and maintain machines and structures."
AcceptsMembers="false" AutoAcceptMembers="false"> <!-- TO DO -->
 
        <Rank Title="Master" Permissions="511" /> <!-- TO DO -->
 
        <Rank Title="Engineer" Permissions="339" /> <!-- TO DO -->
 
        <Rank Title="Novice" Permissions="0" /> <!-- TO DO -->
 
        <Member PlayerId="144115188075855874" RankIndex="0" /> <!-- TO DO -->
 
      </Faction>
    </MyObjectBuilder_SessionComponent>
    <MyObjectBuilder_SessionComponent xsi:type="MyObjectBuilder_FarmingSystem" /> <!-- TO DO -->
 
    <MyObjectBuilder_SessionComponent xsi:type="MyObjectBuilder_KeychainSystem"> <!-- TO DO -->
 
      <Keychains /> <!-- TO DO -->
 
    </MyObjectBuilder_SessionComponent>    <MyObjectBuilder_SessionComponent xsi:type="MyObjectBuilder_ManipulationComponent" />
    <MyObjectBuilder_SessionComponent xsi:type="MyObjectBuilder_MedievalReachabilityComponent" /> <!-- TO DO -->
 
    <MyObjectBuilder_SessionComponent xsi:type="MyObjectBuilder_MedievalReachabilityComponent" /> <!-- TO DO -->
 
    <MyObjectBuilder_SessionComponent xsi:type="MyObjectBuilder_AreaUpkeepSystem" /> <!-- TO DO -->
 
    <MyObjectBuilder_SessionComponent xsi:type="MyObjectBuilder_MedievalPlanetRespawnComponent"> <!-- TO DO -->
 
      <LastRespawnPairList> <!-- TO DO -->
 
        <RespawnPair> <!-- TO DO -->
 
          <PlayerId> <!-- TO DO -->
 
            <ClientId>76561198016129154</ClientId> <!-- TO DO -->
 
            <SerialId>1</SerialId> <!-- TO DO -->
 
          </PlayerId>
          <LastRespawnEntityId>0</LastRespawnEntityId> <!-- TO DO -->
 
        </RespawnPair>
... <!-- TO DO -->
 
      </LastRespawnPairList>
    </MyObjectBuilder_SessionComponent>
  </SessionComponents>
  <SessionComponentsEnabled /> <!-- TO DO -->
 
  <SessionComponentsDisabled /> <!-- TO DO -->
 
  <GameVersion>0.6.1.15843224</GameVersion> <!-- TO DO -->
 
  <SectorObjects> <!-- TO DO -->
 
    <MyObjectBuilder_EntityBase xsi:type="MyObjectBuilder_Planet"> <!-- TO DO -->
 
      <EntityId>6924128824643789283</EntityId> <!-- TO DO -->
 
      <PersistentFlags>CastShadows InScene</PersistentFlags> <!-- TO DO -->
 
      <Name>EarthLike-1118360450r5000</Name> <!-- TO DO -->
 
      <PositionAndOrientation> <!-- TO DO -->
 
        <Position x="-8192" y="-8192" z="-8192" /> <!-- TO DO -->
 
        <Forward x="-0" y="-0" z="-1" /> <!-- TO DO -->
 
        <Up x="0" y="1" z="0" /> <!-- TO DO -->
 
      </PositionAndOrientation>
      <ComponentContainer> <!-- TO DO -->
 
        <Component xsi:type="MyObjectBuilder_PlanetWonderTrackerComponent"> <!-- TO DO -->
 
          <Areas /> <!-- TO DO -->
 
        </Component>
        <Component xsi:type="MyObjectBuilder_PlanetAreaContentsComponent"> <!-- TO DO -->
 
          <Areas> <!-- TO DO -->
 
            <AreaInfo AreaId="1152921512123039765" LastVisit="6019661920000" /> <!-- TO DO -->
 
            ... <!-- TO DO -->
 
          </Areas>
        </Component>
        <Component xsi:type="MyObjectBuilder_PlanetAreaOwnershipComponent"> <!-- TO DO -->
 
          <Area Id="1152921512123039765" Name="CptTwinkie's Area" State="Claimed" Time="185287712" Owner="144115188075855873"> <!-- TO DO -->
 
            <Permissions> <!-- TO DO -->
 
              <FactionSharing>true</FactionSharing> <!-- TO DO -->
 
            </Permissions>
            <PermissionSet xsi:nil="true" /> <!-- TO DO -->
 
          </Area>
  ... <!-- TO DO -->
 
        </Component>
        <Component xsi:type="MyObjectBuilder_PlanetAreaUpkeepComponent"> <!-- TO DO -->
 
          <ExpirationTimes> <!-- TO DO -->
 
            <AreaEntry AreaId="1152921509975556115" ExpirationTime="761020832" /> <!-- TO DO -->
 
            ... <!-- TO DO -->
 
          </ExpirationTimes>
        </Component>
        <Component xsi:type="MyObjectBuilder_PlanetEnvironmentComponent"> <!-- TO DO -->
 
... <!-- TO DO -->
 
</Component> <!-- TO DO -->
 
      </ComponentContainer>
      <ContentChanged>false</ContentChanged> <!-- TO DO -->
 
      <StorageName>EarthLike-1118360450r5000</StorageName> <!-- TO DO -->
 
      <Radius>5000</Radius> <!-- TO DO -->
 
      <HasAtmosphere>true</HasAtmosphere> <!-- TO DO -->
 
      <AtmosphereRadius>8750</AtmosphereRadius> <!-- TO DO -->
 
      <MinimumSurfaceRadius>4900</MinimumSurfaceRadius> <!-- TO DO -->
 
      <MaximumHillRadius>5500</MaximumHillRadius> <!-- TO DO -->
 
      <GravityFalloff>7</GravityFalloff> <!-- TO DO -->
 
      <MarkAreaEmpty>true</MarkAreaEmpty> <!-- TO DO -->
 
      <AtmosphereSettings> <!-- TO DO -->
 
        <RayleighScattering> <!-- TO DO -->
 
          <X>100</X> <!-- TO DO -->
 
          <Y>84</Y> <!-- TO DO -->
 
          <Z>63</Z> <!-- TO DO -->
 
        </RayleighScattering>
        <MieScattering>50</MieScattering> <!-- TO DO -->
 
        <MieColorScattering> <!-- TO DO -->
 
          <X>44</X> <!-- TO DO -->
 
          <Y>62</Y> <!-- TO DO -->
 
          <Z>150</Z> <!-- TO DO -->
 
        </MieColorScattering>
        <RayleighHeight>36</RayleighHeight> <!-- TO DO -->
 
        <RayleighHeightSpace>15</RayleighHeightSpace> <!-- TO DO -->
 
        <RayleighTransitionModifier>0.4</RayleighTransitionModifier> <!-- TO DO -->
 
        <MieHeight>200</MieHeight> <!-- TO DO -->
 
        <MieG>0.9995474</MieG> <!-- TO DO -->
 
        <Intensity>6</Intensity> <!-- TO DO -->
 
        <FogIntensity>1</FogIntensity> <!-- TO DO -->
 
        <SeaLevelModifier>1</SeaLevelModifier> <!-- TO DO -->
 
        <AtmosphereTopModifier>1.1</AtmosphereTopModifier> <!-- TO DO -->
 
        <Scale>1</Scale> <!-- TO DO -->
 
      </AtmosphereSettings>
      <SurfaceGravity>1</SurfaceGravity> <!-- TO DO -->
 
      <SpawnsFlora>false</SpawnsFlora> <!-- TO DO -->
 
      <SpherizeWithDistance>true</SpherizeWithDistance> <!-- TO DO -->
 
      <PlanetGenerator>EarthLike</PlanetGenerator> <!-- TO DO -->
 
    </MyObjectBuilder_EntityBase>
    <MyObjectBuilder_EntityBase xsi:type="MyObjectBuilder_Rope" Subtype="BasicRope"> <!-- TO DO -->
 
      <EntityId>97712216978276739</EntityId> <!-- TO DO -->
 
      <PersistentFlags>InScene</PersistentFlags> <!-- TO DO -->
 
      <PositionAndOrientation> <!-- TO DO -->
 
        <Position x="-1593.9140060057825" y="2843.7419723761755" z="3992.0537388057191" /> <!-- TO DO -->
 
        <Forward x="-0" y="0" z="-1" /> <!-- TO DO -->
 
        <Up x="0" y="1" z="0" /> <!-- TO DO -->
 
      </PositionAndOrientation>
      <MaxRopeLength>3.6440413</MaxRopeLength> <!-- TO DO -->
 
      <CurrentRopeLength>3.6440413</CurrentRopeLength> <!-- TO DO -->
 
      <EntityIdHookA>74192559164336561</EntityIdHookA> <!-- TO DO -->
 
      <EntityIdHookB>124422428950390837</EntityIdHookB> <!-- TO DO -->
 
    </MyObjectBuilder_EntityBase>
    <MyObjectBuilder_EntityBase xsi:type="MyObjectBuilder_EntityBase" Subtype="Medieval_deer"> <!-- TO DO -->
 
      <EntityId>141018700619549565</EntityId> <!-- TO DO -->
 
      <PersistentFlags>CastShadows InScene</PersistentFlags> <!-- TO DO -->
 
      <PositionAndOrientation> <!-- TO DO -->
 
        <Position x="-1641.8395265765339" y="2945.218349875764" z="3865.4883469101678" /> <!-- TO DO -->
 
        <Forward x="-0.6588061" y="-0.751737535" z="0.0294108987" /> <!-- TO DO -->
 
        <Up x="-0.5415193" y="0.5009883" z="0.6751055" /> <!-- TO DO -->
 
      </PositionAndOrientation>
      <ComponentContainer> <!-- TO DO -->
 
        <Component xsi:type="MyObjectBuilder_ModelComponent"> <!-- TO DO -->
 
          <ColorMask x="0" y="0" z="0" /> <!-- TO DO -->
 
        </Component>
        <Component xsi:type="MyObjectBuilder_ThirdPersonCameraComponent" Subtype="DefaultThirdPerson"> <!-- TO DO -->
 
          <Pitch>0</Pitch> <!-- TO DO -->
 
          <Yaw>0</Yaw> <!-- TO DO -->
 
          <Distance>4</Distance> <!-- TO DO -->
 
          <TargetOffset> <!-- TO DO -->
 
            <X>0</X> <!-- TO DO -->
 
            <Y>2</Y> <!-- TO DO -->
 
            <Z>0</Z> <!-- TO DO -->
 
          </TargetOffset>
          <FrameOffset> <!-- TO DO -->
 
            <X>0</X> <!-- TO DO -->
 
            <Y>0</Y> <!-- TO DO -->
 
          </FrameOffset>
        </Component>
        <Component xsi:type="MyObjectBuilder_CharacterStatComponent"> <!-- TO DO -->
 
          <Stats> <!-- TO DO -->
 
            <MyObjectBuilder_EntityStat Subtype="Health"> <!-- TO DO -->
 
              <Value>1</Value> <!-- TO DO -->
 
              <MaxValue>1</MaxValue> <!-- TO DO -->
 
              <StatRegenAmountMultiplier>1</StatRegenAmountMultiplier> <!-- TO DO -->
 
              <StatRegenAmountMultiplierDuration>0</StatRegenAmountMultiplierDuration> <!-- TO DO -->
 
            </MyObjectBuilder_EntityStat>
          </Stats>
          <ScriptNames> <!-- TO DO -->
 
            <string>PeasantHealthStatEffect</string> <!-- TO DO -->
 
          </ScriptNames>
          <ImmunityTicks>0</ImmunityTicks> <!-- TO DO -->
 
        </Component>
        <Component xsi:type="MyObjectBuilder_InventorySpawnComponent" /> <!-- TO DO -->
 
        <Component xsi:type="MyObjectBuilder_Inventory" Subtype="Animal"> <!-- TO DO -->
 
          <Item xsi:type="MyObjectBuilder_ConsumableItem" Subtype="Meat" ItemId="0" Quantity="1" /> <!-- TO DO -->
 
          <NextItemId>1</NextItemId> <!-- TO DO -->
 
          <InventoryFlags /> <!-- TO DO -->
 
        </Component>
      </ComponentContainer>
    </MyObjectBuilder_EntityBase>
    <MyObjectBuilder_EntityBase xsi:type="MyObjectBuilder_CubeGrid"> <!-- TO DO -->
 
      <EntityId>118049012135531657</EntityId> <!-- TO DO -->
 
      <PersistentFlags>CastShadows InScene</PersistentFlags> <!-- TO DO -->
 
      <PositionAndOrientation> <!-- TO DO -->
 
        <Position x="-1577.9127108258829" y="2918.9689189347682" z="3949.8585476051881" /> <!-- TO DO -->
 
        <Forward x="0.7531728" y="-0.3525924" z="0.555346131" /> <!-- TO DO -->
 
        <Up x="-0.2981303" y="0.5695807" z="0.765960932" /> <!-- TO DO -->
 
      </PositionAndOrientation>
      <GridSizeEnum>Small</GridSizeEnum> <!-- TO DO -->
 
      <CubeBlocks> <!-- TO DO -->
 
        <MyObjectBuilder_CubeBlock xsi:type="MyObjectBuilder_CubeBlock" Subtype="PumpkinCarved"> <!-- TO DO -->
 
          <EntityId>136707599489344035</EntityId> <!-- TO DO -->
 
          <Min x="-1" y="0" z="-1" /> <!-- TO DO -->
 
          <SubBlocks /> <!-- TO DO -->
 
          <ComponentContainer> <!-- TO DO -->
 
            <Component xsi:type="MyObjectBuilder_EntityStateComponent"> <!-- TO DO -->
 
              <CurrentState>On</CurrentState> <!-- TO DO -->
 
            </Component>
            <Component xsi:type="MyObjectBuilder_ModelComponent"> <!-- TO DO -->
 
              <ColorMask x="0" y="0" z="0" /> <!-- TO DO -->
 
            </Component>
          </ComponentContainer>
        </MyObjectBuilder_CubeBlock>
      </CubeBlocks>
      <IsStatic>true</IsStatic> <!-- TO DO -->
 
      <DisplayName>Static Grid 1657</DisplayName> <!-- TO DO -->
 
      <DestructibleBlocks>true</DestructibleBlocks> <!-- TO DO -->
 
      <LocalCoordSys>0</LocalCoordSys> <!-- TO DO -->
 
    </MyObjectBuilder_EntityBase>
    <MyObjectBuilder_EntityBase xsi:type="MyObjectBuilder_CubeGrid"> <!-- TO DO -->
 
      <EntityId>125758068663438087</EntityId> <!-- TO DO -->
 
      <PersistentFlags>CastShadows InScene</PersistentFlags> <!-- TO DO -->
 
      <PositionAndOrientation> <!-- TO DO -->
 
        <Position x="-1528.0345422427411" y="2917.0726630015042" z="3973.2935077669508" /> <!-- TO DO -->
 
        <Forward x="0.7531728" y="-0.3525924" z="0.555346131" /> <!-- TO DO -->
 
        <Up x="-0.2981303" y="0.5695807" z="0.765961" /> <!-- TO DO -->
 
      </PositionAndOrientation>
      <GridSizeEnum>Small</GridSizeEnum> <!-- TO DO -->
 
      <CubeBlocks> <!-- TO DO -->
 
        <MyObjectBuilder_CubeBlock xsi:type="MyObjectBuilder_CubeBlock" Subtype="Signpost3x1"> <!-- TO DO -->
 
          <EntityId>95383231203083933</EntityId> <!-- TO DO -->
 
          <Min x="-1" y="0" z="0" /> <!-- TO DO -->
 
          <SubBlocks /> <!-- TO DO -->
 
          <ComponentContainer> <!-- TO DO -->
 
            <Component xsi:type="MyObjectBuilder_ModelComponent"> <!-- TO DO -->
 
              <ColorMask x="0" y="0" z="0" /> <!-- TO DO -->
 
            </Component>
            <Component xsi:type="MyObjectBuilder_SignpostComponent" Subtype="Signpost3x1"> <!-- TO DO -->
 
              <Text Size="5" Color="#FF200000" Value="Kitchen" /> <!-- TO DO -->
 
              <DisplayedItem Type="MyObjectBuilder_CubeBlock" Subtype="BonFire" /> <!-- TO DO -->
 
            </Component>
          </ComponentContainer>
        </MyObjectBuilder_CubeBlock>
      </CubeBlocks>
      <IsStatic>true</IsStatic> <!-- TO DO -->
 
      <DisplayName>Static Grid 8087</DisplayName> <!-- TO DO -->
 
      <DestructibleBlocks>true</DestructibleBlocks> <!-- TO DO -->
 
      <LocalCoordSys>0</LocalCoordSys> <!-- TO DO -->
 
    </MyObjectBuilder_EntityBase>
    <MyObjectBuilder_EntityBase xsi:type="MyObjectBuilder_CubeGrid"> <!-- TO DO -->
 
      <EntityId>72340801726526952</EntityId> <!-- TO DO -->
 
      <PersistentFlags>CastShadows InScene</PersistentFlags> <!-- TO DO -->
 
      <PositionAndOrientation> <!-- TO DO -->
 
        <Position x="-1564.0280337978613" y="2933.1121832012877" z="3941.8081548191603" /> <!-- TO DO -->
 
        <Forward x="0.7531728" y="-0.3525924" z="0.555346131" /> <!-- TO DO -->
 
        <Up x="-0.2981303" y="0.5695807" z="0.765961" /> <!-- TO DO -->
 
      </PositionAndOrientation>
      <GridSizeEnum>Small</GridSizeEnum> <!-- TO DO -->
 
      <CubeBlocks> <!-- TO DO -->
 
        <MyObjectBuilder_CubeBlock xsi:type="MyObjectBuilder_CubeBlock" Subtype="ChestWoodLarge"> <!-- TO DO -->
 
          <EntityId>78891508616862221</EntityId> <!-- TO DO -->
 
          <Min x="-3" y="-1" z="-1" /> <!-- TO DO -->
 
          <SubBlocks /> <!-- TO DO -->
 
          <ComponentContainer> <!-- TO DO -->
 
            <Component xsi:type="MyObjectBuilder_InventorySpawnComponent" /> <!-- TO DO -->
 
            <Component xsi:type="MyObjectBuilder_Inventory" Subtype="WoodChestLargeInventory"> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="0" Quantity="100" /> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="1" Quantity="100" /> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="2" Quantity="100" /> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="3" Quantity="100" /> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="4" Quantity="100" /> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="5" Quantity="100" /> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="6" Quantity="100" /> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="7" Quantity="100" /> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="8" Quantity="100" /> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="9" Quantity="100" /> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="10" Quantity="100" /> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="11" Quantity="100" /> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="12" Quantity="100" /> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="13" Quantity="100" /> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="14" Quantity="100" /> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="15" Quantity="100" /> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="16" Quantity="100" /> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="17" Quantity="100" /> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="18" Quantity="100" /> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="19" Quantity="100" /> <!-- TO DO -->
 
              <Item xsi:type="MyObjectBuilder_InventoryItem" Subtype="Dirt" ItemId="20" Quantity="100" /> <!-- TO DO -->
 
              <NextItemId>21</NextItemId> <!-- TO DO -->
 
              <InventoryFlags /> <!-- TO DO -->
 
            </Component>
            <Component xsi:type="MyObjectBuilder_ModelComponent"> <!-- TO DO -->
 
              <ColorMask x="0" y="0" z="0" /> <!-- TO DO -->
 
            </Component>
          </ComponentContainer>
        </MyObjectBuilder_CubeBlock>
      </CubeBlocks>
      <IsStatic>true</IsStatic> <!-- TO DO -->
 
      <DisplayName>Static Grid 6952</DisplayName> <!-- TO DO -->
 
      <DestructibleBlocks>true</DestructibleBlocks> <!-- TO DO -->
 
      <LocalCoordSys>0</LocalCoordSys> <!-- TO DO -->
 
    </MyObjectBuilder_EntityBase>
    <MyObjectBuilder_EntityBase xsi:type="MyObjectBuilder_CubeGrid"> <!-- TO DO -->
 
      <EntityId>101128975084322038</EntityId> <!-- TO DO -->
 
      <PersistentFlags>CastShadows InScene</PersistentFlags> <!-- TO DO -->
 
      <PositionAndOrientation> <!-- TO DO -->
 
        <Position x="-1565.3134034276009" y="2900.2285719811916" z="3957.1113831177354" /> <!-- TO DO -->
 
        <Forward x="0.7531728" y="-0.3525924" z="0.555346131" /> <!-- TO DO -->
 
        <Up x="-0.2981303" y="0.5695807" z="0.765961" /> <!-- TO DO -->
 
      </PositionAndOrientation>
      <GridSizeEnum>Large</GridSizeEnum> <!-- TO DO -->
 
      <CubeBlocks> <!-- TO DO -->
 
        <MyObjectBuilder_CubeBlock xsi:type="MyObjectBuilder_CompoundCubeBlock" Subtype="CompoundBlock"> <!-- TO DO -->
 
          <EntityId>98176108574086790</EntityId> <!-- TO DO -->
 
          <Min x="-1" y="0" z="-2" /> <!-- TO DO -->
 
          <ComponentContainer> <!-- TO DO -->
 
            <Component xsi:type="MyObjectBuilder_ModelComponent"> <!-- TO DO -->
 
              <ColorMask x="0" y="0" z="0" /> <!-- TO DO -->
 
            </Component>
          </ComponentContainer>
          <Blocks> <!-- TO DO -->
 
            <MyObjectBuilder_CubeBlock xsi:type="MyObjectBuilder_CubeBlock" Subtype="CubeStone"> <!-- TO DO -->
 
              <EntityId>102557311990095109</EntityId> <!-- TO DO -->
 
              <Min x="-1" y="0" z="-2" /> <!-- TO DO -->
 
              <SubBlocks /> <!-- TO DO -->
 
              <ComponentContainer> <!-- TO DO -->
 
                <Component xsi:type="MyObjectBuilder_ModelComponent"> <!-- TO DO -->
 
                  <ColorMask x="0" y="0" z="0" /> <!-- TO DO -->
 
                </Component>
              </ComponentContainer>
            </MyObjectBuilder_CubeBlock>
            <MyObjectBuilder_CubeBlock xsi:type="MyObjectBuilder_CubeBlock" Subtype="GeneratedStoneSlopeEdgeLeft"> <!-- TO DO -->
 
              <EntityId>79361979769469939</EntityId> <!-- TO DO -->
 
              <Min x="-1" y="0" z="-2" /> <!-- TO DO -->
 
              <SubBlocks /> <!-- TO DO -->
 
              <ComponentContainer> <!-- TO DO -->
 
                <Component xsi:type="MyObjectBuilder_ModelComponent"> <!-- TO DO -->
 
                  <ColorMask x="0" y="0" z="0" /> <!-- TO DO -->
 
                </Component>
              </ComponentContainer>
            </MyObjectBuilder_CubeBlock>
            <MyObjectBuilder_CubeBlock xsi:type="MyObjectBuilder_CubeBlock" Subtype="GeneratedStoneSlopeEdgeLeft"> <!-- TO DO -->
 
              <EntityId>100224397407875001</EntityId> <!-- TO DO -->
 
              <Min x="-1" y="0" z="-2" /> <!-- TO DO -->
 
              <BlockOrientation Forward="Right" Up="Up" /> <!-- TO DO -->
 
              <SubBlocks /> <!-- TO DO -->
 
              <ComponentContainer> <!-- TO DO -->
 
                <Component xsi:type="MyObjectBuilder_ModelComponent"> <!-- TO DO -->
 
                  <ColorMask x="0" y="0" z="0" /> <!-- TO DO -->
 
                </Component>
              </ComponentContainer>
            </MyObjectBuilder_CubeBlock>
          </Blocks>
          <BlockIds> <!-- TO DO -->
 
            <unsignedShort>0</unsignedShort> <!-- TO DO -->
 
            <unsignedShort>32772</unsignedShort> <!-- TO DO -->
 
            <unsignedShort>32773</unsignedShort> <!-- TO DO -->
 
          </BlockIds>
        </MyObjectBuilder_CubeBlock>
      </CubeBlocks>
      <IsStatic>true</IsStatic> <!-- TO DO -->
 
      <DisplayName>Static Grid 2038</DisplayName> <!-- TO DO -->
 
      <DestructibleBlocks>true</DestructibleBlocks> <!-- TO DO -->
 
      <LocalCoordSys>1</LocalCoordSys> <!-- TO DO -->
 
    </MyObjectBuilder_EntityBase>
  </SectorObjects>
  <Environment> <!-- TO DO -->
 
    <SunAzimuth>0.05681639</SunAzimuth> <!-- TO DO -->
 
    <SunElevation>0.7067642</SunElevation> <!-- TO DO -->
 
    <SunIntensity>0</SunIntensity> <!-- TO DO -->
 
    <FogMultiplier>0</FogMultiplier> <!-- TO DO -->


    <FogDensity>0.003</FogDensity> <!-- TO DO -->


    <FogColor x="0" y="0" z="0" /> <!-- TO DO -->


  </Environment>
</MyObjectBuilder_Sector></syntaxhighlight>
}}
==Voxels==
.vx2 files are compressed binary exports of voxel changes (deltas). There is no easy way to edit these files.
[[Category:Community_Guides]]
[[Category:Community_Guides]]

Latest revision as of 20:39, 18 July 2022


The Contents of a Save
Pen.pngThis article is a stub. You can help Medieval Engineers Wiki by expanding it. Click to edit this page


This guide is intended to give you some basic information about what is inside of your saves. This information can be useful for a lot of reasons: restoring backups, changing world settings, editing or deleting player information, or anything else you can think of. Some extreme examples include adding planets, adding or removing grids, and modifying grids and inventories. These extreme examples won't be covered here but the information provided should help with the more reasonable ones.

Version: 0.6

Location

Path to saves

All Medieval Engineers saved data can be found inside of the AppData folder. By default this path is C:\Users\{username}\AppData\Roaming\MedievalEngineers\. This path has a Windows shortcut of %appdata%\MedievalEngineers. This folder contains Blueprints, Maps, Mods, Saves, Screenshots, ShaderCache, Storage (used by mods), Workshop Worlds, Controls configuration (key bindings), Interface configuration (used by the general search screen for now), MedievalEngineers configuration, MedievalEngineers log, VRageRender-DirectX11 log. The Saves folder is of primary interest to this guide. Inside the Saves folder you will find numbered folders that correspond to each Steam account that has been used to play Medieval Engineers on your PC. Each sub-folder of these account folders is what we refer to as a save.

Folders and Files

Inside each save folder you will find the following:

Type Name Description
Folder Backup Contains backup saves. Each backup is a full copy of the save from an earlier state. These saves are identical in structure with the exception of not having their own backup folder.
Folder Players Contains .player files. These files have information that is specific to each player who has joined the world. They are named by Steam ID.
.vx2 File(s) Voxel Modifications This is generally one file, the planet, however the option exists to have multiple files if other bodies are added. vx2 files are compressed binary files that contain changes to the voxels. Planets are generated from maps in the game files specified by the scenario, modified by the scenario if needed, and then modified by the save.
.sbc File Configuration The configuration file contains all of the settings for the world such as those specified in world settings and advanced world settings. Also contained is version information, player identities (Steam ID to character ID mapping), and general session information.
.sbs Save Data This file contains all information about the save that is not in any of the other files. This contains all bot information, session components, Houses/ranks/deplomacy, banners, decay, fast travel cooldowns, farmables, access keys, areas, spawn information, and every entity (item, grid, character) in the world.
.jpg Thumbnail A screenshot that is generated when the world is saved. This is automatically scaled to reduce file size.

Players

Each of these files contains all information relevant to a single player in the world. Not all information generated by the player is saved in this file. What is included in the file is actually determined by the game architecture in that any entity component used by the character will serialize data to this file.

Backups

This folder contains backups of the save.

In Advanced World Settings there is a slider that sets the Maximum backup saves for the world. Backups are maintained when the game is saving using the following process.

  • Existing backups are deleted, in oldest to newest order, until the total number is 1 less than the maximum backup saves. So if the maximum backup saves is set to 3, the game will delete backups until there are only 2.
  • The current save is copied to the backup folder and named with the date and time. This increases the number of backups to the target specified in the Maximum backup saves setting.
  • The new save is generated and copied over the current save.

Thumbnail

thumb.jpg is a screenshot captured by the active camera when the world is saved. This file is not created by dedicated servers because the server has no active camera and no rendering at all.

Configuration

Save

Voxels

.vx2 files are compressed binary exports of voxel changes (deltas). There is no easy way to edit these files.