Angband.oook.cz
Angband.oook.cz
AboutVariantsLadderForumCompetitionComicScreenshotsFunniesLinks

Go Back   Angband Forums > Angband > Development

Reply
 
Thread Tools Display Modes
Old May 1, 2017, 07:42   #1
Nick
Vanilla maintainer
 
Nick's Avatar
 
Join Date: Apr 2007
Location: Canberra, Australia
Age: 52
Posts: 6,449
Donated: $60
Nick is on a distinguished road
Constructing a set of randarts

I'm currently working on a better way of generating the randart set as a whole, and could do with a sanity check on my thinking.

The current method is approximately:
  1. Measure the power of all the standard artifacts (for these purposes I'm ignoring how this is done)
  2. Go through the standard artifacts one by one doing the following:
    1. Choose an item to base the randomised artifact on, based roughly on the standart distribution (although the large number of swords and polearms is reduced to make a viable set more likely)
    2. If the power of this artifact is too great for an item of this tval, try (a) again
    3. If the power of the base item is too close to the artifact power (so the result would have few properties beyond those of the base item) or too low (so it would need too many added properties), try (a) again
    4. Make an artifact on the base item
  3. If the resulting list fails to reach minimum quantities of tvals:
    Code:
    "bow",		4)
    "hafted",	5)
    "polearm",	5)
    "sword",		5)
    "boots",		4)
    "gloves",	4)
    "helm",		3)
    "crown",		1)
    "shield",	4)
    "cloak",		4)
    "soft armor",	2)
    "hard armor",	2)
    "dragon armor",	1)
    "light",		3)
    "amulet",	3)
    "ring",		3)
    return to (2) and do the whole set again.

That last one is the killer, because if you have a relatively unlikely tval (boots, say), it's really easy to end up with less than 4 and you start again.

My proposed new system is approximately this:
  1. Measure all the standarts
  2. Set a minimum number for each tval (currently they're hard-coded as above - I'd prefer saying something like at least 80% of the number in the standart set)
  3. Set appropriate power bounds for each tval (something like no more than 10% less than the minimum for that tval in the standarts, and no more than 10% more than the maximum)
  4. Pick upfront, for each tval, a collection of artifacts to scramble which fit within the power bounds
  5. Allocate the remaining artifacts to tvals randomly according to the standart distribution (enforcing the bounds)
  6. For each tval, pick appropriate base items for each artifact (these should exist because of the way the bounds were set) and scramble them

I think this will be efficient. One consequence I can see is that all randart DSMs will be really good, being no worse than 10% less than the power of the worst of the standart ones (probably Razorback) - I don't think that's a big problem.

Anyone see any bad consequences, or flaws in my thinking?
__________________
One Ring to rule them all, One Ring to find them,
One Ring to bring them all and in the darkness bind them.
Nick is offline   Reply With Quote
Old May 1, 2017, 13:53   #2
Pete Mack
Prophet
 
Join Date: Apr 2007
Location: Seattle, WA
Posts: 4,015
Donated: $40
Pete Mack is on a distinguished road
This is a much better idea than the current system, so it sounds like an excellent start. Of course it may need balancing, but not as much as the existing system did.
Pete Mack is offline   Reply With Quote
Old May 1, 2017, 15:29   #3
Derakon
Prophet
 
Derakon's Avatar
 
Join Date: Dec 2009
Posts: 7,806
Derakon is on a distinguished road
Seems worth trying. In general I would prefer to implement filtering as constraining the set to be selected from, rather than starting over if the random process doesn't pass the filter.
Derakon is offline   Reply With Quote
Old May 2, 2017, 11:55   #4
Nick
Vanilla maintainer
 
Nick's Avatar
 
Join Date: Apr 2007
Location: Canberra, Australia
Age: 52
Posts: 6,449
Donated: $60
Nick is on a distinguished road
Just for info - probably mainly for me:
Code:
Power for tval bow:          min 144, max 271, avg 197
Power for tval digger:       min 256, max 261, avg 258
Power for tval hafted:       min 127, max 551, avg 250
Power for tval polearm:      min  56, max 372, avg 235
Power for tval sword:        min  85, max 489, avg 206
Power for tval boots:        min 101, max 365, avg 205
Power for tval gloves:       min  44, max 228, avg 115
Power for tval helm:         min  60, max 293, avg 150
Power for tval crown:        min  18, max 286, avg 184
Power for tval shield:       min 137, max 221, avg 176
Power for tval cloak:        min  70, max 241, avg 137
Power for tval soft armor:   min 162, max 237, avg 189
Power for tval hard armor:   min 189, max 383, avg 281
Power for tval dragon armor: min 353, max 783, avg 523
Power for tval light:        min  39, max 177, avg 110
Power for tval amulet:       min  69, max 207, avg 147
Power for tval ring:         min 111, max 672, avg 358
Those are the current standarts.
__________________
One Ring to rule them all, One Ring to find them,
One Ring to bring them all and in the darkness bind them.

Last edited by Nick; May 2, 2017 at 12:01. Reason: formatting
Nick is offline   Reply With Quote
Old May 2, 2017, 12:26   #5
Pete Mack
Prophet
 
Join Date: Apr 2007
Location: Seattle, WA
Posts: 4,015
Donated: $40
Pete Mack is on a distinguished road
@Nick--
Make sure not to include fixed arts in your list. I suspect 672 is the power of The One Ring.
Pete Mack is offline   Reply With Quote
Old May 2, 2017, 12:29   #6
PowerWyrm
Veteran
 
PowerWyrm's Avatar
 
Join Date: Apr 2008
Posts: 1,855
PowerWyrm is on a distinguished road
Quote:
Originally Posted by Pete Mack View Post
@Nick--
Make sure not to include fixed arts in your list. I suspect 672 is the power of The One Ring.
672 is Vilya -- the One Ring has INHIBIT power.
__________________
PWMAngband variant maintainer - check http://www.mangband.org/forum/viewforum.php?f=9 to learn more about this new variant!
PowerWyrm is offline   Reply With Quote
Old May 2, 2017, 15:17   #7
Derakon
Prophet
 
Derakon's Avatar
 
Join Date: Dec 2009
Posts: 7,806
Derakon is on a distinguished road
Out of curiosity, how does a Ring of Speed (+10) rank on this scale?
Derakon is offline   Reply With Quote
Old May 2, 2017, 15:33   #8
Pete Mack
Prophet
 
Join Date: Apr 2007
Location: Seattle, WA
Posts: 4,015
Donated: $40
Pete Mack is on a distinguished road
@Nick-
Recommend not including traditional 'bad' items in the averages and min values. Beruthiel, Mormegil, Gorlim all should get their heavy curse back and should be generated as genuinely dangerous items, not as weak items.

Calris is a different issue: it's pretty much worthless for Warrior and Mage, as they can't possibly enchant it enough to be useful. It used to be a good weapon for high level mages: the CON is invaluable, and the aggravation doesn't matter much with banishment and destruction spells.
Pete Mack is offline   Reply With Quote
Old May 2, 2017, 15:35   #9
Pete Mack
Prophet
 
Join Date: Apr 2007
Location: Seattle, WA
Posts: 4,015
Donated: $40
Pete Mack is on a distinguished road
@Derakon-- less than Feanor, which come in at 365.
Pete Mack is offline   Reply With Quote
Old May 2, 2017, 15:58   #10
PowerWyrm
Veteran
 
PowerWyrm's Avatar
 
Join Date: Apr 2008
Posts: 1,855
PowerWyrm is on a distinguished road
Quote:
Originally Posted by Derakon View Post
Out of curiosity, how does a Ring of Speed (+10) rank on this scale?
Best shooter is 271, which is probably Cuby with +10 speed.
__________________
PWMAngband variant maintainer - check http://www.mangband.org/forum/viewforum.php?f=9 to learn more about this new variant!
PowerWyrm is offline   Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
An odd set of circumstances? wobbly Sil 5 May 13, 2014 00:43
New 8x16 Graphical Tile Set for 3.1.2v2 Nomad Development 30 July 6, 2011 15:42
Fake ASCII Tile Set Nomad Development 7 October 15, 2010 19:22
How to set visuals permanently? krugar Vanilla 5 September 17, 2010 14:58
Thread limit. How to set? Timo Pietilš Oook! 2 April 26, 2007 18:38


All times are GMT +1. The time now is 19:43.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2017, vBulletin Solutions, Inc.