diff --git a/common/src/main/scala/net/psforever/packet/GamePacketOpcode.scala b/common/src/main/scala/net/psforever/packet/GamePacketOpcode.scala index 1117b9f4..b26a9834 100644 --- a/common/src/main/scala/net/psforever/packet/GamePacketOpcode.scala +++ b/common/src/main/scala/net/psforever/packet/GamePacketOpcode.scala @@ -18,14 +18,14 @@ object GamePacketOpcode extends Enumeration { type Type = Value val // OPCODES 0x00-0f - Unknown0, + Unknown0, // PPT_NULL in beta client LoginMessage, LoginRespMessage, ConnectToWorldRequestMessage, // found by searching for 83 F8 03 89 in IDA ConnectToWorldMessage, VNLWorldStatusMessage, - UnknownMessage6, - UnknownMessage7, + UnknownMessage6, // PPT_TRANSFERTOWORLDREQUEST + UnknownMessage7, // PPT_TRANSFERTOWORLDRESPONSE // 0x08 PlayerStateMessage, HitMessage, @@ -42,11 +42,11 @@ object GamePacketOpcode extends Enumeration { ChatMsg, CharacterNoRecordMessage, CharacterInfoMessage, - UnknownMessage21, + UnknownMessage21, // PPT_DISCONNECT BindPlayerMessage, - ObjectCreateMessage_Duplicate, + ObjectCreateMessage_Duplicate, // PPT_OBJECTCREATE // 0x18 - ObjectCreateMessage, + ObjectCreateMessage, // PPT_OBJECTCREATEDETAILED ObjectDeleteMessage, PingMsg, VehicleStateMessage, @@ -56,7 +56,7 @@ object GamePacketOpcode extends Enumeration { ActionResultMessage, // OPCODES 0x20-2f - UnknownMessage32, + UnknownMessage32, // PPT_ACTIONBEGIN ActionProgressMessage, ActionCancelMessage, ActionCancelAcknowledgeMessage, @@ -68,10 +68,10 @@ object GamePacketOpcode extends Enumeration { CreateShortcutMessage, ChangeShortcutBankMessage, ObjectAttachMessage, - UnknownMessage43, + UnknownMessage43, // PPT_OBJECTEMPTY PlanetsideAttributeMessage, RequestDestroyMessage, - UnknownMessage46, + UnknownMessage46, // PPT_EQUIPITEM CharacterCreateRequestMessage, // OPCODES 0x30-3f @@ -104,10 +104,10 @@ object GamePacketOpcode extends Enumeration { ChangeAmmoMessage, // 0x48 TimeOfDayMessage, - UnknownMessage73, + UnknownMessage73, // PPT_PROJECTILE_EVENT_BLOCK SpawnRequestMessage, DeployRequestMessage, - UnknownMessage76, + UnknownMessage76, // PPT_BUILDINGSTATECHANGED RepairMessage, ServerVehicleOverrideMsg, LashMessage, @@ -123,7 +123,7 @@ object GamePacketOpcode extends Enumeration { AvatarVehicleTimerMessage, // 0x58 AvatarImplantMessage, - UnknownMessage89, + UnknownMessage89, // PPT_SEARCHMESSAGE DelayedPathMountMsg, OrbitalShuttleTimeMsg, AIDamage, @@ -165,8 +165,8 @@ object GamePacketOpcode extends Enumeration { UnknownMessage122, DamageFeedbackMessage, DismountBuildingMsg, - UnknownMessage125, - UnknownMessage126, + UnknownMessage125, // PPT_MOUNTBUILDING + UnknownMessage126, // PPT_INTENDEDDROPZONE AvatarStatisticsMessage, // OPCODES 0x80-8f diff --git a/common/src/main/scala/net/psforever/packet/game/ObjectDetectedMessage.scala b/common/src/main/scala/net/psforever/packet/game/ObjectDetectedMessage.scala index 16851e9b..184a9d15 100644 --- a/common/src/main/scala/net/psforever/packet/game/ObjectDetectedMessage.scala +++ b/common/src/main/scala/net/psforever/packet/game/ObjectDetectedMessage.scala @@ -15,6 +15,14 @@ import shapeless.{::, HNil} * @param list list of detected objects; * normally contains at least one element */ + + /* + BETA CLIENT DEBUG INFO: + Detector + Sender + Object Count + Detected Object[] + */ final case class ObjectDetectedMessage(player_guid1 : PlanetSideGUID, player_guid2 : PlanetSideGUID, unk : Int, diff --git a/common/src/main/scala/net/psforever/packet/game/PlanetsideAttributeMessage.scala b/common/src/main/scala/net/psforever/packet/game/PlanetsideAttributeMessage.scala index d2eeb66e..8d320850 100644 --- a/common/src/main/scala/net/psforever/packet/game/PlanetsideAttributeMessage.scala +++ b/common/src/main/scala/net/psforever/packet/game/PlanetsideAttributeMessage.scala @@ -46,9 +46,13 @@ import scodec.codecs._ * `3 - staminaMax`
* `4 - armor`
* `5 - armorMax`
- * `6 - transform the (other) avatar in backpack on ground`
+ * `6 - PA_RELEASED - transform the (other) avatar in backpack on ground`
+ * `7 - Sets charge level for MAX capacitor`
+ * `8 - Enables empire specific max capacitor function - NC Shield, TR Overdrive, VS Jumpjets` + * `9 - Possibly unused now - PA_SHIELDSTRENGTH in beta client` * `14 - Something with grief`
* `15 - Weapon Lock. Value exemple : 600 to have 1 min lock. Max possible is 30min lock`
+ * `16 - PA_DECONSTRUCTING in beta client`
* `17 - BEP. Value seems to be the same as BattleExperienceMessage`
* `18 - CEP.`
* `19 - Anchors. Value is 0 to disengage, 1 to engage.`
@@ -107,8 +111,11 @@ import scodec.codecs._ * 43 : Fortification Engineering
* 44 : Assault Engineering
* 45 : Advanced Engineering (= Fortification Engineering + Assault Engineering) Must have Combat Engineering
- * `25 - Forget certifications (same order as 24)` - * `29 - Visible ?! That's not the cloaked effect, Maybe for spectator mode ?. Value is 0 to visible, 1 to invisible.`
+ * `25 - Forget certifications (same order as 24)`
+ * `26 - Certification reset timer (in seconds)` + * `27 - PA_JAMMED - plays jammed buzzing sound`
+ * `28 - PA_IMPLANT_ACTIVE - Plays implant sounds. Valid values seem to be up to 20.`
+ * `29 - PA_VAPORIZED - Visible ?! That's not the cloaked effect, Maybe for spectator mode ?. Value is 0 to visible, 1 to invisible.`
* `31 - Info under avatar name : 0 = LFS, 1 = Looking For Squad Members`
* `32 - Info under avatar name : 0 = Looking For Squad Members, 1 = LFS`
* `35 - BR. Value is the BR`
diff --git a/common/src/main/scala/net/psforever/packet/game/PlayerStateMessage.scala b/common/src/main/scala/net/psforever/packet/game/PlayerStateMessage.scala index a3758155..f5ced77c 100644 --- a/common/src/main/scala/net/psforever/packet/game/PlayerStateMessage.scala +++ b/common/src/main/scala/net/psforever/packet/game/PlayerStateMessage.scala @@ -38,7 +38,7 @@ import shapeless.{::, HNil} * @param facingYawUpper a "yaw" angle that represents the angle of the avatar's upper body with respect to its forward-facing direction; * this number is normally 0 for forward facing; * the range is limited between approximately 61 degrees of center turned to left or right - * @param unk1 na + * @param timestamp A sequential counter * @param is_crouching avatar is crouching * @param is_jumping avatar is jumping; * must remain flagged for jump to maintain animation @@ -51,7 +51,7 @@ final case class PlayerStateMessage(guid : PlanetSideGUID, facingYaw : Float, facingPitch : Float, facingYawUpper : Float, - unk1 : Int, + timestamp : Int, is_crouching : Boolean = false, is_jumping : Boolean = false, jump_thrust : Boolean = false, diff --git a/common/src/main/scala/net/psforever/packet/game/TriggerEnvironmentalDamageMessage.scala b/common/src/main/scala/net/psforever/packet/game/TriggerEnvironmentalDamageMessage.scala index 47028805..0f9335b5 100644 --- a/common/src/main/scala/net/psforever/packet/game/TriggerEnvironmentalDamageMessage.scala +++ b/common/src/main/scala/net/psforever/packet/game/TriggerEnvironmentalDamageMessage.scala @@ -19,6 +19,14 @@ import scodec.codecs._ * @param unk2 na; * usually 5L */ + + /* + BETA CLIENT DEBUG INFO: + Message type: %d (%s)\n length: %d\n + Environment Type: %u (%s)\n + Guid: %d\n + Damage Amount: %u\n + */ final case class TriggerEnvironmentalDamageMessage(unk1 : Int, target_guid : PlanetSideGUID, unk2 : Long) diff --git a/common/src/main/scala/net/psforever/packet/game/UseItemMessage.scala b/common/src/main/scala/net/psforever/packet/game/UseItemMessage.scala index be4eadad..1a69248a 100644 --- a/common/src/main/scala/net/psforever/packet/game/UseItemMessage.scala +++ b/common/src/main/scala/net/psforever/packet/game/UseItemMessage.scala @@ -31,6 +31,19 @@ import scodec.codecs._ * 0 when door 1 when use rek (252 then equipment term) * @param object_id the object id `object_guid`'s object */ + + /* + BETA CLIENT DEBUG INFO: + User GUID + UsedItem GUID + Target GUID + Old SlotIndex + Weapon Fire Use + RayTrace Start Position (3 fields - Vector3) + RayTrace Intersection Position (3 fields - Vector3) + Orientation (3 fields - Vector3) + Client Target ClassID + */ final case class UseItemMessage(avatar_guid : PlanetSideGUID, item_used_guid : PlanetSideGUID, object_guid : PlanetSideGUID, diff --git a/common/src/main/scala/net/psforever/packet/game/VehicleStateMessage.scala b/common/src/main/scala/net/psforever/packet/game/VehicleStateMessage.scala index bd6eac63..b5cf821d 100644 --- a/common/src/main/scala/net/psforever/packet/game/VehicleStateMessage.scala +++ b/common/src/main/scala/net/psforever/packet/game/VehicleStateMessage.scala @@ -29,6 +29,21 @@ import scodec.codecs._ * @param unk6 na * @see `PlacementData` */ + + /* + BETA CLIENT DEBUG INFO: + Guid + Agreement Id + Turn + Brakes + Position + Orientation + Velocity + Flight Status + Path Number + Has Damage Info %d (%d %d %d %d) + Cloaking + */ final case class VehicleStateMessage(vehicle_guid : PlanetSideGUID, unk1 : Int, pos : Vector3, diff --git a/pslogin/src/main/scala/WorldSessionActor.scala b/pslogin/src/main/scala/WorldSessionActor.scala index e285dbc5..704ea226 100644 --- a/pslogin/src/main/scala/WorldSessionActor.scala +++ b/pslogin/src/main/scala/WorldSessionActor.scala @@ -1104,7 +1104,7 @@ class WorldSessionActor extends Actor with MDCContextAware { msg.facingYaw, msg.facingPitch, msg.facingYawUpper, - unk1 = 0, + timestamp = 0, msg.is_crouching, msg.is_jumping, msg.jump_thrust,