Commit graph

443 commits

Author SHA1 Message Date
FateJH
d43d94377b fixed awkward types.PlanetSideGUID references 2020-01-09 15:32:19 -05:00
FateJH
0c1486dbcc revamped IdentifiableEntity to work with a revamped PlanetSideGUID; GUID's now have a characteristic that they can be valid or stale (this is a container-level distinction, now a value-level distinction); all appropriate behaviors should be roughly the same as before the changes 2020-01-09 15:32:19 -05:00
FateJH
03bc52f52d moved PlanetSideGUID from .packet.game to .types; project threw a hissy fit 2020-01-09 15:32:19 -05:00
FateJH
f9414a6798 registered object retain their GUID after being unregistered 2020-01-09 15:32:19 -05:00
pschord
ae7f8bf71d Enable quiet tests using SBT config (#318)
* Enable quiet tests using SBT config

* Add logback-test.xml config to reduce log messages

* Hide "resolving" messages in CI environment

* Improve ScalaTest options to reduce SuiteStart events

* Hide EVEN MORE Specs2 output
2020-01-08 08:33:25 -05:00
FateJH
6c76997675 adjusted CommonFieldData to support jammering effect flag; fixed tests; made jammering sound and status contingent on state, but made cancelling sound and status always call up 2020-01-01 09:21:17 -05:00
FateJH
fee001596f correcting the inheritance of turrets (FacilityTurret and TurretDeployable) by untangling their definition structures; damage and jammering code for ComplexDeployable objects moved onto that object's control actor; setting up SimpleDeployable objects for jammering status; correcting an oversight with FacilityTurret jammering 2020-01-01 09:20:20 -05:00
FateJH
686676f9b9 jammering criteria selection and determination added; applying calculations to damage target (for projectiles) exposes the underlying cause of the damage 2020-01-01 09:19:05 -05:00
FateJH
515de6c507 transforming an 8u field into a 6u field; modifying all other values in code 2019-12-31 23:38:20 -05:00
Mazo
4d742e9fee Transfer base benefits via lattice (#307)
* 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
2019-12-27 11:50:34 -05:00
Chord
d2732550e8 Add additional VNL worlds to test 2019-12-18 13:39:02 -05:00
Chord
a54ee2f0b7 Refine VNL multi-world with new vector codec 2019-12-18 13:39:02 -05:00
Chord
37ad423820 Packet: Fix VNL packet to support multiple servers 2019-12-18 13:39:02 -05:00
Fate-JH
e4d607533f
moving ActorTest-style tests from common to pslogin (#300) 2019-12-13 03:00:55 -05:00
FateJH
c4bb0a77f6 resolutions 2; tests 2019-12-11 08:34:29 -05:00
Mazo
7b6063055a Basic lattice functionality (#296)
* Move isMoving check to outer block to fix scoping issues

* Initial basic lattice functionality

* Small tweaks to tests
2019-12-10 09:17:54 -05:00
Mazo
28beea4e30 MAX Capacitors (#297)
* fix isAnchored / isOverdrived faction check

* Faction specific MAX definitions

* GenericActionMessage documentation

* MAX Capacitor functionality and changes to damage resolution for NC MAX shield
2019-12-10 08:53:11 -05:00
Fate-JH
9ec97f279a
Zone-local Event Systems (#295)
* 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
2019-12-10 08:37:57 -05:00
Mazo
885387b734
Merge pull request #291 from Fate-JH/projectiles
Remote Projectiles
2019-12-09 11:21:37 +00:00
Mazo
2662be8778 Standardize constructors to have position as the first param and add positions to terminals (#294)
* Standardize constructors to have position as the first param and add positions to terminals

* Actually assign the position to the terminal object
2019-12-05 09:44:42 -05:00
Fate-JH
b2ec9d2cb6
Merge branch 'master' into projectiles 2019-11-29 11:19:17 -05:00
Fate-JH
a5a85e6cc3
Upper Body Angle (#292)
* 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.
2019-11-29 11:14:25 -05:00
FateJH
ed7406f25f last minute minor corrections 2019-11-14 13:51:08 -05:00
FateJH
693a3a5d78 proper remote projectile handling; allowances for the Decimator alt-fire mode; initial DamageMessage packet and tests; initial DamageFeedbackMessage packet and tests 2019-11-14 13:06:58 -05:00
FateJH
043512d6a3 proper PSM encoding/decoding; normal and alternate projectile flight handling; auto lock field on projectiles, to indicate whether that projectile should produce a warning message on the target's side when weapon is pointed at the target; business logic in WSA 2019-11-04 09:21:36 -05:00
FateJH
8952ab86f6 events for future expansion; added custom projectile remote client data for OCM packet creation; initial projectile velocity calculation; (too many) details when it comes to Enumerations for projectiles; hooked up theoretical projectile creatiuon, management, and deletion 2019-10-30 22:54:45 -04:00
FateJH
f1c73688f7 removed fire mode override for the Phoenix; added events for loading and manipulation of remote projectiles to AvatarService; ProjectileStateMessage handles projectile data in a simple way; remote projectiles can now be registered and unregistered 2019-10-30 22:53:16 -04:00
FateJH
fa7365e8af modified TrackedProjectileData codec and tests; changed Projectile into a game object; added comments and entries missing from the basic ObjectClass lists; projectile packet converter added but untested 2019-10-30 22:51:26 -04:00
FateJH
56c7c4544e added flags to indicate the projectile must be handled using the server as an intermediary; eliminated obsolete enumeration data; added analysis for the oicw_little_buddy 2019-10-30 22:51:26 -04:00
Fate-JH
ad29bfe16a Select Changes from My Original Securities Branch (#286)
* select changes from my original securities branch

* nanoTime -> currentTimeMillis
2019-10-23 17:21:16 -04:00
FateJH
93f2264f61 added enumeration for squad waypoints and changed field datatypes where appriopriate; added assertions to squad detail packet; removed old logic from squad request and squad response enumerations; WSA lfs -> lfsm 2019-10-20 15:34:01 -04:00
FateJH
aa2e0089a4 stop player from inviting himself to own squad; periodic squad updates; fixed squad listing hangup; fixed damage calculation tests 2019-10-19 17:24:12 -04:00
FateJH
0c105f3826 repaired some broken tests; LoadoutManager respects length; squad ids attempt to reset only when no players are logged in 2019-10-17 16:27:19 -04:00
FateJH
5a1527ae10 small touch-up 2019-10-08 18:47:03 -04:00
FateJH
3e631657b8 significant refactoring in SquadService operations; properly force the player to leave any participating squad when WSA stops 2019-10-08 09:10:56 -04:00
FateJH
60d65e22d3 added a refactored squad joining entrypoint; initial work and test on SquadWaypointEvent packet; initial work on SquadWaypointRequest packet; squad waypoints up to #5 (squad experience) should be working 2019-10-08 09:10:56 -04:00
FateJH
e5b2efd381 better support for the various ways to join a squad, and the various ways to leave a squad; squad-based messages; jury-rigged 'player wants to join' operations 2019-10-08 09:10:56 -04:00
FateJH
24691ec239 initial work on SquadInvitationRequestMessage packet, originally by aphedox; initial work on packet and tests for CharacterKnowledgeMessage; re-organization of SquadService workflow; prototyping for SquadSwitchboard 2019-10-08 09:10:56 -04:00
FateJH
f81c87ce22 split original aphedox SquadRequestType's into two different enumerations, one for Request and the other for Response; added functionality for more squad interactions; squad favorites, excepting the ability to actually load them onto one's client; extensive comments about SquadResponseMessage events 2019-10-08 09:10:56 -04:00
FateJH
60a11b8c52 sufficient functionality that allows the UI for squads to display properly on squad joining and on squad leaving; clarification for SquadMemberEvent fields; QoL support functionality intergrated into SDDUM streams 2019-10-08 09:10:06 -04:00
FateJH
2a1b051710 completed form of SquadDetailDefinitionUpdate 2019-10-08 09:09:33 -04:00
FateJH
d9619e4185 conversion of variable field SquadDetailDefinitionUpdateMessage mostly complete, handling more than 99% of cases in our captures; modifications to existing test-important SSDUM packet in WSA 2019-10-08 09:09:33 -04:00
FateJH
fd9a3a0216 commit before changes, and to switch gears momentarily; making charId somewhat native to Avatar and its converter, though not yet essential; protype for squad definition loadouts, even though no example of functionality exists; a lot of unimplemented work in preparation to convert SquadDetailDefinitionUpdateMessage from a static format to a variable-field format 2019-10-08 09:09:33 -04:00
FateJH
14bdcb7a7e a lot of squad-relatd setup for little payoff; initial packet and test for SquadMemberEvent, originally by Aphedox; initial packet and tests for SquadState; new SquadDefinitionAction actions; a common initial SquadDetailDefinitionUpdate form 2019-10-08 09:09:33 -04:00
FateJH
9cf1cd92cc communication of the details information for a squad and refactored messaging back to WSA; removed an unused description field from the squad and added two fields that were actually represented 2019-10-08 09:09:33 -04:00
FateJH
5c433204cf initial work and dummy tests for SquadDetailDefinitionUpdateMessage packet; 46-bit certification encoding; indicating four previously unhandled SquadAction types; the squad leader is allowed to move around his squad 2019-10-08 09:09:33 -04:00
FateJH
afb10f57c3 restored SquadDefinitionActionMessage to the past upgrade form that was lost; preliminary objects for squad infromation and squad member position information 2019-10-08 09:07:52 -04:00
FateJH
6fdc617a87 overhaul of ReplicationStreamMessage to make the object form of the packet less of a hassle to compose; updated tests for RSM 2019-10-08 09:07:52 -04:00
FateJH
e44d21520a initial SquadMembershipResponse packet and tests; re-naming some SquadRequestType values 2019-10-08 09:06:57 -04:00
FateJH
f45420b511 ; moved from brnach squad-req, due to branch incompatibilities 2019-10-08 09:06:57 -04:00