Reinforcement potion calculation/simulation

12/17/2013 04:18 xCodex#1
Late release, but maybe some people can still use it.

Ok, I can't say I was bored. But I definitely was in a programming mood :).
This program allows you to simulate a certain amount of reinforcements, with a specified weapon/armor rank and your desired reinforcement. The upgrade rates are based on the tables I got from [Only registered and activated users can see links. Click Here To Register...]. Very useful, thanks for this Elebut ;). The advantage of this program is that you have a general idea of how many reinforcement potions or weapons you should save before you actually decide to go for it.
The functionality speaks for itself I guess.
Those who are interested in the source code should pm me.

A few notes:
- I used C++/CLI (.NET 4.0) for this, so it's for windows users only. But Archlord requires Windows anyway...
- Be patient when you simulate several +15/+16. It can take some time.
- All randomized numbers are generated by default_random_engine from the <random> class ([Only registered and activated users can see links. Click Here To Register...]). We don't know how accurate Webzen's upgrate rates actually are, or how they determine their random numbers (there are tons of possibilities), and random is never really "random". I actually see a pretty big difference between my personal experience in-game, and simulations based on these tables...

Screenshot (because every almost-first poster is considered fishy -.-):
[Only registered and activated users can see links. Click Here To Register...]
12/17/2013 08:09 steph33#2
ok
12/17/2013 08:11 faulkude#3
All people needs to know is that you can go to max reinforcement -3 without any risk of breaking. Rest is useless in my opinion
12/18/2013 15:35 Haribomatix#4
we need a Bot :D
12/18/2013 16:11 xCodex#5
Quote:
Originally Posted by Haribomatix View Post
we need a Bot :D
I'll think about it :). It's been a long time for me that I focused on assembly etc., and it would be a great practice.

You know it takes about 5 seconds for each reinfcement? So it takes a very long time for someone to get +- 13 or higher. It would be very cool if I could reduce that to 0 :). But I'm not sure what is client side and what's server side...
12/18/2013 22:56 420IsSexy#6
what does the stimulate thing mean? sorry used all my brain power at the gym so really no clue would be cool if you could explain it to me :D
12/19/2013 00:26 xCodex#7
I guess you better read this tomorrow then xd.

Well, like others already said, it's pretty stupid.. It just creates a certain amount of random situations, based on the fail, reset, and destroy rates that are (probably) used in-game. Since there is no real method or formula to calculate your chances (and the amount of upgrade attemts), the best way to know how may potions you would use for that weapon is by simulating it many times, and taking the average of the results. The more simulations you generate, the more accurate the result will be.

For example (according to my program):
A weapon of rank AAA (maximum +15) that you want to upgrade from +0 to +12 will require +-350 reinforcement potions (so, many hundreds, but if you're very lucky it may just as well be 50) . So you know you shouldn't start trying when you only have 20...

A weapon of rank F (maximum +8) that you want to upgrade from +0 to +7 will require +- 130 reinforcement potions (on average).

BUT I notice sometimes a HUGE difference between results in-game and these results (pure math). So there are a few explanations:
- I'm just very lucky ;)
- Current archlord clients (well, probably servers) use other upgrade rates.
- Random numbers are calculated very badly which causes certain numbers to be picked more often ( I used random numbers between 1 and 100 in my code, checking if they are under a certain value (chance)).
Anyway, mathematically speaking, my results should be correct.