tModLoader Magic Storage

Discussion in 'Works-in-Progress' started by blushiemagic, Apr 6, 2017.

  1. blushiemagic

    blushiemagic Retinazer

    Magic Storage v0.4.3.3

    Are you tired of having a mess of chests in your base? Never remember where you put your items, and have to run across your entire house to get from chest to chest? This mod will solve all of your problems!

    This mod offers a solution to storage problems once and for all. It allows you to construct a central network to store all your items, that you can access from one single block. If desired, you can even set up multiple access points to use your storage from anywhere in the world. You can search your storage for items with a certain name, filter by item types, etc. The magic storage can even craft items for you!

    The magic storage scales as you progress in your playthrough. It is accessible very early in the game, but with limited power. As you defeat bosses and earn more materials, you will be able to upgrade your storage to perform more functions and more easily expand the storage capacity.

    The first thing you will want to do is craft several Storage Components:

    10 [​IMG] + 2 [​IMG] = [​IMG] (Requires [​IMG])
    Note: Any wood can be used, and Lead may be used in place of Iron.

    By itself, the Storage Component does nothing. However, it the base material for crafting all blocks in the mod. In addition, it can be used to connect different parts of your storage network (more on that later).

    [​IMG] + 3 [​IMG] + 7 [​IMG] = [​IMG] (Requires [​IMG])

    As its name implies, the Storage Heart is the heart of your storage network. Every storage network must have one, and exactly one, in order to function. You can right-click the heart to access all items in its network.

    Simply place one down to create a storage network.

    Note: A Storage Heart cannot be physically connected to another Storage Heart or to a Remote Storage Access.

    [​IMG]

    The first row of top-left buttons allow you to sort the items by default vanilla sorting, by ID, or in alphabetical order. The Deposit All button deposits all unfavorited items in your inventory and not in your hotbar into the storage. The top Search Bar allows you to search for items whose name contains whatever you type. The second row of top-left buttons allow you to filter items by category, while the bottom Search Bar allows you to search for items whose mod's name contains whatever you type.

    To deposit an item, simply click any slot with the item in your mouse. To withdraw an item, click a slot containing the item while your mouse is not holding an item. It will attempt to withdraw up to a full stack. To withdraw one item, right-click the slot instead. You can also hold right-click to rapidly withdraw one item at a time.

    You can also shift-click to deposit and withdraw items.

    [​IMG] + [​IMG] + 10 [​IMG] = [​IMG] (Requires [​IMG])
    Note: Tungsten can be used in place of Silver.

    You've probably noticed that by itself, you can't really do much with the Storage Heart. No items can be deposited into it. This is because you must connect one or more Storage Units to it in order for it to be able to store items.

    The Storage Unit can store 40 items, just like a normal chest. This can be upgraded, however. When you deposit an item into a Storage Heart, it will search through all connected Storage Units to find space for it. Similarly, if you withdraw an item from a Storage Heart, it will search through all connected Storage Units to find it. This is where the Storage Heart becomes the central access for all your items; no longer do you have to search through rows of chests to find what you're looking for!

    Once a Storage Unit contains items, the green indicator light on the bottom-right will turn yellow. When it becomes full, the light will turn red. You can also right-click a Storage Unit to get the exact number of item stacks it contains. When a Storage Unit contains items, it cannot be mined.

    The Storage Heart will gradually attempt to draw items to the Storage Units closest to it. This way, you don't have to worry about having many Storage Units each with just a small amount of items, unable to be mined.

    In order to upgrade a storage unit, you must craft an upgrade item, then right-click a previous-tier Storage Unit with the upgrade. You may also craft the Storage Unit and the upgrade together, if you wish.

    Demonite Storage Upgrade: Upgrades a normal Storage Unit to 80 capacity
    10 [​IMG] + [​IMG] = [​IMG] (Requires [​IMG]/[​IMG])

    Crimtane Storage Upgrade: Upgrades a normal Storage Unit to 80 capacity
    10 [​IMG] + [​IMG] = [​IMG] (Requires [​IMG]/[​IMG])

    Hellstone Storage Upgrade: Upgrades a Demonite/Crimtane Storage Unit to 120 capacity
    10 [​IMG] + [​IMG] = [​IMG] (Requires [​IMG]/[​IMG])

    Hallowed Storage Upgrade: Upgrades a Hellstone Storage Unit to 160 capacity
    10 [​IMG] + [​IMG] + [​IMG] + [​IMG] + [​IMG] = [​IMG] (Requires [​IMG]/[​IMG])

    Blue Chlorophyte Storage Upgrade: Upgrades a Hallowed Storage Unit to 240 capacity
    5 [​IMG] + 5 [​IMG] + 2 [​IMG] + [​IMG] = [​IMG] (Requires [​IMG]/[​IMG])

    Luminite Storage Upgrade: Upgrades a Blue Chlorophyte Storage Unit to 320 capacity
    10 [​IMG] + 5 [​IMG] + 5 [​IMG] + 5 [​IMG] + 5 [​IMG] + [​IMG] = [​IMG] (Requires [​IMG])

    Terra Storage Upgrade: Upgrades a Luminite Storage Unit to 640 capacity
    [​IMG] + [​IMG] = [​IMG] (Requires [​IMG])
    Note: The Radiant Jewel is a 5% drop from the Moon Lord (10% in Expert Mode).
    Additionally, there may be more recipes for the Terra Storage Upgrade depending on what mods you have.
    Elemental Unleash (Bluemagic's Endgame Bosses):
    [​IMG] + [​IMG] = [​IMG] (Requires [​IMG])
    Calamity:
    20 [​IMG] + [​IMG] = [​IMG] (Requires [​IMG])

    I've mentioned connecting Storage Hearts to Storage Units, but haven't actually explained what that means. Two Storage Components are connected if they are touching each other, or if they are connected to components that are touching each other. This is a bit difficult to explain, so here are some examples with pictures.

    Connected [​IMG]
    [​IMG]

    Connected [​IMG]
    [​IMG]

    Connected [​IMG]
    [​IMG]

    Both Connected [​IMG]
    [​IMG]

    Connected [​IMG]
    [​IMG]

    Connected [​IMG]
    [​IMG]

    Not Connected [​IMG]
    [​IMG]

    Not Connected [​IMG]
    [​IMG]

    [​IMG] + [​IMG] = [​IMG] (Requires [​IMG]/[​IMG])

    Storage Units that contain items cannot be mined. However, this can be rather inconvenient when you don't exactly control when items are deposited to or withdrawn from a specific Storage Unit. The Storage Unit Wand solves this problem. Simply left-click a Storage Unit with the wand to deactivate it; this will turn the light in the top-right corner off. If you want to reactivate a Storage Unit, just click it with the wand again. You can also right-click a Storage Unit to see whether it is active or inactive.

    A deactivated Storage Unit can still be withdrawn from, but cannot be deposited into. Additionally, the Storage Heart will attempt to move all items in the deactivated unit into other units as fast as possible, so that you can mine the deactivated unit.

    10 [​IMG] + [​IMG]= 16 [​IMG] (Requires [​IMG])
    Note: Any wood can be used, and Lead may be used in place of Iron.

    One problem with using Storage Components to connect different parts of your network is that they take up a huge 2x2 space. In addition, they are pretty iron/lead-expensive to use. Storage Connectors solve this problem: they function similar to Storage Components, except they are 1x1 and cannot be stood on. They even visually connect together!

    [​IMG] + 1 [​IMG] + 7 [​IMG] = [​IMG] (Requires [​IMG])

    The Storage Heart lets you access all your items from one central location. But then the problem arises: you have to walk all the way to that location in order to get your items! #FirstWorldProblems

    The Storage Access solves this problem. Simply connect a Storage Access to a Storage Heart, then when you right-click the Storage Access, it will open up the Storage Heart for you!

    [​IMG] + 3 [​IMG] + 7 [​IMG] = [​IMG] (Requires [​IMG])

    Now for some more serious problems. So far, you need to actually physically connect the Storage Heart to all Storage Units. This means your house will still be filled to the brim with blocks, and you can't access your storage from far away (unless you line the world with Storage Components). But never fear, Remote Storage Accesses are here!

    First, you must place down a Remote Storage Access where you want to access your network from, or where you want to place your Storage Units. Next, you must craft a Locator:
    10 [​IMG] + 5 [​IMG] = [​IMG] (Requires [​IMG]/[​IMG])

    Next, you must right-click a Storage Heart with the Locator. This will store the Storage Heart's location onto the Locator.

    Once the Locator has a location stored, you must right-click the Remote Storage Access with the Locator. This will copy the location onto the Remote Storage Access, and consume the Locator.

    A Remote Storage Access whose stored location points to a Storage Heart will become connected to the Storage Heart. This means right-clicking the Remote Storage Heart will open the GUI with all the items of the Storage Heart. Similarly, a Storage Access can be connected to the Remote Storage Access and function properly, and the Storage Heart will use all Storage Units that are connected to the Remote Storage Access.

    To clear the location stored on a Remote Storage Access, you must mine then re-place it.

    There is also a second type of Locator, the Locator Drive. Instead of being consumed upon use, the location stored on the Locator Disk will simply become cleared.
    25 [​IMG] + 5 [​IMG] = [​IMG] (Requires [​IMG])

    Note: A Remote Storage Access cannot be physically connected to another Remote Storage Access or to a Storage Heart.

    [​IMG] + 3 [​IMG] + 7 [​IMG] = [​IMG] (Requires [​IMG])

    You can easily store and retrieve items to your heart's content, and even access your items from all over the world. But one thing is missing: how about crafting? You might have noticed that you cannot craft anything while viewing your storage. The Storage Crafting Interface fixes all those problems!

    [​IMG]

    To use a Storage Crafting Interface, first connect it to a Storage Heart. There are 10 slots available at the top for you to put crafting stations into. This will enable you to use any recipe that uses those crafting stations. Below those, you will see a list of all the recipes in the game. These recipes can be sorted, searched, and filtered by the items they create. If you click on a recipe, its info will appear on the right-hand side, including what ingredients you have in the storage already, and how many of the result you already have. You can click on an item in the storage to stop it from being used for the recipe (useful if the recipe can choose between multiple items or for keeping weapons with prefixes you want). Click the Craft button to craft the recipe; the ingredients will automatically be used and the result will automatically be deposited into storage. You can also hold the Craft button to keep on crafting.

    To use a recipe that requires water, you can use either a sink or a water bucket for a crafting station. You can use a lava bucket for lava, and a honey bucket for honey. There is also a new item called a Snow Biome Emulator for recipes that require a snow biome.

    [​IMG] + [​IMG] + 3 [​IMG] + 7 [​IMG] = [​IMG] (Requires [​IMG])

    Remote Storage Accesses are great if there is are static points in the world where you frequently access your items. However, they do not let you access your storage on the go, as you are exploring. Wouldn't it be great if you could just deposit everything into storage once your inventory fills, without even returning to base? Or withdraw some potions that you forgot to bring along?

    The Portable Remote Storage Access will let you do exactly that! Just like with Locators and Locator Drives, you must first right-click a Storage Heart to save its location. Then, you can simply open up your storage by using this item with left-click, whenever and wherever you want!

    Like with the Terra Storage Upgraded, the Radiant Jewel can be replaced by other items depending on what mods you have.

    At this point, you're probably wondering: "Where on earth am I supposed to get all these diamonds?!" Worry not, this mod offers a solution to that! The first time you kill each boss, it will drop an item called a Shadow Diamond. You have the option to use these items instead of regular diamonds for any of this mod's recipes.

    [​IMG]

    Credits
    @AdipemDragon - Spriting
    @zadum4ivii - Russian translations
    @ArcheRion720 and @Sapharan - Polish translations
    purple thong - French and Spanish translations

    Download:
    https://github.com/blushiemagic/MagicStorage/releases/download/v0.4.3.3/MagicStorage.tmod
    This is also available in the Mod Browser as Magic Storage.
    Note: While I have tested this mod thoroughly, there is always the chance there will be some bugs. If you find any, please let me know! Bug reports should be reported as issues on the Github; please make sure there are no duplicate issues.

    Github: https://github.com/bluemagic123/MagicStorage

    v0.4.3.3
    -Fixed crash when opening storage with low framerate
    -Fixed bug where clicks still interact with the storage when the game is minimized

    v0.4.3.2
    -Fixed some bugs with search capitalization
    -Improved Russian translations
    -Uses less network data, delaying the disappearing chunk problem on servers by a lot
    -Fixed crash when opening storage after reloading mods

    v0.4.3.1
    -Fixed bug where game can rarely crash when crafting in the crafting interface
    -Improved sprite for snow biome emulator and renamed it to broken snowglobe

    v0.4.3
    -Fixed crafting interface issues on servers
    -Search bars now work with any language
    -Massively sped up the crafting interface

    v0.4.2
    -Added a mod icon
    -Memory improvements when reloading mods
    -Added the portable remote storage access
    -Fixed bug where crafting interface does not display names of recipe groups

    v0.4.1.2
    -Fixed bug where crafting items in the crafting interface can't give them prefixes
    -Fixed some polish translations
    -Fixed bug where search bars do not function in multiplayer if a player is dead
    -Reduced gem requirements for the storage network

    v0.4.1.1
    -Fixed bug where clicking the crafting interface result slot with an item would crash the game if no recipe is selected
    -Massively improved the performance of storage transactions on multiplayer

    v0.4.1
    -Added french and spanish translations
    -Fixed bug where fishron can drop more shadow diamonds after restarting the world
    -Decreased drop rate of radiant jewels
    -Fixed bug where alchemy table effect persists when removing the alchemy station from the crafting interface
    -Fixed bug where searching for mods uses their internal name instead of display name
    -Added support for blocking items from being used in the crafting interface
    -Minor bug fixes

    v0.4.0.2
    -Fixed bug where mining the crafting interface would sometimes leave behind a glitched block
    -Fixed bug where items could be duplicated by depositing them while they're in use

    v0.4.0.1
    -Fixed bug where recipe availability does not update when crafting stations change
    -Fixed bug where you can mine tiles with crafting stations in them
    -Fixed bug where some text in the crafting UI does not translate
    -Result slot in crafting interface can now be used to deposit/withdraw the result
    -Added an option (on by default) to only show available recipes in the crafting interface

    v0.4
    -Added native support for shift-clicking - your trash will no longer be put into storage
    -Added the Crafting Interface
    -Added some Russian and Polish translations
    -Now works with UI scaling

    v0.3.0.2
    -Updated to tModLoader v0.10
    -Locators can now be used when held in the mouse
    -Hopefully fixed server-related bugs

    v0.3.0.1
    -Fixed loading error with Legend of Terraria 3
    -Fixed bug where right-clicking away from a search bar would not reset its focus
    -Fixed bug where player could move while a search bar is in focus

    v0.3
    -Improved Locator sprite
    -NPCs no longer stop you from opening the storage
    -Fixed bug where empty inactive storage units can't be mined
    -Fixed bug where upgrading a storage unit does not update full indicator
    -Greatly reduced network spam and improved performance
    -Fixed bug where destroying a remote access on a server would do weird stuff
    -Storage units can now be crafted from any chest
    -Fixed bug where items stay favorited inside of storage
    -Added the ability to sort by quantity
    -Added the ability to filter items by category
    -Added the ability to search by mods
    -Added shadow diamonds - dropped by first boss kills
    --Can be used in place of diamonds for crafting storage stuff
    -Support for gems from Legend of Terraria 3
    -More bugfixes and improvements

    v0.2.1
    -Storage network can now be opened on Mac/Linux
    -Improved Locator Drive sprite
    -Added Storage Connectors

    v0.2
    -Now requires at least tModLoader v0.9.2.2 to load
    -You can now deactivate Storage Units with the new Storage Unit Wand
    -Vastly improved spritework
    -Fixed massive slowdowns on certain occassions
    -Fixed crash when right-click-withdrawing last item in display
    -Added logging to help diagnose errors
    -The storage GUI now displays item count and capacity across the entire network

    v0.1
    -Initial Release

    TODO List:
    -Money Compactor
    -Blacklist/Whitelist for specific accesses
     
    Last edited: Aug 22, 2018
  2. TheGeckoGamer

    TheGeckoGamer Plantera

    Sweet! This is the mod I've always needed! Nice work @bluemagic123!
     
    Koopahunter197, Rickachu and Iggysaur like this.
  3. Mechantera

    Mechantera Official Terrarian

    It's like an ME system for Terraria! 500,000 internet points for you!
     
  4. CasperDaGhost

    CasperDaGhost Steampunker

    Doesn't work in multiplayer...... just toggles cosmetics when you try to open the " "chest" " ;(
     
  5. blushiemagic

    blushiemagic Retinazer

    That's pretty odd, it works perfectly fine for me. What other mods do you have, and do you have any pictures/videos of the bug?
     
  6. CasperDaGhost

    CasperDaGhost Steampunker

    I don't have pictures as the server is not my own but the problem is happening to the owner and myself. we are using mods:
    • Boss Health Bars
    • CookieBiscuit's Cookie Mod
    • Wing Slot
    • Magic Storage
    • Thorium Mod
     
  7. blushiemagic

    blushiemagic Retinazer

    Hmm, even with those mods I am unable to reproduce the bug. You can take a picture by using the F12 key.

    Does the problem still persist if you try it on your own server? And if you try it without any other mod (other than Cheat Sheet)?
     
  8. CasperDaGhost

    CasperDaGhost Steampunker

    I can do that but it has always worked in singleplayer but yea it didnt seem to work when in multiplayer. I wont be able to get photos today cause I got work in an hour so yea ill get some photos asap
     
  9. blushiemagic

    blushiemagic Retinazer

    I also forgot to ask, what version of tModLoader are you both using?
     
  10. Caseratis

    Caseratis Skeletron

    Inventory problems wont be a thing anymore in modded now! Thank you bluemagic for the amazing work as always.
     
    UberCAKE and Jofairden like this.
  11. Creeper da Snek

    Creeper da Snek Plantera

    ...And I thought the actual API was the best thing that came to Terraria 1.3 for modding...
    Just a question, will this work in 0.9.2.1?
     
  12. blushiemagic

    blushiemagic Retinazer

    It might work in singleplayer, but definitely not in multiplayer. You're definitely going to want to use 0.9.2.2 for that since that has important bugfixes.

    In fact, the next update is going to require at least 0.9.2.2 in order to load.
     
    Jofairden likes this.
  13. neoselket

    neoselket Dungeon Spirit

    YES

    THANKS YOU SO MUCH

    THIS IS THE BEST MOD EVER
    !!!!!!!!!!!!!!!!!!!

    I've been wanting something like this SO bad!
     
    UberCAKE likes this.
  14. Jofairden

    Jofairden Golem

    Waiting for Youtubers to catch onto the hype... :D
     
  15. Matakor

    Matakor Terrarian

    WOO! This looks amazing!

    I would love to see different textures for the wood types though, depending on which is used to craft it. (Got me a boreal build, and regular wood would look a little off. still getting it though)
     
  16. Matakor

    Matakor Terrarian

    Hmm, any chance you could apply the use of the 'quick stack to nearby chests' button?
     
  17. blushiemagic

    blushiemagic Retinazer

    The main reason I didn't do that is because I'm worried about efficiency. For every item in the inventory, first the game will have to check if the storage system actually has the item, then it needs to actually deposit the item. I guess I could make it so that it just deposits all the items?
     
  18. Zach_

    Zach_ The Destroyer

    Is the Locator Drive a recolor of a Applied Energestics storage cell?
     
  19. AdipemDragon

    AdipemDragon Steampunker

    Could I offer myself to resprite some stuff for the mod? It's super useful, and I want it to look the best I can, too.
     
  20. Roxxz

    Roxxz Skeletron

    Uber Awesome thank you.