Menu
News
All News
Dungeons & Dragons
Level Up: Advanced 5th Edition
Pathfinder
Starfinder
Warhammer
2d20 System
Year Zero Engine
Industry News
Reviews
Dragon Reflections
White Dwarf Reflections
Columns
Weekly Digests
Weekly News Digest
Freebies, Sales & Bundles
RPG Print News
RPG Crowdfunding News
Game Content
ENterplanetary DimENsions
Mythological Figures
Opinion
Worlds of Design
Peregrine's Nest
RPG Evolution
Other Columns
From the Freelancing Frontline
Monster ENcyclopedia
WotC/TSR Alumni Look Back
4 Hours w/RSD (Ryan Dancey)
The Road to 3E (Jonathan Tweet)
Greenwood's Realms (Ed Greenwood)
Drawmij's TSR (Jim Ward)
Community
Forums & Topics
Forum List
Latest Posts
Forum list
*Dungeons & Dragons
Level Up: Advanced 5th Edition
D&D Older Editions, OSR, & D&D Variants
*TTRPGs General
*Pathfinder & Starfinder
EN Publishing
*Geek Talk & Media
Search forums
Chat/Discord
Resources
Wiki
Pages
Latest activity
Media
New media
New comments
Search media
Downloads
Latest reviews
Search resources
EN Publishing
Store
EN5ider
Adventures in ZEITGEIST
Awfully Cheerful Engine
What's OLD is NEW
Judge Dredd & The Worlds Of 2000AD
War of the Burning Sky
Level Up: Advanced 5E
Events & Releases
Upcoming Events
Private Events
Featured Events
Socials!
EN Publishing
Twitter
BlueSky
Facebook
Instagram
EN World
BlueSky
YouTube
Facebook
Twitter
Twitch
Podcast
Features
Top 5 RPGs Compiled Charts 2004-Present
Adventure Game Industry Market Research Summary (RPGs) V1.0
Ryan Dancey: Acquiring TSR
Q&A With Gary Gygax
D&D Rules FAQs
TSR, WotC, & Paizo: A Comparative History
D&D Pronunciation Guide
Million Dollar TTRPG Kickstarters
Tabletop RPG Podcast Hall of Fame
Eric Noah's Unofficial D&D 3rd Edition News
D&D in the Mainstream
D&D & RPG History
About Morrus
Log in
Register
What's new
Search
Search
Search titles only
By:
Forums & Topics
Forum List
Latest Posts
Forum list
*Dungeons & Dragons
Level Up: Advanced 5th Edition
D&D Older Editions, OSR, & D&D Variants
*TTRPGs General
*Pathfinder & Starfinder
EN Publishing
*Geek Talk & Media
Search forums
Chat/Discord
Menu
Log in
Register
Install the app
Install
Upgrade your account to a Community Supporter account and remove most of the site ads.
Community
General Tabletop Discussion
*TTRPGs General
25 or 32...what's the REAL "standard" point buy?
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Reply to thread
Message
<blockquote data-quote="Anax" data-source="post: 1571918" data-attributes="member: 19868"><p>I actually started by writing a program to do the analysis in O'Caml using a monad and combinator based representation of the histograms. But after a while, it turned out that a naive approach was going to have serious memory issues, and I didn't want to spend the time to make things efficient.</p><p></p><p>Then I realized that SQL is pretty good at working with large sets, and decided to give that a whack. It turned out pretty decent, so I might use this sort of approach in the future if I have a large (but finite) set of probabilities to work with.</p><p></p><p>The monad/combinator approach can be more powerful in many cases, but in this case there's very little you can do to prune the cases--specifically because you need the individual stat rolls fairly late in the game to prune out the re-roll cases. If you can throw out the individual parts of the cross product, you get a lot less waste. (For example, if only the sum of the rolls matters, you can sum a 3d6 roll with another 3d6 roll, then sum that product with another 3d6 roll, etc.)</p><p></p><p>Anyway, it was fun to get the raw numbers, and if I ever decide I want to analyze things in a different way, regenerating the data doesn't take long at all.</p><p></p><p>Back to data: Because you mentioned it (and I didn't notice that before), here are the results for the expected number of points: (Weighted sum of points over the probabilities.)</p><p></p><p>[code]</p><p>3d6, 0 points for sub 8 scores</p><p> mean | stddev</p><p>------------------+------------------</p><p> 24.6766734251838 | 5.42568950335941</p><p></p><p>4d6, 0 points for sub 8 scores</p><p> mean | stddev</p><p>------------------+------------------</p><p> 30.9231285820757 | 7.70847353687699</p><p></p><p>3d6, -1 point per for sub 8 scores</p><p> mean | stddev</p><p>------------------+------------------</p><p> 23.8108899861831 | 5.56102133075207</p><p></p><p>4d6, -1 point per for sub 8 scores</p><p> mean | stddev</p><p>-----------------+------------------</p><p> 30.463321972604 | 7.92268735395706</p><p>[/code]</p><p></p><p>I got significantly different numbers than on your first data. (You had 30 and 34 for "excluding non-viable combos".) However, your non-viable was that the modifiers had to total to +3 or better, whereas I went with the book definition of re-roll only on less than +1 total. Here's my mean and standard deviation with discard less than +3 total. (With this limit, only 23.91% of 3d6 rolls and 76.89% of 4d6-drop-one rolls qualify as "acceptable".) Still not spot-on with your numbers, but a lot closer.</p><p></p><p>[code]</p><p>3d6, 0 points for sub 8 scores</p><p> mean | stddev</p><p>------------------+------------------</p><p> 27.3361208657579 | 5.08015680167603</p><p></p><p>4d6, 0 points for sub 8 scores</p><p> mean | stddev</p><p>------------------+------------------</p><p> 32.2416863796721 | 7.19674902367485</p><p></p><p>3d6, -1 point per for sub 8 scores</p><p> mean | stddev</p><p>-----------------+------------------</p><p> 26.782982833901 | 5.06717086696368</p><p></p><p>4d6, -1 point per for sub 8 scores</p><p> mean | stddev</p><p>------------------+------------------</p><p> 31.8949012557256 | 7.30335806634089</p><p>[/code]</p><p></p><p>And the very simple SQL query to get these results, tacked on to what I had before:</p><p></p><p>[code]</p><p>select sum(st_p*st_pt) as mean,</p><p> sum(st_p*(st_pt-(select sum(st_p*st_pt)</p><p> from stats3d6l_norm))^2)^0.5 as stddev</p><p> from stats3d6l_norm;</p><p></p><p>select sum(st_p*st_pt) as mean,</p><p> sum(st_p*(st_pt-(select sum(st_p*st_pt)</p><p> from stats4d6l_norm))^2)^0.5 as stddev</p><p> from stats4d6l_norm;</p><p>[/code]</p><p></p><p>My stats are a bit rusty, so forgive me if I've incorrectly calculated the weighted standard deviation. I think that's how it should go, though. (Take the sum of (the weight times the difference between the value and the mean) all over the sum of the weights (in this case: 1).)</p><p></p><p>And thanks for the welcome. <img src="https://cdn.jsdelivr.net/joypixels/assets/8.0/png/unicode/64/1f642.png" class="smilie smilie--emoji" loading="lazy" width="64" height="64" alt=":)" title="Smile :)" data-smilie="1"data-shortname=":)" /> Too much flaming on any boards for my taste, really, but I can't resist crunching numbers.</p></blockquote><p></p>
[QUOTE="Anax, post: 1571918, member: 19868"] I actually started by writing a program to do the analysis in O'Caml using a monad and combinator based representation of the histograms. But after a while, it turned out that a naive approach was going to have serious memory issues, and I didn't want to spend the time to make things efficient. Then I realized that SQL is pretty good at working with large sets, and decided to give that a whack. It turned out pretty decent, so I might use this sort of approach in the future if I have a large (but finite) set of probabilities to work with. The monad/combinator approach can be more powerful in many cases, but in this case there's very little you can do to prune the cases--specifically because you need the individual stat rolls fairly late in the game to prune out the re-roll cases. If you can throw out the individual parts of the cross product, you get a lot less waste. (For example, if only the sum of the rolls matters, you can sum a 3d6 roll with another 3d6 roll, then sum that product with another 3d6 roll, etc.) Anyway, it was fun to get the raw numbers, and if I ever decide I want to analyze things in a different way, regenerating the data doesn't take long at all. Back to data: Because you mentioned it (and I didn't notice that before), here are the results for the expected number of points: (Weighted sum of points over the probabilities.) [code] 3d6, 0 points for sub 8 scores mean | stddev ------------------+------------------ 24.6766734251838 | 5.42568950335941 4d6, 0 points for sub 8 scores mean | stddev ------------------+------------------ 30.9231285820757 | 7.70847353687699 3d6, -1 point per for sub 8 scores mean | stddev ------------------+------------------ 23.8108899861831 | 5.56102133075207 4d6, -1 point per for sub 8 scores mean | stddev -----------------+------------------ 30.463321972604 | 7.92268735395706 [/code] I got significantly different numbers than on your first data. (You had 30 and 34 for "excluding non-viable combos".) However, your non-viable was that the modifiers had to total to +3 or better, whereas I went with the book definition of re-roll only on less than +1 total. Here's my mean and standard deviation with discard less than +3 total. (With this limit, only 23.91% of 3d6 rolls and 76.89% of 4d6-drop-one rolls qualify as "acceptable".) Still not spot-on with your numbers, but a lot closer. [code] 3d6, 0 points for sub 8 scores mean | stddev ------------------+------------------ 27.3361208657579 | 5.08015680167603 4d6, 0 points for sub 8 scores mean | stddev ------------------+------------------ 32.2416863796721 | 7.19674902367485 3d6, -1 point per for sub 8 scores mean | stddev -----------------+------------------ 26.782982833901 | 5.06717086696368 4d6, -1 point per for sub 8 scores mean | stddev ------------------+------------------ 31.8949012557256 | 7.30335806634089 [/code] And the very simple SQL query to get these results, tacked on to what I had before: [code] select sum(st_p*st_pt) as mean, sum(st_p*(st_pt-(select sum(st_p*st_pt) from stats3d6l_norm))^2)^0.5 as stddev from stats3d6l_norm; select sum(st_p*st_pt) as mean, sum(st_p*(st_pt-(select sum(st_p*st_pt) from stats4d6l_norm))^2)^0.5 as stddev from stats4d6l_norm; [/code] My stats are a bit rusty, so forgive me if I've incorrectly calculated the weighted standard deviation. I think that's how it should go, though. (Take the sum of (the weight times the difference between the value and the mean) all over the sum of the weights (in this case: 1).) And thanks for the welcome. :) Too much flaming on any boards for my taste, really, but I can't resist crunching numbers. [/QUOTE]
Insert quotes…
Verification
Post reply
Community
General Tabletop Discussion
*TTRPGs General
25 or 32...what's the REAL "standard" point buy?
Top