Commit Graph

1300 Commits

Author SHA1 Message Date
simibubi
39b51821aa Big Data
- 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
2022-04-05 19:04:04 +02:00
simibubi
9d8803d280 Super cool entities and fun
- 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
2022-03-25 22:40:31 +01:00
simibubi
9db9c3f710 Merge branch 'mc1.18/dev' into mc1.18/global-railways 2022-03-23 19:45:40 +01:00
PepperCode1
b32c83e74d Tagging along
- 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
2022-03-23 01:48:53 -07:00
simibubi
2fa65727d5 Holder Holdups
- Finished work on compilation errors
2022-03-22 00:29:46 +01:00
simibubi
727b0a463e Damage Control
- Updated dependencies to 1.18.2
- Started work on compilation errors
2022-03-21 02:38:03 +01:00
simibubi
a8c368f426 Patch F
- 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"
2022-03-21 00:29:45 +01:00
PepperCode1
2211632f5c Just enough brewing
- 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
2022-03-12 00:04:05 -08:00
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
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
mezz
fcec6566fa
Improve the performance of MechanicalPressTileEntity#canCompress 2022-03-07 17:27:26 -10: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
PepperCode1
fa4a0e7261 Limiting the infinite
- 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
2022-03-05 01:45:39 -08: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
2a3aa5955b
Merge pull request #2745 from FortressNebula/mc1.18/dev
Change the way CopperBlockSet generates block models + condition support for Mech. Crafting
2022-03-03 17:27:38 +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
PepperCode1
6420f54194 Add tags for blaze burner fuel
- `#create:blaze_burner_regular_fuel`: these items are treated like coal
by the blaze burner if they cannot be used as fuel in a furnace
- `#create:blaze_burner_special_fuel`: these items cause the blaze
burner to become superheated
- Fix equipable item attribute
- Fix SandPaperItem overriding both getItemEnchantability and
getEnchantmentValue
2022-02-24 17:32:33 -08: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
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
FortressNebula
219cf455c3 Revert "Revert "Add condition support for mechanical crafting recipes""
This reverts commit 0220b32faf.
2022-02-12 12:31:19 +00:00
FortressNebula
0220b32faf Revert "Add condition support for mechanical crafting recipes"
This reverts commit c23cbbb4be.
2022-02-12 12:28:26 +00:00
FortressNebula
c23cbbb4be Add condition support for mechanical crafting recipes
- Copied over the condition functions from ProcessingRecipeBuilder
- Added recipeConditions variable
- Copied over json section for dealing with conditions from ProcessingRecipeBuilder
2022-02-12 12:27:30 +00: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
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
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
FortressNebula
f86149b66a Change the way CopperBlockSet generates block models
- If the specified name and end texture name are equal, then generate a cube_all model instead. Purely for neatness' sake.
2022-02-03 20:18:27 +00: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
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
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
Jozufozu
d3bbeb5a7a Reorganize and simplify
- Remove AllMaterialSpecs#flwInit
2022-01-17 16:42:24 -08:00
Jozufozu
74a147db30 Remove "states" field from program jsons 2022-01-17 16:42:24 -08:00
Jozufozu
88d8d24663 Separate vertex and fragment shaders and templates 2022-01-17 16:42:24 -08:00
Jozufozu
9f64ae4e9a Almost sane shaders
- No more ShaderContext. Programs are directly retrieved through ProgramCompilers.
 - Templates don't need generics
 - Remove ExtensibleGlProgram
2022-01-17 16:42:24 -08:00
Jozufozu
2856594cc8 Pass RenderLayer into contraption structure context 2022-01-17 16:42:23 -08:00
Jozufozu
0b25335f8e Compile everything on the fly 2022-01-17 16:42:23 -08:00
Jozufozu
2b6348855a Shader sanity
- Keeping up with Flywheel changes
2022-01-17 16:42:23 -08:00
PepperCode1
d0a660c0ae Virtual rendering fixes
- Fix blocks in schematic renders being too dark
- Fix shafts and cogs fired from a schematicannon not rendering
2022-01-11 20:15:33 -08:00
simibubi
04c76bb6f0 The meaning of null
- Fixed Client-side TileEntities ignoring data packets with empty compound tags
- Fixed Stickers not visually updating when powered
- Fixed Cocoa pods colliding with piston/pulley/gantry harvesters
- Fixed Bulk Smoking using Haunting particles
- Unified particle emission locations between depot and belt fan processing
- Updated Haunting recipes
2022-01-09 20:06:04 +01:00
simibubi
cf1eac3edd Fixed javadoc failing the build 2022-01-09 15:54:50 +01:00