Install Steam
login
|
language
简体中文 (Simplified Chinese)
繁體中文 (Traditional Chinese)
日本語 (Japanese)
한국어 (Korean)
ไทย (Thai)
Български (Bulgarian)
Čeština (Czech)
Dansk (Danish)
Deutsch (German)
Español - España (Spanish - Spain)
Español - Latinoamérica (Spanish - Latin America)
Ελληνικά (Greek)
Français (French)
Italiano (Italian)
Bahasa Indonesia (Indonesian)
Magyar (Hungarian)
Nederlands (Dutch)
Norsk (Norwegian)
Polski (Polish)
Português (Portuguese - Portugal)
Português - Brasil (Portuguese - Brazil)
Română (Romanian)
Русский (Russian)
Suomi (Finnish)
Svenska (Swedish)
Türkçe (Turkish)
Tiếng Việt (Vietnamese)
Українська (Ukrainian)
Report a translation problem
And with modding you mean just changing stuff in the server .cs files or actual modding?
Would be helpful if you posted the code parts which don't work out.
I think the stockpile specifics are mostly handled in the StockpileComponent class which is most likely not accessible easily.
If you're just looking for a fast solution to have more storage in less space you could also change the storage chest to have an increased size:
And if you comment the line below you can put in any kind of item even carried items.
But if you're not creating a mod each and every chest you place down after changing this will be like that. (Every chest placed before should be as before afaik)
http://steamcommunity.com/profiles/76561197967223153/screenshot/927057975750575308
If i find the time i'll try to look into it further but i don't have more stuff than those server files atm so if it's not in there ir is really hard to figure out if there might be a workaround or better how to effectively implement it.
Well from how the stockpile is structured i'd say it is likely that the StockpileComponent class which also provides the stockpile dimensions does it.
There might be a way to set it without having access to the StockpileComponent class by initializing it differently (if that is implemented) but as it is a blackbox it is hard to tell the correct semantic to do so.
As i didn't change the stack sizes at all it would be nice if you could refer to the cs and line of code you did that as it might use a similar semantic.
Edit:
Ok i think i found a workaround but i first have to check if i can fix up the graphics as well.
The problem with the Stockpile is that it actually stacks stuff in a limited spartial area (5x5x5)
To change the behaviour we either need to increase the stockpiles area or make a (stockpile) stack of ore smaller (in dimensional size 4 ore make up 1 of the 125 available slots in a 5x5x5 stockpile).
Increasing the stockpile as far as i see it requires at least some knowledge about the StockpileComponent class.
To change the dimensional size of a stack you need to not only set up the stack size but also change the stacking behaviour on the stockpile.
IronOre.cs:
Usually the iron ore only ranges from IronOreStacked1Block to IronOreStacked4Block
but if you add in more StackedBlock classes then more ore will take up the same space 4 ore do in a normal setup.
The downside is that i still need to figure out where to set the graphics for the new stockpile classes and i guess that might be out of reach. But if you don't mind the looks it should work:
http://steamcommunity.com/profiles/76561197967223153/screenshot/927057975758800329
http://steamcommunity.com/profiles/76561197967223153/screenshot/927057975758802918
PS:
If you're doing the doubling of the stockpile slots for the inventory menu then once the stockpile has run out of space (dimensionally the 5x5x5 thing) to store stuff and you place a stack on it it will just vanish. So better don't :-X
I tried to edit my server file StorageChestObject.cs but it did not work. Can you explain it in detail?
Server\Mods\AutoGen\WorldObject\StorageChest.cs:
A) Easiest I think? With about 20 minutes of research.
Remove the restriction for stack size in the StockpileObject.cs located at:
Now you need to increase the [MaxStackSize(100)] of each item that you can store in the stockpile for example, setting Log.cs [MaxStackSize(100)] I can now stack 100 logs in the StockPile.
B) Not sure what the implications of this are, but you increase the Y value of this line
The Y value is the middle number in the Vector3i object x, Y, z
Now you need to increase the MaxStackSize just like in method A. Although doing this is still restricted to the Y value of the StockpileObject.cs.
For example, setting
---------------------------
Hope this helps.
Actually, I’m looking for a way to increase Max stack size in stockpile.
In:
You just need to change "DefaultDim.y" value with a number in:
For exemple:
Same way for tiny and small stockpile change "DefaultDim.y" value in .cs file
Confirmed working in 2020 game version. As soon as you find out where exacly the "dirt block" is located, the tyranny of dirt filling up tons of stockpiles with a limit of 5 each stack, is finally over. the dirt block's [MaxStackSize] can be edited under 'LandscapeItems.cs' and is called "dirtitem".
Thanks to Hudspeth and his wife for the effort to make this restriction understandable. ;)
this is the easiest way by far
go to
Steam\steamapps\common\Eco\Eco_Data\Server\Mods\Objects\StockpileObject.cs
and change this
storage.Storage.AddInvRestriction(new StockpileStackRestriction(DefaultDim.y)); // limit stack sizes to the y-height of the stockpile
which is on line 49 for me:
to this
storage.Storage.AddInvRestriction(new StockpileStackRestriction(100) or number of choice
then change your item stack size to whatever you want
Why is it easier to change a line compared to delete a line? This solution is literally the same as above with one detail changed. What's the 'magical' difference?
it this working 2024?
System.Exception: E:\SteamLibrary\steamapps\common\Eco\Eco_Data\Server\Mods\__core__\Objects\StockpileObject.cs(31,82): error CS1002: ; erwartet.
at Eco.ModKit.RoslynCompiler.HandleCompilerError(ImmutableArray`1 diagnostics)
at Eco.ModKit.RoslynCompiler.Compile(AssemblyLoadContext assemblyContext)
at Eco.ModKit.RoslynCompiler..ctor(AssemblyLoadContext assemblyContext, String modsDirectory, String modsAssemblyPath)
at Eco.ModKit.RoslynCompiler..ctor(String modsDirectory, String modsAssemblyPath)
at Eco.ModKit.ModKitPlugin..ctor()
at System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean wrapExceptions)
Outer Exceptions:
Exception has been thrown by the target of an invocation.
: 1
My question is, it is possible to change: Stockpile Stack Size?
the way below does not work
"Steam\steamapps\common\Eco\Eco_Data\Server\Mods\Objects\StockpileObject.cs
and change this
storage.Storage.AddInvRestriction(new StockpileStackRestriction(DefaultDim.y)); // limit stack sizes to the y-height of the stockpile
which is on line 49 for me:
to this
storage.Storage.AddInvRestriction(new StockpileStackRestriction(100) or number of choice
then change your item stack size to whatever you want"