Item weight and pallets: complete solution

Post your ideas and suggestions how to improve the game.

Moderator: ickputzdirwech

Post Reply
Engimage
Smart Inserter
Smart Inserter
Posts: 1068
Joined: Wed Jun 29, 2016 10:02 am
Contact:

Item weight and pallets: complete solution

Post by Engimage »

I know that many parts of this were already suggested somewhere but I want to make a post featuring a complete solution for end game balance.
Item weight
First part which is a good thing to implement is adding weight to items.
You can add different limitations to in-game mechanics based on it:
  • Limit inserter's capabilities to lift certain items. Stack inserters will effectively become "heavy lifter inserters" capable of moving heavy items such as pallets or trains or whatever. However heavy inserters can still move certain stacks of common items between containers. Or you can have both - heavy inserter and stack inserter for these 2 different tasks.
  • Limit bot capability to lift certain items such as pallets or other heavy items
  • Alter bot energy usage based on item weight they carry
  • You can introduce (optionally infinite) research for inserter weight capacity which will effectively change the number of different items it can pick at a time.
  • You can introduce a special type of a heavy lifter bot which will move slowly or have other limitations like super heavy energy usage but will still be able to carry heavy items.
  • You can add speed penalty to a player who is carrying heavy items to encourage automated transportation vs hand held carry
  • You can reduce the penalty for a player who uses exoskeleton equipment
Even if this is not intended to be in vanilla adding this feature as a moddable option would be great as I am sure modders will take over the idea and get the best possible solution for you. You can leave a placeholder values for all of these features but I am sure it would be great to have.

And obviously adding weight limitations to bots/inserters is a prerequisite to the following parts of the solution.
Pallets
Pallet is a packed version of a stack of items. By a stack I do not mean current max stack for them but a general stack of items.
Bulk items such as intermediates will have 2 new item parameters:
  • Pallet stack size
  • Pallet item
So pallet is a separate item with its own icons and its own stack size. The point of its stack size it to negate the trains being affected by this change which will generally make belts too powerful for them. So total item number in a stack of pallets should be higher than one in plain stack of items. Example: Iron Plates - Stack size 100, Pallet size 20, Pallet stack size 20. So in pallets 400 of Iron Plates fit into 1 wagon slot instead of 100. Numbers here are given as an example and are debatable but you get the idea. As a result trains do also benefit from palletizing products as obviously packed items take less space than just a heap of ones.

Pallets are really heavy (weight is set to high value) so obviously common logistic bots can't carry it. Also only heavy inserter can move it and only 1 at a time.

So in the end what is achieved by adding pallets? We have increased thoughput of belts while still leaving all the puzzle intact. We have not made trains worse and they happily have their niche. We have limited logistic bots to a low throughput tasks (while you can still brute force it with them). We have added one new interesting mechanic of managing item packing/unpacking. We have increased train load/unload speed considerably without adding loaders as obviously you can unload pallets directly to belts with a great speed removing the requirement of complex balancers on every station.

I also think pallets are a superior solution to stacks on belts as
  • They do not require any complex code changes
  • You can create custom icons/models for pallets instead of general methodology which might look bad with certain item icons
  • Fixed pallet sizes give you strong control over throughput limits unlike stacked belts (especially with infinite research) do.
Next we have to decide on how the packing/unpacking should be done
Palletizing/unpalletizing
There are several methods to implement this.

I have seen mods which use assembler for this process. This method while leaving other obvious pros of pallets is not comfortable to use as it obviously lacks throughput for unpacked items, takes a lot of space and still can't be used in dense production lines.

I do currently see two possible solutions for this.

1. Stack inserters creating pallets on the fly.

As said. A viable option.
In this case stack inserters will pick a fixed amount of items required for pallet and output a single pallet item. Also in case of feeding assemblers they will need to automaticly unpack items from pallets.
However this has several problems:
  • Not smoothly usable in mining setups or you will have to do those nasty rows of inserters like on loading/unloading stations or filter setups
  • Bad as a transition tool belt-to-belt
  • Will require a complex logic on inserter which might result in UPS issues
  • Oversimplifies the task making increased throughtput effortless
2. Palletizer.

The entity (Lets call it Palletizer) similar to Klonan's Belt Buffer can be introduced. It will have a filter for an item processed and a direction (packing/unpacking). It will have 2 loaders (input/output) with filters set accordingly and 2 item slots (1 input 1 output). This entity will also be a chest which will accept only input/output items and will be able to provide ones. It can optionally have a recipe set on it or just have a packing/unpacking mode.

The palletizer automatically converts input items to output items and has several uses. Obviously it serves as a transition from / to production lines to compress belt load for big distances and/or provide high volume supply belts for high density builds.
This can also be used as a train unloading device paired with heavy inserters (in case they are supplied by enough storage space).
It will also remove the need for Loaders at all providing all required functionality and also not replacing inserters but supplementing them as they can load any other entity like train or assembler from/to this device.

I do see this as an optimal solution for now as it does not alter any of existing game mechanics and only adds its own.

The question is how big should this one be?
I do find 1x2 inline size the best. In this case it is not too small for its power and is not too large to be a problem. You can still fit a splitter and this device in 3 tiles (assembler size) and will still be able to use 1 such device for 2 assembler for UPS saving purposes. In this case it can also be fit between rows or miners to create dense mining setups or even accept output items in the input to be able to create output chains (I mean when you want to create dense mining outpost which is intended to create palletized output you do output miners into this pelletizer and just chain connect them resulting in only pallets on belts).

However even 2x3 or 3x3 size for such device is still an option which will just serve a transition point between dense (palleted) belts and unpacked versions.
Optional station warehouse
I like the idea of having 2x3 storage building with built in loader. This would be an awesome tool for train loading/unloading turning wagon length of 6 into nice cool 2 belts. Even if having no loader such a building will help loading immensely by balancing things out. This is not a must ofcourse and will remove some puzzle out of the game (like those crazy circuit balanced loading stations) but still... Just QoL.
Conclusion
Overall I do find all this idea a nice balancing step overall. If implemented we have:
  • Buffed belts increasing their potential throughput
  • Reduced the amount of belts required for bulk transport -> UPS saved
  • Trains will be buffed accordingly for them to retain usefulness for long distances
  • Bots don't need to be nerfed. They still allow player to simplify deployment of low throughput solutions for convenience
  • Added new mechanic to the game making it one step more interesting. This mechanic is also reflecting real life logistic issue which is a good thing.
  • No major code changes at all. One entity (which is already mostly implemented as loader is a major part of it), icon set for pallets + weight limits.
  • Balance achieved. Can be heavily tuned by mods.
  • No nerfs, everybody happy
  • Profit!
Last edited by Engimage on Sat Jan 27, 2018 12:16 pm, edited 1 time in total.

Lastmerlin
Long Handed Inserter
Long Handed Inserter
Posts: 56
Joined: Thu Jun 16, 2016 11:02 am
Contact:

Re: Item weight and pallets: complete solution

Post by Lastmerlin »

First of all: Very extensive and well-thought proposal!

When seeing the different *tank belt* builds that are en vogue on reddit right now, I also thought something like that could be an addition, that really improves the game offers new options instead of cutting some back.

The general idea is good, but there a few things I would like to comment on:

1. I dislike the train buff. Trains are already the strongest transport medium at the end in my opinion (my thread: viewtopic.php?f=5&t=56687). Increasing train capacity reduces the challenge at train network building, which is the main fun of large-scale building. On the other hand, someone showed that tank belt can achieve up to 400K/min troughput, whereas I estimate train as 100k/min. This shows the really tricky balance of such things.

2. Assemblers should be able to pick up whole pallets. The need to put an extra entity between assembler and compressed belt is really no incentive and will definitely cost additional UPS. The only reason why train only is not viable right now, is that trains are not good to maneuvre these last few meters to the assembler. If the pallet belt can't do this either, I doubt it will be really attractive.

3. Your weight proposal is indeed a nerf to bots. How severe depends on the weights and how many items types cannot be transported at all. I would just scrap the weight as additional concept and just say that bots can transport pallets. This is a real no nerf strategy and less complicated. In general, I would wish, that the discussion would really abandon the idea of somehow forcing the player to use belts. If someone likes train/bot, let them be. Using belts should be just a viable option as well, then everybody will be happy.

4. At least my thinking at large scale is: The production line is just a black box. I dont really care whats in there and its not very interesting in either case. I will take what takes the least hassle and least UPS. I am pretty sure, there are several players who think the same. The real way to give an incentive to use belts at megascale, is to offer more UPS-efficient builds. For example: Make a mass production assembler, that produces its whole product pallet-wise. Less Machines, less inserters. And if you give it just one more module slot than Assembler3, belts will be dominating again. I am not sure if this idea is really good - I just want to show, that there are other options than annoying the players with bot bases.

Engimage
Smart Inserter
Smart Inserter
Posts: 1068
Joined: Wed Jun 29, 2016 10:02 am
Contact:

Re: Item weight and pallets: complete solution

Post by Engimage »

Added another weight application - character speed penatly is carrying heavy items + exoskeleton equipment reducing said penalty.

Post Reply

Return to “Ideas and Suggestions”