Flywheel/src/main/resources/assets/create/models/block
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
..
analog_lever Get registrated, Part II 2020-05-22 20:02:07 +02:00
bearing Get registrated 2020-05-21 00:15:02 +02:00
belt Not enough polish 2020-07-12 02:05:29 +02:00
belt_casing Belt casing overhaul 2020-07-07 16:03:49 +02:00
belt_funnel Andesite Logistics 2020-07-08 01:36:34 +02:00
belt_observer Get registrated, Part II 2020-05-22 20:02:07 +02:00
belt_tunnel LeastReality's Belt Tunnel Rework 2020-07-16 19:13:00 +02:00
blaze_burner Cleanup crew 2020-07-23 17:41:15 +02:00
cart_assembler Refactor and Bugs 2020-06-13 20:41:08 +02:00
chute Chute Implementation 2020-07-02 17:23:42 +02:00
chute_funnel Andesite Logistics 2020-07-08 01:36:34 +02:00
clutch BlockState gen progress 2020-05-12 14:06:50 +02:00
connected_glass_pane Generating Glass and Window Panes 2020-05-14 19:06:40 +02:00
crate Get registrated, Part II 2020-05-22 20:02:07 +02:00
creative_motor Spiffy creative motor 2020-05-19 01:07:45 +02:00
cuckoo_clock Get registrated 2020-05-21 00:15:02 +02:00
deployer Item registrates, and more porty 2020-05-28 01:29:26 +02:00
depot Logistical Mockups Part III 2020-06-20 20:02:27 +02:00
diodes Get registrated, Part II 2020-05-22 20:02:07 +02:00
encased_belt Generating complex blockstates 2020-05-18 22:01:09 +02:00
encased_fan Generating water wheels and fans 2020-05-19 16:41:54 +02:00
encased_shaft whoops, forgot about this 😳 👉👈 2020-08-18 13:53:05 +02:00
extractor Get registrated, Part II 2020-05-22 20:02:07 +02:00
fluid_pipe Tanks, Obama 2020-07-19 00:22:14 +02:00
fluid_tank Tanks, Obama 2020-07-19 00:22:14 +02:00
flywheel Get registrated 2020-05-21 00:15:02 +02:00
funnel Logistical enhancements and fixes 2020-07-10 19:48:04 +02:00
furnace_engine Get registrated 2020-05-21 00:15:02 +02:00
gauge Get registrated 2020-05-21 00:15:02 +02:00
gearbox Directional sources of rotation 2020-06-04 21:02:29 +02:00
gearshift BlockState gen progress 2020-05-12 14:06:50 +02:00
hand_crank Reversed Simi's reverse-rendering 2020-05-25 23:09:36 +02:00
machine_base Bunch of Model Prototypes 2019-12-17 19:27:00 +01:00
mechanical_arm brass/andesite cog retexture + others 2020-08-04 12:00:52 -05:00
mechanical_crafter Get registrated 2020-05-21 00:15:02 +02:00
mechanical_drill Stone variant recipes 2020-05-31 19:17:00 +02:00
mechanical_harvester Stone variant recipes 2020-05-31 19:17:00 +02:00
mechanical_mixer Get registrated 2020-05-21 00:15:02 +02:00
mechanical_piston Get registrated 2020-05-21 00:15:02 +02:00
mechanical_press Get registrated 2020-05-21 00:15:02 +02:00
mechanical_pump Fundamentals of Fluid Transfer 2020-08-24 21:02:03 +02:00
mechanical_saw Stone variant recipes 2020-05-31 19:17:00 +02:00
millstone brass/andesite cog retexture + others 2020-08-04 12:00:52 -05:00
nixie_tube Added Nixie Tubes 2020-06-05 23:26:22 +02:00
nozzle Get registrated 2020-05-21 00:15:02 +02:00
packager Logistical Mockups Part II 2020-06-20 16:10:07 +02:00
radial_chassis Stone variant recipes 2020-05-31 19:17:00 +02:00
redstone_contact Get registrated, Part II 2020-05-22 20:02:07 +02:00
redstone_link Get registrated, Part II 2020-05-22 20:02:07 +02:00
reinforced_rail reinforced rail: Tooltip and reworked model/hitbox to better fit minecarts 2020-06-10 20:42:23 +02:00
rope_pulley Get registrated 2020-05-21 00:15:02 +02:00
rotation_speed_controller Get registrated 2020-05-21 00:15:02 +02:00
schematicannon Registrate Progress 2020-05-04 19:57:16 +02:00
sequenced_gearshift Get registrated 2020-05-21 00:15:02 +02:00
symmetry_effect Removed Symmetry Particles from block registry 2020-05-18 15:51:24 +02:00
transposer Get registrated, Part II 2020-05-22 20:02:07 +02:00
basin.json Get registrated, Part II 2020-05-22 20:02:07 +02:00
belt_pulley.json Belt model polish 2020-07-07 00:48:53 +02:00
block.json Dynamic Render to go 2019-10-19 15:42:42 +02:00
cogwheel.json casings, indeed. 2020-08-05 00:41:07 +02:00
cogwheel_shaftless.json cogwheel glowup 2020-07-26 19:29:15 -05:00
crushing_wheel.json Update crushing_wheel.json 2019-11-08 13:18:06 -05:00
ctblock.json Connecting the Quads 2019-11-17 21:25:59 +01:00
large_cogwheel.json casings, indeed. 2020-08-05 00:41:07 +02:00
large_wheels.json Get registrated 2020-05-21 00:15:02 +02:00
mechanical_plough.json Stone variant recipes 2020-05-31 19:17:00 +02:00
overgrown.json A new home for palette blocks 2020-05-13 01:11:07 +02:00
paved_slab.json Stairs, Slabs, Walls, Repeat 2019-09-05 22:23:58 +02:00
piston_extension_pole.json Get registrated 2020-05-21 00:15:02 +02:00
portable_storage_interface.json Mounted Storage and Contraption Stalling 2020-02-12 01:36:18 +01:00
refined_radiance_block.json brass/andesite cog retexture + others 2020-08-04 12:00:52 -05:00
schematic_table.json A less messy mess Part I 2020-01-20 13:41:41 +01:00
seat.json SeatState 2020-07-11 01:28:37 +02:00
shaft.json A less messy mess Part I 2020-01-20 13:41:41 +01:00
shaft_half.json Refactored animated block partials 2020-02-04 14:48:21 +01:00
stockpile_switch.json Get registrated, Part II 2020-05-22 20:02:07 +02:00
turntable.json Turn it up 2020-01-24 14:21:50 +01:00
water_wheel.json Turn it up 2020-01-24 14:21:50 +01:00