108 Commits over 151 Days - 0.03cph!
Added Trebuchet data and Direct Damage data
Plague Barrel entity stub
Plague Barrel data with particle effects
OnEggThrown and OnEggLanded virtual methods on data
Set model of thrown direct damage eggs immediately and initialize any trail effects
Units will move towards their group position if the target position is blocked (they would hit a wall)
Egg groups will interpolate their z position to align with the ground as they move
Make traces for egg landings only hit the world and remove the radius
Merge branch 'main' of sbox-slingshotsiege
Recompile placeholder assets
Have units start out in the middle and get into formation on egg break
IDamageable extends IValid
ProcessMove, ProcessIdle and ProcessAttack implementations
Move Speed to base Egg Item Data
Add TickMove to IEggItem
Implement TickMove on Unit and GetGroupPosition implementation
Move groups as their own thing and have members move to localized positions within the group as a formation
Restore weapons for egg items
Attempts to fix the random crashing that's cursing my night
Added some placeholder assets. Completely stripped out Flow Field / Pathfinding related stuff, it's not really needed at all actually for this game. Started adding attack / find target logic to egg groups. Temporarily allow any position to be valid when throwing an egg until map is updated to support play area. Added Spawn Radius property to egg items. Archers will spawn evenly distributed in a circle.
Added basic Figurine classes to represent static items inside eggs
Add figurine data for each available egg type
Create figurine and attach to attachment for each egg
Use right hand transform for egg rotation by multiply by rotation from right vector
Added a basic egg hud that - for now - just shows the name of the item in the egg
IEggItem uses IValid interface for better usage
Fixed egg particle crack effects being shown multiple times. Add Egg Hud to Eggs and standardize egg colors by type.
Fixed eggs sometimes not respawning after landing
Weaknesses renamed to DamageModifiers. Update base stats for Archer, Battering Ram and Watch Tower.
Simple weakness data for any egg item type (not hooked up)
Localize particle creation for egg impact
Adjust VR anchor to cater for sitting / standing mode (I think my room scale config was wrong before)
Merge branch 'main' of sbox-slingshotsiege
Use sling speed modifier for egg rotation as well
Clamp slingshot force to min and max to fix overshooting and ignoring egg mass. Add egg item data sling speed modifier (set it to 0.5 by default).
Rotate BR model 90 degrees so it faces F(orward). Increase mass of stationary eggs. Slow down BR.
Added Battering Ram stub. Let egg item data classes create their own animators. Pass owning player to spawn for eggs.
Center the egg group hud and raise it. Automatically scale based on distance.
Added Stationary, StationaryData. Added prelim support for Watch Tower (first stationary egg.) Add HudOffset for eggs. Let egg data classes handle their own spawn logic.
Set player model to citizen. Hide if we are the local pawn (client-side.) Set IK animation values for hands (bit wonky at the minute.)
Correctly spawn a new egg for every egg lost (eventually eggs will respawn on a timer)
Adjust maximum flowfield square size automatically based on node size. Show red circle if target placement is invalid.
Fixed pouch force not being applied on release
Only simulate egg physics if authority.
Automatically set a sensible value for the flowfield height threshold. Lower flowfield node and collision sizes for this game. Find a suitable location near the gate if the gate's location is occupied.
Added EggGroupHud with basic information for a group such as Name, Count and Health
Added EggGroup for tracking multiple units / egg items and averaging position
Updated to use pickup as right trigger. Use regular tick for egg physics after it has been flung. Keep track of player in egg.
Added Mass property to egg data. Added simulated target position calculation for eggs. Use simulated target position to render a circle to show predicted landing.
Apply twice as much force to the pouch and don't apply force if sent from server and we're the owner (we already did that)
Egg respawn and predicted egg pickup and release (smoooth) using custom physics (needs work)
Fix dev camera. First attempt at egg attachment and release
Add Hammer.Skip to Unit entity
Added basic egg item data system (BaseNetworkable) and create 6 random eggs on initialize
Added slingshotsiege_egg_spawnpoint
Added missing Hammer entities
Fixed movement and added test move position
Scale fixes (movement still broken) and added slingshot_gate_target
Setup for units and flowfields to create and move toward gate when an egg is broken
Disable collisions on the player
Fixed pouch not being reset properly for other players
The pouch is now predicted and spring joints are client-side (Egg is not predicted right now)
Only spawn players when minimum of 2 are on - spawn in respective "seat". Seat each player correctly and ensure VR anchor is rotated properly. Fix Znear so people stop crying
Spent some time with my mate's actual slingshot, improved rest behavior. Pouch hangs back and lower from the slingshot generally and rests faster.
Quite happy with this behaviour (pouch grabbing still not predicted)