Skip to content

StorageStructure

ChenCMD edited this page Jan 17, 2022 · 2 revisions

Storageの構造について

api:

Write In Progress...

asset:context

Write In Progress...

asset:mob

Write In Progress...

asset:sacred_treasure

Write In Progress...

asset:island

Write In Progress...

asset:spawner

Write In Progress...

asset:trader

Write In Progress...

lib:

Write In Progress...

oh_my_dat:

Write In Progress...

player_manager:god

Write In Progress...

player_manager:lost_item

Write In Progress...

world_manager:gimmick

compound GimmickStorage {
   /// テレポーターのシステム
   TeleporterGroups: [GroupData]
}

compound GroupData {
   /// 識別ID
   ID: string,
   /// 所属するテレポーターのリスト
   Teleporters: [TeleporterData]
}

compound TeleporterData {
   /// 座標
   Pos: [double] @ 3,
   /// メタデータ
   Data: TeleporterMetaData
}

compound TeleporterMetaData {
   /// そのテレポーターが起動しているか 未指定の場合、起動しているものとして扱われる
   Activate?: boolean,
   /// テレポーターを星として見た時の色 default: "White"
   Color?: StarColor
}

enum(string) StarColor {
   White = "White",
   Yellow = "Yellow"
}

EntityStorageの構造について

Player

root
├ Name : String
├ LostItems : Item[]
├ Modifiers : Compound
│ ├ Heal : double
│ ├ MPRegen : double
│ ├ Attack : Compound
│ │ ├ Base : double
│ │ ├ Physical : double
│ │ ├ Magic : double
│ │ ├ None : double
│ │ ├ Fire : double
│ │ ├ Water : double
│ │ └ Thunder : double
│ │
│ ├ Defense : Compound
│ │ ├ Base : double
│ │ ├ Physical : double
│ │ ├ Magic : double
│ │ ├ None : double
│ │ ├ Fire : double
│ │ ├ Water : double
│ │ └ Thunder : double
│ │
│ └ Modifier : Compound
│    ├ Heal : Modifier[]
│    ├ MPRegen : Modifier[]
│    ├ Attack Modifier[]
│    │ ├ Base : Modifier[]
│    │ ├ Physical : Modifier[]
│    │ ├ Magic : Modifier[]
│    │ ├ None : Modifier[]
│    │ ├ Fire : Modifier[]
│    │ ├ Water : Modifier[]
│    │ └ Thunder : Modifier[]
│    │
│    └ Defense : Compound
│       ├ Base : Modifier[]
│       ├ Physical : Modifier[]
│       ├ Magic : Modifier[]
│       ├ None : Modifier[]
│       ├ Fire : Modifier[]
│       ├ Water : Modifier[]
│       └ Thunder : Modifier[]
│
├ ContextStash : Compound
│ ├ id : Compound
│ │ ├ auto : int
│ │ ├ mainhand : int
│ │ ├ offhand : int
│ │ ├ head : int
│ │ ├ chest : int
│ │ ├ legs : int
│ │ └ feet : int
│ │
│ ├ Items : Compound
│ │ ├ AutoSlot : string('auto' | 'mainhand' | 'offhand' | 'head' | 'chest' | 'legs' | 'feet')
│ │ ├ mainhand : Item
│ │ ├ offhand : Item
│ │ ├ head : Item
│ │ ├ chest : Item
│ │ ├ legs : Item
│ │ └ feet : Item
│ │
│ └ Inventory : Readonly Item[]
│
└ DataCache
   ├ abilities : CacheData<?>
   ├ AbsorptionAmount : CacheData<?>
   ├ ActiveEffects : CacheData<?>
   ├ Air : CacheData<?>
   ├ Attributes : CacheData<?>
   ├ Brain : CacheData<?>
   ├ CustomName : CacheData<?>
   ├ CustomNameVisible : CacheData<?>
   ├ DataVersion : CacheData<?>
   ├ DeathTime : CacheData<?>
   ├ Dimension : CacheData<?>
   ├ EnderItems : CacheData<?>
   ├ enteredNetherPosition : CacheData<?>
   ├ FallDistance : CacheData<?>
   ├ FallFlying : CacheData<?>
   ├ Fire : CacheData<?>
   ├ foodExhaustionLevel : CacheData<?>
   ├ foodLevel : CacheData<?>
   ├ foodSaturationLevel : CacheData<?>
   ├ foodTickTimer : CacheData<?>
   ├ Glowing : CacheData<?>
   ├ Health : CacheData<?>
   ├ HurtTime : CacheData<?>
   ├ id : CacheData<?>
   ├ Inventory : CacheData<?>
   ├ Invulnerable : CacheData<?>
   ├ Motion : CacheData<?>
   ├ NoAI : CacheData<?>
   ├ NoGravity : CacheData<?>
   ├ OnGround : CacheData<?>
   ├ Passengers : CacheData<?>
   ├ playerGameType : CacheData<?>
   ├ PortalCooldown : CacheData<?>
   ├ Pos : CacheData<?>
   ├ previousPlayerGameType : CacheData<?>
   ├ recipeBook : CacheData<?>
   ├ RootVehicle : CacheData<?>
   ├ Rotation : CacheData<?>
   ├ Score : CacheData<?>
   ├ seenCredits : CacheData<?>
   ├ SelectedItem : CacheData<?>
   ├ SelectedItemSlot : CacheData<?>
   ├ ShoulderEntityLeft : CacheData<?>
   ├ ShoulderEntityRight : CacheData<?>
   ├ Silent : CacheData<?>
   ├ SleepingX : CacheData<?>
   ├ SleepingY : CacheData<?>
   ├ SleepingZ : CacheData<?>
   ├ SleepTimer : CacheData<?>
   ├ SpawnForced : CacheData<?>
   ├ SpawnX : CacheData<?>
   ├ SpawnY : CacheData<?>
   ├ SpawnZ : CacheData<?>
   ├ Tags : CacheData<?>
   ├ Team : CacheData<?>
   ├ UUID : CacheData<?>
   ├ XpLevel : CacheData<?>
   ├ XpP : CacheData<?>
   ├ XpSeed : CacheData<?>
   └ XpTotal : CacheData<?>

Modifier

root : Modifier
├ UUID : int[]@4
├ Amount : double
└ Operation : string('add' | 'multiply_base' | 'multiply')

CacheData

root : CacheData<T>
├ Time : int
└ Data : T

AssetMob

root
└ MobData : Compound
   └ Modifiers : Compound
      ├ Attack : Compound
      │ ├ Base : double
      │ ├ Physical : double
      │ ├ Magic : double
      │ ├ None : double
      │ ├ Fire : double
      │ ├ Water : double
      │ └ Thunder : double
      │
      ├ Defense : Compound
      │ ├ Base : double
      │ ├ Physical : double
      │ ├ Magic : double
      │ ├ None : double
      │ ├ Fire : double
      │ ├ Water : double
      │ └ Thunder : double
      │
      └ Modifier : Compound
         ├ Attack : Compound
         │ ├ Base : Modifier[]
         │ ├ Physical : Modifier[]
         │ ├ Magic : Modifier[]
         │ ├ None : Modifier[]
         │ ├ Fire : Modifier[]
         │ ├ Water : Modifier[]
         │ └ Thunder : Modifier[]
         │
         └ Defense : Compound
            ├ Base : Modifier[]
            ├ Physical : Modifier[]
            ├ Magic : Modifier[]
            ├ None : Modifier[]
            ├ Fire : Modifier[]
            ├ Water : Modifier[]
            └ Thunder : Modifier[]

Spawner

Write In Progress...

Island

Write In Progress...

Trader

Teleporter

root
└ TeleporterData : Compound
   └ GroupID? : Boolean

note:

  • ここでは通称としてEntityStorageと呼んでいるが、正式名称はOhMyDatである。