home mode docs + --desync flag on the probe

This commit is contained in:
scroll 2026-08-23 07:52:21 +03:00
parent 20a75dbb25
commit 323450a977

View file

@ -56,6 +56,7 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
.unwrap_or(0); .unwrap_or(0);
let pass_token = std::env::args().nth(4).filter(|token| token != "-"); let pass_token = std::env::args().nth(4).filter(|token| token != "-");
let claim_free_chest = std::env::args().any(|arg| arg == "--claim-free-chest"); let claim_free_chest = std::env::args().any(|arg| arg == "--claim-free-chest");
let desync = std::env::args().any(|arg| arg == "--desync");
let csv_root = std::env::var("SCROLL_CSV_ROOT").unwrap_or_else(|_| "assets".to_owned()); let csv_root = std::env::var("SCROLL_CSV_ROOT").unwrap_or_else(|_| "assets".to_owned());
match LogicDataTables::load_from_dir(&csv_root) { match LogicDataTables::load_from_dir(&csv_root) {
Ok(tables) => { Ok(tables) => {
@ -161,7 +162,8 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
let turn = EndClientTurnMessage { let turn = EndClientTurnMessage {
tick: 0, tick: 0,
checksum: home.home.chest_id_counter checksum: home.home.chest_id_counter
+ ((home.home.spell_collection.spells.len() as i32) << 16), + ((home.home.spell_collection.spells.len() as i32) << 16)
+ i32::from(desync),
commands: vec![LogicCommand::CollectFreeChest { commands: vec![LogicCommand::CollectFreeChest {
header: LogicCommandHeader::for_account(home.avatar.account_id), header: LogicCommandHeader::for_account(home.avatar.account_id),
}], }],
@ -174,6 +176,13 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
println!("-> 10108 KeepAliveMessage"); println!("-> 10108 KeepAliveMessage");
} }
} }
message_type::OUT_OF_SYNC => {
let out_of_sync = logic::OutOfSyncMessage::from_bytes(&payload)?;
println!("<- 24104 OutOfSyncMessage");
println!(" server checksum {}", out_of_sync.server_checksum);
println!(" client checksum {}", out_of_sync.client_checksum);
println!(" tick {}", out_of_sync.tick);
}
message_type::AVAILABLE_SERVER_COMMAND => { message_type::AVAILABLE_SERVER_COMMAND => {
let envelope = AvailableServerCommandMessage::from_bytes(&payload)?; let envelope = AvailableServerCommandMessage::from_bytes(&payload)?;
println!("<- 24111 AvailableServerCommandMessage ({} bytes)", payload.len()); println!("<- 24111 AvailableServerCommandMessage ({} bytes)", payload.len());