aeon0 / botty

D2R Pixel Bot
MIT License
532 stars 378 forks source link

「Determine whether to keep items」 use the wrong NTIPAliasStat #935

Closed tcAkira closed 2 years ago

tcAkira commented 2 years ago

I display some message in 「def should_keep(item_data) -> tuple[bool, str]:」(actions.py).

I found that WAR TRAVELER has a wrong NTIPAliasStat.

「NTIPAliasStat['itemmagicbonus']='80'」 is correct.

But I don't know why it used 「NTIPAliasStat['itemgoldbonus']='79'」.

ANDARIEL'S VISAGE is no problem.

Sorry, my program level is not good. I don't know how to fix it...

[0.8.1-dev 2022-06-24 23:03:41,419] DEBUG      ANDARIEL'S VISAGE|DEMONHEAD|DEFENSE: 344|DURABILITY: 16 OF 20|REQUIRED STRENGTH: 102|REQUIRED LEVEL: 83|15% CHANCE TO CAST LEVEL 15 POISON NOVA WHEN STRUCK|+2 TO ALL SKILLS|+20% INCREASED ATTACK SPEED|10% LIFE STOLEN PER HIT|+122% ENHANCED DEFENSE|+26 TO STRENGTH|+10% TO MAXIMUM POISON RESIST|FIRE RESIST -30%|POISON RESIST +70%|LEVEL 3 VENOM (3/20 CHARGES)
[0.8.1-dev 2022-06-24 23:03:41,443] INFO       lcy~~Expression: ((int(item_data['NTIPAliasClassID']))==(int(NTIPAliasClassID['demonhead']))and(int(item_data['NTIPAliasQuality']))==(int(NTIPAliasQuality['unique']))and(not item_data['NTIPAliasFlag']['0x400000']))and((int(item_data.get('NTIPAliasStat', {}).get('16', 0)))>=(100.0)and(int(item_data.get('NTIPAliasStat', {}).get('60', 0)))>=(8.0)and(int(item_data.get('NTIPAliasStat', {}).get('0', 0)))>=(25.0))
[0.8.1-dev 2022-06-24 23:03:41,444] INFO       (int(item_data['NTIPAliasClassID']))==(int(NTIPAliasClassID['demonhead'])): 428==428
[0.8.1-dev 2022-06-24 23:03:41,444] INFO       (int(item_data.get('NTIPAliasStat', {}).get('16', 0)))>=(100.0):122
[0.8.1-dev 2022-06-24 23:03:41,445] INFO       int(item_data.get('NTIPAliasStat', {}).get('60', 0)))>=(8.0):10
[0.8.1-dev 2022-06-24 23:03:41,445] INFO       int(item_data.get('NTIPAliasStat', {}).get('0', 0)))>=(25.0):26
[0.8.1-dev 2022-06-24 23:03:41,445] INFO       ----------------------------------------
[0.8.1-dev 2022-06-24 23:03:42,126] DEBUG      WAR TRAVELER|BATTLE BOOTS|DEFENSE: 125|DURABILITY: 48 OF 48|REQUIRED STRENGTH: 95|REQUIRED LEVEL: 42|+25% FASTER RUN/WALK|ADDS 15-25 DAMAGE|+162% ENHANCED DEFENSE|+10 TO STRENGTH|+10 TO VITALITY|40% SLOWER STAMINA DRAIN|ATTACKER TAKES DAMAGE OF 6|35% BETTER CHANCE OF GETTING MAGIC ITEMS
[0.8.1-dev 2022-06-24 23:03:42,143] INFO       lcy~~Expression: ((int(item_data['NTIPAliasClassID']))==(int(NTIPAliasClassID['battleboots']))and(int(item_data['NTIPAliasQuality']))==(int(NTIPAliasQuality['unique']))and(not item_data['NTIPAliasFlag']['0x400000']))and((int(item_data.get('NTIPAliasStat', {}).get('16', 0)))>=(150.0)and(int(item_data.get('NTIPAliasStat', {}).get('79', 0)))>=(30.0))
[0.8.1-dev 2022-06-24 23:03:42,144] INFO       (int(item_data['NTIPAliasClassID']))==(int(NTIPAliasClassID['battleboots']): 388==388
[0.8.1-dev 2022-06-24 23:03:42,145] INFO       (int(item_data.get('NTIPAliasStat', {}).get('16', 0)))>=(150.0):162
[0.8.1-dev 2022-06-24 23:03:42,145] INFO       int(item_data.get('NTIPAliasStat', {}).get('79', 0)))>=(30.0):0
definitelynotsosa commented 2 years ago

There was an issue with the default pickit. A PR has been submitted to fix it. Once it's accepted you can either download the default.nip again or you can just edit the lines 1338, 1339 and change [itemgoldbonus] to [itemmagicbonus].

tcAkira commented 2 years ago

sorry..... I saw the wrong in default.nip..... thx!!!