Loot Scale Formula

Free Wind

Free Wind

Frost Gate Guardian

Join Date: Jul 2006

Moscow

W/

Being in UW I dropped 1000 gold coins on the ground. It turned out to be only 232g, but when you pick it up you see "You picked up 1000g" message in chat log

I am pretty sure this is the effect of loot scale formula working (UW is 8-men team area)

I am not good at math neither do I care about loot scale but those of you intrested in it can probably test it in different areas and with different amounts to evetually come up with a correct loot scale formula

Trav The Ripper

Trav The Ripper

Banned

Join Date: Feb 2007

N/

well were their people in your team? cuz theyll split it if so, thats why i only drop 1 gold.

zknifeh

zknifeh

Lion's Arch Merchant

Join Date: Feb 2006

Kamadan

Acolites of Anguish [aOa]

A/

no they wont split it...
if a monster drops gold - the game sais "you party shares x ammount"
if you drop gold - the game sais "you pick up x ammount" which means u dont share it...
however i noticed the same when i was in presearing... i would drop around 2k and it would only display around 48 gold... then would say i picked up 2k again

Milennin

Milennin

Jungle Guide

Join Date: Sep 2006

Europe

W/

Dropping any amount of Gold Coins under 256 shows the exact amount you dropped. Anything over 255 will show a lower number of Gold Coins.

dr_ishmael

Academy Page

Join Date: Apr 2005

Yep, it's a coding limitation. Seems they only allow 1 byte (8 bits) for the number on a gold drop, 2^8 = 256 being the largest number they can show. Anything over that will display the modulus of the number with 256. So if you drop 1000 gold:

1000 - 256 = 744
744 - 256 = 488
488 - 256 = 232

Captain Arne Is PRO

Captain Arne Is PRO

Banned

Join Date: Jun 2005

dr ishmael is the winner!

JeniM

Desert Nomad

Join Date: May 2007

W/E

Shame he think 1 byte can show 256

Quite sure you'll find 1 byte has a max value of 255

Fire Childe

Frost Gate Guardian

Join Date: Jun 2005

England

Angry Businessmens [aB]

E/

1 byte can have 256 discrete values. i.e. range of 0 to 255 where 0 is decribed by the highest order bit.

Another example is MIDI which stores control data in 7 bits (2^7 = 128). There 2 bytes - one refered to as a status byte and the other as the data byte. The first byte describes control information in MIDI compatible instruments and it has 128 possible values. However you will notice that any synth that displays its CC value has a sweep range is 0 to 127. Which is still 128 discrete steps - the first bit of the status byte in binary terms is 1 anyway.

Free Wind

Free Wind

Frost Gate Guardian

Join Date: Jul 2006

Moscow

W/

I am pretty much sure this is something new, I DO remember you used to be able to drop 10 000 and see it being displayed in chat log ('xx drops 10 000 gold'). So i dont believe in 1 byte storage variable for the gold amount dropped, this is something else

dr_ishmael

Academy Page

Join Date: Apr 2005

Quote:
Originally Posted by JeniM
Shame he think 1 byte can show 256

Quite sure you'll find 1 byte has a max value of 255
I know that, I was just keeping it simple for the people who don't understand computer theory that well and might be confused if I said 2^8 = 255.

immortius

immortius

Krytan Explorer

Join Date: Aug 2005

Black Cats

E/Mo

Well, for that matter there's no reason ANet couldn't offset that value by +1, given that you never get drops of 0 gold coins.

Free Wind

Free Wind

Frost Gate Guardian

Join Date: Jul 2006

Moscow

W/

This sounds strange that the code has two different variables to store the amount displayed and the actual amount on the ground. After all, when you pick it up it turns out to be exactly what it was when you dropped it

dr_ishmael

Academy Page

Join Date: Apr 2005

It probably is a single variable that stores the actual amount, while the amount displayed isn't a variable in itself, but a pointer to the first variable. When the pointer is referenced, it only pulls the first byte from the variable instead of the full value, meaning it only gets the 2^0 - 2^7 bits out of the original, which equates to "[actual amount] modulus 256".

The question now would be whether the [actual amount] variable is 2 or 3 bytes. 2 bytes would be a limit of 65536 gold, while 3 would be ~16.8 million. To test, I go outside and drop 65540 gold... it displays 4 gold coins... and I pick up 65540 gold. The amount is at least a 3-byte variable, and there's no way to exceed the limit on this, so you won't ever lose gold by dropping it and then picking it up. (Why you would do that with that much gold, though, I don't know...)

immortius

immortius

Krytan Explorer

Join Date: Aug 2005

Black Cats

E/Mo

The display value would be limited to 1 byte to reduce bandwidth usage. The actual value would exist in full on the server of course.

viscus

Ascalonian Squire

Join Date: Feb 2007

australia

Rendered Eternal [SouL]

Mo/Me

you are all wrong unfortunately, its got nothing to do with coding or loot scaling, its to stop ppl nickin ya gold if you try to show off :P if they see you have dropped 100k, POOF SHADOW STEP YOINK!!!! the coding IS correct, but its not the main reason it shows that way. it was meant for idiot ppl back when scammers would ask you to go outside to trade and drop money/goods on the ground

dr_ishmael

Academy Page

Join Date: Apr 2005

Viscus, you're confusing cause and effect. What you state may be the cause for Anet implementing the amount displayed in that manner, but the fact still stands that the game is coded so that the amount displayed only reflects the first byte's worth of the actual amount.