* mix-in code for akka messaging move item, currently testing on infantry only
* adjusted structure of COntainable so callbacks are separate from message-producing functions, are separate from message-sending functionality; massaged LockerContainer until it could support control agency and created a wrapper for its Equipment interfacing; the control structure starts and stops when PlayerControl starts and stops, and it converts whenever necessary
* added failsafe conditions to Containable, such as blocking certain messages while completing a MoveItem call, or blocking all messages to reset disruptive MoveItem calls; depiction message callbacks for Player, Locker, and Vehicle, to properly depict the manipulation of items; eliminated the old code from WSA
* added useful comments to Containable; moved functionality for deployables, and for container'ing, and dropping logic out from WSA and distributed it appropriately
* handling terminal operations - buying an exosuit and selecting an infantry loadout; starting work on support for more persistent equipment timers local to the avatar (that were removed in this update; see wsa changes)
* linked terminal page/message with routing policy
* tuning vehicle loadout management and display
* separated use time from purchase time and applied a system that limits either if that same event would recur too soon; tuning exosuit and loadout changes
* some ask timeout handling and comments
* normalizing item on ground interactions
* rearranging the project structure
* merged with master; commas removed
* fixing tests
* added description strings to Tasks; adjusted the completion conditions for some Tasks
* a failed purchase will not block future purchases; increased timeout on move-item tasks
* corpses, even one's own, should have properly moveable inventories
* for better persistence, until GlobalDefinitions is renovated, moved the object id->name map onto the avatar object, for the purpose of timers; replaced a use of values in GridInventory for a map conversion
* max loadouts and max exosuit switch use same cooldown now; hopefully better clarifcation regarding held arm position
* internalized the actions of the VehicleRemover into the vehicle control agency; this required modifications to vehicle deconstruction messaging, but also had implications for the vehicle spawn pad
* fixed tests; created a with-context ActorTest environment; hacked away the unnecessary aspects of VehicleRemover
* changes to tests; simplifications to terminated cargoing abilities
* removing unnecessary indirection from cargo handling at the end of a vehicle's life
* Fix resource silos not showing the correct charge levels after server startup
* Make all continents have broadcast warpgates, disable geowarps, common initialization functions for zones
* Make instant action respect spawn point overrides e.g. z offset
* /warp and /zone restrictions from PTSv3
* Allow players hit by EMPs to disable implants correctly to prevent infinite stamina drain
* Quick fix to stop VehicleRemover from crashing if the target vehicle has no Actor assigned
* refactored ZoneActor for external calls; earliest code for calculating Instant Action placement
* created a building definition so that SOI is no longer indeterminate; gave hot spots projector a longer-lasting backup for purposes of activity retention; instant action ramp-up works
* filled out instant action messages; refactored main method
* packet and initial tests for DroppodFreefallingMessage; drop pod definition, packet converter, and consideration in WSA and InterstellarCluster instant action functionality; droppods now work
* duplicated soi information; modified priority of instant action; assigned cavern status; added reset for instant action failure; implant interrupt condition; wrote comments
* no instant action droppods; added messages for cancelling instant action when certain conditions occur; wilderness instant action request
* made generic the entire instant action process to shoehorn the whole of the sanctuary recall process into it; I hope you're happy
* test fix; vehicle hacking fix; no more artificial NTU drain
* escape case for zoning last chance; descriptive mesages condense similar calls
* something of a merge repair
* bog-standard order_terminal amenities now take damage up to the point of destruction and can be repaired from destruction to functional to the point of being fully repaired; this is mostly proof fo concept
* restored proper destruction to FacilityTurrets; extended proper rrepairs to FacilityTurrets; co-opted terminal hacking into TerminalControl; started to expand on hacking protocol, but chose restraint
* changes made thus that a clear Definition hierarchy is established; all of this is in line with making future changes to repair/destroy variables, and making generic the repair code
* all meaningful facility amenities take damage and can be repaired; spawn tubes can be destroyed and the base will properly lose spawns (and show it on the map); some hack logic has been redistributed into the appropriate control objects, following in the wake of repair/damage logic
* deployables are repairable; the TRAP has been converted into a ComplexDeployable; changed the nature of the Repairable traits
* player bank repair and medapp heal has been moved out from WSA into PlayerControl
* overhaul of Progress callback system and the inclusion of player revival as a Progress activity
* begun relocating functionality for hacking outside of WSA; set up behavoir mixin for cargo operations, in order to move vehicle hack function, but did not yet integrate
* integration of the actor behavior mixin for vehicle cargo operations to support the integration of vehicle hacking finalization
* establishing inheritance/override potential of Damageable activity; Generator and SpawnTube map behavior behavior (currently inactive)
* ImplantTerminalMech objects now have a 'with-coordinates' constructor and a deprecated 'no-coordinates' constructor; implants mechs and interfaces are now damageable and repairable, and their damage state can also block mounting
* generators are destroyed and repaired properly, and even explode, killing a radius-worth of players
* destroy and repair pass on deployables, except for explosive types
* Damageable pass; client synchronization pass
* helpful comments
* some tests for damageable and repairable; refined output and repaired existing tests
* enabled friendly fire check and recovery
* handled friendly fire against allied mines; moved jammer code to common damageable behavior
* tweaks to damageability, infantry heal and repair, and sensor and explosive animations
* animations; framework for future vitals events; closing database connections
* adding some deployable tests; fixing a bunch of other tests; History is back
* testing for basic Damageable functions; removing a log message
* finicky animation stuff
* event messages to the Generator to represent health changes
* damage against BFR's is now only used against mythical creatures
* test fix
* building guid fixes for zone tests; spawn pad control allocates messaging targets more carefully; additional check for building registration in ZoneActor
* the nature of the amenity/zone interaction changed
* constructed service actor to handle persistence of player on server beyond the reaches of WSA from one login to the next; created in PSLogin, interfaced with and updated in WSA
* for what it's worth, players can be completely logged out of the world after 60s of inactivity, alive Infantry only right now; some code was removed from WSA to make it accessible to other classes but it's incomparable to the new code; broke, fixed, compromised on the code that handles loadouts, server login time, etc.
* moved another common vehicle function into global space; persistence object for players in vehicles during log-out or relogging in a vehicle
* support for relogging when dead/released/unfound; silenced implant slot setup during character select screen
* tested and commented code for managing player avatar persistence
* clarificaion of WSA postStop
* test fixed
* postStop change to account for WSA being cut short during initialization
* clarification of SquadService logout
* player died during setup; probably a relog
* kill the doppelganger WSA; die when you are actually dead
* created manifest to assist with vehicle gating; vehicle gating now accomodates the persistence model much better
* fixed the test
* fixed initial vehicle seat access permissions; moved a subscription to AvatarService to support persistence
* bug fixes: safer GridInventory collision checks, plus specific exceptions; SessionRouter waits for the account intermediary before allowing itself to be started; WSA - match error colution, and MAX without arm now creates the arm it expects
* adjusted insertion and removal code to make inventory management less prone to partoial insertions of removals; inventory integrity checking code writen, but no plans on implementing it yet
* Add functionality for cavern sentry turrets
* Add missing LastDischarge on Tool
* Fix BuildingControl GUID errors on server startup
* Fix instant REK access to terminals in a cavern facility with a hacked CC
* Simplify CC Amenity matching
* Modify warning to match disabled functionality
* fix AvatarService tests
* updated README section in regards to PSCrypto
* better wording, imho
* modifying the construction of Building entities so to properly register them with the zone GUID system
* fixed tests
* perform no damage if the target is already destroyed; correct destruction timer override on sensor-type deployables
* framing vehicle remover tasks differently; screening for valid objects at some places in WSA; fixed router's internal telepad utility
* corrected issue with unique control agent Actor names for Players; propagated change to all dynamic objects (not those instantiated at server time)
* test fix
* another test fix; this time, Travis is having trouble with it
* Revert back to using vehicle GUID for target gone check when jacking, as GUIDs are now retained when an object is removed from the world
* Don't allow dead vehicles to be repaired
* Don't show repair bar on dead vehicles
* Add IsDead flag to Vehicle
* Fix missing ObjectType on LocalBuildings, causing pain fields to stop working due to no SOI radius being set
* Fix damage logic for pain fields that don't rely on the nearest door
* Transfer base benefits via lattice
* Missed two Building.SendMapUpdate -> Building.TriggerZoneMapUpdate
* Fix Building tests
* fix isAnchored / isOverdrived faction check
* Faction specific MAX definitions
* GenericActionMessage documentation
* MAX Capacitor functionality and changes to damage resolution for NC MAX shield
* all matters related to vehicle events, including tests, adjusted so that the service actor internalizes a specific zone; major adjustments to the order fulfillment logic of vehicle spawn pads; removed a bunch of unnecessary things such as auto-drive guidance
* all matters related to local events, including tests, adjusted so that the service actor internalizes a specific zone; special consideration for proximity units and tests; muted some excessive logging
* all matters related to avatar events, including tests, adjusted so that the service actor internalizes a specific zone; special considerations for resource silos and painbox elements
* explicit trait that acts as an owner of Amenity objects (Building and Vehicle); generalization of <obj>.Owner.Zone statement
* reduced log spam from proximity terminal activity
* tightened vehicle spawn pad control protocol; finally made the player re-appear if the vehicle doesn't spawn/mount correctly; pad operates independent of the person who submitted the current order so less chances for crash
* adjusted workflow for vehicle spawn pad task management
* constrain angles on specialized yaw and pitch fields
* integrated new Angular Codec into OCM and OCDM of avatar; corrected tests; wrote shortcut for whether a unit is moving (under its own power)
* apply clamp
* Accessed containers while moving
Removed unintentional code duplication outside of conditional.