is there a Skill Emulator out there on the web i can download? There is a few things i would like to plan out. Thanks!
is there a Skill Emulator out there on the web i can download? There is a few things i would like to plan out. Thanks!
http://rustot.by.ru/
Don't really like it but it's the only one I know of.
Yagyu for life
Only one I've been able to find as well, and I have many issues with it. As such I've been kicking around the idea of coding my own.
Only thing is the only language I know how to do anything even beginning to relate to a GUI is Java since it's more or less built into the laguage. Problem is that I don't like Java (slow, etc.). Java isn't a requirement other than the GUI thing because portability isn't a concern (AO is a Windows-only game, so the program only needs to be Windows compliant).
Also, I'm not sure where to come up with all the formulas. I'm sure it'd be possible for me to derive them myself through testing, but I really, really don't want to go through that much effort if I don't really have to (as in all the formuals are worked out and available for me, and since there all ready is a skill emulator then the formulas are obviously all ready worked out).
Oooh, oooh! Please do, TalenRamel! I've been wanting a new one for a long time. Check out this thread for what I would consider the perfect tool
To help get you started, here's how to calculate the ip cost for upping skills:
ip_cost(n+1) = ip_cost(n) + modifier.
ip_cost(0) can be found ingame (5 for green skills up to 20 for dark blue skills). The modifier is dependent on profession and skill. There's a complete listing here (the chart on the right side). That chart is known to contain errors, though, so check first.
I'd made a few brief stabs at doing this, but haven't really got anywhere with it. Got the basic formula figured out (I think), need to check all the numbers, figure out the new profs, figure out post 200 stuff... lots of work...
So, lets pool data... I'll post stuff later and we can discuss...
Still to figure out title caps for example...
"Do not try and catch the hamster... that's impossible. Instead only try to realize the truth... There is no hamster, only a deadbeat rollerat..."
[Social] Means: I don't think we removed any bosses because of bad pathing...there wouldnt be any left if we did :P
AO Character Skill Emulator and Character Parser and AO Implant Layout Helper
Title caps:
TL 6: 655 - 60 * int(c + 0.5)
TL 5: 595 - 50 * int(c + 0.5)
TL 4: 525 - 40 * int(c + 0.5)
TL 3: 385 - 30 * int(c + 0.5)
TL 2: 215 - 20 * int(c + 0.5)
TL 1: 60 - 5 * int(c + 0.5)
where c is the cost increase of the skill (ranging from 1.0 to 5.0)
This is the number of times you can raise a skill, in addition to this you get trickle down from abilities and 4 points for free.
Trickle down is <weighted abilities> / 4 rounded up to nearest integer.
Besides title cap, n is limited by 2 * <weighted abilities> - 6. E.g with 100 int you can only raise complit 194 times for a total of 223 (194 + 25 + 4)
The accumulated cost to raise a skill n times is: c * n * (9 + n) / 2
That's as far as I've been able to reverse-engineer the formulas used in AO Skill Emulator 14.2.3
Jefferey "Frappe" Mischler
What I've been able to find out so far (not completely certain, but seems to work...)
All skills start at a base skill of 5, then trickle down is applied to get actual skill.
Trickle Down : ((Weighted Ability - 1) / 4) [round down]
Base skill is used for all IP calculations.
IP Cost For Next Skill Point : Current Base Skill * Cost Multiplier [round to nearest whole, up on .5]
Multiplier is dependent on skill and class, AOLore has a not 100% accurate list for the original professions,
we need to validate and correct this, and add the new professions.
Abilities can cap base skill.
Max Skill (Ability Caps) : ((Weighted Ability - 6) * 2) + 6
Titles can cap base skill.
(see above post)
Last edited by Darkbane; Oct 28th, 2003 at 16:12:54.
"Do not try and catch the hamster... that's impossible. Instead only try to realize the truth... There is no hamster, only a deadbeat rollerat..."
[Social] Means: I don't think we removed any bosses because of bad pathing...there wouldnt be any left if we did :P
AO Character Skill Emulator and Character Parser and AO Implant Layout Helper
I'm pretty sure this not correct. I'm not ingame right now, but the formula I gave in my post corresponds to the values AOSkillEmu gives, as well as to my recollection of the mechanicOriginally posted by Darkbane
IP Cost For Next Skill Point : Current Base Skill * Cost Multiplier [round to nearest whole, up on .5]
Tried to predict skills on a lowbie alt I just made and I'm still fairly confident base skill + trickle down is 4 + abilities / 4 (rounded up). Darkbane's 5 + (abilites - 1) / 4 (rounded down) was 1 point too low on 4 out of 17 skills tested. Then I got tired.
I agree with Mharc regarding IP costs.
ip_cost(1) = 5c
ip_cost(n + 1) = ip_cost(n) + c
or simply
ip_cost(n) = (4 + n) * c
which leads to the accumulated cost I posted earlier. I chose to start indexing at 1 though. A matter of taste I guess...
Jefferey "Frappe" Mischler
Numbers might not be 100%... was from some scribbles, not my proper notes... I'll correct them when I get a chance to check my notes, and to play with a newbie
And my formula and yours are the same if skills start at 5... mine is simpler though as you don't need to know the IP cost history...
Last edited by Darkbane; Oct 28th, 2003 at 16:15:29.
"Do not try and catch the hamster... that's impossible. Instead only try to realize the truth... There is no hamster, only a deadbeat rollerat..."
[Social] Means: I don't think we removed any bosses because of bad pathing...there wouldnt be any left if we did :P
AO Character Skill Emulator and Character Parser and AO Implant Layout Helper
This is fun!
I'll run some numbers tonight. I'll check the chart on Anarchylore for accuracy.
*sits back and lets everyone do the hard part for him*
Thanks, guys, this also saves me from endless searching the boards to find where all this stuff may have been figured out in ages past.
Most everything after this is coding issues, like whether to parse the database so as to make the character sim as complete as possible, etc.
I'm thinking what I'll do is just hijack Clicksaver's database ... since most people should have Clicksaver any way, and it's a small download so if one doesn't then one can get it. Plus, after just checking, the database is 116MB. There's no need to have that thing on your computer more than twice. Much easier on me to do it that way because it parses the database for me and i can just read from that copy of the database.
Get to work you slacker! We need someone to level each profession to 220 and record HP/nano gain per level.Originally posted by TalenRamel
*sits back and lets everyone do the hard part for him*
Oh, one more thing... Skill increase per level: 5 - int(c / 2 + 0.25)?
Jefferey "Frappe" Mischler
Close, but not quite. That would for instance yield 4 for c=1 (green skills). I've found: int(5.20-c/2). I'm working on charting all c's for all profs. About halfway through and I haven't encountered every possible value for c yet, but so far, that formula corresponds with the skill increases per level I've found, listed here:Originally posted by Frappe
Get to work you slacker! We need someone to level each profession to 220 and record HP/nano gain per level.
Oh, one more thing... Skill increase per level: 5 - int(c / 2 + 0.25)?
EDIT: Completed the list
EDIT2: Added maximum amount of points assignable ("raisable").
Italic bold values not actually associated with any skill for any professionCode:c incr/ color 5.20-c/2 int(5.20-c/2) Raisable level 1.0 5 green 4.7 5 595 1.1 5 aqua 4.65 5 595 1.2 5 aqua 4.6 5 595 1.3 5 aqua 4.55 5 595 1.4 5 aqua 4.5 5 595 1.5 4 aqua 4.45 4 535 1.6 4 light blue 4.4 4 535 1.7 4 light blue 4.35 4 535 1.8 4 light blue 4.3 4 535 1.9 4 light blue 4.25 4 535 2.0 4 light blue 4.2 4 535 2.1 4 dark blue 4.15 4 535 2.2 4 dark blue 4.1 4 535 2.3 4 dark blue 4.05 4 535 2.4 4 dark blue 4 4 535 2.5 4 dark blue 3.95 4 475 2.6 4 dark blue 3.9 4 475 2.7 4 dark blue 3.85 4 475 2.8 4 dark blue 3.8 4 475 2.9 4 dark blue 3.75 4 475 3.0 4 dark blue 3.7 4 475 3.1 4 dark blue 3.65 4 475 3.2 4 dark blue 3.6 4 475 3.3 4 dark blue 3.55 4 475 3.4 4 dark blue 3.5 4 475 3.5 3 dark blue 3.45 3 415 3.6 3 dark blue 3.4 3 415 3.7 3 dark blue 3.35 3 415 3.8 3 dark blue 3.3 3 415 3.9 3 dark blue 3.25 3 415 4.0 3 dark blue 3.2 3 415 4.1 3 dark blue 3.15 3 415 4.2 3 dark blue 3.1 3 415 4.3 3 dark blue 3.05 3 415 4.4 3 dark blue 3 3 415 4.5 3 dark blue 2.95 3 355 4.6 3 dark blue 2.9 3 355 4.7 3 dark blue 2.85 3 355 4.8 3 dark blue 2.8 3 355 4.9 3 dark blue 2.75 3 355 5.0 3 dark blue 2.7 3 355
Last edited by Mharc; Nov 3rd, 2003 at 11:27:36.
Here is the full list of 'c's for all professions for all skills. The old Anarchylore chart has one wrong number: multiranged for advs, which was changed a few months after release, two missing skills (vehicle air and vehicle water) and two missing professions.
(list split up because with all the color codes, the message was too long . Part two follows)Code:Profession Adv Age Bur Doc Enf Eng Fix Kee MA MP NT Sha Sol Tra Body Dev. 1.2 2.4 2.4 2.0 1.0 2.4 1.8 1.2 1.5 2.4 2.4 2.6 1.1 2.0 Nano Pool 1.6 1.2 1.4 1.0 2.0 1.8 1.6 2.2 1.6 1.0 1.0 2.5 2.0 1.2 Martial Arts 2.8 1.6 2.8 2.0 1.6 2.8 2.8 3.0 1.0 2.8 2.8 1.6 2.0 2.0 Brawling 2.4 2.8 3.2 2.8 1.0 2.4 1.8 2.0 1.2 2.8 2.8 4.0 2.0 2.0 Dimach 4.0 1.6 3.0 4.0 4.0 4.0 4.0 1.3 1.2 2.5 2.5 1.0 4.0 4.0 Riposte 3.2 3.0 3.2 3.2 1.2 3.2 2.4 1.0 1.0 3.2 2.4 1.4 2.4 3.2 Adventuring 1.0 3.0 2.0 2.0 1.5 2.0 2.0 1.8 1.6 2.0 2.0 1.6 1.5 1.4 Swimming 1.0 1.6 2.0 2.0 2.0 2.0 2.0 1.8 1.4 2.0 2.0 1.4 1.5 1.5 1h Blunt 1.5 1.6 3.2 2.4 1.0 2.4 2.5 3.2 2.5 2.6 4.0 4.0 2.5 1.8 1h Edged 1.0 2.0 4.0 2.4 1.0 3.2 2.0 3.2 2.0 4.0 4.0 4.0 2.0 3.2 Piercing 1.5 2.5 4.0 2.4 1.0 3.2 2.5 3.2 2.0 3.2 4.0 1.0 2.5 2.5 2h Blunt 1.5 2.5 4.0 3.2 1.4 3.2 3.2 3.2 2.0 4.0 3.2 4.0 2.5 2.5 2h Edged 1.5 2.5 4.0 3.2 1.0 3.2 2.5 1.0 2.0 2.5 2.5 4.0 2.5 2.5 Melee Ener. 1.5 3.2 4.0 3.2 1.8 4.0 3.2 3.2 3.0 4.0 3.2 4.0 2.2 2.5 Parry 1.5 1.6 3.2 2.4 1.4 4.0 2.4 1.0 1.5 4.0 3.2 1.4 2.5 2.5 Sneak Attack 1.5 1.0 2.4 3.2 2.0 4.0 3.9 4.0 3.0 4.0 3.2 1.0 3.0 4.0 Mult. Melee 1.4 2.5 4.0 3.2 1.0 4.0 2.5 3.2 2.5 4.0 4.0 1.0 2.0 3.2 Fast Attack 2.0 2.5 4.0 2.4 1.5 4.0 2.5 1.0 2.0 4.0 3.2 1.4 2.4 3.0 Sharp Obj 1.6 1.2 3.2 3.2 1.6 3.2 2.5 4.0 1.0 3.2 2.4 1.6 1.6 2.4 Grenade 1.6 1.6 4.0 3.2 2.5 2.0 2.2 4.0 2.4 4.0 2.4 4.0 1.6 2.4 Heavy Weapons 3.0 3.0 4.0 4.0 2.5 2.0 2.5 4.0 4.0 4.0 4.0 4.0 1.0 4.0 Bow 1.8 2.0 4.0 4.0 4.0 4.0 2.4 4.0 1.0 2.5 4.0 4.0 2.4 4.0 Pistol 1.0 1.8 1.6 1.6 3.0 1.5 1.6 4.0 3.5 2.4 1.6 4.0 1.0 2.0 Assault Rif 1.6 3.0 4.0 4.0 3.5 3.0 2.8 4.0 4.0 4.0 4.5 4.0 1.0 4.0 MG / SMG 2.5 2.5 3.2 3.2 2.5 3.2 1.0 4.0 3.0 3.2 3.2 4.0 1.5 2.4 Shotgun 2.4 3.2 3.2 2.4 2.5 3.2 1.8 4.0 4.0 4.0 3.0 4.0 1.5 1.5 Rifle 1.7 1.3 4.0 4.0 4.0 4.0 2.0 4.0 4.0 4.0 4.0 4.0 2.0 2.8 Ranged Ener 2.4 2.5 4.0 4.0 4.0 3.0 2.5 4.0 4.0 4.0 4.0 4.0 1.0 3.0 Fling Shot 1.0 3.2 4.0 2.4 3.5 3.2 1.6 4.0 3.2 4.0 4.0 4.0 1.0 2.5 Aimed Shot 2.2 1.1 4.0 3.2 3.5 4.0 2.5 4.0 3.0 4.0 3.2 4.0 1.8 2.5 Burst 1.8 3.2 4.0 3.0 3.0 3.0 1.5 4.0 4.0 4.0 4.0 4.0 1.5 3.5 Full Auto 2.4 4.0 4.0 4.0 3.0 3.0 2.2 4.0 4.0 4.0 5.0 4.0 1.5 3.5 Bow Spc Att 1.6 2.0 4.0 4.0 2.0 3.5 2.0 4.0 1.0 2.5 4.0 4.0 2.0 4.0 Multi Ranged 1.5 1.8 4.0 4.0 4.0 4.0 2.0 4.0 4.0 2.5 4.0 4.0 2.0 2.5
Code:Profession Adv Age Bur Doc Enf Eng Fix Kee MA MP NT Sha Sol Tra Melee Init. 1.8 1.6 4.0 3.2 1.0 3.2 2.5 1.0 2.0 3.0 3.5 1.0 2.4 3.2 Ranged. Init. 2.0 1.6 3.2 3.2 3.0 3.2 1.6 3.8 2.4 4.0 3.0 4.0 1.0 2.5 Psychic. Init. 1.6 1.6 2.0 2.0 1.6 3.0 2.4 3.8 1.0 3.2 3.2 3.4 2.4 3.2 NanoC. Init. 2.0 1.6 1.0 1.0 2.4 1.6 2.4 3.2 2.5 1.0 1.0 2.8 4.0 1.5 Dodge-Rng 1.6 2.1 2.4 2.4 2.0 2.5 1.0 1.6 1.0 1.6 2.4 2.4 1.5 1.9 Evade-ClsC 1.8 2.4 2.4 3.2 1.5 4.0 1.6 1.4 1.0 1.6 3.2 1.0 2.0 1.9 Duck-Exp 1.6 1.6 2.4 2.4 2.0 2.2 1.0 1.6 1.0 2.4 2.4 1.2 1.8 1.9 Nano Resist 2.4 1.6 1.6 1.2 2.2 1.5 1.6 1.8 1.6 1.6 1.0 1.5 2.2 1.6 Run Speed 1.0 1.6 2.4 2.4 2.4 2.0 1.0 2.0 1.0 2.4 2.4 1.0 2.0 1.9 Mech. Engi 1.2 1.5 1.8 2.0 2.0 1.0 1.5 3.2 2.4 2.0 2.0 3.2 2.0 1.2 Elec. Engi 1.6 2.0 2.4 1.6 1.8 1.0 1.5 3.2 3.2 2.0 1.6 3.2 2.4 1.0 Quantum FT 1.6 2.0 2.4 1.6 3.2 1.0 1.5 3.2 3.2 2.4 1.6 1.4 2.4 1.2 Weapon Smt 1.6 4.0 2.5 1.5 1.5 1.0 1.3 2.0 2.4 2.5 3.2 3.2 1.5 1.0 Pharma Tech 2.4 1.6 2.4 1.0 1.6 1.5 1.5 3.2 2.4 2.0 2.4 1.8 2.0 1.0 Nano Progra 4.0 2.4 1.6 1.6 2.4 1.2 2.0 3.2 2.4 1.0 1.0 4.0 2.0 1.4 Comp. Liter 1.6 1.6 1.0 1.0 1.6 1.3 1.0 2.4 2.0 1.0 1.0 2.4 2.0 1.5 Psychology 1.6 1.0 1.0 2.3 1.0 2.4 1.5 1.0 1.6 1.6 2.4 2.4 1.5 1.0 Chemistry 1.6 1.5 2.4 2.0 1.0 1.2 2.0 3.2 2.4 2.0 2.0 3.2 2.4 1.3 Tutoring 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 Matt.Metam 1.8 1.2 1.6 1.0 2.5 1.0 2.4 3.2 2.0 1.0 1.0 3.2 2.0 1.6 Bio Metamor 1.5 1.6 1.0 1.0 2.5 2.4 3.2 1.8 1.6 1.0 1.0 1.9 2.4 1.8 Psycho Modi 1.8 1.6 1.0 1.6 2.5 2.4 2.4 1.6 2.0 1.6 1.0 1.4 2.0 1.5 Matter Crea 1.8 1.4 1.6 1.6 2.5 1.0 2.5 3.2 2.4 1.0 1.0 3.2 2.5 1.5 Time&Space 1.8 2.4 1.6 1.6 2.5 1.0 3.2 1.4 1.6 1.0 1.0 1.9 3.2 1.5 Sensory Impr 1.6 1.6 1.0 1.6 2.5 2.4 2.4 2.4 1.6 1.6 1.0 1.6 2.4 1.8 First Aid 1.2 2.0 2.0 1.0 1.6 2.0 1.2 1.2 1.6 2.0 2.0 2.5 2.0 1.6 Treatment 1.0 2.0 2.0 1.0 2.0 1.6 1.2 1.8 2.0 2.0 2.0 1.5 2.0 1.6 Concealment 1.7 1.0 2.4 2.4 2.0 3.2 1.5 3.2 1.5 2.5 2.5 1.0 2.0 1.8 Break&Entry 2.0 1.5 2.0 2.0 2.0 1.6 1.0 2.4 2.0 2.4 2.5 1.6 2.0 1.8 Trap Disarm. 1.6 2.0 2.4 2.4 2.4 1.6 1.0 2.4 2.5 2.4 2.4 1.8 2.4 2.4 Perception 1.6 1.0 1.6 2.4 2.4 2.4 1.0 1.2 1.6 2.4 2.4 2.4 2.4 1.4
Code:Profession Adv Age Bur Doc Enf Eng Fix Kee MA MP NT Sha Sol Tra Vehicle Air 1.0 2.4 2.0 2.4 1.6 1.6 1.0 2.4 3.0 2.5 2.4 3.2 1.6 1.4 Vehicle Ground 1.0 2.4 2.4 1.6 1.0 1.6 1.0 2.4 2.5 2.5 2.4 3.2 1.0 1.4 Vehicle Water 1.0 2.4 2.4 2.4 1.6 1.6 1.0 2.4 2.5 2.5 2.4 3.2 1.6 1.4 Map Navig. 1.0 1.6 2.0 1.6 1.6 1.6 2.0 1.2 2.0 2.0 1.6 2.4 1.6 1.3
Wow, you've been busy...
Been playing about checking trickle-down, and Frappe's version seems a better fit.
So skills start at 4 + trickle-down.
Which changes my formula for cost to:
IP Cost For Next Skill Point = (Current Base Skill + 1) * Cost Multiplier
Which is identical to Frappe's ip_cost(n) = (4 + n) * c.
So that all seems correct...
OK, that, together with Mharc's tireless number crunching (and very attractive tables... ) should be enough to put together a basic skill simulator from...
"Do not try and catch the hamster... that's impossible. Instead only try to realize the truth... There is no hamster, only a deadbeat rollerat..."
[Social] Means: I don't think we removed any bosses because of bad pathing...there wouldnt be any left if we did :P
AO Character Skill Emulator and Character Parser and AO Implant Layout Helper
Great project ..
Looking forward to see and try the result if/when ya get there.
Didymus - Solitus Trader, Member of Instability
Note that with int(x) I mean "integer part of x", i.e. x rounded down.
Anyway, I've noticed that AO Skill Emulator reports remaining IPs that deviate slightly from what I see in game. I usually have 100-300 fewer IPs to spend in game.
I think I've found the reason. Whenever you raise a skill in AO, the cost is rounded up before it is subtracted from your IP pool. This means that you will, on average, lose 0.5 IPs every time you raise skills and press Accept. This rounding off error gets accumulated over time and can at least explain some of the differences between AO Skill Emulator and AO.
I always had this gut feeling that AO Skill Emulator was more accurate than the game itself.
Jefferey "Frappe" Mischler