diff --git a/.gitignore b/.gitignore index ea6adc7..8081a75 100644 --- a/.gitignore +++ b/.gitignore @@ -29,3 +29,4 @@ # Other samp.exe USERDATA.DAT +Thumbs.db diff --git a/README.md b/README.md new file mode 100644 index 0000000..edc4572 --- /dev/null +++ b/README.md @@ -0,0 +1,36 @@ +# San Andreas Multiplayer + +This is an ongoing work-in-progress decompilation of the latest version of San Andreas Multiplayer (SA-MP), a free Massively Multiplayer Online game mod for the PC version of Rockstar Games Grand Theft Auto: San Andreas. + +The project aims to be a matching decompilation. Meaning, producing a source code base that, when it's recompiled with the same compiler the original developers used, outputs the exact same binary as the original one. + +Decompiling and extracting the containing binaries from the following version packages: + +| Name | MD5 | +| --- | --- | +| sa-mp-0.3.7-R5-1-install.exe | `f7874cc8637e5ddb98b07ed40a24de58` | +| samp037_svr_R3_win32.zip | `1f35cc9fbfd4db61e0f8fe1efce362ec` | +| samp037svr_R3.tar.gz | `901286f80f8a5ac9bd784f6091337f84` | + +## Progress + + +| Name | Status | MD5 | +| --- | --- | --- | +| samp.exe | 0% (0 / 6614) | `74B837FA2245116229D076D6863E41BC` | +| samp_debug.exe | 0% (0 / 835) | `2C00C60A5511C3A41A70296FD1879067` | +| samp.dll | 0.2% (14 / 6366) | `5BA5F0BE7AF99DFD03FB39E88A970A2B` | +| rcon.exe | 100.0% (123 / 123) | `3F4821CDA1DE6D7D10654E5537B4DF6E` | +| samp-server.exe | 0% (0 / 3860) | `4CB042A55B8837EA42A5C44D1BEA5AC8` | +| samp03svr | 0% (0 / 4181) | `8EF11F89BFF946F0BBCDEC32F98CECEB` | +| announce.exe | 100.0% (133 / 133) | `B4FCC1C57C10B87427FA1AE3E02B70C6` | +| announce | 0% (0 / 74) | `F6E1475A7F69B648D7809A777271B73F` | +| samp-npc.exe | 0% (0 / 1465) | `27F10BE9A4ED09E4B102952BC5652F3E` | +| samp-npc | 0% (0 / 2618) | `DEDDC5AA62C0F6E144C5DF3B4FBAD50E` | + + +Status values may not be 100% accurate and will fluctuate during the analyzation of the binary files. These numbers currently are based on the number of functions marked in light green color and the number of visible functions in the IDA Pro database, and this does not represent the overall byte-for-byte accuracy of the output file with the original one. + +## Building + +TODO diff --git a/idb/announce/announce b/idb/announce/announce new file mode 100644 index 0000000..1861469 Binary files /dev/null and b/idb/announce/announce differ diff --git a/idb/announce/announce.exe b/idb/announce/announce.exe new file mode 100644 index 0000000..22db845 Binary files /dev/null and b/idb/announce/announce.exe differ diff --git a/idb/announce/announce_ELF32.idb b/idb/announce/announce_ELF32.idb new file mode 100644 index 0000000..15eabc2 Binary files /dev/null and b/idb/announce/announce_ELF32.idb differ diff --git a/idb/announce/announce_PE32.idb b/idb/announce/announce_PE32.idb new file mode 100644 index 0000000..a6b45c7 Binary files /dev/null and b/idb/announce/announce_PE32.idb differ diff --git a/idb/launch3/samp_debug.exe b/idb/launch3/samp_debug.exe new file mode 100644 index 0000000..1da25d2 Binary files /dev/null and b/idb/launch3/samp_debug.exe differ diff --git a/idb/launch3/samp_debug.idb b/idb/launch3/samp_debug.idb new file mode 100644 index 0000000..97a7c7c Binary files /dev/null and b/idb/launch3/samp_debug.idb differ diff --git a/idb/rcon/rcon.idb b/idb/rcon/rcon.idb index a5fd791..c7c0d66 100644 Binary files a/idb/rcon/rcon.idb and b/idb/rcon/rcon.idb differ diff --git a/launch3/launch3.opt b/launch3/launch3.opt deleted file mode 100644 index 5263976..0000000 Binary files a/launch3/launch3.opt and /dev/null differ diff --git a/raknet/PacketEnumerations.h b/raknet/PacketEnumerations.h index 60ba7c4..e7d7468 100644 --- a/raknet/PacketEnumerations.h +++ b/raknet/PacketEnumerations.h @@ -42,7 +42,7 @@ enum ID_CONNECTED_PONG, /// 12: ??? - ID_UNK_12 = 12, + ID_AUTH_KEY = 12, /// 15: Connecting to a secured server/peer ID_SECURED_CONNECTION_RESPONSE = 15,