SL23W52: Difference between revisions

From ETM
Jump to navigation Jump to search
No edit summary
No edit summary
 
(4 intermediate revisions by the same user not shown)
Line 3: Line 3:
<br />
<br />


* '''Update dynmap,''' Invalid texture block name: minecraft:air
*'''Update dynmap,''' Invalid texture block name: minecraft:air
* '''Creating a new pod with a uuid key via copy/paste invites mistakes even if we use a UUID wrapper like DocId/LayoutId as:'''
*'''Creating a new pod with a uuid key via copy/paste invites mistakes even if we use a UUID wrapper like DocId/LayoutId as:'''
** PodType.X can still reference the old pod
**PodType.X can still reference the old pod
** manager.addInternal()... can still reference user.getXPod(XId.of(uuid, nickname)
**manager.addInternal()... can still reference user.getXPod(XId.of(uuid, nickname)
** In both cases the assumed type-safety by the Id-wrapper does not help us
**In both cases the assumed type-safety by the Id-wrapper does not help us
**'''After that saving will actually work, as in both cases we just convert a java object to json automatically,''' probably should have a type checking in the pod-system to make sure this cannot happen
*'''IconManager has no cleanup/usage check. We have a lot of unused objects we might want to flag for cleanup/old'''
*'''For some reason the server startsup slowly again and waits ~3sec after "17:15:14: libs"'''
*
*Build Process of Stages
**...
**getOrInitStage called for the current Variant
***Uses FakeStageBuilder to create a StageInit that contains EnumMap<> nmsFakes with all sub-elements and their unique nmsIds
****Resulting in a ClientstatesMap<T>
****With EnumMap<VariantSlot, Map<FakeType, List> fakeStates
****Allows us to respect sub-art variant changes of a Stage/Layout
***For fast access we need a uniqueId for each sub-part variant<>FakeEntity. This is needed as we want to merge Transition data of the parent and the sub-parts.
****So in each sub-part variant we store the stateId that gives us direct access to the FakeEntity object for the given fake variant
****
****
**Updated dynmap to 1.20.4
**

Latest revision as of 21:34, 29 December 2023

◄ SL23W51 | SL24W01 ►


  • Update dynmap, Invalid texture block name: minecraft:air
  • Creating a new pod with a uuid key via copy/paste invites mistakes even if we use a UUID wrapper like DocId/LayoutId as:
    • PodType.X can still reference the old pod
    • manager.addInternal()... can still reference user.getXPod(XId.of(uuid, nickname)
    • In both cases the assumed type-safety by the Id-wrapper does not help us
    • After that saving will actually work, as in both cases we just convert a java object to json automatically, probably should have a type checking in the pod-system to make sure this cannot happen
  • IconManager has no cleanup/usage check. We have a lot of unused objects we might want to flag for cleanup/old
  • For some reason the server startsup slowly again and waits ~3sec after "17:15:14: libs"
  • Build Process of Stages
    • ...
    • getOrInitStage called for the current Variant
      • Uses FakeStageBuilder to create a StageInit that contains EnumMap<> nmsFakes with all sub-elements and their unique nmsIds
        • Resulting in a ClientstatesMap<T>
        • With EnumMap<VariantSlot, Map<FakeType, List> fakeStates
        • Allows us to respect sub-art variant changes of a Stage/Layout
      • For fast access we need a uniqueId for each sub-part variant<>FakeEntity. This is needed as we want to merge Transition data of the parent and the sub-parts.
        • So in each sub-part variant we store the stateId that gives us direct access to the FakeEntity object for the given fake variant
    • Updated dynmap to 1.20.4