Quote:
Originally Posted by CantAfford
no bro i mean.. u know when we kill something and we get drops, only we can pick those drops till a few seconds and nobody else can but after a few seconds everyone can pick up those drops.. basically they can steal our drops.. so am thinking maybe the server saves our drops (before we pick them) with the drop value and our id temporarily but erases that data after a few secs.. then everybody can pick up.. so i think the server stops keeping track of drops after a few secs (as long as they are on ground and havnt been picked up)
|
This is mostly accurate. Your client does not get sent the data for other players drops that are outside a certain radius. Each item drop has a unique ID, if you send the "pick up item" packet modified with that unique ID you can actually pick up items without even being able to see them. The problem is there are ~2 billion possible combinations for those unique IDs, so it is not realistic to iterate through a generated set of unique IDs in attempt to pick any item up on the map. Also, the results of picking up the item when it is out of range use to be intermittent and was mostly unreliable anyway. It was far better to capture the coordinates of the item along with its unique ID, teleport to those coordinates and pick up the item. Of course this does not work well for picking up any item on the current map since you won't know the coordinates. But it did work, I think an update fixed that one. On 9DVN I would setup a party with my 3 chars, one to kill, one to buff, and one that auto picks up all loot. This was great in areas where there were a dozen or so people botting. Of course, this was before we figured out how the VNs were duping.
I cannot remember if gold actually had a unique ID, because I do not recall needing one to pick it up. If I recall you just had to be within a tolerance range and send the correct gold amount along with the pick up packet. It was not possible to tell it to pick up your own specified amount of gold unless it was _really_ present on the ground and within range.
Also, I remember there were 2 packets sent for item drops. One identified the item ID (or type) and the coordinates. The second packet identified the player ID it belongs to, the coordinates, and the unique item ID. It has been a long time so I could be wrong or it has been changed since then.
Edit: Okay I checked, it was packets 0x76 and 0x90