igroglaz / srvmgr

https://rom2.ru
8 stars 5 forks source link

find 2% / 3% values (reward for mail delivery / escort) #134

Open igroglaz opened 1 month ago

igroglaz commented 1 month ago

[14:14]igroglaz: === я счаз ищу где опыт за притаскивание предмета (1% или 0.01) и за эскорт (3% или 0.03) [14:16]igroglaz: у нас уже найдено кое-чего [14:17]igroglaz: // extend inns void _declspec(naked) bound_quest_reward() { // 565406 asm { mov eax, [ebp-0x18] cmp eax, Config::MinQuestReward jge not_too_low mov eax, Config::MinQuestReward not_too_low: cmp eax, Config::MaxQuestReward jle not_too_high mov eax, Config::MaxQuestReward not_too_high: mov [ebp-0x18], eax mov edx, 0x00565426 jmp edx } } [14:22]igroglaz: void thiscall FUN_005653f6(int param_1_00,int param_1)

{ uint uVar1; uint uVar2;

uVar1 = FUN_00559fa0(); uVar2 = FUN_00559fb0(); if ((int )(param_1_00 + (((int)(uVar1 & 0xff) >> 3) + 1) 0x88 + 0x404 + ((int)(uVar2 & 0xff) >> 3) 4) == 0) { if ((int )((int )((int )(param_1 + 0x70) + 0x3c) + 0x48) != 0) { (undefined )((int )((int )(param_1 + 0x70) + 0x3c) + 0x45) = 1; (int )(param_1_00 + 0x1614) = (int )(param_1_00 + 0x1614) + 1; (int )(param_1_00 + 0x1624) = (int )(param_1_00 + 0x1624) + 1; } } else { (undefined )((int )((int )(param_1 + 0x70) + 0x3c) + 0x45) = 1; (int )(param_1_00 + 0x1614) = (int )(param_1_00 + 0x1614) + 1; uVar1 = FUN_00559fa0(); uVar2 = FUN_00559fb0(); (undefined2 )(param_1 + 0x1a4) = (undefined2 ) (param_1_00 + (((int)(uVar1 & 0xff) >> 3) + 1) 0x88 + 0x404 + ((int)(uVar2 & 0xff) >> 3) 4); } return; } [14:26]igroglaz: вызывается она в 005655e1 [14:37]igroglaz: FUN_005653f6(local_20); [14:52]igroglaz: в общем, у кого есть желание заняться кладоискательством [14:53]igroglaz: надо найти 2% или 3% в тексте программы (опыт за почту и за эскорт) [14:53]igroglaz: найдя эти вычисления - можно будет захардкодить их на поменьше, т.к. счаз придется убрать почту с 6 чтобы зелки не таскали