OpenKore / openkore

A free/open source client and automation tool for Ragnarok Online
http://openkore.com
Other
1.28k stars 1.04k forks source link

Cannot use inventory on kRO_RagexeRE_2020_04_01b #3705

Closed ghost closed 1 year ago

ghost commented 1 year ago

------------------ Openkore Issues Template ------------------

I'm botting on local server and some console commands that interacts with character's inventory are not working. "i" returns "Inventory is not available": i "sell done" with any non-equipped item in "sell list" returns "Sold 0 items. Sell failed.": sell "storage add 'id' 'amount'" infinitely returns "Your Inventory is not available. Unable to transfer item 'id'": storage "tele" returns nothing and Fly Wing are not used: tele

Yet picking up and dropping items through console is working, and you can list inventory via Alt+E if using wxstart.exe and use/equip items through double clicking: alt e

My "servers.txt" configuration is: servers txt I've used d93d414 rAthena and 27 December, 2021 Hercules emulators with pre-renewal features and "PACKETVER 20200401" to ensure connectivity. On connection and during botting I'm not catching weird packets or warnings.

alisonrag commented 1 year ago

this pull request should fix your inventory and related issues: https://github.com/OpenKore/openkore/pull/3703/files

ghost commented 1 year ago

I've applied it to dc1eb4d, "i", "tele" and "storage" are now working. But "sell" still persists: sell

alisonrag commented 1 year ago

I've applied it to dc1eb4d, "i", "tele" and "storage" are now working. But "sell" still persists: sell

i will test later, but if i'm not wrong this issue is related to change in item ID from 2 bytes to 4 bytes

alisonrag commented 1 year ago

update: src/Commands.pm

from:

elsif ($args[0] eq "done") {
        completeNpcSell(\@sellList);
        @sellList = ();
        message TF("Sold %s items.\n", @sellList.""), "success";

to:

elsif ($args[0] eq "done") {
        completeNpcSell(\@sellList);
        message TF("Sold %s items.\n", @sellList.""), "success";
        @sellList = ();
ghost commented 1 year ago

Now it reads amount of items in list, but bot still doesn't sells them: sell

alisonrag commented 1 year ago

cant reproduce your issue:

my openkore i'm using the following branchs: https://github.com/OpenKore/openkore/tree/bugfix/hotfix-revert-callhooks-update https://github.com/OpenKore/openkore/tree/bugfix/move-item-list-hooks-to-receive

my servers.txt:

[localHost - rA/Herc]
ip 127.0.0.1
port 6900
master_version 1
version 28
serverType kRO_RagexeRE_2020_04_01b
serverEncoding Western
gameGuard 0
storageEncryptKey 0x050B6F79, 0x0202C179, 0x0E20120, 0x04FA43E3, 0x0179B6C8, 0x05973DF2, 0x07D8D6B, 0x08CB9ED9
addTableFolders kRO/RagexeRE_2020_04_01b;iRO/official;iRO
charBlockSize 155
pinCode 0
charDeleteDateType 1
rankingSystemType 1
private 1

compiled rathena with following clientdate:

#ifndef PACKETVER
    /// Do NOT edit this line! To set your client version, please do this instead:
    /// In Windows: Add this line in your src\custom\defines_pre.hpp file: #define PACKETVER YYYYMMDD
    /// In Linux: The same as above or run the following command: ./configure --enable-packetver=YYYYMMDD
    #define PACKETVER 20200401
#endif

result: image