blushiemagic / magicstorage Goto Github PK
View Code? Open in Web Editor NEWA tModLoader mod for Terraria
License: MIT License
A tModLoader mod for Terraria
License: MIT License
Plans :
Per button :
Sorting :
notes: I just wanted to lay this out somewhere sensible so I could refer to it in the future. I'm currently trying to get how this mod works so maybe I can implement a few of those myself & propose a PR later on.
Whenever I search nothing shows up, Even though I have that item, For example blood
https://prnt.sc/hcz5i2
But when I search Blood
http://prntscr.com/hcz6vp
Since I added this mod, the game seems to slow down noticeably when normal chests are open. I have not managed to make a storage system yet due to lack of diamonds, so not sure if it's affected yet.
Found in v0.4. To reproduce:
At this point you have one crafting interface block, and nothing more. It just ate all those crafting stations, nom nom nom.
It would be ideal if, eg, this simply dropped all those crafting stations into the world at that point, essentially returning them to the user instead of destroying them.
I'd like to be able to see about contributing some code, but without a LICENSE statement, I'm not able to do so. Would you be able to put one in place with the appropriate license? I'm not actually clear what the terms of use are here.
The MIT license is a great choice, if you don't have a reason to do anything stronger. https://choosealicense.com/licenses/mit/ has the details on what that allows and refuses. The site also helps you walk through other choices.
Also, please don't go with either the WTFPL (not safe for work due to swearing in the text) or "Public Domain", as those are not sufficiently defined in all jurisdictions, and will lead to the same situation around contributions as no license.
PS: sorry to play open source lawyer at you. It wouldn't be my first choice, but unfortunately I'm in a position where I need to be clear on licensing before I touch the code.
Just a quick feature request: would it be possible to allow any kind of chest to be used in the recipe for storage units?
PLESE。。
I was just looking at crafting a couple of dyes -- combined colors. They require, naturally, crafting the base dyes first.
It would be super-convenient if I could click on, eg, "orange and flame dye", and see the ingredients, "orange dye" and "flame dye" on the right. Then I could click on "orange dye" on the right, in the list of ingredients, and it would become the selected craft.
For bonus points, being able to step back from that would be super awesome.
At the moment, there's no actual way to have your storage system enter or exit an NPC house without making it "missing a wall" (except of course to use a remote access, which is kind of expensive...)
A solid version of the connector block would not only solve this issue but make for far greater versatility in how you set your network up.
Also, the way I tend to set my base up involves a rope/chain reaching all the way up and down the middle, extending down past the floor into a hellevator. Crossing the network from one side to the other is made rather difficult, what with needing a remote access to jump the gap; perhaps a version of the connector block that searches 2-4 tiles away linearly would be a suitably elegant way to solve this?
the interface of both the storage heart and the storage crafting interface do not appear while using this mod together with Kalciphoz's RPG mod
crafting terminal only show recipes from items in player inventory... i have resouces in storage, but if i have only in storage the recipe not work. but if have in player inventory i can craft, still use resource from storage but i need all items in my inventory too.
As the title says, we often have some issues when crafting something continuously through the crafting interface (eg. lots of arrows or bullets, etc). Usually the one crafting gets less lags, but the other connected players can barely move (one of my friend basically cannot move at all).
Some info to clarify:
Marking uncraftable recipes in red is useful, but it would be nicer to have the option to make them completely invisible -- most of the time I'm only interested in what I can make.
I wouldn't want to lose the ability to see uncraftable things, which is like the guide on steroids, but I don't want it to be my default interface to crafting. :)
I'm hosting a server on my local machine and when a client tries to open the storage unit he can't see any items. It says "0/0 items", however he can deposit items and I can see the items he deposited. We also tried this with no other mods enabled and the issue is still present. (We also made sure no filters were on ;))
Host:
MagicStorage 0.4.3.3
tModLoader 0.10.1.5
Terraria 1.3.5.2
Windows 10.0.17134
Client:
MagicStorage 0.4.3.3
tModLoader 0.10.1.5
Terraria 1.3.5.2
macOS 10.13.6
Vanilla stoarge items have Loot all, Deposit all, Quick stack, Restock, Sort items
Currently we only have deposit all and sort items, would love to see others. (Loot all would be useful if moving the system for example)
When deleting a mod whenever you click the storage it crashes the game (multiplayer). Then when you do it again it is perfectly fine if you didn’t delete one.
Hi, The mod itself is working amazing, but there is just one thing i am noticing, and i am not sure if anyone else put this here.
The mod works great when playing on single player, or on multiplayer through your computer, but when i play on my hosted server, magic storage just disapears.
What i mean is I can still make a storage system, craft, everything you need to do, but when i restart the server, It disapears. And i have to rebuild it. Nothing happens in the console or chat log about this.
Do you know why this may be happening?
The mods i am using are:
Yet another boss health bar v1.2.1
Boss Checklist v0.1.5.3
Magic Storage v0.4.3.1
MaxStackPlus v3.2
Throium Mod v1.4.3.8
Loot Bags v0.1.3
Recipe Browser v0.6.1.3
Tremor Mod Remastered v1.3.2.7
Luiafk v1.0.0.128
Calamity Mod v1.3.1.1
HERO's Mod v0.2.0.2
Using any of the storage parts (the heart, any units, connectors) bugs the multiplayer server so that when joining the server, it gets stuck on "Requesting world information" and none of us can join until that storage component is destroyed. Currently testing if that's due to a conflict with another mod (playing with multiple mods), however I doubt it.
Also, whenever I place a storage component, it says "Error on message Terraria.MessageBuffer"
Can you please see if you can help us fix this? This is a very important mod for us as chest storage is such a huge problem for us, and this is like the perfect solution.
When a recipe has multiple possible sources, the "first" stored ingredient suitable for use is always chosen when using the crafting interface.
For example, to make glass you can use either "sand block" or "hardened sand block". "sand block" is shown first in the "stored ingredients" section, and is used in crafting. If it runs out, the crafting switches nicely to the "hardened sand block".
In some cases I might want to use a specific ingredient, since "sand block" can be used to craft "sandstone brick", but "hardened sand block" can't.
It would be nice to be able to select which of the equivalent ingredients were used by clicking on them in the "stored ingredients" display.
When Smart cursor is enabled it never tries to open the interface or heart but always stuff like doors, piggy banks etc. Is there somehow a way to make it recognizable as a "openable"(?) thing?
The photos produced by the Expeditions mod seem to react poorly with magic storage and have a multitude of bugs when used in conjunction. To see what I mean, install both mods, take a photo with the expeditions camera, and deposit it in a magic storage unit.
I often find myself wanting to craft a full stack of things at the crafting interface. Most commonly when building -- oh, I need stone slab, I'll make another full stack -- but potions are like that, and a bunch of other things.
It'd be great to have essentially a push-button-get-stack option through the interface. I saw another suggestion asking for the 100x and 10x buttons, so maybe that is another way to approach that?
If you alt-tab out of Terraria's window, but click your mouse where a UI element of the storage would be (whether it's items, deposit all, or sort, but maybe not the text boxes?), the magic storage picks up on the click despite Terraria not being in focus.
Kind of irritating accidentally clicking "Deposit All" or grabbing items out of storage when Terraria is in the background.
sorry to bother you but i have noticed that your mod doesnt work with the rpg mod as when you try to open the storage the menu doesnt show up so i was wondering if by any chance there is a simple fix that i could do or is it more complicated ? thank you.
After installing Magic Storage to my existing modpack that I am hosting on a dedicated server, interacting with regular chests is rather buggy. It seems mostly fine, except every time you move an item into or out of the chest, the server console reports "Error on message Terraria.MessageBuffer" and nothing else. It also displays that message when the chest gui is closed. Although annoying, this much doesn't have an effect on gameplay. What does, however, is if you use "loot all" on the chest. If you do so, the server console gets spammed with a ton of instances of that message, one for every item in the chest. Then, if you close and re-open the chest, all but 1-3 stacks that were in the chest are back. (Effectively duping the items - note that the amount of stacks that actually get taken appears to be random). This is a pretty big issue... and again, this only started happening after I installed Magic Storage. My full list of mods:
Magic Storage v0.4.3.3
Recipe Browser v0.8
Fun Death Sounds v1.2
Wing Slot v1.6.2
Fargo's Mutant Mod: Summons and Souls v0.16.2
Calamity Mod v1.3.4.1
Infinite Wormholes v1.0
Yet Another Boss Health Bar v1.3.2
Boss Checklist v0.1.6.1
Item Checklist v0.5.2
Unleveled Mod v1.5.4
I am using version 0.4.3.1 of this mod. I have placed down a crafting interface in hopes of using but i am greeted instead with my chat being spammed with an error about the storage heart. Yes i have one placed. Here is an img of the error https://i.imgur.com/zh4nJOc.png . If i am doing something wrong please tell me. If not...well you have a bug to fix i suppose.
It would be ideal if newly crafted items were immediately accessible -- otherwise, the crafting interface is great, but it is pretty awkward to go through a two step process to be able to use something.
The display of the item in the bottom right seems like a fine choice for that: if it showed a stack counter for the number of crafted items, and allowed them to be picked up directly, that'd make it pretty similar to the standard crafting mode.
It could just drop the item on the floor if crafted and not collected, or drop it into inventory directly if there was space -- again, emulate the basic crafting interface.
This definitely makes it less useful for bulk crafting direct into storage, but I feel like it makes it better for what crafting is more commonly used for.
Finally, if you want to keep the current model, I'd suggest putting the "finish product" image in something that looks less ... clickable, less like an inventory slot. I spent ages trying to work out how to get things out, and it was only when I went back and read the thread about the crafting interface again that I worked out how it actually behaved.
This issue seems to be consistent and has been reported numerous times on the thread on the Terraria forums. It also seems to be multiplayer-only, as the issued isn't present in singleplayer. The corruption appears to happen after exiting a world with 2000+ items stored.
Problem: when over 2000 or more items total are stored in a system and a server is restarted, everything in the spawn chunk will be erased upon restart (might be chunks around storage that are affected, not sure)
I don't believe this affects wired items (as our wired doors were not erased when the issue happened), but everything else is deleted. I believe this also happens when multiple system have a total storage of 2000+ items. This does not happen when there are over 2000 slots available.
Strangely, NPCs inside the deleted chunk fall are not affected and instead teleport to the position of where there homes were after falling a certain distance.
This corruption doesn't actually "delete" items: in singleplayer, any affected chunks return to their former state and any storage units work as intended. The only way to fix the issue (with my knowledge) is to start the corrupted world in single-player, remove items until less than 2000 are present, and restart the affected world. This fixes the issue and everything is returned to its prior state.
Image taken from forum in singleplayer:
Image taken from forum in multiplayer:
Some users are reporting this happens at different limits. (one user reported 8000 - 8500 items being the limit) I would only consider this issue critical in multiplayer, as it basically ruins the gimmick of storage by limiting the server to less than 2000 items. Works fine in singleplayer. Either way, it needs a fix.
Basically, the same way chests can be named, it'd be nice to have names attached to my crafting blocks.
Since I'm mostly playing for the fun of building stuff, I have more than ten crafting stations I'd like to actively use -- because I have a pile of different things like living wood, skyware, etc, crafting things.
I'd like to throw two crafting pods down, and then name one "crafting" and the other "furniture" or something. Then populate the second with the special block crafting widgets, plus some but not all the crafting stations. (eg: workbench, as required for crafting some-but-very-few of the special blocks.) :)
I am getting crash when using this mod in multiplayer. The crash results in the game closing out and opening a dialog that shows the error message. The gist is here:
https://gist.github.com/6a9cdc9647447fb316d435b1eed8c228
I would also like to note, I am getting a major lag spike on the side of the server when I try to place connectors after I place a storage heart next to them. This seems to cause the server to jump in CPU usage to over 100% (at least what my Linux dedicated server says). And I am running on Ubuntu 16.04, Terraria 1.3.5, tModLoader v0.10.1.3 and these are my mods:
CalamityMod
OreSeeds
SmeltableTools
ThoriumMod
VeinMiner
Tremor
WeaponOut
CosmeticVariety
ForgottenMemories
BuildPlanner
ShorterRespawn
TPUnchained
imkSushisMod
Shapeshifter
Whenever I open it it works fine but my friend can't see any items. I am running a lot of mods.
Auto Trash
Thorium
Tremor
Spirit Mod
Magic Storage (duh)
Calamity
Which Mod is this From
Recipe Browser
So... I lost all of my items that were stored in the magic storage... and it happens after I supposedly "save and exit" and after I got a message saying something about a crash. Now when I try to access it, my character is frozen or that it says 0/0 in the heart storage even though it is connected to about 5 storages and 2 crafting interface. My 2 crafting interface lost its crafting stations and when I right clicked any of the 5 storages, my character just stays frozen until I stop pressing the right mouse button. Any way I can fix and is there any chance I can recover any of my stuff?
Magic Storage Mod is not working for me.
I am playing on a Macbook Pro 15 inch Retina.
Storage heart does not display any items, even when extra components are added. The item counter at the bottom remains at 0/0.
I have tried reinstalling the mod, re-enabling the mod, but nothing has changed.
Help would be much appreciated.
Lags occur while typing in search box, every new letter freezes game for a bit.
Can searching be optimized or something?
3.5k+ items in storage
Screenshot says it all:
https://i.gyazo.com/48bd0854d421c2443d027c56e5fbc48d.png
newest terraria steam on linux with newest tmod
Search by mod similar to how NEI/JEI/AE is for Minecraft. Be able to do @magic to get all of the items from the Magic Storage mod.
Search metadata would be able to search specific metadata for each item. Kind of like a type search. If you search for "melee", you get all of your melee weapons. "material" would give you all of the items that have a Material tooltip.
Silently Caught Exception: Collection was modified; enumeration operation may not execute. at System.ThrowHelper.ThrowInvalidOperationException(ExceptionResource resource) at Terraria.ModLoader.ModCompile.<>c.<ActivateExceptionReporting>b__15_0(Object sender, FirstChanceExceptionEventArgs exceptionArgs)
at System.ThrowHelper.ThrowInvalidOperationException(ExceptionResource resource)
at System.Collections.Generic.Dictionary`2.KeyCollection.Enumerator.MoveNext()
at MagicStorage.CraftingGUI.IsAvailable(Recipe recipe)
at MagicStorage.CraftingGUI.<RefreshRecipes>b__5(Recipe recipe)
at System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()
at System.Collections.Generic.List`1.InsertRange(Int32 index, IEnumerable`1 collection)
at MagicStorage.CraftingGUI.RefreshRecipes()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
Crafting recipes are visible on host side but not for anyone else. This error specifically occurs when someone that cannot see the recipes looks up an item in the search-bar. Supposedly this error was supposed to be resolved with issue #20 but we are still having problems.
The following mods are being used alongside MagicStorage:
Hi, so I just installed MS on my brand new world, and when I click on the storage crafting interface, it repeatedly gives me this error:
Code:
System.NullReferenceException: Object reference not set to an instance of an object.
at MagicStorage.InterfaceHelper.HideItemIconCache()
at MagicStorage.CraftingGUI.Draw(TEStorageHeart heart)
I can still interact with the interface, however whenever my mouse touches the GUI the interface disappears and I hear repeated whirring sounds of text appearing. Anyone know what’s going on?
My game has also crashed, and when rebooted, every world refuses to open, even with brand new characters.
Terraria 1.3.5.2
tModLoader 0.10.1.5
VeinMiner
Calamity
Thorium
Infinity
Wireless
Yet Another Boss Health Bar
What Mod is This From
Dual Wielding
Solutions
Max Stacks Plus
JoostMod
Cheat Sheet
AlchemistNPC
Fargo’s Mutant Mod
imkSushi’s Mod
https://forums.terraria.org/index.php?attachments/runtime-error-txt.206028/
https://forums.terraria.org/index.php?attachments/logs-txt.206029/
https://forums.terraria.org/index.php?attachments/client-crashlog-txt.206030/
https://forums.terraria.org/index.php?attachments/runtime-error-txt.206034/
On our server currently, when trying to open one of the access points (either the storage heart or a remote access), instead of opening, it looks like it all of your cosmetic items are hidden for the duration of the right click.
Occasionally I crash when trying to open it.
https://i.gyazo.com/d6d84089586ba3a69e418f304cc70396.png
The given key was not present in the dictionary.
at System.Collections.Generic.Dictionary2.get_Item(TKey key) at MagicStorage.Components.TEStorageHeart.<GetStorageUnits>b__0(Point16 remoteAccess) at System.Linq.Enumerable.<SelectManyIterator>d__16
2.MoveNext()
at System.Linq.Enumerable.d__581.MoveNext() at System.Linq.Enumerable.WhereSelectEnumerableIterator
2.MoveNext()
at System.Linq.Enumerable.d__162.MoveNext() at System.Linq.Enumerable.WhereEnumerableIterator
1.MoveNext()
at MagicStorage.Sorting.ItemSorter.SortAndFilter(IEnumerable`1 items, SortMode sortMode, FilterMode filterMode, String modFilter, String nameFilter)
at MagicStorage.StorageGUI.RefreshItems()
at MagicStorage.StorageGUI.UpdateItemSlots()
at MagicStorage.StorageGUI.Update(GameTime gameTime)
at MagicStorage.MagicStorage.PostUpdateInput()
at Terraria.ModLoader.ModHooks.PostUpdateInput()
at Terraria.Main.DoUpdate(GameTime gameTime)
at Terraria.Main.Update(GameTime gameTime)
Wanted to give some further information. When I MOVED the heart to a different spot, it started working no crash:
https://i.gyazo.com/991ac95f9a1bb1a3ae6df4284359bfd2.png
The original location:
https://i.gyazo.com/cfd06170f3de66cdacb8efcf3208820a.png
Sample code used:
public class PrefixPreserverGlobalItem : GlobalItem
{
public override void OnCraft(Item item, Recipe recipe)
{
var modRecipe = recipe as ModRecipe;
if (modRecipe == null || modRecipe.mod != mod) return;
item.prefix = 0;
item.rare = ItemRarityID.LightRed;
}
}
(it works when crafting is done the vanilla way)
Tested with: emblems for which custom recipes are added
Expected: item losing its prefix and having a rarity of light red
What happens: GlobalItem.OnCraft never gets triggered and the item gets a prefix & rarity
Currently when using Magic Storage and Item Qualities and Durability together, anything with a durability bar is unable to be crafted or taken out of the Magic Storage interfaces.
Item Qualities and Durability
https://forums.terraria.org/index.php?threads/item-qualities-and-durability.56234/
As when you pick it up, auto combine 100 Copper -> 1 Silver, etc
Reproduction steps:
Enabled mods:
[
"ShorterRespawn",
"FasterStart",
"BossChecklist",
"MagicStorage",
"NoMoreTombs",
"OmniSwing",
"WorldGenPreviewer",
"MaxStackPlus",
"FKBossHealthBar",
"RecipeBrowser",
"WeaponOutLite",
"SlimeStaffRecipe",
"InvincibleNPCs",
"CalamityMod",
"AlchemistNPC",
"DisableSCalHitCounter",
"SoulSellingWizard"
]
Possible culprits:
Line 264 in fab23f0
Line 450 in fc5ed82
It'd be nice to see things sorted more or less by how recently something was added to the stack in storage. It wouldn't be a perfect mirror of things I want to use, but it'd definitely be useful when I'm hunting specific things, or when I'm using the crafting interface.
The Crafting Terminal doesn't seem to work in multiplayer.
I pick an item, click the "Craft" button afterwards, nothing happens. The server console prints the following error message:
Error on message Terraria.MessageBuffer
This feature does however work in singleplayer.
I'm running the latest version of MagicStorage (v0.4.0.2) with tModLoader v0.10.0.2 and Terraria v1.3.5.2.
Additional mods are:
...although I don't suspect them to cause this issue.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.