![]() |
#1 |
Administrator
|
[V/NPP] Equipment optimizer - scoring rules
I spent last two evenings writing myself an equipment optimizing script. It goes basically like this:
- read up the character dump, parse powers from the item descriptions - create all possible permutation of items worn, in backpack and in your home - using user supplied scoring rules, score all permutations - display the highest scoring permutation It's written to understand NPP dumps, because that's the variant I happen to play lately, but this thread should be relevant to Vanilla too, as NPP is not that different to V when it comes to item features. I need your help with scoring rules. Basically, how many points to award to various slays, brands and resists. I ignore weapon dice for now. I also decided to skip artifact activations, as there's many and I generally don't use them anyway. At the moment I'm at this (there are some resists and slays missing, as I haven't encountered them yet in my current game): Code:
$scoring = array( "stats" => array("STR" => 10, "INT" => 5, "WIS" => 5, "DEX" => 3, "CON" => 5, "CHR" => 1), "slays" => array("orcs" => 10, "trolls" => 10, "evil" => 25, "undead" => 15, "animals" => 5, "giants" => 10, "dragons" => 20, "demons" => 15), "brands" => array("acid" => 40, "poison" => 50, "frost" => 35, "fire" => 30), "resists" => array("fire" => 25, "cold" => 25, "acid" => 30, "lightning" => 20, "disenchantment" => 20, "free action" => 100, "see invisible" => 50, "fear" => 10, "blindness" => 40, "poison" => 80, "confusion" => 42, "light" => 10, "dark" => 10, "nether" => 40, "nexus" => 35, "hold life" => 25, "shards" => 25), "sustains" => array("STR" => 2, "INT" => 1, "WIS" => 1, "DEX" => 1, "CON" => 2, "CHR" => 0), "blessed" => 1, "blows" => 10, "shooting power" => 15, "glowing" => 0, "damage" => 2, "speed" => 10, "telepathy" => 80, "tohit" => 1, "stealth" => 1, "searching" => 1, "slow digestion" => 2, "feather falling" => 3, ); Now questions: - which elemental brand is most worthwile? - is speed really everything? I happen to be speed junkie. I'm awarding 10 score points per point of speed right now, which makes +10 speed match rbase. - essential resists should be scored high (rbase, FA), because kit without them should be disqualified. What about the high resists like shards and nexus? Hard for me to decide on scoring for them. - should I beef up damage? My +16 damage ring scores 32 now, which equals +6 in stats or +3 speed... So, what would you change on these scoring rules?
__________________
See the elves and everything! http://angband.oook.cz |
![]() |
![]() |
![]() |
#2 |
Swordsman
Join Date: May 2007
Posts: 289
![]() |
- Well, I don't remember how glowing works in V & NPP, but it does add to light radius in some variants. If that is true I would give it at least +5.
- CHA, 0, nothing. -Speed is fine. - For brands, counting lines with contains IM_FIRE, IM_ELEC, ..., gives: IM_ELEC - 98 lines IM_POIS - 258 lines IM_FIRE - 149 lines IM_COLD - 177 lines IM_ACID - 86 lines So, for brands I would give poison - 10pts, fire & cold - 25-30pts, acid & lightning - 40-60pts |
![]() |
![]() |
![]() |
#3 |
Administrator
|
Glowing adds +1 to light radius. Let's try +5 then.
I gave +1 to charisma just to promote adornment amulets over empty slot ![]() As for brands, counting monsters which resist is an interesting approach, but I'd also like to include the damage multiplier. Wonder what these are in NPP... +10 for poison brand seems to shabby.
__________________
See the elves and everything! http://angband.oook.cz |
![]() |
![]() |
![]() |
#4 |
Administrator
|
Sample output:
Code:
33 items 27648 combinations considered best score 1042 combo 0 best score 1064 combo 4 best score 1067 combo 84 best score 1070 combo 2308 Take off a Ring of Damage (+17) Take off a Metal Cap of Telepathy [3,+8] Wield a Ring of Resist Nether Wield The Iron Helm 'Holhenneth' [5,+10] (+2) +2 stats[WIS] +2 stats[INT] -17 damage Losing telepathy Gaining resists[nether] +2 searching
__________________
See the elves and everything! http://angband.oook.cz |
![]() |
![]() |
![]() |
#5 | ||
Unangband maintainer
Join Date: Apr 2007
Location: Sydney, Australia
Age: 49
Posts: 872
![]() |
Quote:
Spoiler File -- Relative Slay Power (0.6.2) Note: 1000 power equals no benefit Slay Power ------------------------------------- ----- Slay Nature 1922 Brand Holy 2251 Slay Undead 1288 Slay Demon 1107 Slay Orc 1076 Slay Troll 1043 Slay Giant 1108 Slay Dragon 1286 Execute Dragon 1572 Execute Demon 1215 Execute Undead 1576 Brand Poison 1725 Brand Acid 2284 Brand Elec 2170 Brand Fire 2481 Brand Cold 1825 Brand Lite 1327 Brand Dark 2535 Slay Man 1179 Slay Elf 1303 Slay Dwarf 1028 This is going to be used for the new artifact code and will just be a side effect of this code (but a useful one for game balancing purposes). So you'll be able to get a more concrete values when that goes in. In the meantime you could patch the existing Chris Carr/Robertson randart.c into a version of Angband it was designed for in order to get the same table produced. You'll need to enable logging in the randart.c file. Quote:
Note the borg, not being a human player, undoubtedly uses different weightings, but it'll be a good guide. Andrew
__________________
The Roflwtfzomgbbq Quylthulg summons L33t Paladins -more- In UnAngband, the level dives you. ASCII Dreams: http://roguelikedeveloper.blogspot.com Unangband: http://unangband.blogspot.com |
||
![]() |
![]() |
![]() |
#6 | |
Rookie
Join Date: Apr 2007
Location: California
Age: 62
Posts: 17
![]() |
Quote:
|
|
![]() |
![]() |
![]() |
#7 |
Administrator
|
Neither would I. I zeroed the weight of telepathy just for the sake of taking the sample output.
__________________
See the elves and everything! http://angband.oook.cz |
![]() |
![]() |
![]() |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Display Modes | |
|
|