- Fluids in JEI now display the exact amount required
- Fixed short background of custom compacting JEI
- Fixed localization of sawing recipe category
- Fixed blocks waterlogged by a pump not scheduling a fluid update
- Fixed concurrency / race condition issues with contraptions loading in during a collision cycle
- Reworked implementation model of minecart tracking and couplings
- Coupling items now get consumed when used in survival mode
- Added some player feedback when couplings cannot be created
- Fixed couplings disappearing on the client due to sync issues
- Wrenches can now remove minecarts in one hit
- Wrenches can now be used to remove couplings from minecarts
- Cart assemblers now attach themselves to the block above, no longer requiring active "sticky-ness" of the contraption towards it
- Minecarts can no longer be moved while a contraption is stalling them
- 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)
- Visual rework of all active UIs
- Fixed large scale renderers such as belts, cannons, pulleys to disappear when partially out of frame
- Schematic and Quill now has the ability to convert a selection to a readied schematic instantly
- Moved option input of cart assemblers to side faces
- Fixed crash when attempting to smelt items on belts/depots
- Stockpile switches can now be inverted
- Fixed stockpile switches not dynamically updating gui indicators frequently enough
- Tanks can no longer be directly interacted with in survival mode
- Sequenced gearshifts now emit a comparator signal based on their current instruction index
- The Piston instruction for sequencers can now accept distances up to 128m
- Fixed some rendering inconsistencies with symmetry mirrors
- Reworked symmetry mirror models to match the tool better
- Attribute filters can now add inverted conditions to the list
- Added the attribute "can be crushed"
- Made the schematicannon interface a little less confusing
- Fixed launched items of the schematicannon rendering warped
- Added a straight pipe variant to cut flows using rotational input
- Added a slower more precise variant of the hand crank
- Basins now render their contained fluids
- Belt observer -> Content observer
- Content observers can now monitor any inventory and funnel transactions
- Stockpile switches no longer only access slots exposed to a specific side of an inventory
- Stockpile switches can now take a filter
- Brass tunnels once again have the ability to synchronize inputs among a chain
- Mechanical arms now have a range limitation
- Mechanical arms now wait with initialization until their area is fully loaded
- Chutes no longer ignore the direction of an attached fans air flow
- Chutes now render particles indicating their movement direction
- Chutes can now pull items up from belts or off the ground
- Fixed item model of shadow casing
- Fixed invisible quads under funnels when no casing is applied to the belt
- Belt mounted funnels can now be perpendicular to the belt theyre on
- Funnels can now transpose items like a hopper when facing down
- Item distribution across belts using brass tunnels can now be configured with a wrench
- Added new icons for the distribution options of arms and tunnels
- Removed obsolete code
- Fixed some weirdness with creative crates and funnels
- Reworked tileentity behaviours for inventory interaction
- Deployers no longer actively pull items from other inventories
- Some more work on basins
- Added a new inventory type wrapping an itemstack handler that automatically syncs the tile entity. It also implements IInventory for recipe shenanigans
- Held items of a deployer can now only be extracted by other blocks if it does not match the filter
- Fixed excess items not able to be extracted from deployers
- Removed some things
- Funnels no longer actively transpose items between chutes and inventories unless they are vertical
- Chutes can now active pull and insert items from/to inventories above/below them
- 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
- Expanded the RecipeProvider infrastructure
- Migrated mechanical crafting recipes to generated
- Migrated cooking recipes to generated
- Fixed missing particles on vertical motor model
- Adjusted a few recipes
- 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
- Reduced ambient dripping particles of fluid pipes
- Fixed reversed uvs on encased fans
- Fixed tile entities not being added to contraptions client-side
- 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
- Implemented reworked chute models by Kryppers
- Implemented new basin model by Kryppers
- Chutes now have proper selection bounds
- Some minor texture & model touch-ups
- Fixed symmetry wand position in its GUI
- 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
- Any living entity can now use seats
- Fix client sync issues with seats
- Fixed contraptions double-reversing roll and pitch values when communicating to the collision engine
- Seats now transfer their passengers to a contraption when moved and back when disassembled
- Attempted further refinements to the collision response of horizontally rotated contraptions
- Set up a hook to inject custom interaction between players and contraption mounted blocks on right-click
- Seats can now by mounted by players while assembled to a contraption
- Minor refactors to the contraption class
- added empty blaze heater
- catching blazes (rclick blazes or a blaze spawner)
- only blaze heaters with blaze can heat basins or power fans
- updated item tooltip to fit the discussed fueling system
- Heated Mixing: Mixing can now require the player to heat the basin (with either the usual fan heaters for a heat level of 1 or the blaze heater for higher heat levels)
- Made mixing brass ingots from copper and zinc ingots require heating (as example)
- added the blaze heater to valid fan heaters
- added TE renderer for fan heater to display a blaze head always facing the player
- added fueling of blaze heater with furnace fuel (onUse event, not with inventory to challenge the automation. To be discussed.)
todo:
- add heat requirement display to JEI
- better item model for blaze heater
- new special fuel for higher heat levels
- fan stoking
- Arms can no longer insert into powered brass funnels
- Slight ArmInteractionPoint refactor
- Arms can now interact with Millstones, Basins, Jukeboxes, Crushing Wheels and the Mechanical Saw
- Fixed crash when logging into a world with a running mixer
- Arms now start to dance when one of their in or outputs is a running jukebox
- Arms can now be mounted on the ceiling
- Arms now always prefer the interaction points that were selected first
- Fixed belt funnels not updating their blockstate properly when transitioning from other funnel types
- Vertical funnels next to the end of a belt will now stall the belt when unable to collect incoming items
- Minor model & texture touch ups
- Arm no longer cancels player interaction when its empty handed
- Fixed chutes not vertically interacting with andesite funnels
- Brass tunnels now visually connect for upcoming splitter functionality
- Added a tileentity behaviour that allows separate filtering for each face
- Added filtering to brass tunnels
- Removed synchronization behaviour of belt tunnels
- Belt tunnels can now be placed on non-reinforced belt segments, and will apply the missing casing automatically
- Bunch more renames
- Small tweaks to the andesite tunnel texture
- Mechanical arms can no longer take from belts covered by a tunnel
- Belt tunnels can now create a window when directly next to a funnel
- Fixed tunnel flaps not being triggered when inserting into a covered belt
- Removed pre-0.3 funnel blocks
- Added andesite variant to reality funnels, without filtering or redstone control
- Added andesite variant to belt tunnels
- Reality Funnel -> Brass Funnel
- Sideways and Vertical belts can now be reinforced with casing
- Belts can now be reinforced with andesite casing
- Reinforcing belts no longer consumes the casing block
- Reworked reinforced belt models
- Fixed flipped diagonal belt casing once again
- Fixed belts breaking instantly when punched in survival mode
- Chutes can now transfer items
- Chutes now propagate air flow from attached fans
- Fixed a few issues with mechanical arms
- Removed unused chute models
- Implemented appropriate interactions between funnels and chutes
- The arm blockitem can now be used to select inputs & outputs
- Arms now transfer items between inputs and outputs
- Arm support for Belts, Depots and Funnels
- Some safety checks in net code
- Minor refactor to NBTHelper
-added two config entries to offset the goggle overlay on x/y axis
-added a command (/create overlay [reset]) to allow editing the overlay position ingame
- Belt funnels now render with animated flaps
- Extracting funnels can now be given a stack size
- Filtering now supports setting the extraction count for empty filter slots (wildcard)
- Added a funnel block variant that interacts with chutes horizontally (same item)
- Belt and Chute Funnels now have a push/pull property
- Removed Chute Ports
- Tidied up R-Funnel texture sheet
- R-Funnels can now be powered by redstone
- Non-mounted R-Funnels are now full hopper-like blocks rather than fixtures
- Added blockstates, models and TE rendering for mechanical pumps
- Removed unused pipe textures
- Removed hasStaticPart in IWrenchable as it became obsolete in 1.15
- Bumped version
- Patched some localization gaps from the registry wipe
- TE's with an ItemStackHandler capability are now viable for mounted storage
- Fixed pulley placing down ropes when destroyed while moving
- Fixed inconsistency with glue removal and placement
- Fixed encoding of generated degree symbols in lang
- Fixed pistons along x moving at inconsistent speeds, overshooting their bounds
- Fixed belts along x not moving entities
- Fixed diagonal belts along z teleporting entities miles away
- Fixed tree fertilizer not working
- Fixed extractors looking for belt inventories too eagerly, adresses #327
- Slightly refactored Extendo Grip handlers
- Fixed missing particle texture of Extendo Grips
- Fixed crash when assembled minecarts pick up the block below their assembler
- Ploughs no longer break blocks if farmland is below them, adresses #345
- Fixed Schematic tools placing lit furnaces, adresses #342
- Super glue can no longer be removed while inbetween two blocks, adresses #341
- Added a safety check in RotationPropagation, addresses #340
- Fixed gearbox pretending to be a deployer
- Fixed reversed rendering in the furnace engine TER
- Motors, fans, flywheels and handcranks now reverse their rotation when facing in negative axisdirections. Addresses #236
- Cart assemblers no longer auto-attach to blocks on their sides (top only)
- Removed temporary lang partial with entity names
- Fixed and Refactored the item renderers of the Wrench, Blockzappers, Worldshapers, Symmetry Wand and Deforester
- Tweaked blockzapper beam rendering to look less clunky
- Fixed selection of zapper tools not showing after they had been dual-wielded
- Added back the silk touch requirement to suitable loot tables
- Added generated recipes and tags for glass and window blocks
- Fixed blockzappers selecting new blocks upon firing
- Removed duplicate recipes and lang entries
- Fixed some outdated translation keys in ui screens
- Setup automated recipes for stone palette blocks and their stairs/slabs/etc
- Fixed datagen putting air blocks as drops for attached logistical blocks
- Fixed recipes and lang entries using outdated registry names
- Fixed kinetic blocks appearing twice in the main creative tab
- All Items are now using registrate
- Blockzapper now renders an outline around its affected area
- Ported rainbow debug ™️
- Reworked the custom item model/renderer system
- Schematics now preview their structure again
- SuperByteBuffers now support being rendered into non-BufferBuilders
- Fixed all TERs that had their transformations backwards
- Fixed contraptions not rendering tileentities when not near world origin
- Fixed Schematic table crashing on upload
- Made more kinetic blocks non-opaque
- Added support for Block & ItemColors in CreateRegistrate
- Updated forge and removed obsolete warning suppressions
- Fixed mossy & overgrown block items not having their foliage layer coloured
- Added builder transform for registering stress config values for kinetic blocks
- Created a blockstate generator for belt blocks
- Added belts to registrate
* Minor Chinese Lang File Fix
According to the feedback received from fellow Chinese players, I made some minor fixes and improvements.
* Update zh_cn.json
Co-authored-by: Snownee <1850986885@qq.com>
- Updated outlines rendered by the schematic and quill
- Removed some now auto-generated leftovers from the asset folder
- Fixed Schematic Table screen not rendering the table properly
- All palette variants now have auto-generated stairs, slabs and walls for certain patterns
- Layered variant types have connected textures again
- Centralized all SpriteShifts