Commit Graph

14 Commits

Author SHA1 Message Date
simibubi
64b2c61389 Bug fixes
- Fixed spout creating potions from any fluid
- Fixed pipes not actually transferring the type of fluid selected by layer II flow propagation
- Fixed some fluid handlers erasing nbt data of extracted fluidstacks
- Fix sidedness issues in Config packets
2020-12-15 23:13:22 +01:00
simibubi
9a7886f406 Backwards for Progress
- Rebuilt the entire fluid propagation and transfer system with a new approach
2020-12-09 16:05:52 +01:00
simibubi
16705c5cb5 A flock of fluids
- Added Fluids for chocolate, honey, milk and tea
2020-12-03 20:41:55 +01:00
simibubi
d5f08aab76 Brackets and spilled potions
- Added wooden and metal brackets
- Brackets can be applied to shafts, cogs and fluid pipes
- Brackets prevent pipes from connecting to adjacent pipes
- Fixed blockzapper not showing up in the searchable creative menu
- Added config values for hose pulleys
- Hose pulleys now extinguish lit waterloggable blocks
- Hose pulley now break blocks that cannot withstand vanilla fluid flows
- Spout is now wrenchable
- Fixed spout not activating properly
- Added fluid particles that supports fluids without a block variant
- Potion fluids now apply their effects to nearby entities when spilling from an open end
- Fixed pumps not rendering fluid particles when spilling/pulling fluids directly
- Hose Pulley no longer accepts fluids that cannot be placed
- Hose Pulleys and open pipes can no longer place water in the nether
- Some Refactors to the particle system
- Reverted reversed crtl activation for schematic tools
- Added a command to fix broken lighting in some of creates models (enables experimental forge block rendering)
- Fixed fluid ingredients in jei once again
- Fixed fluid tag ingredients being resolved on the client
2020-11-04 19:08:01 +01:00
simibubi
5abfc15e9e Destroyer of Lakes
- Added the hose pulley
- Added creative tanks
- Fixed sails not getting consumed when placed against each other
- Items can now be inserted onto belts regardless of it moving or not
- Fixed item duplication on stopped belts
- Refactored fluid block rendering in JEI
- Reworked model of the schematic table
2020-10-30 02:16:08 +01:00
simibubi
b7bed44a61 Basic Brewing
- Refactored JEI plugin to use a builder for categories
- The mixer can now process vanilla potion recipes
- JEI support for fluid potion mixing
- Refined some categories to not show obsolete information
- Compacting and automatic vanilla packing are now in separate tabs
- Fluids can now be manually picked up from a basin
- Basins and Spouts can now extract from and fill vanilla potion items
- Improved the filtering for fluid tests, such as the basin recipe and smart pipes
- Fixed CombinedTankWrapper losing nbt data of transferred fluidstacks
2020-10-19 22:07:05 +02:00
simibubi
afa94c3e77 Blazier updates
- Fixed some sync & block update issues with blaziers
- Changed the fuel pellet item
- JEI can now display fluid in- and outputs of basin recipes
2020-10-12 21:55:09 +02:00
simibubi
378164b8b9 More unfinished basin business
- Fixed players flailing their limbs around while standing still on a moving contraption
- Attempted to reduce drag of remote player positions while on a contraption
- Contraptions no longer log out with the player riding them
- Attribute filters are now made of brass
- Added the ability to disable auto-compat with vanilla recipe types in the configs
- Added a recipe type for custom basin/press compacting
- Basins can now process items and liquids in recipes
- Input items/fluids of a basin can now be extracted or reused in further processing
- A basin diagonally below another basin with collect outputs of recipes processed in the top basin for ease of automation
- (Temporary debug recipes)
2020-10-06 20:43:13 +02:00
simibubi
2d6d360da4 Workstation transfer, Part II
- Intermediate changes, probably doesn't even compile
2020-09-24 13:39:40 +02:00
simibubi
fe2c27db35 Spout refinements
- Fixed upright items rendering inconsistently between belt and depot
- Fixed various timing and sync issues with the spout
- Added a recipe type for spout filling
- Fixed more co-modification on belts
- Item and fluid nbt tags in recipes are now data-generated as json objects rather than strings
- Transported item processing can now leave items behind
- Transported item processing now has more meaningful result data
- Tweaked spout animation
- Fixed cullfaces on spout model
2020-09-11 14:31:26 +02:00
simibubi
213b504854 ProcessingRecipe Refactor
- Reworked and cleaned up Create's ProcessingRecipes
- Prepared ProcessingRecipes for fluid ingredients and outputs
- Added datagen infrastructure to ProcessingRecipes
- Migrated all hand-written ProcessingRecipes to generated
- Removed scrollinput on mixers
- Fixed recipe lookup cache not invalidating on datapack reload
- Removed "catalyst" ingredients
2020-09-04 01:23:09 +02:00
simibubi
e52765cce0 Encased and Windowed Pipes
- Added encased and non-opaque versions of the fluid pipe.
- Added new generic te behaviour across pipe blocks for their rims/attachment models
- Pipes and pumps now render a little drain cap when connected to a fluid inventory
2020-08-25 20:12:33 +02:00
simibubi
2040d66c3e Fundamentals of Fluid Transfer
- Fixed some inconsistencies with a tanks' fluidhandler invalidation when resized
- Patched crashes in present fluid handling of the basin
- Tanks now slightly shade horizontal faces of the contained liquid
- Tanks no longer resend data every tick when filled gradually
- Introduced a new lerped value type with better design decisions
- Refactored Smart tileentity serialization to better support custom overrides in contained behaviours

- Pumps propagate flows in the pipe networks in front and behind itself.
- Pumps collect all possible in and outputs across the reachable pipe graph as endpoints
- Flows move across multiple branches of a pipe network when both are equally viable
- Open-ended pipes are treated as endpoints and leak fluid into and out of a block space
- Open endpoints serialize stateful information about fluid units gathered and held at the interface
- Open endpoints turn a fluid block into 1000 fluid units and back
- Open endpoints undo their transaction when their flow changes from pull to push
- Open endpoints cannot pull fluids back when a full liquid block was not placed yet
- Open endpoints waterlog blocks when the provided fluid is water
- A collision response is triggered when different types of fluids meet at open endpoints
- Fluids are transferred instantly by the throughput of a completed flow per tick
- Pumps cut flows when vital pipes are removed
- Pumps do not lose progress of finished flows when an unrelated part of the pipe network changes
- Pumps do not lose progress of finished flows when reversed
- Pumps distribute their throughput across available input flows evenly
- Pumps distribute gathered input fluid across outputs evenly
- Pumps expose furthest reachable pipefaces to other pumps for chained transfer
- Chained pumps with fully overlapping flow sections provide their endpoints at the entrance of the other pump
- Chained pumps with overlapping flow sections participate in two shared endpoints, one for each pump dominating the contested region
- Chained pumps with overlapping flow only transfer via the optimal of the two possible endpoints based on their speeds
- Chained pumps of equal speed pick one of the two available endpoints deterministically
- Pumps transfer without flows when no pipe is between the pump and the endpoint
- Pumps serialize and recover stateful information about held fluid units at open endpoints
- Chained pumps do not actively transfer when both are partaking with push flows (or both pulling)
- A pull flow originating from an inter-pump endpoint only commences when the corresponding push flow is completed
- Chained pumps re-determine the optimal flow when the speed of one is changed at runtime
- Throughput of chained pumps is determined by their weakest link in terms of speed
- Endpoints created for chained pumps is treated equally to other available endpoints when fluid is distributed
- Pipes do not contain a physical amount of fluid.
- Pipes never hold serialized vital stateful information about fluid transfer.
- Pipes synchronize local flow progress and fluid type to clients
- Flows in a pipe progress with the speed of the network flow
- A networks flow speed depends on the speed of the aggregated pump
- Pipe flows of different flow graphs of different pumps interact with each other
- A collision response is triggered when two different types of fluid meet within a pipe
- Pipes spawn particles to illustrate contained flows/liquids of flows
- The fluid transfer role is exposed through a TE behaviour with some callbacks and properties
- Open endpoints show particles when interacting with in-world fluids
2020-08-24 21:02:03 +02:00
simibubi
217138255e Tanks, Obama
- Reworked fluid tanks to incorporate new assets and functionality
2020-07-19 00:22:14 +02:00