Tomb Titivator
Posts: 911
Joined: Thursday, 17th December 2015, 02:36
the cost of each skill level
- Code:
skill total relative
level cost cost increase in relative cost
0 0 0 0
1 50 50 50
2 150 100 50
3 300 150 50
4 500 200 50
5 750 250 50
6 1050 300 50
7 1400 350 50
8 1800 400 50
9 2250 450 50
10 2800 550 100
11 3450 650 100
12 4200 750 100
13 5050 850 100
14 6000 950 100
15 7050 1050 100
16 8200 1150 100
17 9450 1250 100
18 10800 1350 100
19 12300 1500 150
20 13950 1650 150
21 15750 1800 150
22 17700 1950 150
23 19800 2100 150
24 22050 2250 150
25 24450 2400 150
26 27000 2550 150
27 29750 2750 200
Relative cost increases at a constant rate for about 8 levels at a time, then that constant rate increases, and the pattern repeats. Kinks appear when you reach levels 9, 18, 26. Sure, they're second degree and hard to notice, but what's the point of messing with skill training at random points? Instead of a piecewise quadratic function let's try blatantly adding a cubic element:
- Code:
skill total relative
level cost cost increase in relative cost
0 0 0 0
1 40 40 40
2 125 85 45
3 260 135 50
4 450 190 55
5 700 250 60
6 1015 315 65
7 1400 385 70
8 1860 460 75
9 2400 540 80
10 3025 625 85
11 3740 715 90
12 4550 810 95
13 5460 910 100
14 6475 1015 105
15 7600 1125 110
16 8840 1240 115
17 10200 1360 120
18 11685 1485 125
19 13300 1615 130
20 15050 1750 135
21 16940 1890 140
22 18975 2035 145
23 21160 2185 150
24 23500 2340 155
25 26000 2500 160
26 28665 2665 165
27 31500 2835 170
I randomly picked 5 as a step size and 45 as the cost of gaining skill level 1, but that's actually very easy close to the original. It mostly just smoothens out some of the weird oscillations that players have no reason to suspect exist. There's no reason not to use something like this, and apparently it can be done just by changing values in the lookup table.
But let's have some fun and pretend the formula was completely quadratic, matched up to the current table until skill 10, and departed from there, in a cheaper direction:
- Code:
skill total relative
level cost cost increase in relative cost
0 0 0 0
1 50 50 50
2 150 100 50
3 300 150 50
4 500 200 50
5 750 250 50
6 1050 300 50
7 1400 350 50
8 1800 400 50
9 2250 450 50
10 2750 500 50
11 3300 550 50
12 3900 600 50
13 4550 650 50
14 5250 700 50
15 6000 750 50
16 6800 800 50
17 7650 850 50
18 8550 900 50
19 9500 950 50
20 10500 1000 50
21 11550 1050 50
22 12650 1100 50
23 13800 1150 50
24 15000 1200 50
25 16250 1250 50
26 17550 1300 50
27 18900 1350 50
Let's consider this. The effect is noticeable. For roughly the same amount of experience, you get to skill 15 rather than 14, 20 rather than 18, 26 rather than 22. That's quite a rebalancing. It would require nerfs to UC/throwing aptitudes, and maybe some UC/throwing rebalancing to make it more viable in the early game, given new apts that are worse. It does make the formula much simpler and easier to convey. It could be used compensate for significantly reduced dungeon length, if the smaller amount of available XP actually becomes an issue. Besides, are there not enough XP-restricting dials as is? There's already an XP-to-skillpoint ~XL-based stepdown that can be used for calibrating available XP.
Rewarding generalization is one thing that Crawl does well, in an interesting way, yet honestly my hunch is that Crawl rewards jacks of many trades a bit too much, and could stand to reward specialization a little more, by diminishing the relative cost difference a bit. It is general good advice that training skills very high is not worth it. Crawl's also moving in a direction whereby the dungeon is a tight romp rather than an epic saga, in which case it makes sense to make maxing out skills easier, so you don't get unreasonably attached to your super-character. So my feeling for the table above is rosy right now, though I concede some may know better.
For fun, here's another quadratic version, only this time, relative cost increases every other skill level. Overall it's pretty similar to the one right above. Just a little more expensive at all skill levels.
- Code:
skill total relative
level cost cost increase in relative cost
0 0 0 0
1 100 100 100
2 200 100 0
3 400 200 100
4 600 200 0
5 900 300 100
6 1200 300 0
7 1600 400 100
8 2000 400 0
9 2500 500 100
10 3000 500 0
11 3600 600 100
12 4200 600 0
13 4900 700 100
14 5600 700 0
15 6400 800 100
16 7200 800 0
17 8100 900 100
18 9000 900 0
19 10000 1000 100
20 11000 1000 0
21 12100 1100 100
22 13200 1100 0
23 14400 1200 100
24 15600 1200 0
25 16900 1300 100
26 18200 1300 0
27 19600 1400 100
And here are all four next to each other, showing total costs, for easy comparison:
- Code:
skill right quadratic,
level now cubic quadratic skipping every 2nd
0 0 0 0 0
1 50 40 50 100
2 150 125 150 200
3 300 260 300 400
4 500 450 500 600
5 750 700 750 900
6 1050 1015 1050 1200
7 1400 1400 1400 1600
8 1800 1860 1800 2000
9 2250 2400 2250 2500
10 2800 3025 2750 3000
11 3450 3740 3300 3600
12 4200 4550 3900 4200
13 5050 5460 4550 4900
14 6000 6475 5250 5600
15 7050 7600 6000 6400
16 8200 8840 6800 7200
17 9450 10200 7650 8100
18 10800 11685 8550 9000
19 12300 13300 9500 10000
20 13950 15050 10500 11000
21 15750 16940 11550 12100
22 17700 18975 12650 13200
23 19800 21160 13800 14400
24 22050 23500 15000 15600
25 24450 26000 16250 16900
26 27000 28665 17550 18200
27 29750 31500 18900 19600
edit: it's interesting to look back at how that table was originally constructed:
https://crawl.develz.org/wiki/doku.php? ... m#proposal
The numbers were picked rather haphazardly, and nobody seemed to mind because it was such a huge improvement over the existing numbers.
- For this message the author HardboiledGargoyle has received thanks: 2
- byrel, duvessa