Skip to content

feat(laRO): add Landverse America server support#4157

Open
baphomello wants to merge 9 commits intoOpenKore:masterfrom
baphomello:master
Open

feat(laRO): add Landverse America server support#4157
baphomello wants to merge 9 commits intoOpenKore:masterfrom
baphomello:master

Conversation

@baphomello
Copy link

@baphomello baphomello commented Mar 4, 2026

Summary

Adds full OpenKore support for laRO (Landverse America), a Latin American private server running on the Landverse platform.

Core Changes

src/Network/MessageTokenizer.pm

Adds accountIdFromBuffer server flag support, which reads the accountID directly from the buffer instead of comparing against the stored value. This fixes the packet desync that caused Unknown switch: 2653 errors on laRO.

src/Network/Receive.pm

  • Adds charBlockSize 247 support (PACKETVER >= 20211103), which extends the character name field from 24 to 96 bytes
  • Strips non-printable characters from server names in the server list packet, preventing garbled names on servers with encrypted naming
  • Fixes inet_ntoa to correctly handle 4-byte IPv4 addresses

src/Network/Receive/laRO.pm (new)

Server-specific receive module extending kRO::RagexeRE_2021_11_03.

src/Network/Send/laRO.pm (new)

Server-specific send module with:

  • Overridden sendMasterLogin with LatamChecksum header
  • sendUsePackageItem implementing packet 0x0BAF for package/box item selection

src/Commands.pm

Adds openpackage <item name> <boxIndex> command, which sends 0x0BAF allowing the bot to open package items and select a specific option by index.

Server Configuration

tables/servers.txt

Adds server entry for Landverse America - laRO: Muka:

charBlockSize 247
accountIdFromBuffer 1
serverType laRO
serverEncoding Western
addTableFolders laRO
pinCode 0

Table Files (tables/laRO/)

All table files were extracted and generated directly from the laRO client, ensuring they stay in sync with server updates:

File Source Entries
items.txt itemInfo_true.lub (System/) 27,453
itemsdescriptions.txt itemInfo_true.lub (System/) 27,369
itemslotcounttable.txt itemInfo_true.lub (System/) 3,813
itemslots.txt data/itemslottable.txt (GRF)
maps.txt data/mapnametable.txt (GRF) 1,380
resnametable.txt Merged from data.grf + roverse.grf 1,675
skillssp.txt skillinfolist.lub (GRF) 1,194 skills
msgstringtable.txt GRF
achievement_list.txt GRF
recvpackets.txt Captured from live server

Testing

Tested with X-Kore mode on the Muka channel. Bot successfully logs in, reads inventory, navigates maps and displays item/skill information correctly.

Maintainer

@baphomello

Adds accountIdFromBuffer server flag to allow reading accountID
directly from the buffer instead of comparing with the stored value.
Fixes packet desync (Unknown switch: 2653) on servers that send
accountID differently from standard kRO.
- Adds unpack string for charBlockSize 247 (PACKETVER >= 20211103),
  extending character name field from 24 to 96 bytes
- Strips non-printable characters from server names received in the
  server list packet, preventing garbled names on encrypted servers
- Fixes inet_ntoa to correctly handle 4-byte IPv4 addresses
- Receive: extends kRO::RagexeRE_2021_11_03
- Send: overrides master_login with LatamChecksum header and adds
  sendUsePackageItem (packet 0x0BAF) for package item usage
Adds 'openpackage <item name> <boxIndex>' command, which sends the
use_packageitem packet (0x0BAF) allowing the bot to open package/box
items and select a specific option by index.
Adds server configuration for laRO (Landverse America - Muka):
- charBlockSize 247, accountIdFromBuffer 1, pinCode 0
- serverType laRO, serverEncoding Western, addTableFolders laRO
Adds all OpenKore table files extracted from the laRO client:
- items.txt (27,453 items from itemInfo_true.lub)
- itemsdescriptions.txt (descriptions, color codes stripped)
- itemslotcounttable.txt (3,813 slotted items)
- itemslots.txt (extracted from data.grf)
- maps.txt (extracted from roverse.grf mapnametable)
- resnametable.txt (merged from data.grf + roverse.grf)
- skillssp.txt (SP costs from skillinfolist.lub)
- msgstringtable.txt and achievement_list.txt (extracted from GRF)
- recvpackets.txt
- Adds laRO (Landverse America) entry to the supported servers table
  in README.md with maintainer credit
- Removes server-specific plugins from loadPlugins_list in sys.txt,
  keeping only the standard set
fix: increases the retry move timeout (OpenKore#4066)
@alisonrag
Copy link
Contributor

alisonrag commented Mar 6, 2026

wrong comment this is related to america landverse

@baphomello
Copy link
Author

That's right, it's for Landverse America. The name ROla was already in use for GNJOY's LATAM operation. This one is from Maxion.

Enhance map server functionality with hooks and routing improvements
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants