feat: Add support for version 2.6.5x

This commit is contained in:
amizing25
2024-10-23 05:06:28 +07:00
parent f77bcb04f7
commit e02ef8abbb
8 changed files with 13909 additions and 48184 deletions
+1
View File
@@ -55,6 +55,7 @@ tracing-bunyan-formatter = "0.3.9"
proto = { path = "proto/" } proto = { path = "proto/" }
proto-derive = { path = "proto/proto-derive" } proto-derive = { path = "proto/proto-derive" }
mhy-kcp = { path = "kcp/", features = ["tokio"] }
[profile.release] [profile.release]
+2 -2
View File
@@ -2,11 +2,11 @@ use crate::net::tools::FreesrData;
use super::*; use super::*;
static UNLOCKED_AVATARS: [u32; 57] = [ static UNLOCKED_AVATARS: [u32; 59] = [
8001, 1001, 1002, 1003, 1004, 1005, 1006, 1008, 1009, 1013, 1101, 1102, 1103, 1104, 1105, 1106, 8001, 1001, 1002, 1003, 1004, 1005, 1006, 1008, 1009, 1013, 1101, 1102, 1103, 1104, 1105, 1106,
1107, 1108, 1109, 1110, 1111, 1112, 1201, 1202, 1203, 1204, 1205, 1206, 1207, 1208, 1209, 1210, 1107, 1108, 1109, 1110, 1111, 1112, 1201, 1202, 1203, 1204, 1205, 1206, 1207, 1208, 1209, 1210,
1211, 1212, 1213, 1214, 1215, 1217, 1301, 1302, 1303, 1304, 1305, 1306, 1307, 1308, 1309, 1312, 1211, 1212, 1213, 1214, 1215, 1217, 1301, 1302, 1303, 1304, 1305, 1306, 1307, 1308, 1309, 1312,
1315, 1310, 1314, 1218, 1221, 1220, 1222, 1223, 1317, 1315, 1310, 1314, 1218, 1221, 1220, 1222, 1223, 1317, 1313, 1225,
]; ];
pub async fn on_get_avatar_data_cs_req( pub async fn on_get_avatar_data_cs_req(
+8 -8
View File
@@ -254,7 +254,7 @@ async fn create_battle_info(caster_id: u32, skill_index: u32) -> SceneBattleInfo
max_sp: 10_000, max_sp: 10_000,
}), }),
}), }),
skill_info: vec![], // skill_info: vec![],
}) })
} }
@@ -267,8 +267,8 @@ async fn create_battle_info(caster_id: u32, skill_index: u32) -> SceneBattleInfo
player_detail_info: Some(RogueMagicBattleUnitInfo { player_detail_info: Some(RogueMagicBattleUnitInfo {
item: Some(Item::BattleRogueMagicData(BattleRogueMagicData { item: Some(Item::BattleRogueMagicData(BattleRogueMagicData {
round_cnt: Some(BattleRogueMagicRoundCount { round_cnt: Some(BattleRogueMagicRoundCount {
hhfjaibgama: 3, eiganlcjpoi: 3,
mmkolnbikjh: 0, kdjdjompbbh: 0,
}), }),
battle_scepter_list: player battle_scepter_list: player
.battle_config .battle_config
@@ -278,8 +278,8 @@ async fn create_battle_info(caster_id: u32, skill_index: u32) -> SceneBattleInfo
let mut battle_scepter = BattleRogueMagicScepter { let mut battle_scepter = BattleRogueMagicScepter {
level: scepter.level, level: scepter.level,
scepter_id: scepter.id, scepter_id: scepter.id,
magic_unit_list: Vec::new(), magic_list: Vec::new(),
slot_count_map: HashMap::from([(3, 0), (4, 0), (5, 0)]), trench_count: HashMap::from([(3, 0), (4, 0), (5, 0)]),
}; };
let mut index = [0u32; 3]; let mut index = [0u32; 3];
@@ -292,7 +292,7 @@ async fn create_battle_info(caster_id: u32, skill_index: u32) -> SceneBattleInfo
}; };
let slot_index = &mut index[slot_type as usize - 3]; let slot_index = &mut index[slot_type as usize - 3];
battle_scepter.magic_unit_list.push(BattleRogueMagicUnit { battle_scepter.magic_list.push(BattleRogueMagicUnit {
level: component.level, level: component.level,
unit_id: component.id, unit_id: component.id,
slot_id: *slot_index, slot_id: *slot_index,
@@ -300,7 +300,7 @@ async fn create_battle_info(caster_id: u32, skill_index: u32) -> SceneBattleInfo
counter_map: Default::default(), counter_map: Default::default(),
}); });
*slot_index += 1; *slot_index += 1;
*battle_scepter.slot_count_map.get_mut(&slot_type).unwrap() += 1; *battle_scepter.trench_count.get_mut(&slot_type).unwrap() += 1;
} }
battle_scepter battle_scepter
@@ -308,7 +308,7 @@ async fn create_battle_info(caster_id: u32, skill_index: u32) -> SceneBattleInfo
.collect(), .collect(),
})), })),
}), }),
scepter: Some(Igefngnckog { ojibobnaikh: 5 }), scepter: Some(Cijjendfjlo { kklaobblgce: 5 }),
}); });
} }
+2 -1
View File
@@ -27,7 +27,8 @@ pub async fn on_player_heart_beat_cs_req(
res.download_data = Some(ClientDownloadData { res.download_data = Some(ClientDownloadData {
version: 51, version: 51,
time: res.server_time_ms as i64, time: res.server_time_ms as i64,
data: rbase64::decode("bG9jYWwgZnVuY3Rpb24gYmV0YV90ZXh0KG9iaikKICAgIGxvY2FsIGdhbWVPYmplY3QgPSBDUy5Vbml0eUVuZ2luZS5HYW1lT2JqZWN0LkZpbmQoIlVJUm9vdC9BYm92ZURpYWxvZy9CZXRhSGludERpYWxvZyhDbG9uZSkiKQoKICAgIGlmIGdhbWVPYmplY3QgdGhlbgogICAgICAgIGxvY2FsIHRleHRDb21wb25lbnQgPSBnYW1lT2JqZWN0OkdldENvbXBvbmVudEluQ2hpbGRyZW4odHlwZW9mKENTLlJQRy5DbGllbnQuTG9jYWxpemVkVGV4dCkpCgogICAgICAgIGlmIHRleHRDb21wb25lbnQgdGhlbgogICAgICAgICAgICB0ZXh0Q29tcG9uZW50LnRleHQgPSAiUm9iaW5TUiBpcyBhIGZyZWUgYW5kIG9wZW4gc291cmNlIHNvZnR3YXJlLiBkaXNjb3JkLmdnL3JldmVyc2Vkcm9vbXMiCiAgICAgICAgZW5kCiAgICBlbHNlCiAgICBlbmQKZW5kCgpiZXRhX3RleHQoKQ==").unwrap() data: rbase64::decode("bG9jYWwgZnVuY3Rpb24gYmV0YV90ZXh0KG9iaikKICAgIGxvY2FsIGdhbWVPYmplY3QgPSBDUy5Vbml0eUVuZ2luZS5HYW1lT2JqZWN0LkZpbmQoIlVJUm9vdC9BYm92ZURpYWxvZy9CZXRhSGludERpYWxvZyhDbG9uZSkiKQoKICAgIGlmIGdhbWVPYmplY3QgdGhlbgogICAgICAgIGxvY2FsIHRleHRDb21wb25lbnQgPSBnYW1lT2JqZWN0OkdldENvbXBvbmVudEluQ2hpbGRyZW4odHlwZW9mKENTLlJQRy5DbGllbnQuTG9jYWxpemVkVGV4dCkpCgogICAgICAgIGlmIHRleHRDb21wb25lbnQgdGhlbgogICAgICAgICAgICB0ZXh0Q29tcG9uZW50LnRleHQgPSAiUm9iaW5TUiBpcyBhIGZyZWUgYW5kIG9wZW4gc291cmNlIHNvZnR3YXJlLiBkaXNjb3JkLmdnL3JldmVyc2Vkcm9vbXMiCiAgICAgICAgZW5kCiAgICBlbHNlCiAgICBlbmQKZW5kCgpiZXRhX3RleHQoKQ==").unwrap(),
njddjhapnbo: 0
}); });
} }
+6 -5
View File
@@ -1,3 +1,5 @@
use std::collections::HashMap;
use lazy_static::lazy_static; use lazy_static::lazy_static;
use scene_entity_info::Entity; use scene_entity_info::Entity;
use tokio::sync::Mutex; use tokio::sync::Mutex;
@@ -50,12 +52,12 @@ pub async fn on_enter_scene_cs_req(
.await .await
.is_err() .is_err()
{ {
res.retcode = Nbbhhpnhond::RetSceneEntryIdNotMatch as u32; res.retcode = Retcode::RetSceneEntryIdNotMatch as u32;
return; return;
}; };
res.alckpiobhlb = req.alckpiobhlb; res.gfkihhopjdg = req.gfkihhopjdg;
res.gpjeedfjhaj = player.scene.entry_id != req.entry_id; res.ihoaaecihik = player.scene.entry_id != req.entry_id;
} }
pub async fn on_get_scene_map_info_cs_req( pub async fn on_get_scene_map_info_cs_req(
@@ -350,8 +352,6 @@ async fn load_scene(
scene_info.entity_group_list.push(group_info); scene_info.entity_group_list.push(group_info);
scene_info.group_id_list.push(*group_id);
scene_info.group_state_list.push(SceneGroupState { scene_info.group_state_list.push(SceneGroupState {
group_id: *group_id, group_id: *group_id,
is_default: true, is_default: true,
@@ -363,6 +363,7 @@ async fn load_scene(
scene_info.entity_group_list.push(SceneEntityGroupInfo { scene_info.entity_group_list.push(SceneEntityGroupInfo {
state: 0, state: 0,
group_id: 0, group_id: 0,
fjhodibbaan: HashMap::new(),
entity_list: json entity_list: json
.lineups .lineups
.iter() .iter()
+13883 -48154
View File
File diff suppressed because it is too large Load Diff
-1
View File
@@ -50,7 +50,6 @@ pub async fn query_gateway(parameters: Query<QueryGatewayParameters>) -> String
unk5: true, unk5: true,
unk6: true, unk6: true,
unk7: true, unk7: true,
jgciiljehhe: true,
..Default::default() ..Default::default()
} }
+1 -7
View File
@@ -1,11 +1,5 @@
{ {
"CNBETAWin2.5.51": { "OSBETAWin2.6.51": {
"asset_bundle_url": "",
"ex_resource_url": "",
"lua_url": "",
"ifix_url": ""
},
"CNBETAWin2.5.52": {
"asset_bundle_url": "", "asset_bundle_url": "",
"ex_resource_url": "", "ex_resource_url": "",
"lua_url": "", "lua_url": "",