452 Commits over 730 Days - 0.03cph!
Move fog texture updating to its own class to avoid static class overhead(?) and clamp the camera to the world bounds
Various fixes around unit auto-targetting
Properly validate attack distance and clear move groups when manually targeting units
Only perform visibility checks on weapons every half a second
Fixed Render Entities not using relative positions for vertex
Try not setting the Owner of item entities to check whether a theory is correct
Fixed being able to deposit resources into a structure that is still being built
Hide the top bar for spectators when they join during an existing game
Have Armageddon researchable in the Advanced Research Lab
Merge branch 'master' of sbox-rts
Added filtering capability to Statuses.Apply and apply a filter to the Heal Ability to only heal friendly units
Fixed units not automatically attacking buildings in range. Fixed units moving through buildings when told explicitly to attack something. Changed Occupy command to Shift + Right-Click. Changed Deposit command to RepairOrDeposit. Added a repair system for buildings which uses a fraction of the resource costs for the building each second while a Worker is repairing it.
Added health to each building that makes some sense as a jumping off point and reset population and resources to default
Disable normal debug overlay lines on unit entities
Don't render the Building Blocker entity...
Added rts_building_blocker entity and support (updated GhostBuilding to use touch events)
Actually use the highest value of the ground height + 100 and the vertical offset
Raise the minimum height of the aircraft
Fixed aircraft being stuck sometimes with no path. Fixed smoothing of aircraft vertical height when traversing over hills.
Merge branch 'master' of sbox-rts
Have units align to surfaces properly and average out normals if the unit is particularly large (such as a vehicle)
Merge branch 'master' of sbox-rts
Added AlignToSurface option for BaseUnit definitions that will dictate whether units rotate to the normal of the ground they are standing on
Let's not have ff_ground. Let's just use the world as it is, and support displacements and stuff. ff_ground will still be required as a trigger to define the bounds of the map :+1:
Added improved experimental support for height map generation for flow fields, with automatic cliff / edge detection
Temporarily re-enabled height check (slow)
Merge branch 'master' of sbox-rts
Added sound effects to SAM Sites and increased range of some sound effects
Implementation for Nuke and Missile models. Updated Airstrike Ability code to support sounds. Added support for models to Projectile. Added config to make Projectile face its heading.
Refactored some status data stuff and implemented the Ice Bomb Ability for the Grenadier. Fixed an NRE in BaseGrenadeAbility that errored when starting the ability.
Added BaseUnit.IdleLoopSound and updated Apache and Chinook to use it
Continuing to add new sounds to bring the game to life a little
Added Dissolving status stub. Added Plasma Bomb Ability with Dark Energy requirement for the Grenadier.
Vehicles are weak to Blast damage (they have a negative Explosive Resistance)
Fixed Sniper and Anti-Tank hold types in the animgraph and fixed sniper model path
Added Sniper and RPG hold types to the Simple Terry animgraph
Added Anti-Tank unit and RocketLauncher weapon and updated models to use new placeholders. Updated Rocket Launcher hold type to 5 and Sniper hold type to 4.
Added various UI placeholder sound effects and building placement and construction effects
The Launch Pad will correctly open and close when a Nuke is being fired (temporarily remove dependencies for testing)
Changed Launch Site anim graph to use Client Simulate with a networked boolean
Fixed issues with aircraft moving around in circles when reaching their destination as a group
Made some balance changes to the SAM Site
Added the SAM Site structure (can always make for testing right now.) Added MinVerticalRange support.
Added the Armageddon technology. Added Air Superiority requirement for the Airstrike ability. The Nuke can only be fired from a Launch Pad. Added the Launch Pad building.
Fixed Resistances not showing for selected units. Removed resistances from the unit purchase tooltip. Added Apache as queueable from the Airfield. Don't show Kills for units that have no weapon.
Show unit and building resistances in the Selected Item panel. Added Resistance modifiers for units so that certain technologies can add or take from them. Added the Thermal Armor technology.
Have the dome shield particle effect follow the unit with SetEntity instead
Added DPS display to the unit information panel and balanced Pyromaniac's flamethrower
Reduced Dome Shield radius by 100. Update Dome Shield radius control point for particles. Added damage modifier support and updated rank system to use that. Added Basic and Advanced Ballistics technologies that upgrade existing and new projectile units with +1 damage.
Use CP#2.x even for the health, oops!
Set CP#1.x on the dome shield particle effect for the health and don't create two shields
Support minimum attack distance for aircraft by using a Z value of 0 on Distance checks
Early return if minimum attack distance is not validated
Performance improvements to GetFreePositions / GetGridPositions. Added GetPerimeterPosition method to UnitEntity. Added MinAttackDistance to BaseUnit. Units with a minimum attack distance will move to range before they attack.
Added ItemComponent.TakeDamage as a component event. Added ShieldAbsorber component, DomeShieldEntity and DomeShieldAbility. The Dome Shield ability lets a unit deploy a dome around them that absorbs damage to all units inside until it breaks or 30 seconds have passed.