Beyond Dimensions is a mod focused on storage and utility. It introduces a "Dimensional Network" – a versatile storage system supporting items, fluids, FE energy, XP, Mekanism's chemicals, Ars Nouveau's sources, Botania's mana and Industrial Foregoing:Souls. It combines exceptional storage capacity and performance with a user-friendly interface, easily handling storage needs for most scenarios.
You need to defeat the Wither, or acquire a Nether Star by any other means. Craft it into an Unstable Space-Time Fragment. Keep this fragment in your inventory for one hour, transforming it into a Stable Space-Time Fragment. Use this to craft a Dimensional Network Generator and activate it to create your Dimensional Network. Then, simply press the hotkey (default: 'O') to open the storage interface.
long). The maximum number of stored types, the capacity per type, and the methods for expanding storage can all be customized using KubeJS.Intuitive Storage Interface: The mod provides an interface following interaction logic consistent with popular storage mods like AE2 and RS.
# to match tooltips strictly. Prefix with @ to match mod IDs strictly.Universal Slot System: Any slot in any of the mod's GUIs can store all supported resource types and supports quick interaction mechanics.
Quick Container Operation: Right-click a slot while holding the corresponding container to quickly deposit/withdraw resources from the container. For example: Right-clicking a slot with a Shulker Box, Sophisticated Backpack, or any container will quickly store items into the container; right-clicking an empty slot will quickly withdraw items from the container and place them into the slot. This operation supports fluids, Mekanism's chemicals, and even FE energy.
The mod provides blocks for automation and utility items. These blocks need to be bound to a network and mostly support redstone control, enabling interaction with other mods via the storage.
Adding new storable resource types is straightforward in code. Implement the following interfaces and register the resource type along with corresponding handlers:
IStackType - Enables the mod to recognize and store this resource type.IStackHandlerWrapper - Enables the mod to interact programmatically with containers/mod blocks holding this resource.CapabilityHelper.BlockCapabilityMap - Allows the resource type to be accessed by other mods' pipes/Storage Buses from blocks.CapabilityHelper.ItemCapabilityMap - Enables the quick container slot interaction (middle-click) for items holding this resource.UnifiedStorage.typedHandlerMap - Allows the Dimensional Network core storage to manipulate this resource.StackTypedHandler.typedHandlerMap - Allows peripheral blocks (like Network Interfaces) to manipulate this resource in their internal slots.Special compatibility of AE2, even if skipped, does not prevent the use of storage buses for reading.:
7. AEHelper.ISTACK_TO_AEKEY_MAP - Maps Beyond Dimensions resource objects to AE2 keys (for read Dimensional ME Storage Cell).
8. AEHelper.AEKEY_TO_STACK_TYPE_MAP - Maps AE2 keys back to Beyond Dimensions resource types (for Dimensional ME Storage Cell operations).
Refer to the mod's main registration file (BeyondDimensions.java) for implementation examples. Note: Registration specifics may change in future versions.
To customize network capacity:
| Class Name | Method Signature | Return Type | Static | Purpose |
|---|---|---|---|---|
DimensionsNet | createNewNetForPlayer(Player player, long defaultSlotCapability, int defaultSlotMaxSize) | DimensionsNet | Yes | Create a Dimensional Network for the specified player. defaultSlotCapability: Max units per resource type. defaultSlotMaxSize: Max number of resource types. |
getNetFromId(int id, MinecraftServer dataProvider) | DimensionsNet | Yes | Retrieve a DimensionsNet object by its numerical ID. | |
getNetFromPlayer(Player player) | DimensionsNet | Yes | Retrieve the DimensionsNet bound to the specified player. | |
getUnifiedStorage() | UnifiedStorage | No | Get the UnifiedStorage object representing the storage content of this network. | |
UnifiedStorage | setSlotCapacity(long capacity) | void | No | Set the maximum storage capacity (units) for each resource type in this network. |
setSlotMaxSize(int maxSize) | void | No | Set the maximum number of different resource types this network can store. |
In addition, the mod exposes some other classes to KubeJS. For details, see here.
The UnifiedStorage class also contains a considerable number of other methods that allow you to directly modify a player's storage contents.
The mod's API comes with complete Chinese annotations. Check them out here.
Tests covered three scenarios on the same machine under identical background conditions, utilizing the Spark mod. All tests used 1319 randomly generated unique items.
Note: Scenario 1 uses Beyond Dimensions blocks (Dimensional Network Pathway, Network Interface) and reflects the mod's core performance. Scenarios 2 & 3 use identical AE2 setups (Export Bus, ME Interface, infinite channels), differing only in the storage source, enabling direct comparison.
Results:
| Test Environment | TPS | MSPT (Median) | MSPT (95th %) | Loaded Chunks | Entity Count |
|---|---|---|---|---|---|
| Standalone Beyond Dimensions | 20 | 3.67 | 4.86 | 2601 | 13 |
| AE2 + Dimensional ME Cell | 20 | 2.97 | 3.37 | 2601 | 13 |
| AE2 Native Storage | 20 | 2.70 | 3.08 | 2601 | 13 |
Detailed Spark profiles and test setup information are available here.
| MC Version | Loader | Mod Version | Status |
|---|---|---|---|
| 1.21.1 | Neoforge | 0.3.0+ | Actively Updated |
| 1.20.1 | Forge / Neoforge | 0.3.0+ | Actively Updated |
| 1.12.2 | Forge | 0.1.7.4 | Maintanence Only (Critical bugs only) |
Support for other Minecraft versions is not planned until the current roadmap for supported versions is substantially complete.