ID:155188
 
Ok so not sure if this goes in this thread but...



I'm developing a level up forumla,


and when reaching over 1mil you hit stuff like

1.1e+012

^how much is that, and how does this work?

is this saying 1,100,000,000,000?

or what?
It's scientific notation, so yes, it's 1,100,000,000,000

Also, I would say you should scale a [monster]'s experience reward to the player's level, instead of creating insane experience goals.
In response to DarkCampainger
well i wasnt going after something that high, it was merely an example. I'm actually aiming for something else, and i was able to work it out with the right formula.
But thanks for clearing that up


so 1.1e+06

is 1,100,000 right?
In response to Komuroto
I find it more efficient just to have 100 exp for a level up and just gain experience based on what you kill.
In response to Lugia319
Na, my game is too big for that.
In response to Komuroto
In response to DarkCampainger
I'm kinda bad with scientific notation.

If i understand correctly:

1.1e+006

1,100,000

5e+007
50,000,000

5e+009

5,000,000,000


right or wrong?
In response to Komuroto
That's kind of a bad sign if your game needs a hundred trillion experience to level up in. I'm pretty sure BYOND only tracks numbers accurately up to a certain point in the first place, so using excessively massive numbers is probably not a good idea.
In response to LordAndrew
please dont make the assumption that, is what is needed.


I am only trying to understand how this works.


I am not stating that this is what i need to level up....

Now like i said.

If i understand this correctly:

1.1e+006 == 1,100,000

5e+007 == 50,000,000

5e+09 == 5,000,000,000
In response to Komuroto
Those are all correct. 1.1e+006 means the same thing as 1.1 X 10^6.
In response to Pepper2000
sometimes i get something like


5e+09

instead of 5e+009


what is the difference?
One million and any larger number will be represented in scientific notation. While 13 digit numbers are excessive for any project I can imagine, seven digit numbers are quite reasonable. Many games will, in the course of ordinary gameplay, allow over a million gold pieces, experience points, and so on, and you don't want to see unsightly scientific notation in a game.

Some have commented on designing the game in such a way that you never see a number that requires more than six digits. That's probably a good idea. But if you have a compelling reason to go beyond six digits, I think the best solution is to use a special datum to process large integers (in C, there are plenty of BigInt classes freely available that allow integers of arbitrary size, with the full set of arithmetic). I don't know if there exists such a library or piece of code for BYOND, but in the worst cast scenario, you can write what you need yourself in 15 minutes.
In response to Komuroto
Those numbers are the same, I think. Would BYOND output both of them? The leading zeroes in the exponent are meaningless, just as 8, 08, and 008 all refer to the same number.
In response to Pepper2000
Pepper2000 wrote:
... I think the best solution is to use a special datum to process large integers (in C, there are plenty of BigInt classes freely available that allow integers of arbitrary size, with the full set of arithmetic). I don't know if there exists such a library or piece of code for BYOND, but in the worst cast scenario, you can write what you need yourself in 15 minutes.

http://www.byond.com/developer/Hobnob/bignum
In response to DarkCampainger
Excellent. I might use that myself.