- Right-clicking a conductor now resumes a previously paused schedule
- Players now wear a conductor head when sitting in driver seats
- Players no longer wear a conductor head while wearing another helmet
- Manual train controls no longer allow approaching an occupied station
- Limited train status message dump to 3 latest entries
- Trains now communicate when no station on a graph actually matches the targeted filter
- Fixed Destination instruction not escaping regex characters
- Schedule autocomplete now defaults to listing all destinations when graph filtering leaves an otherwise empty set
- Created "Data-source" behaviour for Boilers, Seats, Kinetic Gauges, Enchantment Table and Fluid-Content Observers
- Minor refactors at some locations
- Changed redstone output type of signals to comparator
- Redstone powered signals are now forced to red
- Redstone powered signals now add a substantial path cost
- Increased render distance of signal nixie details
- Fixed ploughs destroying track marker blocks
- Fixed track markers spawning block particle effects
- Safety check for PSI updates
- Fixed sliding doors not having correct rendering boundaries
- Fixed PSI overstretching their model
- Fixed bogeys being ignored by schematicannons
- Fixed downward facing deployers not aiming correctly on trains
- Fixed incorrect relative motion provided to mounted actors by trains
- Basins now attempt to dump existing output content into newly created auto-outputs
- Builders Tea can now be scooped out of basins manually
- Basins now prioritise output tanks when filling held items
- Fixed pulley contraptions not receiving light updates below y=0
- Fixed NPE with train sounds
- Belts launched by a schematicannon can no longer replace bedrock
- Placards now unpower one game tick sooner
- Fixed station display link not assigning default values correctly
- Fixed Train doors able to be destroyed in a single punch
- Changed whistle sound when used with trains
- Trains now have sound effects
- Bogeys now emit particle effects
- Steam engines now have sound effects
- Trains deal twice their damage to hostile mobs
- Contraptions now send block changes to other clients when doors are opened
- Train doors now have special behaviour on contraptions
- Train doors no longer require solid ground
- fixed a minor oversight in ProperWaterloggedBlock
- changed tracks material color to metal
- added the ability to add station markers to maps, working similar to banners
- Fixed incomplete track graph network packets at >1000 nodes
- Fixed Metal girders having incorrect block properties
- Trains getting abnormally high coupling stress now derail and stop moving
- Fixed trains not always migrating graphs properly when track connections are severed
- Motion applied to players run over by trains now caps at 60m/s
- Fixed train relocation able to cause run-over damage
- Fixed minecart contraption relocation sending nearby players to the moon
- Fixed non-player entities not getting run over by trains
- Trains can now reverse out of being stalled
- Fixed train relocation not deactivating mounted actors
- Fixed drill trains occasionally getting stuck breaking blocks at very low speeds
- Train Tracks, Station, Controls and Seats are now waterproof and waterloggable
- Fixed Schedules not stacking with newly crafted ones after entries are cleared
- Fluid tanks are now a little bit better at keeping campfire particles below them
* Fixed the mouse button problems with the linked controller. (Closes#2807)
* Now with added elegance
* I'm here I might as well tie up some loose ends
* Compacting out some spaces
* This was probably the way it was for a good reason
- Mounted Drills no longer attach track blocks
- Train stalling for actors no longer requires it to re-accelerate
- Fixed serverside portal cutoff not properly cleared when exiting a portal slowly
- Fixed mounted fluid tanks not showing contents when on a train
- Non-colliding blocks can no longer be used for auto track pavement
- Changed redstone link range to 256, display link range to 64
- Fixed bearings rotating their top even on contraptions that do not support stabilisation
- Train station crafting recipe now yields 2 blocks instead of 1
- Fixed some train related blocks not being breakable or wrenchable
- Lowered top speed of manually controlled trains by 25%
- Manually controlled trains now slow down to turn top speed when traversing a bezier
- Increased character limit on train names
- Fixed inconsistent deployer facing for oriented contraptions
- Implemented Cargo Threshold and Idle Cargo schedule conditions
- Added a redstone link schedule condition
- Refactored wait conditions to share a ui builder with display links
- Added jei item assignment support to schedule conditions
- Fixed de-sync with ghost item slots in the schedule UI
- Fixed constant updates firing from stockpile switches
- Fixed navigation not factoring in red signals leading to occupied blocks
- Fixed navigation not updating when waiting for a red chain signal near a station
- Fixed train carriages with passengers not spawning in correctly
- Railway Casing -> Train Casing
- Fixed disconnecting fluid tank blocks not updating their window placement correctly
- Fixed Fluid tanks not updating fluid capabilities correctly
- Fixed Fluid pipes not reacting to modified fluid tanks in specific arrangements
- Fixed Fluid pipes not reacting to boiler shape updates
- Fixed Shafts turning into powered shafts when not directly targeted by any engine
- Fixed lighting and uv incosistency on windowed fluid pipes
- Fixed z-fighting on fluid pipe models
- Fixed placement of rims and nozzles on different pipe types
- Adjusted some of the copper related models to work better with modular rim attachments
- Hose pulley now scans adjacent fluid columns for sources
- Andesite alloy is now tagged #forge:ingots
- Re-adjusted a bunch of recipes for survival mode
- Fixed diagonal slope tracks allowing a very glitchy bezier connection
- Adjusted power output of passive steam engines
- Nether Gold crushing now gives 18 nuggets instead of 7.5. This is between overworld gold ore and deepslate gold ore and actually above what furnace smelting would give.
- closes #3019
- Funnels will no longer deadlock their extraction size if the first item of an inventory has a low max stack size but can't even be extracted because of filtering.
- fixes#2919
- Fixed Stations and Signals not properly rotating with schematics
- Fixed Bezier tracks not costing anything to the cannon
- Fixed Bezier tracks not being placed by the cannon
- Streamlined a number of existing recipe paths
- Added recipes for new items and blocks
- Creating bogeys in survival mode now requires railway casing
- Carriages now track stored items and fluids
- Fixed a number of inconsistencies in the new PSI behaviour
- Fixed several issues with portal cut-off
- PSIs can no longer interface with carriage contraptions that are located in two dimensions
- Trackgraphs and trains now properly differentiate between the dimensions they are located in
- Tracks placed next to a nether portal will attempt to connect to a second track piece in the nether
- Trains now play a sound sequence based on attached blocks when arriving at a station after travelling for some time
- Trains can now be stalled by movement behaviours of mounted blocks
- Fixed bells constantly activating when mounted to a train
- Max train length is now configurable and substantially longer
- Increased distance at which activated whistles can be heard
- Super glue captured by schematics or /c clone now gets cropped to the selected boundary
- Controlled contraptions now save their anchor block position in relative coords
- Refactor the ArmInteractionPoint system
- ArmInteractionPointTypes are now used instead of instances
- Point types can now have a priority that determines the primary type
at a certain location
- Points can now deserialize arbitrary data
- Points' cached BlockState is now updated before it is used
- Points now store the Level directly
- Default types are now registered in AllArmInteractionPointTypes
- Add point types for campfires and respawn anchors
- Fix arms being able to insert any item into composters
- Delete unused flag models and texture
- Make all BehaviorType instances final
- Encased fans can no longer provide stress capacity as generators
- Removed the Furnace Engine
- Added Kryppers' new Flywheel model
- Fixed inverted stress capacity labels in tooltips
- Removed speed requirements from tooltips
- Fixed belt tickers not properly being removed when parts of the belts are destroyed
- Track curves now drop items when destroyed
- Track curves now spawn particles when destroyed
- Fixed tamed wolves not accepting schedules when driving a train
- Fixed girders not being consumed when placing girder tracks
- Fixed break-overlay of connected tracks not going away after track is destroyed
- Fixed train relocation not working
- Train relocation now works on selected beziers
- Fixed trains with driverless backward controls not navigating forward
- Fixed trains not properly stopped by dead ends
- Fixed tracks not separating edges meeting at 45 degrees
- Assembly screen now shows whether any drives are present on the train
- Track placement and pavement now checks and consumes inventory items in survival mode
- Fixed signaling edge groups not being cleared when a signal migrates graphs
- Graphs without any signals now create a fallback group
- Fixed removed signals not clearing signal groups of previously affected edges
- Signaling sections now use a fixed set of colours
- Colours of signaling sections now try to be distinct from neighbouring sections
- Colours of signal sections now get synched to the client
- Edges now keep track of any intersections with bezier turns that cannot be part of the underlying graph structure
- Signaling sections now consider all other intersecting sections when checking whether they are occupied
- Holding a signal block now highlights nearby tracks with their respective section colour
- Graphs now keep track of a boundary box
- Track edges now carry back-references to their nodes
- Graph debugger moved from keypress to f3
- Signals and Stations can no longer share a location on a track
- Multiple stations can no longer share a location on a track
- Signals and Stations now render their overlay during the track selection process
- Train Navigation can no longer approach or pass through stations currently in assembly mode
- Station screen now displays whether trains can be (dis-)assembled
- Bezier turn segments between tracks can now be hovered as if they were blocks
- Bezier turns can now be destroyed by breaking any of their segments
- Signals and Stations can now be pointed to anywhere on a track, not only to physical blocks
- Added a basic collision shape for straight tracks
- Schedules now display stops in their tooltip
- Schedules can now be given a name through one of their instructions
- Fixed Display boards rendering cogs on the wrong axis
- Cats and Wolves will now sit down properly on seats
- Adjusted some vertical offsets for seated passengers
- Driver entities will now wear a hat when their train is given a schedule
- Updated bogey assets
- Schedules are now consumed and returned when added/removed from Trains
- Added a schedule retrieval option to the Stations' UI
- Schedule items now keep track of their 'progress', which can be modified to skip stations
- Fixed crash when displaying station summary on a tiny display
- Fixed display boards breaking each other when blocks are added after providing rotational force
- Added placement assist for Display Boards
- Stations can now be given a Schedule via funnels/hoppers, which will apply a copy to its train
- Added the Display Board
- Added the Data Gatherer
- Nixie Tubes no longer animate text from "dynamic" vanilla text components
- Trains now keep travel time statistics for prediction purposes
- Created "Data-target" behaviour for Signs, Display Boards, Lecterns and Nixie Tubes
- Created "Data-source" behaviour for Train Stations, Clocks, Nixie Tubes, Content Observers, Stockpile Switches, Respawn Anchors, Depots, Belts, Belt Tunnels and Command Blocks
- Fix ColorAttribute not showing color name
- Refactor some code related to SpeedLevel
- Improve goggles predicate API
- Make ToolboxInventory use Item#canFitInsideContainerItems
- Prevent toolbox items from being placed inside of shulker boxes
- Fix shadow steel always converting below y=0 instead of the min build
height
- Conductor entities now rotate to face their carts' motion
- Fixed Contraption passengers not visible to clients whenever the seat position offsets them out of ticking chunks just after loading in
- Fix glowing shader for 1.18.2
- Optimize and compress tag code
- Convert MovementBehaviour to interface
- Remove manual refmap remapping as it is no longer necessary
- Update Gradle
- Fixed Create's JEI plugin not reloading recipes properly
- Reverted an AT that seems to cause issues with compiling in IDEs
- Fixed Contraption disassembly causing inventory contents to be rolled back
- Fixed Crushing Wheels not working correctly
- Items idling on top of Crushing Wheels are no longer prevented from being picked up by players
- Fixed automated compatibility picking up custom recipes from the mod "occultism"
- Fixed Trains ignoring their signal when nearby graph nodes are changed
- Fixed Trains not being notified of new signal blocks if they share an edge with the added/removed signal
- Fixed Navigation reserving chained signal blocks before verifying that it can be fully traversed
- Fixed Track placement requiring much shallower slopes for diagonal tracks
- Fixed long range navigation choosing detours near the beginning
- Temporarily patched and highlighted a problem with track traversal and long distances
- Added a new signal mode for easier junction & platform management
- Fixed crash during trains' tick after a collision
- Fixed Trains trying to avoid their own carriages in navigation
- Fixed Trains trying to avoid their own station in navigation
- Fixed Trains triggering signals behind their targeted station
- Fixed Trains reversing mid-travel when path cost behind them is lower
- Wait time at signals now affects the tick order of Trains
- Trains no longer change destination when they are close to arriving at their initial choice
- Fixed crashed trains no longer keeping signal blocks occupied
- Fixed crash when a trains' path update is unable to find the original destination
- Improved precision of trains arriving at signals/stations
- Optimize CreateJEI recipe list construction
- Optimize PotionMixingRecipes
- Add basic modded brewing recipe compatibility
- Fix dyed sails not being placed when printing schematics
- Fix sideways belts not being placed correctly when printing schematics
- Fix MechanicalCraftingCategory not applying the model matrix
- Add Upgrade Aquatic compatible fertilizer recipes; Resolve#658
- Replace almost all reflection with access transformers or accessor
mixins
- Remove duplicate sails tag
- Improve metal compatibility
- Switch to a linked set in StringSerializableTrigger to prevent
inconsistent generation of aesthetics.json
- Other minor changes
- Train navigation now tries to pick destinations and directions avoiding other trains and stations on the way
- Trains now slow to a secondary top speed when approaching a turn
- Attempts to fix trains not always showing up when entering a clients tracking distance
- Substantial increase to carriage contraption's client tracking range
- Fixed Carriage Contraptions starting to render before fully aligned to their position/angle
- Fixed trains remaining stuck to far away signals after being controlled manually for a bit
- Fixed crash when placing tracks into a replaceable block
- Fixed a handful of dist issues for dedicated servers
- Fixed controls allowing control even when a train is not fully assembled yet
- Controls now disengage on relog/esc
- Trains now get saved to disk
- Trains now sync raw position data to clients while in the derailed state
- Trains can no longer be relocated into another train
- Train relocation now shows indicators
- Fixed single-bogey carriages not sending enough position context when derailed
- Manual Train Controls now use network packets
- Carriages now properly re-introduce their passengers when entering ticking chunks
- Fixed approach station prompt no longer appearing
- Fixed players shunted to 0,0 when seated while train assembles
- Fixed relocator not using client-side graph when testing validity
- Fixed entity data not synched properly from dedicated servers
- Fixed controls storing state in behaviour class
- Fixed carriages not serialising conductor seat data correctly
- Fixed client-side trains not animating their wheels properly
- Client-side stations now receive information about a trains' orientation and whether it can be disassembled
- Server-safe train relocation
- Fixed client trains not catching up with received location when graph id changes
- Coupling renderer now entirely client-side
- Fixed Coupling render artefacts whenever a carriage drives out of the view frustum
- Fixed train information interpolated too quickly when a train has multiple carriage entities
- Movement of client-side trains is now controlled via network packets (Manual controls and Relocation not yet adjusted for sidedness)
- Modified train settings now get broadcasted to other players
- Cleaned up redundant delegation between classes involved in controlling the carriages
- Add new config and tags for better control over infinite draining
behaviour
- Pipes spilling water will now extinguish entities and fires; pipes
spilling lava will now set entities on fire
- Fix some bugs and inconvenient behavior with the config menus
- Fix fluids destroying crushing wheel controllers
- Fix crushing wheel controller using output direction instead of input
direction at times
- Rename blaze burner fuel tags
- Improve GhostBlockRenderer
- Organize imports
- Update Forge
- Fixed edge points getting wiped near where two graphs just merged
- Fixed edge points not migrating to modified edges properly
- Graph edge points are now synched by netcode (signals, stations)
- Fixed incorrect stopping position when approaching station manually while the train is still moving backwards
- Fixed single-group edges not being deserialised correctly
- Edge data is now synched by netcode
- Signal edge groups are now synched by netcode
- Signal block indication can now get necessary information client-side