v0.3.0
Manifold 0.3.0 adds two opt-in features for dimension mods, plus one breaking change to the position resolver.
Added
Per-dimension player inventory. Give a dimension its own player inventory with WithSeparateInventory(ManifoldInventory.Hotbar | Backpack | Character). Entering swaps the chosen categories to that dimension's set (empty on the first visit); leaving restores the previous one. Profiles are stored in player moddata, saved together with the physical inventory, so they survive logout and server restarts with no item loss (the snapshot is always taken before any slot is cleared).
Non-player entity transit. ITransitionService.TeleportEntity(entity, targetDim, options) moves items and other non-player entities between dimensions. The destination region is generated on demand, then the entity is re-homed into it. Use TeleportPlayer for players.
Changed (breaking)
ITargetPositionResolver.Resolve now takes the source Entity instead of IServerPlayer, so one resolver serves both player and entity transit. If you have a custom resolver, change its parameter from IServerPlayer player to Entity entity and read the source X/Z from entity.Pos. The built-in resolvers and TeleportPlayer are unaffected.
Install
- Players / servers: download
Manifold-0.3.0.zipbelow (or from the Mod DB) and drop it in your Mods folder. - Mod developers:
dotnet add package Pixnop.Manifold(compile-time API; still declaremanifoldas a runtime dependency).
Built for Vintage Story 1.21+. Full changelog: v0.2.0...v0.3.0