branchrust_reboot/main/hoppercancel
53 Commits over 59 Days - 0.04cph!
Fixed Hopper attempting and failing repeatedly to stack food items that could not be stacked due to spoiling timers (will also fix logic in industrial system as it shares the same precheck process)
Exposed maximum difference (in seconds) that two items with spoil timers can have and still be stackable (server.maxFoodSpoilTimeDiffForItemStack), increased from 60s to 3 minutes to avoid undesired stacking behaviour during long cooking processes
Added a timeout to the hopper item move process, if an item takes more than 5s to reach the hopper just snap it to the end
Hopper power input is now named "Power In"
▅▇▄ ▍▉▆█▋ ▊▉█▍ ▊▋▉█▉▅▌▍▇▍ ▅▉▋▅ ▊▆▊▉▇ ▇▌▅▉ ▋▉▉█▅ ▌▊▉ ▄▆▄▅▌▋ - ▌▌ ▊▍▄ ▊▆▅▉▅█ ▉▆▄ ▅▆▅▅█▅▋▌▍▊▊▅▋ █▄▆▋▄ ▌█▌▊▊▇ ▋█ ▇▉▄▇▍ ▊▊▉▇ ▋▅ ▌▊▊▄▍▌▍ ▆▍▍▌▅▇.
Remove the fx hierarchy from the server
Merge from crafting_update
Improved animation of tiems flying into hopper
Fixed hopper speed not being tied to timescale
Fixed blood spray fx not working properly
Better particle effects fade out
Fixed incorrect stack amounts when harvesting corpses
Adjusted blood fx, still not 100% working (pooling protobuf related maybe)
Fixed hopper breaking if an item was destroyed while it was in motion
Split the meat processing FX into two; human corpse and other flesh.
Corpse ingestion FX & gib files.
Hopper suction + related mat/textures.
Added texture scroll to VertexLit Blended Custom
Light setup for Hopper + related mats & meshes.
Optimized hopper textures.
Removed that 2k emission texture that was just black.
Removed the on/off text from the lights because that's not what they will indicate anymore.
Adjusted build volumes to rule out some clipping hopper placement scenarios
Fixed players harvested by the hopper not getting the proper skull player assignment
Added hopper socket to medieval box
Only let 1 item get added to the move queue at a time
Add more checks to try and stop items getting moved to the container if they aren't going to fit (and getting bounced back)
Added debug.dropWorldItems, takes a number and an item shortname and drops all the items individually (eg. debug.dropworlditems 10 rifle.ak)
Fixed hopper throwing an exception when more than 128 world items are in it's radius
Better handling for backpacks, extract all items
Hoppers ignore backpacks (temporary fix, will get this working later)
Added a slight delay before items start moving
Some basic handling for full containers, this will need more work
Hopper now harvests everything from corpses
WIll take all items from a ResourceDispenser (animals and players)
Will take all items from any inventories (players)
Abstract hopper behaviour into new IHopperTarget interface
Implement in BaseCorpse
Misc prefab setup, guide meshes, icon
- Hopper gibs
- Barrel socket adjustment
- LOD distances
- Hopper mesh + texture updates
Hooked up conditional mount brackets, will use a curved bracket when attached to the horizontal barrel
- Added Hopper mounts
- updated hopper mesh
Basic handling for the hopper to recognise when the attached container is full
Reuses industrial logic, so it won't try and collect items when it is full but it will collect items that it can stack
Hopper won't suck up items if construction (building blocks) is in the way
It can pull items through deployables
Cleanup, moved most processing into budgeted methods (see server.hopperAnimationBudgetMs convar)
Require power to run, hooked up industrial ports so it can act as a storage adaptor
Various prefab setup, fixed some item movement issues