A pickpet separate program.

10/02/2020 14:17 ZeroCool1987#1
Hello guys! I have a question for the pros here, im pretty sure that can be done because if the bot have it, can be done separately aswell for sure.

So we all know the bot, and how it works... and how much the pet filter from bot improve the pickpet.
Joymax was never smart enough to customize the pickpets. They make a section for items / gold and "everything", and in everything section are quest items, arrows, bolts, tablets.. well as name say everything. Which is fkin' annoying and if you dont have a bot you are forced to wait after each kill to pick up what matters for you.

So my question is:
How hard is to make a program for pickpet only?
Like that search function and all that "database" with all items, and the option to select at what items we want "pick with pet" exactly like in bot is.


Now I know that most of you will say "well, use bot for that function"..
But why to use a bot for that when probably something separate can be made.
For example on the server I play we have a challenge where we need to play by hand, and this lil program will help to improve the pet a lot and will not be botting :D
Some of us still likes to play manually tho, and if you open game thru bot, you can be considered a bot even if you dont use it.

Thanks for reading and looking forward to hear your opinions and expert opinions. For those that will come here to troll and be toxic, just don't do it!
10/02/2020 17:50 DaxterSoul#2
Quote:
Originally Posted by ZeroCool1987 View Post
So my question is:
How hard is to make a program for pickpet only?
Like that search function and all that "database" with all items, and the option to select at what items we want "pick with pet" exactly like in bot is.
The search function and "database" is not the hard part.

1. You need to build the reference object database (characterdata.txt, itemdata.txt, teleportbuilding.txt).
Why characters and teleportbuildings I only want items!!!11elven....We'll come back to that later.

2. You need a method of hijacking the game traffic. Either with an existing proxy (for example phConnector) that your application connects to or you integrate your own proxy into your application. See [Only registered and activated users can see links. Click Here To Register...].

3. You need to redirect starting clients to the proxy. This can be done by simply patching the DIVISIONINFO.TXT or using edxLoaders redirect function. But it's a better idea to write your own loader with your application that dynamically redirects to the integrated proxy of your application to support multiclients without manually entering addresses.

4. You'll need to accuratly track your surrounding objects using these packets:
  • 0x3015 - single spawn
  • 0x3016 - single despawn
  • 0x3017 - group/range (de-)spawn begin
  • 0x3018 - group/range (de-)spawn end
  • 0x3019 - group/range (de-)spawn data

This is without a doubt the hardest part for beginners. The group or grange spawns contain multiple objects and they can be of all sorts (characters, Monsters, NPCs, Teleporters, Pets, Items and more). If you have a structure reading mistake in one of the objects you won't be able to read the following objects in that packet. as you're no longer reading valid data.
So you would be missing information about possible items on the floor. If you don't know an
objects (think items) "UniqueID" you won't be able to send a valid pickup request.

I have released parts of my [Only registered and activated users can see links. Click Here To Register...] before but it's old, outdated and incorrect and i don't bother updating it. But it serves as a reference for what information could be in there. There are also a lot of comments in the thread pointing out mistakes and fixes, but I'm sure it's not all. It's better if you start learning how to parse packets yourself.

5. You need to parse information about your active COS from 0x30C8 - COS_DATA_INFO
6. You need to issue pickup requests with your pet using 0x70C5 - COS_ACTION_REQ with items that your application thinks are applicable for picking up.
10/02/2020 18:59 ZeroCool1987#3
@[Only registered and activated users can see links. Click Here To Register...] .. wow your explication was so detailed. I have no skill in coding but I was curious if is hard for someone that is, lets say a good coder, and he know what he needs to do. A program like this, only for pet would be really good for those that dont want to use the entire bot. :)

Thank you very much for your detailed explication and that you took your time to explain to me. :handsdown: