* diversified building management by injecting behavior; allocated entries for the intercontinental lattice and have begun connecting warp gate entities along the intercontinental lattice; beginnings of warp gate broadcast operations; disabled free merit commendations
* allow transit across a predetermined warp gate path, i.e., proper zone-to-zone gating
* game variables for modifying warp gate behaviors; moved choice of building game logic into overloaded constructor; only handle the capitol fore dome in more realistic conditions; warp gate state restored primarily b y internal game logic; changes to which and how gates are declared inactive or broadcast at startup
* initial work on WarpgateLinkOverrideMessage, even if the packet doesn't seem to do anything; added basic service for rotating cavern zone locks via the galaxy messaging service; moved error checking for lattice connectedness
* cavern closing warning messages queued
* starting to set up ChatActor for /zlock command, and added /setbaseresources; conditions for correcting broadcast conditions of a locking warp gate pair; system for rotating through locking and unlocking cavern zones only uses two timers now and has an advance command that speeds to the next closing warning or cavern opening
* expedited cavern rotations available via '/zonerotate' and '!zonerotate [-list]'; '/zonelock' should work for caverns, though distorting the rotation order to accommodate the cavern being unlocked; configuration arguments exist for the setup of cavern rotations and for the rotation itself
* populated cavern lattice connections for a specific rotation order; warp gates will properly activate and deactivate and modify their neighborhood information based on which stage of the rotation; fed up with the blockmap going wrong; added a sanity test for the cavern lattice; Spiker damage calculation changes
* adjusted local variable requirements of BuildingActor to integrate retained actors more closely with the Behavior; on the other hand, another value is passed around the logic
* bug fixes observed from issues found in logs since 20220520; halved the spawn height when gating to a cavern warpgate
* cavern benefits are now represented by enumeration classes rather than additive binary numbers; when facilities change state, benefits are evaluated; when caverns rotate, benefits are evaluated; cavern facility logic added; attempted handling for inventory disarray conditions (untested)
* broke down tabs for easier navigation; added test to stop spawning of cavern equipment when not otherwise permitted
* code comments, everywhere; correcting issues with cavern rotation timing reports
* but is it flying?
* 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
* 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
* created base damage interaction classes and replaced various projectile-based damage that utilized ResolvedProjectile; not refined, maintains redundancy and overloads, but should work
* continuing to reduce the exposure of ResolvedProjectile and replacing it with applications of DamageInteraction, DamageResult, and DamageReason
* removed ResolvedProjectile from the project; adjusted remaining code paths to work around it
* vitals.test became vital.base; no one liked this
* lots of inheritance, polymorphism, and other chicanery; moved around files, so it also looks like more files have changed when they have not (even if they did)
* codecov file correction
* master rebase; vital directory structure changed, so file imports have been modified in several other files; ResolutionSelection has been removed, requiring direct function literal assignment; tests repaired, where necessary; no actual functional change
* code comments
* DamageResult is its own case class now, wrapping around a before/after target and the interaction used in its calaculations; tests have been corrected
* adjusted Player.Die() to demonstrate a damage-based suicide approach
* resolved circular inheritance in projectile damage modifiers; better employed explosion reason, damages players around exploding vehicle as example
* expanded explosions to other object types; exploding is now a flag and the damage is an innate property of the object type; removed advanced references to properties on the damage source, since the damage source is easily accessible; wrote comments; fixed tests
* overhaul to painbox damage to align with normal player damage handling, thus assimilating it properly into the damage system
* future development; normal vector from euler angles; custom proximity test
* where 'innateDamage' should have not replaced 'explosion'
* moved the hitPos for the generator test; attempting to imrpove the reliability of the auto-repair integration tests (didn't ...)
* spelling and private val