Putting the 'role' back in role-playing games since 2002.
Donate to Codex
Good Old Games
  • Welcome to rpgcodex.net, a site dedicated to discussing computer based role-playing games in a free and open fashion. We're less strict than other forums, but please refer to the rules.

    "This message is awaiting moderator approval": All new users must pass through our moderation queue before they will be able to post normally. Until your account has "passed" your posts will only be visible to yourself (and moderators) until they are approved. Give us a week to get around to approving / deleting / ignoring your mundane opinion on crap before hassling us about it. Once you have passed the moderation period (think of it as a test), you will be able to post normally, just like all the other retards.

Simulating a Deterministic "Point Buy" System in AD&D/Infinity Engine Chargen

Infinitron

I post news
Staff Member
Joined
Jan 28, 2011
Messages
97,236
Codex Year of the Donut Serpent in the Staglands Dead State Divinity: Original Sin Project: Eternity Torment: Tides of Numenera Wasteland 2 Shadorwun: Hong Kong Divinity: Original Sin 2 A Beautifully Desolate Campaign Pillars of Eternity 2: Deadfire Pathfinder: Kingmaker Pathfinder: Wrath I'm very into cock and ball torture I helped put crap in Monomyth
The randomness of IE/AD&D chargen annoys me. When should one give up on re-rolling stats? How many stat points is too much? How many is too little?

Here's how stat rolling in Baldur's Gate works: http://www.playithardcore.com/pihwiki/index.php?title=Baldur's_Gate:_Races_and_Stats

Baldur's Gate determines each stat by rolling 3 dice that are all 6-sided, and summing these. It then applies race and class modifiers, and rerolls if the value falls outside the minimum or maximum for the race or class. After determining each of the six stats in this way, it checks to see if all six scores add up to at least 75. If not, it scraps the scores it has found, and begins over again.

Following these rules, we can enumerate all possible stat rolls, discarding the ones with a total below 75 and the ones that fall outside the race and class limitations. Then, adding up the sum of each remaining roll weighted by its probability of being rolled, and normalizing the result, we arrive at the Expected Total Points value for that Race/Class combination.

That value represents the average roll for that race and class - an average character, not too powerful, not too weak. So you can reroll until you have that many points, or just use the CTRL-8 cheat, and be guaranteed an optimal gameplay experience.

Unless of course, the games are actually balanced around excessive rerolling for higher-than-average values. :M
 

Infinitron

I post news
Staff Member
Joined
Jan 28, 2011
Messages
97,236
Codex Year of the Donut Serpent in the Staglands Dead State Divinity: Original Sin Project: Eternity Torment: Tides of Numenera Wasteland 2 Shadorwun: Hong Kong Divinity: Original Sin 2 A Beautifully Desolate Campaign Pillars of Eternity 2: Deadfire Pathfinder: Kingmaker Pathfinder: Wrath I'm very into cock and ball torture I helped put crap in Monomyth
If anybody's interested, I whipped up a Python script that calculates this. Adjust it as required.

Code:
import itertools
import operator
 
statProbs = [0, 0, 0] + [1, 3, 6, 10, 15, 21, 25, 27] + [27, 25, 21, 15, 10, 6, 3, 1]
 
def statsProb(stats):
    statsProbs = [statProbs[stat] for stat in stats]
    return reduce(operator.mul, statsProbs, 1)
 
def statsNotLess(stats, minStats):
    return all(map(operator.ge, stats, minStats))
 
minStatSum = 75
minStats = [3, 3, 3, 3, 3, 3]
statMods = [0, 0, 0, 0, 0, 0]
 
allStats = itertools.product(range(3, 19), repeat=6)
 
probSum = 0
pointSum = 0
 
for stats in allStats:
    moddedStats = map(operator.add, stats, statMods)
    statSum = sum(moddedStats)
    if statSum >= minStatSum and statsNotLess(moddedStats, minStats):
        prob = statsProb(stats)
        probSum += prob
        pointSum += prob * statSum
       
expectedPoints = pointSum / float(probSum)
expectedFreePoints = expectedPoints - sum(minStats)
 
print "Expected Total Points: " + str(expectedPoints)
print "Expected Free Points: " + str(expectedFreePoints)
 

marooned

Liturgist
Joined
Dec 18, 2009
Messages
313
Interesting. Too bad the IE games never had the stats properly balanced.
 

marooned

Liturgist
Joined
Dec 18, 2009
Messages
313
The stat rolling in ToEE was a way better system than simple re-rolling 'till the end of times. Of course it was more abusable (not including bugs :M). Even better that you could still use the point buy system.

/nostalgic rant
 

Bruma Hobo

Lurker
Joined
Dec 29, 2011
Messages
2,409
Mondblutian re-roll ad infinitum vs VD's point-buy C&C system. Which is better and why?
 
Joined
Jan 7, 2012
Messages
14,151
Rolling for points is pretty stupid when you can then subtract and add points at a whim. What a consoletarded idea...

Considering that the normal D&D dump stats are even dumpier in BG/IWD given the lack of stat checks and abundance of equipment/consumables to boost stats, there's pretty much no reason not to have 18s for your main stats and Dex/Con for defense.

Mondblut would just hex edit his characters stats.

Turn on cheats and you can simply press a certain button combination to have all 18s. Can't remember what it was at the moment.
 

Jaesun

Fabulous Ex-Moderator
Patron
Joined
May 14, 2004
Messages
37,241
Location
Seattle, WA USA
MCA
I've never really liked "random rolling" for stats in a cRPG's. I prefer Point buy personally.
 

mediocrepoet

Philosoraptor in Residence
Patron
Joined
Sep 30, 2009
Messages
11,477
Location
Combatfag: Gold box / Pathfinder
Codex 2012 Codex+ Now Streaming! MCA Project: Eternity Divinity: Original Sin 2
I kind of like random rolling for tabletop when you're with your friends and part of the fun is getting really good or bad rolls and then having to roleplay them. For a CRPG, might as well just have point buy - people are just going to cheat or roll 23405973487346897 times anyway.
 

sea

inXile Entertainment
Developer
Joined
May 3, 2011
Messages
5,698
The problem with computer RPGs is that nobody is going to accept random stats if they can get better, unless there is significant disincentive to doing so. To make random rolls work and maintain the integrity of the system you could:
  • Remember the previous X rolls and average them, not allowing subsequent rolls to deviate +/- a certain amount
  • Impose a maximum number of rolls before locking the player out of rolling again
  • Create a maximum point value which is easier to reach than the theoretical but ultimately near-impossible "all 18s"
  • Allow the player to make X rolls and pick from 1 of them
  • Have some sort of animation attached to rolls that must play out before another re-roll can be made (like a spinning die with nice sound effects), which will make the act of rolling feel more engaging but will make it annoying to do repeatedly
Still, ultimately these are just inconveniences and min-maxers would complain about being forced to play a certain way, or would edit stats using trainers, or would just exit the game to retry again... it's not ideal.

Tabletop games can work with stat rolling simply because you aren't just sitting on your ass playing the game by yourself, you're accountable to others and they are liable to get pissed and quit the game if you spend ages and ages re-rolling, or the DM might simply say "okay, next roll is the last."

But this has never worked well in computer games unless die rolls have significant disincentive. There are ways to work these into gameplay in intelligent and fair ways that don't feel punitive, but still encourage players to follow the spirit of the game. For instance:
  • Use a random seed to ensure that stats are the same whenever you reload the game
  • Roll future numbers far in advance, i.e. determine the increases of the next level-up immediately after the current level-up is performed
  • Attach rolls to a lengthy procedure of some kind which can be fun on its own but annoying to repeat (travel system, training mini-game, etc.)
Depending on the game design and the number of rolls required, the amount of sheer "labor" involved might also be an effective disincentive. For example, rolling one character to maximum is a lot easier in Baldur's Gate than it is in Icewind Dale, where you have (usually) six. Making the player manually roll each stat can also make the character creation feel a bit more "hands on" while ultimately making it much less convenient to re-roll endlessly.

Ultimate I think point buy systems with some small amount of variance are preferable. If the variance is small enough, i.e. +/- 15%, most players may not even notice or care. That way you can impart a degree of variation to what is ultimately still a pretty rigid (and therefore more balanced and predictable) system, without feeling like every single character or level-up is cookie-cutter.

Ultimately, though, the interest in character development shouldn't come from random factors, but from giving the player lots of compelling choices and only allowing him/her to make a few of them. That's why point buy systems like SPECIAL and D&D 3rd Edition work well - it's impossible to really make an ideal character and you are always going to make trade-offs. It's deciding which ones to make that keep character progression fun and intriguing.
 
Joined
Jan 7, 2012
Messages
14,151
Turn on cheats and you can simply press a certain button combination to have all 18s. Can't remember what it was at the moment.

RTFOP

Surely you jest, sir.

I kind of like random rolling for tabletop when you're with your friends and part of the fun is getting really good or bad rolls and then having to roleplay them. For a CRPG, might as well just have point buy - people are just going to cheat or roll 23405973487346897 times anyway.

ToEE guilts me into using Point Buy even though I know rolling is far superior. Just feels wrong seeing that reminded that you rolled 50 times for a character.

Rolling works for parties, but games where you create one character absolutely should use point buy. Theres just too much riding on a single person in the latter instance.
 

mediocrepoet

Philosoraptor in Residence
Patron
Joined
Sep 30, 2009
Messages
11,477
Location
Combatfag: Gold box / Pathfinder
Codex 2012 Codex+ Now Streaming! MCA Project: Eternity Divinity: Original Sin 2
ToEE guilts me into using Point Buy even though I know rolling is far superior. Just feels wrong seeing that reminded that you rolled 50 times for a character.

Oh I don't know. "Look at all the blood, sweat and tears I put into this party. The superhuman with the least rerolls is 96. It took me 4 days to craft them..." You'd reroll more except you're weak and settle for substandard results. Pathetic. :obviously:
 
Joined
Jan 7, 2012
Messages
14,151
Remember the previous X rolls and average them, not allowing subsequent rolls to deviate +/- a certain amount
Impose a maximum number of rolls before locking the player out of rolling again
Create a maximum point value which is easier to reach than the theoretical but ultimately near-impossible "all 18s"
Allow the player to make X rolls and pick from 1 of them
Have some sort of animation attached to rolls that must play out before another re-roll can be made (like a spinning die with nice sound effects), which will make the act of rolling feel more engaging but will make it annoying to do repeatedly

An interesting idea for an IWD-like game where you create the entire party would be to bank points based on how good or bad your roll is and weight the next character roll with it. Final character's rolls are heavily normalized and can't be overly exceptional either way outside of the second to last character's weight.
 

Wyrmlord

Arcane
Joined
Feb 3, 2008
Messages
28,886
Here is why I think stat rolling makes sense.

In Wizardry 6, you need at least 15 bonus points to create a Lord. To get a Lord with playable stats, you need about 21 bonus points, if only to get his Strength to 18.

Bonus points are rolled between 1 and 25.

The odds of getting a formidable Lord are about 20%. Which makes sense. If everybody could be as physically, intellectually, and socially as proficient as a Lord, then everybody would be a Lord, or rather nobody would be a Lord. Because the very word, Lord, implies that this character is a leader and one who became so because his traits are rare. By making a Lord so out of reach, a party full of Lords is possible but not encouraged. What is wrong with that?

Same with Paladins and Monks in D&D. The path of a paladin or a monk involves extreme sacrifice and a high level of intellectual, social, and physical ability. The payoff is becoming a semi-divine creature by the end of the game. By making their stats very difficult to roll, the game pretty much emphasises that not everybody becomes a paladin or a monk. Think about it - if becoming a paladin or a monk were easy, every farmer, peasant, bureaucrat, street sweeper,.etc in Faerun would be a paladin or monk, because they would all be immune to fear, resistant to spells, difficult to hit physically, and in the good books of the gods.
 

Baron

Arcane
Joined
Jul 10, 2010
Messages
2,887
if becoming a paladin or a monk were easy, every farmer, peasant, bureaucrat, street sweeper,.etc in Faerun would be a paladin or monk
They could follow that path or they could sleep with NPC women.

I prefer rolled stats like pen and paper. The flaw in this method is the overfocus on combat in cRPGs. Players can't resist cheating on stats, challenges are increased accordingly, and then you have a situation where it takes 30 minutes to make your characters from all the re-rolling. Allocating points is the logical solution, particularly if you have a multiplayer component, but again it makes the game's focus about min-maxing. The game should be about more than damage per second.

I'd love to see more high charisma fighters or thieves as the designated party leader. Or having a reason to making an intelligent priest. Need a better skill/feat system where a well balanced fighter did just as well as the musclebound moron simply for the fact that he could learn more. A dungeon/swamp/castle of doom should demand a wide selection of survival skills, more at least than hitting something with a wooden object.
 

Wyrmlord

Arcane
Joined
Feb 3, 2008
Messages
28,886
if becoming a paladin or a monk were easy, every farmer, peasant, bureaucrat, street sweeper,.etc in Faerun would be a paladin or monk
They could follow that path or they could sleep with NPC women. Celibacy comes with a high saving

I prefer rolled stats like pen and paper. The overwhelming flaw in this method is the supreme overfocus on combat in cRPGs. Because players can't resist cheating on stats, challenges are increased accordingly, and then you have a situation where it takes 30 minutes to make your characters from all the re-rolling. Allocating stat points is a logical equitable solution, particularly if you have a multiplayer component, but again it makes the game's focus about min-maxing. The game should be about more than damage per second.

I'd love to see more high charisma fighters or thieves as the designated party leader. Or having a reason to making an intelligent priest. Need a better skill/feat system where a well balanced fighter did just as well as the musclebound moron simply for the fact that he could learn more. A dungeon/swamp/castle of doom should demand a wide selection of survival skills, more at least than hitting something with a maul.
But existing games do have a payoff for being an intelligent, charismatic, and wise fighter.

Intelligence means that a mindflayer or beholder won't be able to control that fighter, and wisdom means that some high level targeted spells can be shrugged off. Charismatic fighters can use the taunt skill to make their enemies drop their AC and attack rolls, significantly weakening them. Charismatic fighters in NWN1 could also disrupt spells from a distance by taunting spellcasters.
 

Baron

Arcane
Joined
Jul 10, 2010
Messages
2,887
Yeah, I kind of agree but I've never once seen anyone use that. They just had their 30 Strength Kurgan hew through the wizard and a section of the castle he was standing in front of.
 

J1M

Arcane
Joined
May 14, 2008
Messages
14,616
There is no way to lock people into a roll in a computer game. The closest you could get would be to roll stats after the tutorial and force them to quit the game to reroll. Stupid.

Point buy or stat blocks are the only way to go. Anything else is cheating.
 

Revenant

Guest
The problem is that AD&D character building relies almost exclusively on randomly rolled stats that pretty much define the individuality of a character. Point-buy results in terribly boring characters in AD&D - you put 18 in your main stat, 16 or so in a secondary one and all other stats remain at 8 or 9, or whatever the minimum is. On the other hand, if you can't alter the rolls, you end up with interesting C&C - gosh, this fighter has 18 strength and 17 dexterity, but 5 wisdom, will he really be able to take off? There's a whole narrative about fixed rolls, and that's why point-buy will always be a fail in AD&D.
 

DraQ

Arcane
Joined
Oct 24, 2007
Messages
32,828
Location
Chrząszczyżewoszyce, powiat Łękołody
Simulating a Deterministic "Point Buy" System in AD&D/Infinity Engine Chargen
Fix the values at racial minimum, chack-in pre-game area with barter screen interface allowing buying "manuals of ____" and fixed amount of GPs on character, run script to replace any unused character's gold with "right value" for starting character and clean up unused manuals, then warp to game proper.

That's about the dirtiest, hackiest fix I could think of without knowing the engine's workings.

Rolling for points is pretty stupid when you can then subtract and add points at a whim. What a consoletarded idea...
Point buy for base stat values and then roll for non-reassignable bonuses to those values.
:obviously:

The problem with computer RPGs is that nobody is going to accept random stats if they can get better, unless there is significant disincentive to doing so. To make random rolls work and maintain the integrity of the system you could:
  • Remove the ability to freely reallocate points.
Fixed.
 

Infinitron

I post news
Staff Member
Joined
Jan 28, 2011
Messages
97,236
Codex Year of the Donut Serpent in the Staglands Dead State Divinity: Original Sin Project: Eternity Torment: Tides of Numenera Wasteland 2 Shadorwun: Hong Kong Divinity: Original Sin 2 A Beautifully Desolate Campaign Pillars of Eternity 2: Deadfire Pathfinder: Kingmaker Pathfinder: Wrath I'm very into cock and ball torture I helped put crap in Monomyth
DraQ There's no need to go that far, you can use the CTRL-8 cheat to get whatever stats you want. The only question is, what number of free points is fair? My algorithm calculates the average number of points you're "supposed" to get.
 

Spectacle

Arcane
Patron
Joined
May 25, 2006
Messages
8,363
DraQ There's no need to go that far, you can use the CTRL-8 cheat to get whatever stats you want. The only question is, what number of free points is fair? My algorithm calculates the average number of points you're "supposed" to get.
Why not just steal the points system from D&D 3E? Attributes in those editions are similar enough that it will work OK in the game.
 

As an Amazon Associate, rpgcodex.net earns from qualifying purchases.
Back
Top Bottom