* preparations for deploying oicw little buddy projectiles
* oicw little buddy projectiles spawn and animate properly, but damage dealing is inconclusive
* radiator clouds cause damage to infantry health
* oicw little buddy projectiles do damage upon detonation; different descent pattern; projectile types given own Enumeration
* proximity terminals for vehicle actions no longer need to use the vehicle event system as a middleman for making changes
* redid the workflow of the proximity terminal resolution so that it avoids SessionActor as much as is possible; this may be a mistake, but my future self will pay the price instead
* changed the timing and the angles of the little buddy explosions; fixed proximity terminal tests
* restored control of bfr gunner weapon; attempted to restore shield functionality given unspecified problem statement; bfr's can drown like ground vehicles, not aircraft; siphons can not drain a facility when equal to or less than 40% ntu; corrected oversight with implant timers; accidentally got assertion for TradeMessage backwards
* fixed bfr shield charge display; phantasm driver seat is now bailable
* this test never passes, but the test based on this test passing passes
* correction to support bfr flight variant waterlog recovery
* pattern for applying damage to player avatar and player-controlled vehicle collisions
* pattern for applying damage to targets due to collisions, falling damage and crashing damage individually; fields to support these calculations are provided
* modifiers to translate 'small step velocity' to real game velocity, as reported by the HUD; corrections for velocity; corrections for velocity in other packets
* fall damage calculations moved to function
* basic two-body collisions between GUID-identified game entities and a ward against too many collisions in a short amount of time
* bailing mechanics
* vssm for non-driven vehicles
* comment about vehicle state message field
* comments and minor refactoring for current collision damage calc; tank_traps modifier; potential fix for blockmap indexing issue
* fixed cargo/carrier vehicle ops
* corrections to initialization of ce construction items; adjustments to handling of modifiers for collision damage
* modifier change, protection against flight speed and spectator crashes; submerged status is once again known only to the actor
* appeasing the automated tests
* hopefully paced collisions better; re-did how Infantry collisions are calculated, incorporating mass and exo-suit data; kill feed reporting should be better
* adjusted damage values again, focusing on the lesser of or middling results; collision killfeed attribution attempt
* kicking offers bail protection; lowered the artificial modifier for one kind of collision damage calculation
* correction to the local reference map functions
* fixed tests; attempt to zero fall damage distance based on velocity; attempt to block mine damage when spectating
* propagation of the ask pattern into the unique number actor
* TaskWorkflow as a replacement for TaskResolver; includes working tests
* AvailabilityPolicy has been changed slightly; number source restriction mechanic has been completely removed
* TaskResolver is gone and done and TaskWorkflow replaces it
* number pool variety
* every zone gets a custom tailored 'environment' number pool, as well as all other number pools; uns involves many more static functions and hard-defined variables
* repairs to uns and guidtask tests; worked uns into unops, an actorless version, but did not integrate into server
* shuffled around files in the guid package, causing import threshing; wrote extensive comments; repaired tests; classes related to the old unique number system have been removed
* created straightforward tasks; simplified number pool actor calls; repaired tests due to modifications to generic pool
* bad merge recovery
* broke vehicle control agency down into specific agencies for different types of vehicles
* moved shared cargo vehicle pain onto the carrier control agency; apc-type vehicles have charging capacitors and emit emp's
* comments and documentation; cargo learning about damage to carrier corrected; fixed tests and added tests
* adjustment to explosive deployable distance filtering; apc now uses this filter when determining valid emp targets by distance
* separating geometry classes
* 2d geometry; retirement of the *3D suffix
* makings of an early block map datastructure
* entities in a zone - players, corpses, vehicles, deployables, ground clutter, and buildings - divided between sectors of the zone upon creation, management, or mounting; superfluous messages to keep track of blockmap state, for now
* trait for entities to be added to the blockmap; internal entity data keeps track of current blockmap sector information; calls to add/remove/update functions changed
* modified pieces of environment into an entities that can be added to a block map and have a countable bounding region; fixes for vehicle control seat occcupant collection; fix for squad individual callback references (original issue still remains?)
* introduced the block map into various existijng game calculationa where target selection can be reduced by its probing
* he_mines and jammer_mines now trigger if a valid target is detected at the initial point of deploy; they also trigger later, after a valid target has moved into the arming range of the mine
* conversion of interactions with zone into a queued, periodic set of tasks
* explosive deployable control -> mine deployable control
* tests repaired and all tests working
* mostly comments and documentation
* amenities are now represented on the blockmap
* initial OrbitalShuttleTimeMsg packet and tests; new objects to support HART shuttle transport system
* master was stale
* grouped scheduling for timing orbital shuttle activity
* door lock controls for HART shuttle lifecycle, and specifically for the doors that lead into the shuttle boarding hallway
* separation of the door from the door unlocking logic, which now has to be provided if performed by an outside source; a door that is locked either by bolt, HART routine, or other reason, can now be shut immediately; message when HART is not docked with a corresponding entry hallway door
* better degree of door logic control; all shuttle-related messages have been moved to LocalService; careful managing of 'original state' for the shuttle's cycle
* modification of seat mounting and cargo mounting support entities to expand functionality
* absolutely very little to do with the feature of this branch and a lot to do with yak-shaving; long story short, class inheritance is greatly modified and mountable seats can now accept multiple players if initialized properly
* a lot has changed: distribution of MountableBehavior, mount point information is more complex, vehicles convert differently, the routine of the shuttle timer is initialized differently; you can now successfully utilize the HART shuttle to drop into a zone
* swap of shutle from pad to pad control; tests and comments
* eject players from HART gantry hallway as if passengers dismounting from seat when not boarding through the use of environmental geometry; HART system uses duration from config settings to set scheduler
* rebase to curious master; repairs to vector rotation calculations; regression of mountable changes involving seats with occupancy greater than 1; orbital shuttle as a unique vehicle and amenity; corrected dismount offsets and offset calculations; weird angle of nc hart a building has been properly accommodated; hart events have prerequisite animation states
* rebase with master; looks like rebase with merged_master, which is also a commit
* lots of tests (though not nearly enough); checking the permission group of a shuttle seat no longer creates that seat
* fixing explosions
* fixed the persistence monitor service potentially using non-printable unicode in actor names
* can not use a droppod to gain access to one's own sanctuary
* removed hart facility update that causing open bay doors and beeping
* PR review changes
* fix for aggravation issues
* planar classes to describe levels of water and other fluid parallel to the ground
* corrected purpose of field in OxygenStateMessage and adjusted the structure of the packet; the environment is now 'regions filled with stuff'; messaging pathways to facilitate drowning and drown recovery in SessionActor, WorldSession, and PlayerControl, as well as the avatar event system
* drowning height is now a featur - recommend going through GlobalDefinitions; fixed lava pool collision to work on pool entry rather than drown level; lava now burns; painbox damage now is directed towards players control agency first
* drowning timer works correctly for both player and vehicle targets; timing and dive depth information for targets defined, but currently originates from a generic location (ObjectDefinition); packet OSM has been modified for efficiency; classes for environment features previously exclusive to drowning mechanics have been pushed towards generic naming conventions
* added sea and pools for z4, z5, z8, and z10
* vehicles now take damage (to the point of destruction) when exposed to lava due the expansion of environmental damage reasons and environmental damage modifiers; modification of the environment exposure lingo; streamlining of vital activity record system
* added basic drown params to flying vehicle definitions; object trait and control mixin for environment interaction, code moved from SessionActor and WorldSession
* separated environmental classes; handled waterlogged flying vehicles, in properties and code; wrote comments and tests
* players mounting vehicles and players subjected to the vehicle transfer process should receive updated drown-state status of the vehicle; drowning should suspend while in the middle of vehicle transfer, in the case the process is long
* increased damage performed to vehicles by lava