artemis-nerds / protocol-docs

Unofficial documentation for the Artemis network and file protocols, written by the Artemis community
https://artemis-nerds.github.io/protocol-docs/
MIT License
8 stars 5 forks source link

0xf754c8fe:0x13 Detonate? #111

Closed NoseyNick closed 6 years ago

NoseyNick commented 6 years ago

0xf754c8fe:0x13 Described as "__server_unknown__4" In #79 I note:

"Speculated to have some relation to detonations" contains an "Unknown (int) Only the value 7 has been observed so far. Unknown function or significance".

I've seen some where it's 11.

I would add the observation that 7 happens to be the MINE ObjectType, 11 the TORPEDO type, further reinforcing the speculation that it may have some relation to detonations "immediately before DestroyObject(Mine, objID) or DestroyObject(Torpedo, objID)" :-D

I'm calling it "Detonate"

NoseyNick commented 6 years ago

Next steps for this one? I can't imagine being quick enough to inject a packet for a torpedo (well, maybe with enough automation) but could forge / inject a packet for a Mine?

NoseyNick commented 6 years ago

The DISCO server (point your 2.7.1 client to server noseynick.org) now includes...

objectBitStream( ObjMine(1013,  X=>50000,Y=>0,Z=>49000), ObjEOL() );
Detonate(ObjMine(1013));

... and demonstrates that this is a graphical detonation effect. There is a mine in front of the ship which explodes in a puff of red heat every "bar" of "music" (but is never deleted, so remains there and re-detonates repeatedly)

Packet type 0xf754c8fe = JamCRC("simpleEvent") Subtype 0x13 = "detonate" or "SmallExplosionPacket" or whatever you want to call it int Type = enum-object-type for the object that is exploding (0x07 or 0x0b for Mine or Torpedo) int ObjectID = the ObjectID of the Mine or Torpedo that is detonated.

This is visually a LOT like Kaboom aka ExplosionPacket (0xf754c8fe:0x00) but smaller I'd accept SmallExplosionPacket if you don't like "Detonate"?

( simpleEvent 0xf754c8fe:0x02 still never seen )