* 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
* preliminary elements needed to battle frame robotics; mostly from previous branch
* introduction of FrameVehicleStateMessage and anticipated event system paths for BFR's; spawning amenities for BFR's are parsed and built from the zonemap files, but their coordinates are currently incorrect, and the resulting entity will not function atm
* bfr's spawn correctly; default arm weapons will spawn correctly; bfr rearm terminal added but arm swap not working correctly; bfr shields charge if not full; proper separation of vehicle spawn pad types
* arm weapon swapping in bfr's; swapped weapons switch, contextually, to either *_left or to *_right depending on the mounting; partial support for entities that do not have an OCDM packet form
* crouching improves shield regeneration
* some projectiles damage the bfr regardless of its shield
* delay the final vehicle explosion; start of vehicle subsystems
* handling for bfr shield ui updates; more of vehicle subsystems; corrections to TradeMessage packet; clarifications for FrameVehicleStateMessage package; report on flight status of bfr's
* control agency support for vehicle subsystems for arm weapon fire control
* vehicle capacitor, for what it's worth; shield and capacitor are influenced by recharge freeze and drain
* initial packet and tests for AvatarAwardMessage; update the fields of FreindsResponse, DetailedCharacterData, and LoadoutType for FavoritesMessage; corrections to intiailization packets in SessionActor; players start as imprinted by default
* support for GOAM and GAM integration into vehicle control agencies using a basic actor superclass; addition of vehicle subsystems; modifications to bfr control agency to allow for weapon handiness and subsystem control; fixed Fit mapping for vehicle override; made mountable seat transcoders independent
* delayed explosions to accompany the delayed death for the bfr; bfr terminal window closes on successful purchase
* the bfr armor siphon works
* clarification for bfr inventory item manipulation; corrections to length of bfr transcoder for flight variants; everything else in in support of the various arm weapons that can be assigned to the bfr, including damage proxy support for causing/interacting with/cleaning up after radiation cloud projectiles
* fixed the apc emp burst; fixed bfr arm weapon manipulation for activated subsystem; armor and ntu siphon support
* battleframe loadouts available upon vehicle spawn (vs and tr only)
* adb values for siphons; subsystem update message; some repairs
* cargo vehicles are subject to radiation damage; damage for battleframes are different depending on shield evasion status; battleframe loadout deleting supported; bfr kill box; automatically wire bfr sheds, includeing the ones in sanctuary
* proper bfr spawn angles; bfr vehicle timers; projectiles are no longer radiation clouds by default; better remote projectile cleanup; resolving incorrect weapon arm enabled states for bfrs
* added tests for FrameVehicleState and GenericObjectActionAtPosition; pass around maximum sector for zone interactions
* changed the triggers for the stamina regeneration timer
* potential fix for issue related to finding arm weapon mounts
* modifications to how vehicle subsystems are automated; jammer field updates; support and passing around custom block map ranges; does include activated dev tests for battleframe PAM, which will need to be stripped out later
* commit while working on subsystems mk2
* subsystems fail when jammed; an unoccupied bfr does not have shields active; pulling a bfr of one variant should block the other variant too
* fix distance check with radiation clouds; blocked bfr weaponry from anywhere but bfr arm mounts and cursor; ammunition depletion of aphelion laser; bfr shields deactivates when unoccupied
* significant modifications to vehicle subsystem operations; disambiguation of weapon subsystems; debuffs to charge rate and use rate for the capacitor and shield of bfr; test for ComponentDamageMessage; somewhat proper jammering operations for bfr
* 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
* corrected flail deploy animation timing; added a working laze pointer terminal utility to the flail
* initial LongRangeProjectileInfoMessage packet and tests
* flail damages targets over a distance and damage dealt will increase with distance traveled
* flail laze pointer broadcasts a special waypoint to squad members and blanks position marker after a short time
* recharge terminal will remotely restore ammunition to ancient vehicle weaponry (like the flail) as weaponfire expends it
* laze waypoints do not double and are visible to all squad members; excessive squads do not form and stick around by accident
* support for the second wind implant; minor enum modifications to damage reasons that were executed for alternate implementation where second wind stopped player from dying once
* vital history entry to note from where the 25hp came
* 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
* persisting vehicle loadouts in between sessions, saving to db and loading from db
* reusing refactored code for clob; initial loadout without empty entries; reverting method of stopping session child actors
* 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
* unifying the split code pathways that separated telepads from other deloyables; in other words, no more SimpleDeployables and ComplexDeployables, just Deployables
* moved some aspects of the build logic into a deployable control mixin; aspects governing the deplpoyable toolbox have been transferred into the player control agency
* moving aspects of teleportation system establishment and decomposition into specialized Telepad control agencies
* retiring deployable disposal code path that required a dedicated remover; each deployable now handles its own removal, and some do special things when being removed; process still has some rough edges and tests are probably thoroughly broken
* additional modifications to support boomers and telepads; consolidation of code for deployable acknowledgement by owner and during failure conditions; tests for behavior
* retooled a significant portion of the build sequence and deconstruct sequence to: eliminate duplicate messages, give the player more input to and control over the process, remove undue responsibility thrust on SessionActor
* messaging issue where player did not re-raise hand after exchanging a used construction tool for a new construction tool
* modification to deconstruct path to make certain deplayble is unregistered last; ridding requirement of AlertDestroyDeployable; fixing test
* create paths for unowned deployable building and (standard) owned deployable building; corrected activation and connection between telepad deployable and internal roouter telepad; wrote tests for connection between telepad deployable and internal telepad
* modifiying the conditions of a deployable construction item being moved into a visible player slot such that the construction item's initial output is valid given the player's current certifications
* by forcing the fire mode to revert briefly before the ammo type updates, the construction item can be made to remain consistent between fire mode shifts
* construction tools now keep track of fire mode ammo types for a period of time, allowing one mode's last setting to be retained
* greatly delayed rebase with master
* minor changes; test correction (?)
* router is go?
* biolab spawn benefit should now be active; spawn point integrity at point of player avatar creation, or else try again
* streamlined the process of determining whether a facility possesses individual benefits; warp gates do not have benefits
* fix for mounted turret persistance
* in forgetting an exo-suit certification, one must not be wearing that type of exo-suit afterwards
* making the conditional more straightforward
* fixed issue with purchase times; can now share max purchase cooldowns
* repair capability is now reflected based on progression in the engineering certification tree; uses correct values and modifiers
* 12 works better than 12.5
* fixed tests
* preparation for redefining the checks involved in spawning a vehicle from a spawn pad
* pass the terminal from which a vehicle order was issued to be used in validation tests; implemented validation tests to ensure delayed orders remain valid until being executed; various messages about orders that have failed validation, as well as order changes and queue changes
* local zoning field on player for use in statusing and message composition
* expiration of a vehicle order for a given reason; linking of messages for expiration of vehicle order queue; death on an active vehicle pad (during rail operation)
* players that die to spawning vehicles can blame that vehicle's future driver; the calculations for server-side damage are heavily modified
* definitions for vehicle spawn pad kill box, used during vehicle generation to eliminate targets on the spawn pad, per kind of vehicle spawn pad
* reusing common order validation test for some stages of the vehicle order fulfillment process
* adjusts when the vehicle thinks it is mounted to the spawn pad; vehicle wreckage should be cleaned up quicker
* cancelling the active order
* vehicle will not try to introduce itself to zone if already in zone; vehicle spawn pad construction uses generic messages rather than class-specific ones
* better seat locking while server controlled
* copious amounts of ant deployment check-ery
* custom function to calculate explosion-susceptibility due to being in the generator room at the wrong time; updated the log message for laze pointer
* ensuring that all targets are within the damage radius
* due to floating point error, checking the dot product instead of equivalence of the vector projection