* Remove QoL change to show faction colours on hacked objects as unfortunately it causes side effects like doors opening for the hacker but saying the door is locked
* Only send map updates if the resecured object is a capture terminal
* Centralise logic to check if a Capture Terminal is hacked for a Building object
* Fix hacking a terminal where the base CC has been hacked and add a bit of extra logging for possible edge cases
* Clear all hacks from hacked amenities when the CC is resecured
* Fix AMS terminals being broken
* Clear amenity hacks when CC is both hacked and resecured
* resolved merge of multi-PR-merge master branch supporting gating branch
* making adjustments to the distinctions between building map id and building GUID, where necessary, to assist with the loading process
* custom spawn tube definitions for the sanctuary VT_building's
* Move door orientation logic from the door itself to the IFF lock, as the lock has the correct orientation in the UBR files, whereas the door does not.
* Remove ModelID from buildings (is now GUID) and change "ID" to be "MapId". A building can also be constructed with both a GUID and MapID.
* Update Maps.scala and Zones.scala to (for the moment) only have Ishundar configured with Sounours V3 playtest base ownership. Default starting zone is also moved to Ishundar for now.
* Fix oopsie with West Zaqar Tower
* Add proximity terminal positions to constructors
* Offset vehicle spawning by the correct amount from game_objects.adb.lst
* Orient players correctly when spawning at a respawn tube
* Apply a 90 degree offset to tech plant garage locks, as these are the only locks where the orientation does not match the orientation of the door
* Add missing spawn terminals, repair/rearm terminals for both ground and air.
* Additional documentation for GOAM / PAM packets
* Add extra arguments to building LocalObjects to make it a bit more DRY and reduce line count for map files
* Split maps configuration into separate files and add every above ground map (including battle islands and oshur prime)
* Fix ZoneTest typo
* Update vehicle spawn pads to use the correct object types, Z offsets and Z orient offsets
* Update ZoneMaps with the new vehicle spawn pad definitions and fix a few issues with sanctuary GUIDs (special thanks to the one person that used capitals in the .lst files when no other object uses them)
* Comment out duplicate instance of ObjectDetachMessage being sent
* Apparently TR sanc has an extra 6 repair silos, now accounted for.
* Move door orientation logic from the door itself to the IFF lock, as the lock has the correct orientation in the UBR files, whereas the door does not.
* Remove ModelID from buildings (is now GUID) and change "ID" to be "MapId". A building can also be constructed with both a GUID and MapID.
* Update Maps.scala and Zones.scala to (for the moment) only have Ishundar configured with Sounours V3 playtest base ownership. Default starting zone is also moved to Ishundar for now.
* Fix oopsie with West Zaqar Tower
* Add proximity terminal positions to constructors
* Offset vehicle spawning by the correct amount from game_objects.adb.lst
* Orient players correctly when spawning at a respawn tube
* Apply a 90 degree offset to tech plant garage locks, as these are the only locks where the orientation does not match the orientation of the door
* Add missing spawn terminals, repair/rearm terminals for both ground and air.
* Additional documentation for GOAM / PAM packets
* power outage failure resulting in the destruction of the original ocm-fixes branch; the git branch refs were corrupted during commit, but the up-to-date changed files remained intact
* eliminating the need for CommonFieldData2 and CommonFieldData2WithPlacement
* in the middle of integrating CommonFieldData into DetailedLockerContainerData (but not standard LockerContainerData); added field for final boolean in WeaponData
* adding faction affinity to Equipment (to match functionality; not becuase I know what ends ...)
* in the middle of integrating CommonFieldData into DetailedCommandDetonaterData
* applying faction affinity to objects at time of terminal production (but to what ends?); required BoomerTrigger and AmmoBox to always report as NEUTRAL internally
* completed the transition from using the old class-based order terminal system to the page-based order terminal system; unused terminal classes have been eliminated
* more closely aligned TelepadDeployableData and InternalTelepadDeployableData
* modifying TelepadDeployableData make it generic and eliminate the need for InternalTelepadDeployableData after fixing a packet converter to utilize DroppedItemData
* modified Terminal operation to branch further outwards from Terminal.Request to the TerminalDefinition's Request method; modified tests to reflect update
* loosening up matrix terminal definition limitations
* modified ProximityTerminal to support a custom defintition class
* rendered the message passing system for Terminals general (Any) in the full scale so it can be specific in instance cases
* refactored and moved both EquipmentSlot and ExoSuitDefinition
* (re)load Favorites each time player (re)spawns
* modifications to ProximityUnit and related classes to internalize the effect control for the terminal, removing the flywheel functiuonality from WSA
* proximity operations for medical terminals (the one in the Anguta lobby, specifically) is functional; some entities besides Player now keep track of the continent they possess, a necessary compromise for proximity ops
* repair rearm silos (Anguta courtyard East) demonstrate operational behavior when lattice benefits are active
* proximity terminals may now juggle multiple targets that move in and out of range and change validity over time
* previous rebase; preparing for special location + offset calculations for utilities
* working location-based proximity repair terminals for the lodestar, utilizing new fields in the vehicle definition, new configuration method in the utilities, and new calculations for Vector3 entities; some comments and tests
* separated ProximityTarget; updated existing terminals; restored defaults; preparing to fix tests
* tests involving the proximity unit workflow
* dismantling a portion of the proximity terminal machinery that is no longer necessary and only poses risk to the system; removing temporary code used to quickly test vehicle silo repairs
* added three objects to serve as the terminals for Lodestars; only the multivehicle_rearm_terminal is operational, for now
* giving the new terminal type a setup function for being constructed as an amenity
* redid splash damage radial degrade calculations; lasher damage fixed to 6/0 or 2/4 depending on armor; fixed direct hit distance for weapons that act like slash weapons; gave Falcon a valid projectile
* delayed resource silo startup to avoid crash; discovered issue with MAX armor resulting from incorrect manipulation of inventory items during suit transfer
* modifications to consider a specific modifier that exists on some vehicles and armored equipment called Subtract, a DamageProfile that reduces damage due to a set flag; manually controlling damage tick marks rather than relying only on HitHint (from client)
* Tools now have default firemodes (temporary?); ammo gotten from loadouts is always full; loadouts and exo-suits juggle armor values differently on being changed; log messages for damage to players and vehicles
* weapons with one (last) shot need support communicating that one (last) shot
* fixing tests
* correcting the codec for BindPlayerMessage
* changed wording that identifies the damage log entries
* switching exosuit no longer causes butterfingers
* extending exosuit swap armor value changes to infantry loadout changes
* ranges removed from non-vehicle containers
* enabled partial damage functionality to facility turrets
* BindPlayerMessage replacing BattleplanMessage for purposes of depicting the closest AMS spawn point; specific enums in relation to spawning in BPM and SpawnRequestMessage
* rewrote exo-suit switching and loadout switching code, paying extra-special attention for the needs of MAX's
* quick amendment for previous commit
* switching from mount point check to seat checks in VehicleRemover; started refactoring of Cargo functions before realizing how complicated the full effort would be, so these changes are merely wrapping object identification by GUID
* adding a minor server delay to terminal operations
* modified DCData to account for Max suit encoding; modified converters for the avatar that would make use of DCData changes; corrections to enforce that Max/ex-Max always has correct hand showing
* separating initialization-time random GUID assignments from initialization-time fixed GUID assignments by performing them all later
* added short and detailed codecs for Telepad, and converter for switching between Telepad and packets; modified Utility to construct a formal TeleportPadTerminal that associates the Telepad with a Router; can now pull telepad Equipment from Router terminal utilities
* this code supports operation of the deployable-side telepad
* basic teleportation between the Router and the remote telepad is functional; an ever-present internal telepad utility was added to the Router to facilitate this teleportation
* breakdown of Router teleportation code for the purposes of client synchronization; supports Router being set up first or Telepad being set up first, either order; background timer for eventual activation of Router
* refactored the router telepad system to remove unecessary function diversions; telepads now are properly linked where appropriate and links are properly broken in appropriate situations; message passing has been simplified
* fixed inventory size of the telepad; transferred router telepad activation systems from VehicleService to LocalService, and from the Ruoter to the TelepadDeployable; cleaned up code that handled the TelepadDeployable the Router relationship in WSA
* tests, mostly; no-router conditions for certain telepad-related converters
* adjusted (made constant) quantities for owned telepads
* resolved issue with router and telepad crashes; properly handles deployment states of AMS and Router upon zone entry; changed ownership/decon requirements to ownerless only
* functions for certifcation ui updates (that don't work)
* initialization of combat engineering deployables ui on load and certification change
* representation classes for ACE and FDU; ability to pull ACE and FDU from equipment terminals
* ammo change functionality and fire mode change functionality for ConstructionItems refactored from Tool operations and supported properly (switch between deployable options)
* zone-specific structure for keeping track of deployables; abaility to dismiss deployables from the map screen (previous functionality); local client creation of explosive-type deployables
* refactored MannedTurret into FacilityTurret and lesser traits to be used in the deployable spitfires and the OMFT's; all ACE deployables are available for placement; partial management of the construction items after the deployable is placed; boomers create boomer triggers
* Avatar-specific storage for deployables and for updating UI elements
* refactored quite a bit of code in WSA for the benefit of deployable management; refinements to deployable creation; server messages about deployable quantities; corrected the FDU encoding pattern; lots of work dedicated just to synchronizing BoomerTrigger objects
* added RemoverActor for deployables and redistributed deconstruction functionality away from WSA to new DeployableRemover; added events to facilitate activities not inheritable with this model
* refactored and distributed Deployables classes; copious amounts of testing and document-writing
* boomers now explode from trigger; support for deployables being destroyed by weapon discharge, including individual health, soure identification, and damage model; shuffled deployable classes to build different hierarchy
* sensor_shield was skipped by accident
* identified stray object in Hanish, Ishundar, and added Irkalla, Ishundar's capture console; fixed issue with Warp command and 'Irkalla'; modified building amenity setup and setup testing in Zone; players load and die properly when seated in an omft; reserve ammunition in omft properly registered
* added local service channel, capture consoles, fixed tests as much as posible
* fixed LocalService tests by booting the ServiceManager; added avatar and local tests
* a simple attempt to refactor Actor messages in a way that is acceptable to Travis CI
* making the explosive deployables vanish upon explosion; sensor health bars are now supported
* Add capture terminal definitions
* Logging / documentation
* Functionality for timed base hacks
* Disable IFF locks while base is hacked
* Hacking speed based on player's hacking certification level (and hack effect duration data - currently not functional)
* Hack effect duration functionality
* Sync hack states with clients joining the zone
* Whitespace / comments
* Allow IFF locks to be resecured by the owning faction if it has been hacked
* Fix bases with no NTU silo failing to capture
* Reset CC properly on hack that expires with no NTU in silo
* Capture towers instantly and improve handling of hacked objects queue
* Fix handling of neutral IFF Locks and remove unnecessary casting
* Move HackCaptureActor to correct location
* Re-enable Anguta door locks for air pad now hacking/resecuring IFF locks work
Add capture terminals (timed CC only for now) for a few bases & a tower
Add a few missed locks/doors
Add a resource silo to Girru
* Fix merge issues & missing documentation
* refactored WSA code handling HitMessage, handling SplashMessage, and handling LashMessage; modified projectiles for future functionality
* players can die from being shot now; the damage model is simplistic since main goal was to write around the potential for negative damage ('healed from getting shot'); HitHint works correctly; dedicated AvatarService channel for each avatar helps reduce message spam
* vehicle destruction, and replacement with lightweight wreckage objects upon continent join; made flushing vehicle terminal more accessible
* simple work on vehicle shield charging (amp station benefit) (that's my commit story and I'm sticking with it)
* a flexible calculation workflow that can be applied, grabbing damage information, resistance information, and then combining it with a resolution function; players and vehicles have resistance values; removed redundant damage calculations from WSA
* broke up DamageCalculations, ResistanceCalculations, and ResolutionCalculations into packages under vital; fixed an error with exo-suit calculation resistances; events for dealing with synchronized player and vehicle damage calculations and building the papertrail of those damages; updating codecov.yml file for ignore classes
* added tests for various components (damage model, destroyed vehicle converter, vitality, etc..) and some functionality improvements
* added a field to keep track of how projectiles will be attributed at the time of target death
* object class, actor class, and definitions for base turrets; untested
* wired base turrets into existence, with hoop jumping; created interface for objects with mounted weapons (vehicles and turrets); working example phalanx_sgl_hevgatcan in Anguta, Ceryshen
* re-wiring manned turrets so that the turreted weapon itself never changes externally but merely identifies different and changes internally; workflow for upgrading wall turrets in place (30s); clarifications and documentation for HackMessage and UseItemMessage; getting rid of orphaned packages from previous location of services
* added a simple task that reverts upgraded manned turrets to their None state after a certain amount of time has passed; it works but need improvement
* turret weapon upgrades now last for a duration of 30 minutes before reverting; created a service support actor base actor that underlies all current support actors; nano-dispenser now properly loads 1 unit of upgrade canister, rather than 100 units; all canister types have appropriate 2x3 inventory size
* forgot to hurry; moved over the Services tests from main/test folder into the common/test folder and needed to change the location of ActorTest to accommodate it; test and documentation for MannedTurret; codecov ignore update
* wired facility turrets in Anguta, Ceryshen; Akna tower, Ceryshen; and S.Villa tower, home3 (Anguta tower is a watchtower); attempted workaround for Travis CI issues with receiveN; re-introduced RemoveActorTest, at least the first test; expanded how ZoneActor performs tests on MannedTurret setup
* getting rid of useless commented-out code; making common operations for mounting and dismounting
* removed outdated comment; added ResourceSilo tests; added extra test for Zone