6,138 Commits over 1,004 Days - 0.25cph!
Pool Physics Engine:
- Frame rate independent drag
- Stopping distance to stop creeping when applying drag
- Higher threshold to detect 'stopped' physics bodies
Stop groundwatch killing the table as well
- Locally shoot the pool shot as well (prediction and reconcilliation)
- Parent mountables instead
- Get Owner Table Via GetParentEntity() instead
- Only allow joining the table when nothing is in motion
- Allow player to play against themselves
- Temp patch for viewmodel issues
- New PoolCueViewModel setup - strip off rotational changes
- Update viewmodel rotation based on mountable
- New setup for the viewmodel
Ensure mountable is killed (again)
- Swap vine swinging mount pose to standing
- Fix offset y rotation
- Increase drag to a more realistic level
- Fix pooltable mountable not removing itself when dismounting
- Table can track multiple mountables
- Can't mount if you're already mounted
- Don't need to call kill - the table does it
- Setup v_spear anims/avatar
- Fix inside terrain violation when jumpin on mountable
- Viewmodel was set to wrong prefab
- Viewmodel skeleton fix
- Add viewmodel renderers to skinned mesh renderers
Fix pool cue viewmodel not spawning
- Manifest
- Force mount the pool table mountable on use
Remove remaining game logic from pool table
- PoolGameController (all game logic: turns, win conditions etc)
- Cleanup overal
- Shooting logic (not connected yet)
- Wire into PoolTable
- Spawn player mountable when interacting with the table
- Spawn pool cue viewmodel
- Setup basic game detection (cue ball, eight ball etc)
- Add a spline around the table
- Interacting sends request to mount at closest part of the spline (to the player)
- Better world spline inspector
- Methods to find closest point on a spline to a world position
Dont network ball rotation - its just calculated on the client from velocity information
Add drag to the pool ball velocity
Only run physics updates if any of the balls have velocity
- Add walls to the pool physics simulation
- Shared client+server physics tick rate (for now)
- 15 ball triangle rack setup
- Cue ball setup
- Properly map ian physics engine -> world space
- Setup pool table deploy prefab
- Further tweaks/cleanup to .deployed
Pool table linking:
- Client + server run physics
- Server sends snapshots to the client (position, rotation, velocity)
- Client updates running simulation to match the sent server update
- Run it through save/load right now
train_cinematic_improvements -> main
Bunch of commands to control locomotives with console commands
Add train control to the timeline
network_profiler_improvements_3 -> main
- Temp fix the electric furnace skin rendering in twitch drops
- Get the workshop render to spill the beans when something doesn't work
Fix skinnable matching accidentally including null EntityPrefab matches (base barrel and base shelf)
main -> twitchdropsrenderer
Fix an NRE that occurs when because two skinnables were referencing the same entity prefab that had redirects to point at the same prefab
Add pocket support (which deletes the ball on contact)
Ball collision detection (against other bodies that arent walls)
Velocity response when two of those bodies hit (equal and opposite reaction) 🤓
- Add entity name and create/update distinction to Entities inbound profiling
- Add packet profiling to GlobalNetworkHandler
- Improve network profiler coverage for entity packets
When sprinkling in local servers ensure they're under like 150km rather than < 1000km
Fix deployable snapping not working properly in some cases
Client now sends over its setup and server validates (just like regular placement)