List view
- No due date•1/1 issues closed
Support for implementing and plugging in other, non-RO protocols. Possible options to explore are: general network monitoring (like Wireshark), some common protocols like IRC, or other games where relevant parts of existing automation features could be used.
No due dateI'd love to eventually get to a world where openkore can do this out of the box: Log in on a brand new character, type "quest run newbie_castle". Openkore finds a quest called newbie_castle (by label), and begins execution of it. The newbie_castle quest involves performing sub-quests: Walk around. Talk to NPCs. Kill monsters (eg, Poring, Fabre). Gather items (eg, Apple). Each of these is a potentially complex task. Walking around is mostly solved, but has some wrinkles: Standing location is often important. Some NPCs are triggered by walking near them. The routing code still gets confused sometimes and doesn't handle another player standing where the bot wants to be very well. This is particularly important for things like newbie castles, where everybody is doing the same thing. Sometimes characters are sent to dangerous locations, where they may need to use skills or fight to get to the target location. This isn't a big problem for the newbie castle, but can certainly be an issue for quests intended for higher level characters. Sometimes the best way to get there is with a Butterfly Wing, but sometimes walking there is the best choice (eg, when the NPC which gives the quest is on the same map or a nearby field). Talking to NPCs is relatively straightforward, but answering can sometimes be tricky. Some NPCs want the character to say their name, for instance, which can't be done by talknpc. Killing monsters is a complex task which involves: 1. Knowing what maps include the monster. 2. Choosing one of those maps. Some interesting information which informs this decision: number of the monster on the map, how close it is, how many monsters need to be killed, how dangerous the map is to this particular bot, available gear, available consumables. 3. Picking up appropriate gear and consumables. 4. Going to the target map (see "walking around"). 5. Killing the target monsters. Potentially avoiding all other monsters, if those monsters might kill the bot. Gathering items is a shockingly difficult task. In the end, it's easy to say "get an Apple from storage", but making that decision is very hard, and even performing it can be hard. Find the item in inventory. Find the item in the cart. Find the item in storage. Buy the item from an NPC. Buy the item from a player vend. Find the item in another bot's inventory and trade for it (in bot network scenarios). This may be common for repeatable quests. Kill monsters to get the item (see "killing monsters"). And there are also some meta concerns like: Taking multiple quests and attempting to do all of them at once.
No due date