Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TODO: Starting Race-Class atributes. #1324

Open
GizzleBizzle opened this issue Sep 21, 2023 · 4 comments
Open

TODO: Starting Race-Class atributes. #1324

GizzleBizzle opened this issue Sep 21, 2023 · 4 comments
Labels
database Issues related to the database todo This is a task to be done

Comments

@GizzleBizzle
Copy link
Collaborator

Here are the values, which should be used by all lvl 1 race-class combinations available on the Alpha Project.

Currently the project is using incorrect (presumably 1.12.1) values. Because of recent changes with #1147 and #1319 it will have a bigger impact now.

[Methodology]

  1. Gathering information from 0.5.5 character UI screenshots
    https://archive.thealphaproject.eu/media/Alpha-Project-Archive/Images/Azeroth/Kalimdor/Teldrassil/534914_20040318_screen034.jpg | ff9f5c000a03869d

  2. Calculating cross-class relations
    The difference between any [Race] Warrior and any [Race] Mage/Priest/Warlock is -2 str and +2 int
    Between any Warrior and Any Rogue is -2 str and +2 agi
    Between any rogue and shaman is +1 str, -2 agi, +1 stam and +1 int
    There are no changes between warrior starting stats and paladin ones (except mana and health pool resulting from different mana/hp calculating formulas, ofc)

  3. Using the "Rule of 9 (Trademark pending)"
    Blizzard's rule for the early classes followed a simple rule - The 5 basic atributes add (or subtract) a point if they are over (or below) 20.
    The total amount of points distributet should be 9 as seen below:

Rule of 9

Here are the blizzlike starting attributes

Warriors


Mages


Warlocks


Paladins


Rogues


Priests


Druids

"But why is the druid's hp Not-Blizzlike?"
Druids became available in 0.6. Unfortunately Blizzard changed the health calculation formula in the same patch (changing the druid's health gain from 16 hp per stamina to 7 hp per stamina). If we want to use the same health calculation formula for all classes as they were in 0.5.3, then we have to calculate the druid's hp pool using formulas created before the druid was made available for playing.


Shamans

We are fortunate, because somebody screenshotted their shaman in 0.5.4, when they were made available for playing. Can't get more Blizzlike than that.

However, this is the only class that breaks the rule of 9. This class has one additional attribute point. It doesn't make much difference, though.


Hunters

This was the biggest problem. Hunters were introduced in 0.9. Before that 2 important things related to attributes had happened.

  • Starting attributes were reworked
  • Classes started gaining attributes on lvl

Trying to use the 0.9 starting values in our calculations breaks any rules and logic we currently have.

  • It's the only class that would have intellect below base 20 (meaning troll hunters would start with 32 mana)
  • They would break the rule of 9 (troll hunters having only 6 in total instead of standard 9)

Imho the best way of adapting 0.9 hunters to 0.5.3 would be to use rogues' calculations. Agi is the focus of both classes, they wear learher, they both have the same amount of hp per stamina.

Sources
Alliance starting attributes
https://crawler.thealphaproject.eu/mnt/crawler/media/Text/WarcraftStategy/Articles-2004.txt
(Yes, the author made a mistake. Night Elves should start with 21 spirit, not 22)
Proof 1 | ff9f5c000a03869d
Proof 2 | 06061f1f1f1b3f00

Sample screenshots
Night Elf Druid | ff8700011006e7ff
Dwarf Warrior | 090100180007ffff
Night Elf Rogue | ff5f1c000001f69f

Horde classes
Someone screenshotted starting attributes for all Warrior classes. The other classes were calculated using cross-class relations
Orc warrior
Troll warrior
Tauren warrior
Undead warrior

@GizzleBizzle GizzleBizzle added todo This is a task to be done database Issues related to the database labels Sep 21, 2023
@GrenderG
Copy link
Member

Amazing research, as always. What do you suggest we should do with stats from level 2 to 25 (60)? Maybe we can extrapolate them somehow to the best of our guesses?

@GizzleBizzle
Copy link
Collaborator Author

Attributes like Str, Agi, Sta, Int and Spi shouldn't change when lvling up (#1320).
Players can increase their attributes only by spending talent points, equipping gear or buffing themselves with spells.

Otherwise, a lvl 1 character should have the same base attributes as a lvl 25 or even 60 character. This means the whole character progression is blizzlike.

The only thing that should change between lvls is hp and mana, and we have the incorrect values from (presumably) 1.12.1.
I'm already researching this in my google doc and got about 20% done.

progression

Human mage starts at 68 hp and 100 mana. Gains 8 hp and 12 mana when reaching lvl 2. Gains another 8 hp and 12 mana when reaching lvl 3... etc etc.

With enough screenshots and theorycrafting I believe I can extract all blizzlike values for 0.5.5. Later lvls are a problem, though, since the higher the lvl, the more variables need to be taken into account.

For a lvl 25 character I would need to know:

  • how much hp/mana this character got from talents
  • how much stats he has from gear
  • some history from at least a few earlier screenshots from his lvling journey to make sense of it

Not many players screenshot their entire lvling journey, but we have some. I'll see how much I can progress with my research. If I can't make it myself, then we will think about some extrapolations / custom formulas.

@geo-tp
Copy link
Collaborator

geo-tp commented Sep 27, 2023

This could unbalance the game if this only applies to players, mobs stats increment with level atm, should we implement the same thing for creatures ?

Even doing this for creatures, since damage mostly comes from multipler that are those of 1.12, Isn't this going to unbalance the game ?

Somehow creature_classlevelstats and players_levelstats are probably related, if one is changed the other should be adjusted accordingly

@geo-tp
Copy link
Collaborator

geo-tp commented Sep 29, 2023

To solve this problem, we could determine melee_dmg and ranged_dmg for each lvl and unit_class by trying to establish a damage table with the screenshots
This could probably be easy to determine using creatures that use a damage multiplier and variance by default

Also, as we see on this screenshot, creatures stats scale with lvl since Cairne have like 232 str, 112agi ...
CG6cgEyUYAAI27L

The stats calculation is very different from 1.12, this should be taken into account as well, atm creatures deals too much damage

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
database Issues related to the database todo This is a task to be done
Projects
None yet
Development

No branches or pull requests

3 participants