Commit graph

2692 commits

Author SHA1 Message Date
simibubi
71e18eb505 Politeness Intensifies
- 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
2022-03-11 23:37:41 +01:00
simibubi
7ba4af1bea Bulk Wrenching
- Tracks can now be removed in bulk using the wrench
- Track placement now automatically picks larger radii when connecting at non-equal y levels
2022-03-10 02:04:44 +01:00
simibubi
9e0f35e4d7 Reincartnated
- 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
2022-03-09 21:33:28 +01:00
simibubi
ed6712fd0b TCP Handbrake
- 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
2022-03-09 02:21:20 +01:00
simibubi
fa47939428 Catching up
- 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
2022-03-08 18:03:57 +01:00
simibubi
9629cb84eb Look ma, both threads!
- 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
2022-03-08 03:51:03 +01:00
simibubi
3c64ada850 The Client is always right
- 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
2022-03-04 18:30:18 +01:00
simibubi
3362e6a05e Signal Station
- Refactored Stations and Signals into a more unified and expandable edge point abstraction
- Trains no longer depart a station when a red signal is close by
- Fixed inconsistent pathfinding when stations, signals and trains are sharing a graph edge
2022-02-28 22:52:14 +01:00
simibubi
cf308cdc7f Steamy
- Fluid tanks become boilers when engines are attached
- Added the steam engine
- Some tweaks and fixes to girder connectivity
2022-02-22 19:41:30 +01:00
PepperCode1
fcb5267ae0 Merge branch 'mc1.18/dev' into mc1.18/global-railways
Conflicts:
	gradle.properties
	src/main/java/com/simibubi/create/foundation/render/SuperByteBuffer.java
2022-02-21 10:51:42 -08:00
PepperCode1
0cf0d3930e Shuffling the shade
- Update Flywheel and add support for unshaded quads
- Fix models marking shafts and other parts as unshaded
- Refactor SchematicRenderer buffer building
- Improve block entity render bounding box caching
- Fix #2785
2022-02-19 21:42:40 -08:00
simibubi
34bc21658a "|" means go
- Added Signals
- Nixie tubes no longer have a base plate
- Nixie tubes can now mount to walls
- Nixie tubes display signal info when mounted to a signal box
- Train speeds are now configurable
- More Jank patrol
- Track debug now on 'H' & 'J'
2022-02-16 03:14:31 +01:00
Jozufozu
984cde4d43 Move diffuse declaration to vertex compiler 2022-02-15 18:02:25 -08:00
PepperCode1
ed4a371fa0 Shootable glow berries
- Add glow berries as a potato cannon projectile type; Closes #2406
2022-02-13 14:41:09 -08:00
PepperCode1
160e823282 JEI and glowing fixes
- Fix sequenced assembly scene in newer JEI versions; Fix #2779
- Fix inconsistent JEI fan scenes; Fix #2748
- Fix glowing RenderTypes not respecting lightmap values
2022-02-13 14:04:52 -08:00
PepperCode1
3aa0644426 Diffuse fixes II
- Add ForcedDiffuseState to push/pop forced diffuse calculators
- Transform the SBB instead of the global PoseStack when applying ponder
transforms
- Tweak used shaders in RenderTypes
- Rename LerpedFloat.Interpolater to Interpolator
- Update Flywheel
2022-02-12 21:15:41 -08:00
PepperCode1
22af1604b4
Merge pull request #2770 from AeiouEnigma/patch-1
Update bug_report.yml
2022-02-11 09:42:20 -08:00
simibubi
033e7e1a0d Proper Propa
- Improvements to graph building
- Fixed a number of issues caused by junctions and inconsistent track propagation
- Trains no longer disassemble with reversed carriage spacing
- Trains can no longer jump to perpendicular tracks on an intersection
2022-02-11 00:20:58 +01:00
Aeiou
0d5695236e
Update bug_report.yml
Add "0.4.0d" to Mod Version options list
2022-02-09 16:53:06 -05:00
simibubi
2ca099ce6b Rise of the Jank II
- Girders can now connect to brackets vertically
- Fixed girders not updating connections when built with placement assist
- Tracks now actively update girder shapes placed beneath the ties
- Fixed bezier girder texture inconsistencies to the block models
- Fixed flywheel rendered tracks creating headless instances
- Fixed track not removing its tileentity properly when changing to basic state
- Fixed track rendering not using the correct normals for diffuse
- Fixed tracks not rendering in schematic previews
- Tracks now transform correctly in schematics
- Fixed tracks not validating for target track after placement via schematic
- Tracks can now merge TE data when placed into each other via schematic
- Fixed junctions not working correctly with graph building
2022-02-09 21:13:33 +01:00
PepperCode1
99e94f7c6e Update Flywheel + diffuse fixes
- Fix ponder diffuse when using shaders
- Partially fix incorrect diffuse formula being used in the nether
- Invalidate schematic renderers at the appropriate time
2022-02-08 20:58:13 -08:00
simibubi
2b750c943a Down the steel-reinforced rabbit hole
- Added track junctions
- Girder block pillars now connect textures
- Girders now render a panel towards connected solid blocks and chutes
- Shafts can now be encased with girders
- Added placement assist for girders
2022-02-09 02:05:48 +01:00
simibubi
26d6a7b3e4 Stacks of Cache
- Instancing support for bezier girders
- Transformation matrices for bezier segments are only calculated once
2022-02-08 18:18:16 +01:00
simibubi
051e7ffc1f Mipped Sleepers
- Distant tracks are now a lot easier on the eyes
2022-02-08 04:34:22 +01:00
simibubi
380104a850 Girdert of here!
- New Metal Girder block
- Experimental Girder renderer for track curves
2022-02-08 01:49:35 +01:00
simibubi
0cd56e67f2 Giga Shiny
- New track texture by Kryppers
2022-02-07 04:52:50 +01:00
simibubi
f64c355816 Back & Forth
- Reverse steering is no longer inverted
- Fixed previous passengers not being removed from seat when player uses it
- Trains with two mounted controls/conductors can now pathfind backwards out of a station
- Fixed auto-approach not working properly while reversing or controlling a dual powered train the opposite direction
- Fixed icon display order and disassembly location of reversed trains in a station
- Fixed inaccurate train length()
- Blaze burners can now drive a train
- Non player train drivers are now required to sit in front of a controls block
- Schedule now interrupts when no conductors are found
- Fixed reversing trains not iterating carriages in the correct direction
2022-02-07 01:54:20 +01:00
PepperCode1
3c71e8041b Remove unnecessary code
- Remove block vertex color code
- Remove experimentalRendering config
- Move as much Item.Properties configuration to AllItems as possible
2022-02-06 12:22:43 -08:00
Jozufozu
962975a09d Beziterating
- Instanced tracks
 - Cleaner bezier connection iteration
2022-02-06 01:07:17 -08:00
Jozufozu
87bdd8d586 Merge branch 'mc1.18/dev' into mc1.18/global-railways 2022-02-05 20:05:29 -08:00
simibubi
18a84006ca Instanced Bonus
- fixed PSI actor instance not updated with recent changes
2022-02-06 04:27:05 +01:00
simibubi
a6e86520f5 Rise of the Jank
- address some bezier track z fighting
- portable storage interfaces now stay connected until a contraption departs
- seats can now collect entities when collided with on a contraption
- clicking on seats now tries to mount any leashed mobs first
- fixed seated entities not staying on seats on disassembly. this probably also fixed issues with sub-contraptions (oops)
- fixed portable storage interface not working on train contraptions
2022-02-06 04:17:18 +01:00
Jozufozu
9c42988135 Portable clipping interface
- Fix PSI z-fighting
2022-02-05 12:43:28 -08:00
PepperCode1
66b6304fd3 Smoothly lit tracks
- Fix diffuse lighting on tracks
- Minor tweaks to schedule and station screens
2022-02-04 18:41:30 -08:00
simibubi
0a931a77ef Manual Steering
- Trains can now travel backwards through the graph
- Controls are now a requirement for assembly
- Double-endedness now depends on two opposite controls blocks anywhere on the train
- Players can now manually control trains via a mounted controls block
2022-02-05 02:06:31 +01:00
simibubi
478d891a04 Cut and Paste
- Trains no longer disappear when a new train is created
- Trains now crash into other trains
- Fixed navigation complaining when schedule starts at current station
- Fixed contraption interaction not iterating all potential colliders
- Hovering tooltip for derailed trains
- Trains can now be relocated using a wrench
2022-02-04 05:15:53 +01:00
PepperCode1
00555ff572 Bump Flywheel version dependency 2022-02-02 21:45:47 -08:00
PepperCode1
d71b10cf72 Update to Flywheel 0.6.1
- Make SchematicWorld use plains instead of forest biome
2022-02-02 21:43:23 -08:00
simibubi
c3e1e9df3f Graph hopping, Part II
- added "/create dumpRailways" command
- trains now react to changes of the graph beneath them
- trains now notify owner of unexpected issues
- filtered navigation wildcard works now
- navigation now smarter I guess
- navigation cancelled when track path gets disconnected
- stations and trains no longer disassociate when graph is edited
- schedule no longer skips entry when navigation gets interrupted
- trains can now be in a "de-railed" state
2022-02-03 02:51:14 +01:00
simibubi
c6278dbd24 Graph hopping, Part I
- Cannot send train off while still in assembly mode
- Missing shafts in bogey render
- Moving to Lang keys
- Fix diagonal bends using weird constraints
- Cannot assemble tracks and stations on contraptions
- Track placement now helpful with 45° slope tracks
- Stations on Diagonal tracks can now be navigated to
- Stations no longer crash when target track missing
- Reduced Trackpropagator network traffic
- Stations now migrate to newly created trackgraphs/edges when network changes
- Stations now distribute properly to trackgraph segments that got split apart
- Client thread no longer creates stations
2022-02-02 01:21:28 +01:00
simibubi
576d00d3a0 Choowo what's this?
- It trains
2022-02-01 01:14:21 +01:00
simibubi
2a4cfef7a8 Cannot empty this
- Fixed crash when water cauldrons are loaded as part of a schematic
2022-01-25 21:33:40 +01:00
simibubi
30a026ab0c Patch D
- Safety check for schematicannon entities
- Some tagging
2022-01-25 18:58:37 +01:00
Jozufozu
746d9867db Client only flywheel
- Mark off everything using PartialModel or ContraptionLighter as client-only
 - Likely needs more testing
2022-01-24 13:41:34 -08:00
simibubi
3a8a0fa9e1
Update mods.toml 2022-01-24 17:03:06 +01:00
simibubi
65e6c24c32 Maintenance Day
- Bump forge
- Mechanical Harvester no longer crashes the game on newer forge versions
- Fixed Cocoa Beans being harvested too early
- Fixed incompatibility with Abnormals' custom tree types
- Fixed incompatibility with Serene Seasons
- Fixed incompatibility with Terralith
- Added a couple of Raw Ore compatibility recipes
2022-01-24 16:40:30 +01:00
Jozufozu
8f9be09fe1
Merge pull request #2662 from The-Vowels/mc1.18/dev
Update bug_report.yml
2022-01-20 14:56:21 -08:00
Aeiou
cbf889c762
Update bug_report.yml
Add 0.4.0c to version options list
2022-01-20 17:51:37 -05:00
PepperCode1
b59092ec77
Merge pull request #2651 from FortressNebula/mc1.18/dev
Allow CopperBlockSet to use different root directories
2022-01-19 11:33:51 -08:00
FortressNebula
91775aff41 Allow copper block set to use different root directories
CopperBlockSet has many useful functionalities that addons could use for their own metals that also oxidize. It'd be nicer and more intuitive for anyone going through our github, however, if they could be in their own separate directory.
2022-01-19 19:14:34 +00:00