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

[Feature Request] Tinkerer change #450

Open
2 of 3 tasks
McHenche opened this issue Jan 27, 2024 · 0 comments
Open
2 of 3 tasks

[Feature Request] Tinkerer change #450

McHenche opened this issue Jan 27, 2024 · 0 comments

Comments

@McHenche
Copy link

Feature request

Complete these first

  • I confirm that I have checked the issue tracker and a this feature request doesn't already exist.

Select the type of feature you are requesting:

  • Command
  • Functionality

Describe your requested feature

Currently when forging, the modifiers you get from your base stats : int, cha, att, dex and luck only start to take effect at 2000 and increase in increments of 2000.
That's seen in in class_abilities.py line 1115 :

    modifier_bonus_luck = 0.01 * base_luck // 10
    modifier_bonus_int = 0.01 * base_int // 20
    modifier_penalty_str = 0.01 * base_att // 20
    modifier_penalty_cha = 0.01 * base_cha // 20
    modifier = sum([modifier_bonus_int, modifier_bonus_luck, modifier_penalty_cha, modifier_penalty_str, modifier])
    modifier = max(0.001, modifier)

    base_int = int(item1.int) + int(item2.int)
    base_cha = int(item1.cha) + int(item2.cha)
    base_att = int(item1.att) + int(item2.att)
    base_dex = int(item1.dex) + int(item2.dex)
    base_luck = int(item1.luck) + int(item2.luck)
    newatt = int((base_att * modifier) + base_att)
    newdip = int((base_cha * modifier) + base_cha)
    newint = int((base_int * modifier) + base_int)
    newdex = int((base_dex * modifier) + base_dex)
    newluck = int((base_luck * modifier) + base_luck)
    newslot = random.choice([i for i in Slot])

If for example we have a character with 200 att, 250 cha, 600 int and 250 int. we'd first take our stats and multiply them by 0.01 which would result in 6 then floor divide by 20 which would result in 0. This would happen until we reach 2000 int where at the end of the floor division we would result in 1.

This would cause an item made from 2 items which both have 35 int to receive an extra approximate 70 points in int. when already at 2000 int that difference is minimal.

I would suggest changing the modifier to 0.1 of the base stat so that you would be getting a buff to your forges in increments of 200 and changing the str modifier to -0.1 to balance it out

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant