Closed NoseyNick closed 6 years ago
See also #116
To clarify...
Target (bit 1.1, int) Impulse (bit 1.2, float) Rudder (bit 1.3, float) MaxImpulse (bit 1.4, float) TurnRate (bit 1.5, float) AutoBeams (bit 1.6, byte) WarpFactor (bit 1.7, byte) Energy (bit 1.8, float) ShieldsUp (bit 2.1, short) Unknown22 (bit 2.2, int) ShipType (bit 2.3, int) X (bit 2.4, float) Y (bit 2.5, float) Z (bit 2.6, float) Pitch (bit 2.7, float) Roll (bit 2.8, float) Heading (bit 3.1, float) Velocity (bit 3.2, float) InNebula (bit 3.3, byte) Name (bit 3.4, string) ForeShields (bit 3.5, float) ForeShieldsMax (bit 3.6, float) AftShields (bit 3.7, float) AftShieldsMax (bit 3.8, float) LastDockedBase (bit 4.1, int) RedAlert (bit 4.2, byte) Unknown43 (bit 4.3, float) MainScreenView (bit 4.4, byte) BeamFreq (bit 4.5, byte) AvailableCoolant (bit 4.6, byte) ScienceTarget (bit 4.7, int) CaptainTarget (bit 4.8, int) DriveType (bit 5.1, byte) ScanningID (bit 5.2, int) ScanningProgress (bit 5.3, float) Reverse (bit 5.4, byte) Unknown55 (bit 5.5, int) Side (bit 5.6, byte) Unknown57 (bit 5.7, int) ShipNum (bit 5.8, byte) CapShipID (bit 6.1, int) AccentHue (bit 6.2, float) EmergencyJumpTime (bit 6.3, float) BeaconType (bit 6.4, byte) BeaconDir (bit 6.5, byte)
Name (bit 1.1, string) Throttle (bit 1.2, float) Rudder (bit 1.3, float) MaxImpulse (bit 1.4, float) MaxTurnRate (bit 1.5, float) IsEnemy (bit 1.6, int) VesselType (bit 1.7, int) X (bit 1.8, float) Y (bit 2.1, float) Z (bit 2.2, float) Pitch (bit 2.3, float) Roll (bit 2.4, float) Heading (bit 2.5, float) Velocity (bit 2.6, float) Surrendered (bit 2.7, byte) Unknown28 (bit 2.8, byte) ForeShields (bit 3.1, float) ForeShieldsMax (bit 3.2, float) AftShields (bit 3.3, float) AftShieldsMax (bit 3.4, float) Unknown35 (bit 3.5, short) FleetNum (bit 3.6, byte) EliteAbility (bit 3.7, int) EliteInUse (bit 3.8, int) SingleScan (bit 4.1, int) DoubleScan (bit 4.2, int) ShowOnMaps (bit 4.3, int) Side (bit 4.4, byte) Unknown45 (bit 4.5, byte) Unknown46 (bit 4.6, byte) Unknown47 (bit 4.7, byte) targetPointX (bit 4.8, float) targetPointY (bit 5.1, float) targetPointZ (bit 5.2, float) Tagged (bit 5.3, byte) Unknown54 (bit 5.4, byte) BeamsDamg (bit 5.5, float) TorpsDamg (bit 5.6, float) SenseDamg (bit 5.7, float) ManuvDamg (bit 5.8, float) ImpulDamg (bit 6.1, float) DriveDamg (bit 6.2, float) FShldDamg (bit 6.3, float) AShldDamg (bit 6.4, float) ShFreqA (bit 6.5, float) ShFreqB (bit 6.6, float) ShFreqC (bit 6.7, float) ShFreqD (bit 6.8, float) ShFreqE (bit 7.1, float)
X (bit 1.1, float) Y (bit 1.2, float) Z (bit 1.3, float) R (bit 1.4, float) G (bit 1.5, float) B (bit 1.6, float) nebType (bit 1.7, byte)
X (bit 1.1, float) Y (bit 1.2, float) Z (bit 1.3, float) Name (bit 1.4, string) Heading (bit 1.5, float) Pitch (bit 1.6, float) Roll (bit 1.7, float) CreatureType (bit 1.8, int) Unknown21 (bit 2.1, int) Unknown22 (bit 2.2, int) Unknown23 (bit 2.3, int) Unknown24 (bit 2.4, int) Unknown25 (bit 2.5, int) Unknown26 (bit 2.6, int) Health (bit 2.7, float) MaxHealth (bit 2.8, float) Unknown31 (bit 3.1, byte) Unknown32 (bit 3.2, int)
http://noseynick.org/artemis/ parser.pl --protover 27 --objdocs 😄
Anomaly PickupType=9 seen in the wild, despite not being defined in 2.7.0/mission-file-docs.txt Details TBC - will have to find + pick one up.
GenericMesh also gets an extra Unknown int (or at least 4-byte field) added to the end. Suspicion would be that this is scanning-related, considering changes.txt says "changes for V2.6.3 [...] GenericMeshs can now be selected and scanned by the Science console"
X (bit 1.1, float) Y (bit 1.2, float) Z (bit 1.3, float) Unknown (bit 1.4, int) Unknown (bit 1.5, int) Unknown (bit 1.6, int) roll (bit 1.7, float) pitch (bit 1.8, float) angle (bit 2.1, float) rollDelta (bit 2.2, float) pitchDelta (bit 2.3, float) angleDelta (bit 2.4, float) Name (bit 2.5, string) meshFileName (bit 2.6, string) textureFileName (bit 2.7, string) pushRadius (bit 2.8, float) blocksShotFlag (bit 3.1, byte) artScale (bit 3.2, float) ColorRed (bit 3.3, float) ColorGreen (bit 3.4, float) ColorBlue (bit 3.5, float) fakeShieldsFront (bit 3.6, float) fakeShieldsRear (bit 3.7, float) Unknown (bit 3.8, byte) Unknown (bit 4.1, string) Unknown (bit 4.2, string) Unknown (bit 4.3, int) <-- this is the new one
PlayerShip "In a nebula (bit 3.3, boolean, byte)" tells you which "nebType" you are in (1,2,3) or 0 for "not in a nebula". Apart from the fact that 3 nebTypes exist, there seems to be no notable difference between them from a game mechanics perspective, they all limit you to warp1. Scripting may (ab)use the different types for story purposes.
See also #122
Just a quick note here, because it looks like it doesn't deserve a new ticket...
From a protocol perspective: None, as far as we can tell :laughing:
In addition to everything in #93 ...
PlayerShip "In a nebula (bit 3.3, boolean, 2 bytes)" becomes "In a nebula (bit 3.3, boolean, byte)". Though it's USUALLY 0 or 1, plenty of other values have been observed (especially 2 and 3).
This is a bit suspicious.(see below)NPCShip "Unknown (bit 2.8, short)" becomes "Unknown (bit 2.8, byte)" Again 0, 1, 2, 3 popular, (most) other values have been observed. (Obviously we're a bit suspicious this implies it means "In a nebula" but haven't proved that yet).
Nebula gets an extra "Unknown (bit 1.7, int)" appended to the end. We assume
(but haven't yet proved)that this has to be the new "Flavor", and indeed values of 1-3 would be consistent with that.It's plausible the PlayerShip / NPCShip "In a nebula" values "often 0,1,2,3" are trying to convey the flavor of nebula you're in?
Again unproven.Creature gets a new Unknown (bit 3.2, int) after the Unknown (bit 3.1, byte) mentioned in #56 Unknown (bit 3.1, byte) seems to be 1, 2, or 3 - do creatures like to eat a particular "flavor" of nebula? Unknown (bit 3.2, int) is usually -1 but has a whole bunch of other values too 😕