fix sub_version flags for GC Ep1&2 EU
This commit is contained in:
@@ -50,42 +50,6 @@ struct Client {
|
|||||||
ENCRYPTED_SEND_FUNCTION_CALL = 0x0800,
|
ENCRYPTED_SEND_FUNCTION_CALL = 0x0800,
|
||||||
// Client supports send_function_call but does not actually run the code
|
// Client supports send_function_call but does not actually run the code
|
||||||
SEND_FUNCTION_CALL_CHECKSUM_ONLY = 0x1000,
|
SEND_FUNCTION_CALL_CHECKSUM_ONLY = 0x1000,
|
||||||
|
|
||||||
DEFAULT_V1_DC =
|
|
||||||
DCV1 |
|
|
||||||
NO_MESSAGE_BOX_CLOSE_CONFIRMATION |
|
|
||||||
DOES_NOT_SUPPORT_SEND_FUNCTION_CALL,
|
|
||||||
|
|
||||||
DEFAULT_V2_DC =
|
|
||||||
NO_MESSAGE_BOX_CLOSE_CONFIRMATION,
|
|
||||||
|
|
||||||
DEFAULT_V2_PC =
|
|
||||||
NO_MESSAGE_BOX_CLOSE_CONFIRMATION |
|
|
||||||
SEND_FUNCTION_CALL_CHECKSUM_ONLY,
|
|
||||||
|
|
||||||
DEFAULT_V3_GC = 0,
|
|
||||||
|
|
||||||
DEFAULT_V3_GC_PLUS =
|
|
||||||
NO_MESSAGE_BOX_CLOSE_CONFIRMATION_AFTER_LOBBY_JOIN |
|
|
||||||
ENCRYPTED_SEND_FUNCTION_CALL,
|
|
||||||
|
|
||||||
DEFAULT_V3_GC_PLUS_NO_SFC =
|
|
||||||
DEFAULT_V3_GC_PLUS |
|
|
||||||
DOES_NOT_SUPPORT_SEND_FUNCTION_CALL,
|
|
||||||
|
|
||||||
DEFAULT_V3_GC_EP3 =
|
|
||||||
NO_MESSAGE_BOX_CLOSE_CONFIRMATION_AFTER_LOBBY_JOIN |
|
|
||||||
EPISODE_3 |
|
|
||||||
ENCRYPTED_SEND_FUNCTION_CALL,
|
|
||||||
|
|
||||||
DEFAULT_V3_GC_EP3_NO_SFC =
|
|
||||||
DEFAULT_V3_GC_EP3 |
|
|
||||||
DOES_NOT_SUPPORT_SEND_FUNCTION_CALL,
|
|
||||||
|
|
||||||
DEFAULT_V4_BB =
|
|
||||||
NO_MESSAGE_BOX_CLOSE_CONFIRMATION_AFTER_LOBBY_JOIN |
|
|
||||||
NO_MESSAGE_BOX_CLOSE_CONFIRMATION |
|
|
||||||
SAVE_ENABLED,
|
|
||||||
};
|
};
|
||||||
|
|
||||||
uint64_t id;
|
uint64_t id;
|
||||||
|
|||||||
+28
-13
@@ -12,40 +12,55 @@ using namespace std;
|
|||||||
|
|
||||||
uint16_t flags_for_version(GameVersion version, int64_t sub_version) {
|
uint16_t flags_for_version(GameVersion version, int64_t sub_version) {
|
||||||
switch (sub_version) {
|
switch (sub_version) {
|
||||||
case -1: // initial check (before 9E recognition)
|
case -1: // Initial check (before 9E recognition)
|
||||||
switch (version) {
|
switch (version) {
|
||||||
case GameVersion::DC:
|
case GameVersion::DC:
|
||||||
return Client::Flag::DEFAULT_V2_DC;
|
// TODO: For DCv1, the flags should be:
|
||||||
|
// Client::Flag::DCV1 |
|
||||||
|
// Client::Flag::NO_MESSAGE_BOX_CLOSE_CONFIRMATION |
|
||||||
|
// Client::Flag::DOES_NOT_SUPPORT_SEND_FUNCTION_CALL
|
||||||
|
return Client::Flag::NO_MESSAGE_BOX_CLOSE_CONFIRMATION;
|
||||||
case GameVersion::GC:
|
case GameVersion::GC:
|
||||||
case GameVersion::XB:
|
case GameVersion::XB:
|
||||||
return Client::Flag::DEFAULT_V3_GC;
|
return 0;
|
||||||
case GameVersion::PC:
|
case GameVersion::PC:
|
||||||
return Client::Flag::DEFAULT_V2_PC;
|
return Client::Flag::NO_MESSAGE_BOX_CLOSE_CONFIRMATION |
|
||||||
|
Client::Flag::SEND_FUNCTION_CALL_CHECKSUM_ONLY;
|
||||||
case GameVersion::PATCH:
|
case GameVersion::PATCH:
|
||||||
return Client::Flag::DEFAULT_V2_PC;
|
return Client::Flag::NO_MESSAGE_BOX_CLOSE_CONFIRMATION |
|
||||||
|
Client::Flag::DOES_NOT_SUPPORT_SEND_FUNCTION_CALL;
|
||||||
case GameVersion::BB:
|
case GameVersion::BB:
|
||||||
return Client::Flag::DEFAULT_V4_BB;
|
return Client::Flag::NO_MESSAGE_BOX_CLOSE_CONFIRMATION |
|
||||||
|
Client::Flag::SAVE_ENABLED;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 0x29: // PC
|
case 0x29: // PC
|
||||||
return Client::Flag::DEFAULT_V2_PC;
|
return Client::Flag::NO_MESSAGE_BOX_CLOSE_CONFIRMATION |
|
||||||
|
Client::Flag::SEND_FUNCTION_CALL_CHECKSUM_ONLY;
|
||||||
case 0x30: // GC Ep1&2 JP v1.02, at least one version of PSO XB
|
case 0x30: // GC Ep1&2 JP v1.02, at least one version of PSO XB
|
||||||
case 0x31: // GC Ep1&2 US v1.00, GC US v1.01, GC EU v1.00, GC JP v1.00
|
case 0x31: // GC Ep1&2 US v1.00, GC US v1.01, GC EU v1.00, GC JP v1.00
|
||||||
|
case 0x34: // GC Ep1&2 JP v1.03
|
||||||
|
return 0;
|
||||||
case 0x32: // GC Ep1&2 EU 50Hz
|
case 0x32: // GC Ep1&2 EU 50Hz
|
||||||
case 0x33: // GC Ep1&2 EU 60Hz
|
case 0x33: // GC Ep1&2 EU 60Hz
|
||||||
case 0x34: // GC Ep1&2 JP v1.03
|
return Client::Flag::NO_MESSAGE_BOX_CLOSE_CONFIRMATION_AFTER_LOBBY_JOIN;
|
||||||
return Client::Flag::DEFAULT_V3_GC;
|
|
||||||
case 0x35: // GC Ep1&2 JP v1.04 (Plus)
|
case 0x35: // GC Ep1&2 JP v1.04 (Plus)
|
||||||
return Client::Flag::DEFAULT_V3_GC_PLUS;
|
return Client::Flag::NO_MESSAGE_BOX_CLOSE_CONFIRMATION_AFTER_LOBBY_JOIN |
|
||||||
|
Client::Flag::ENCRYPTED_SEND_FUNCTION_CALL;
|
||||||
case 0x36: // GC Ep1&2 US v1.02 (Plus)
|
case 0x36: // GC Ep1&2 US v1.02 (Plus)
|
||||||
case 0x39: // GC Ep1&2 JP v1.05 (Plus)
|
case 0x39: // GC Ep1&2 JP v1.05 (Plus)
|
||||||
return Client::Flag::DEFAULT_V3_GC_PLUS_NO_SFC;
|
return Client::Flag::NO_MESSAGE_BOX_CLOSE_CONFIRMATION_AFTER_LOBBY_JOIN |
|
||||||
|
Client::Flag::DOES_NOT_SUPPORT_SEND_FUNCTION_CALL;
|
||||||
case 0x42: // GC Ep3 JP
|
case 0x42: // GC Ep3 JP
|
||||||
return Client::Flag::DEFAULT_V3_GC_EP3;
|
return Client::Flag::NO_MESSAGE_BOX_CLOSE_CONFIRMATION_AFTER_LOBBY_JOIN |
|
||||||
|
Client::Flag::EPISODE_3 |
|
||||||
|
Client::Flag::ENCRYPTED_SEND_FUNCTION_CALL;
|
||||||
case 0x40: // GC Ep3 trial (TODO: Does this support send_function_call?)
|
case 0x40: // GC Ep3 trial (TODO: Does this support send_function_call?)
|
||||||
case 0x41: // GC Ep3 US
|
case 0x41: // GC Ep3 US
|
||||||
case 0x43: // GC Ep3 EU
|
case 0x43: // GC Ep3 EU
|
||||||
return Client::Flag::DEFAULT_V3_GC_EP3_NO_SFC;
|
return Client::Flag::NO_MESSAGE_BOX_CLOSE_CONFIRMATION_AFTER_LOBBY_JOIN |
|
||||||
|
Client::Flag::EPISODE_3 |
|
||||||
|
Client::Flag::DOES_NOT_SUPPORT_SEND_FUNCTION_CALL;
|
||||||
}
|
}
|
||||||
throw runtime_error("unknown sub_version");
|
throw runtime_error("unknown sub_version");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -111,7 +111,7 @@ I 80350 2022-07-07 23:26:22 - [Commands] Received from C-3 (version=BB command=0
|
|||||||
I 80350 2022-07-07 23:26:22 - [Commands] Sending to C-3 (version=BB command=00E6 flag=00000000)
|
I 80350 2022-07-07 23:26:22 - [Commands] Sending to C-3 (version=BB command=00E6 flag=00000000)
|
||||||
0000000000000000 | 44 00 E6 00 00 00 00 00 00 00 00 00 00 00 01 00 | D
|
0000000000000000 | 44 00 E6 00 00 00 00 00 00 00 00 00 00 00 01 00 | D
|
||||||
0000000000000010 | 5B 30 B0 21 10 11 69 77 39 98 AC 82 0E 89 2A 49 | [0 ! iw9 *I
|
0000000000000010 | 5B 30 B0 21 10 11 69 77 39 98 AC 82 0E 89 2A 49 | [0 ! iw9 *I
|
||||||
0000000000000020 | 06 04 00 00 00 00 00 00 FF FF FF FF FF FF FF FF |
|
0000000000000020 | 04 04 00 00 00 00 00 00 FF FF FF FF FF FF FF FF |
|
||||||
0000000000000030 | FF FF FF FF FF FF FF FF 00 00 FF FF FF FF FF FF |
|
0000000000000030 | FF FF FF FF FF FF FF FF 00 00 FF FF FF FF FF FF |
|
||||||
0000000000000040 | 02 01 00 00 |
|
0000000000000040 | 02 01 00 00 |
|
||||||
I 80350 2022-07-07 23:26:22 - [Commands] Sending to C-3 (version=BB command=0019 flag=00000000)
|
I 80350 2022-07-07 23:26:22 - [Commands] Sending to C-3 (version=BB command=0019 flag=00000000)
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ I 94711 2022-07-26 00:24:56 - [Commands] Received from C-7 (version=GC command=9
|
|||||||
0000000000000140 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |
|
0000000000000140 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |
|
||||||
I 94711 2022-07-26 00:24:56 - [Commands] Sending to C-7 (version=GC command=04 flag=00)
|
I 94711 2022-07-26 00:24:56 - [Commands] Sending to C-7 (version=GC command=04 flag=00)
|
||||||
0000000000000000 | 04 00 2C 00 00 00 01 00 78 62 F8 10 39 98 AC 82 | , xb 9
|
0000000000000000 | 04 00 2C 00 00 00 01 00 78 62 F8 10 39 98 AC 82 | , xb 9
|
||||||
0000000000000010 | 0E 89 2A 49 0A 0B 00 00 00 00 00 00 FF FF FF FF | *I
|
0000000000000010 | 0E 89 2A 49 0A 03 00 00 00 00 00 00 FF FF FF FF | *I
|
||||||
0000000000000020 | FF FF FF FF FF FF FF FF FF FF FF FF |
|
0000000000000020 | FF FF FF FF FF FF FF FF FF FF FF FF |
|
||||||
I 94711 2022-07-26 00:24:56 - [Commands] Sending to C-7 (version=GC command=B8 flag=00)
|
I 94711 2022-07-26 00:24:56 - [Commands] Sending to C-7 (version=GC command=B8 flag=00)
|
||||||
0000000000000000 | B8 00 E0 71 D5 71 00 00 61 00 FF 01 00 87 F8 FF | q q a
|
0000000000000000 | B8 00 E0 71 D5 71 00 00 61 00 FF 01 00 87 F8 FF | q q a
|
||||||
@@ -1921,7 +1921,7 @@ I 94711 2022-07-26 00:24:59 - [Commands] Sending to C-7 (version=GC command=07 f
|
|||||||
00000000000000C0 | 6E 73 65 00 00 00 00 00 | nse
|
00000000000000C0 | 6E 73 65 00 00 00 00 00 | nse
|
||||||
I 94711 2022-07-26 00:24:59 - [Commands] Sending to C-7 (version=GC command=04 flag=00)
|
I 94711 2022-07-26 00:24:59 - [Commands] Sending to C-7 (version=GC command=04 flag=00)
|
||||||
0000000000000000 | 04 00 2C 00 00 00 01 00 78 62 F8 10 39 98 AC 82 | , xb 9
|
0000000000000000 | 04 00 2C 00 00 00 01 00 78 62 F8 10 39 98 AC 82 | , xb 9
|
||||||
0000000000000010 | 0E 89 2A 49 0A 0A 00 00 00 00 00 00 FF FF FF FF | *I
|
0000000000000010 | 0E 89 2A 49 0A 02 00 00 00 00 00 00 FF FF FF FF | *I
|
||||||
0000000000000020 | FF FF FF FF FF FF FF FF FF FF FF FF |
|
0000000000000020 | FF FF FF FF FF FF FF FF FF FF FF FF |
|
||||||
I 94711 2022-07-26 00:25:06 - [Commands] Received from C-7 (version=GC command=10 flag=00)
|
I 94711 2022-07-26 00:25:06 - [Commands] Received from C-7 (version=GC command=10 flag=00)
|
||||||
0000000000000000 | 10 00 0C 00 11 00 00 11 11 33 33 11 | 33
|
0000000000000000 | 10 00 0C 00 11 00 00 11 11 33 33 11 | 33
|
||||||
@@ -2037,7 +2037,7 @@ I 94711 2022-07-26 00:25:12 - [Commands] Sending to C-7 (version=GC command=97 f
|
|||||||
0000000000000000 | 97 01 04 00 |
|
0000000000000000 | 97 01 04 00 |
|
||||||
I 94711 2022-07-26 00:25:12 - [Commands] Sending to C-7 (version=GC command=04 flag=00)
|
I 94711 2022-07-26 00:25:12 - [Commands] Sending to C-7 (version=GC command=04 flag=00)
|
||||||
0000000000000000 | 04 00 2C 00 00 00 01 00 78 62 F8 10 39 98 AC 82 | , xb 9
|
0000000000000000 | 04 00 2C 00 00 00 01 00 78 62 F8 10 39 98 AC 82 | , xb 9
|
||||||
0000000000000010 | 0E 89 2A 49 0A 0E 00 00 00 00 00 00 FF FF FF FF | *I
|
0000000000000010 | 0E 89 2A 49 0A 06 00 00 00 00 00 00 FF FF FF FF | *I
|
||||||
0000000000000020 | FF FF FF FF FF FF FF FF FF FF FF FF |
|
0000000000000020 | FF FF FF FF FF FF FF FF FF FF FF FF |
|
||||||
I 94711 2022-07-26 00:25:12 - [Commands] Received from C-7 (version=GC command=B1 flag=00)
|
I 94711 2022-07-26 00:25:12 - [Commands] Received from C-7 (version=GC command=B1 flag=00)
|
||||||
0000000000000000 | B1 00 04 00 |
|
0000000000000000 | B1 00 04 00 |
|
||||||
|
|||||||
Reference in New Issue
Block a user