Deterministic RNG: Difference between revisions
From A KoL Wiki
imported>Discordance No edit summary |
imported>Name Guy Man m whoops, dart perks aren't actually seeded |
||
(5 intermediate revisions by one other user not shown) | |||
Line 12: | Line 12: | ||
| [[continental juice bar]] || 2015 Jan || 3×''[[Paths by number|pathID]]'' + 7×''[[Classes by number|classID]]'' + 5×''daycount'' || || || [[continental juice bar#Notes|link]] | | [[continental juice bar]] || 2015 Jan || 3×''[[Paths by number|pathID]]'' + 7×''[[Classes by number|classID]]'' + 5×''daycount'' || || || [[continental juice bar#Notes|link]] | ||
|- | |- | ||
| [[protonic accelerator pack]] || 2016 Aug || 20×''[[Paths by number|pathID]]'' + 30×''[[Classes by number|classID]]'' + 10×''previousGhostsAscension'' || seed | | [[protonic accelerator pack]] || 2016 Aug || 20×''[[Paths by number|pathID]]'' + 30×''[[Classes by number|classID]]'' + 10×''previousGhostsAscension'' || seed || [[protonic accelerator pack]] explains the selection criteria in more detail, the list of zones is adjusted before the result of mt_rand is resolved against it. || | ||
|- | |- | ||
| [[cornucopia]] || 2016 Nov || 3×''[[Paths by number|pathID]]'' + 7×''[[Classes by number|classID]]'' + 5×''daycount'' + 3×(''previousCornuopias'' + 1) || || || [https://docs.google.com/spreadsheets/d/1jhQv9yGAln0pCpyyZuPMZsvZ3mBIdF_hGcLCcieOg0k/ link] | | [[cornucopia]] || 2016 Nov || 3×''[[Paths by number|pathID]]'' + 7×''[[Classes by number|classID]]'' + 5×''daycount'' + 3×(''previousCornuopias'' + 1) || || || [https://docs.google.com/spreadsheets/d/1jhQv9yGAln0pCpyyZuPMZsvZ3mBIdF_hGcLCcieOg0k/ link] | ||
|- | |||
| [[Through the Spacegate]] || 2017 Apr || '''Unknown''' || '''Unknown''' || || [https://docs.google.com/spreadsheets/d/1yi08XJNPbfBAIDTR2rNrBJTPnXCO6GME294zU3afdD8/ old] [https://docs.google.com/spreadsheets/d/1PQmnNRbGgw5tEujG29exyYOSN8fzK5kns54Mw-Dp3uw/ link] | |||
|- | |- | ||
| [[New-You Club Membership Form]] || 2017 May || 1×''[[Paths by number|pathID]]'' + 1×''[[Classes by number|classID]]'' + 1×''daycount'' || || || [[New-You Club Membership Form#Items_Received|link]] | | [[New-You Club Membership Form]] || 2017 May || 1×''[[Paths by number|pathID]]'' + 1×''[[Classes by number|classID]]'' + 1×''daycount'' || || || [[New-You Club Membership Form#Items_Received|link]] | ||
Line 20: | Line 22: | ||
| [[Meteor Lore]] || 2017 Aug || '''Unknown''' || '''Unknown''' || || [https://docs.google.com/spreadsheets/d/1gSdyuH9KdrxVZZ8YZxbQZfCTPD68sS81vVNv17Oe2x4/ link] | | [[Meteor Lore]] || 2017 Aug || '''Unknown''' || '''Unknown''' || || [https://docs.google.com/spreadsheets/d/1gSdyuH9KdrxVZZ8YZxbQZfCTPD68sS81vVNv17Oe2x4/ link] | ||
|- | |- | ||
| [[Daily Loathing Ballot]] || 2018 Nov || 4×''[[Paths by number|pathID]]'' + 9×''[[Classes by number|classID]]'' + 79×''daycount'' || seed | | [[Daily Loathing Ballot]] || 2018 Nov || 4×''[[Paths by number|pathID]]'' + 9×''[[Classes by number|classID]]'' + 79×''daycount'' || seed || || | ||
|- | |- | ||
| [[Two Crazy Random Summer]] || 2019 Summer || 100000×''[[Classes by number|classID]]'' + 12345×''[[Moon signs by number|moonSignID]]'' + 50×''[[Items by number|itemID]]'' || || || [https://github.com/kolmafia/kolmafia/tree/main/data/TCRS link] | | [[Two Crazy Random Summer]] || 2019 Summer || 100000×''[[Classes by number|classID]]'' + 12345×''[[Moon signs by number|moonSignID]]'' + 50×''[[Items by number|itemID]]'' || || || [https://github.com/kolmafia/kolmafia/tree/main/data/TCRS link] | ||
Line 26: | Line 28: | ||
| [[Gaze at the Stars]] || 2019 Aug || ((''daynumber'' + 2 + ''[[Paths by number|pathID]]'') [[Wikipedia:Modulo|mod]] 8) + 1 = ''[[Moon signs by number|moonSignID]]'' || formula || ''daynumber'' is the days since kol came online and can be seen in the api status info. || [https://docs.google.com/spreadsheets/d/1ww4C5LJgBMs5tZZDcrlY1kVEJPu-bZ7gBjpgH2LNOaE/ link] | | [[Gaze at the Stars]] || 2019 Aug || ((''daynumber'' + 2 + ''[[Paths by number|pathID]]'') [[Wikipedia:Modulo|mod]] 8) + 1 = ''[[Moon signs by number|moonSignID]]'' || formula || ''daynumber'' is the days since kol came online and can be seen in the api status info. || [https://docs.google.com/spreadsheets/d/1ww4C5LJgBMs5tZZDcrlY1kVEJPu-bZ7gBjpgH2LNOaE/ link] | ||
|- | |- | ||
| [[Seek out a Bird]] || 2020 Jan || 11×''[[Paths by number|pathID]]'' + 23×''[[Classes by number|classID]]'' + 37×''daycount'' || seed | | [[Seek out a Bird]] || 2020 Jan || 11×''[[Paths by number|pathID]]'' + 23×''[[Classes by number|classID]]'' + 37×''daycount'' || seed || the algorithm predicts almost all of it; it does not predict the weapon damage/regen bit on the end, or bird name. || [https://docs.google.com/spreadsheets/d/1xFe8-TL5tb0Y0zQ-W4nyz4grA1jcNMoeOlbRUkrIQfU/ link] | ||
|- | |- | ||
| [[fresh coat of paint]] || 2021 || '''Unknown''' || '''Unknown''' || || [https://docs.google.com/spreadsheets/d/1iIgX2V_uFiwtBXWwCUEox6bCy1mYBGmQumC3K9RTvVY/ link] | | [[fresh coat of paint]] || 2021 || '''Unknown''' || '''Unknown''' || || [https://docs.google.com/spreadsheets/d/1iIgX2V_uFiwtBXWwCUEox6bCy1mYBGmQumC3K9RTvVY/ link] | ||
Line 42: | Line 44: | ||
| [[Just the Facts]] || 2023 Sep || 11×''[[Paths by number|pathID]]'' + 421×''[[Classes by number|classID]]'' + ''[[Monsters by number|monsterID]]'' || || || [https://docs.google.com/spreadsheets/d/1LQm0GGlFsiEjp20IIgjBgCPCtetnLpN96ek0MYxHB8A/ link] | | [[Just the Facts]] || 2023 Sep || 11×''[[Paths by number|pathID]]'' + 421×''[[Classes by number|classID]]'' + ''[[Monsters by number|monsterID]]'' || || || [https://docs.google.com/spreadsheets/d/1LQm0GGlFsiEjp20IIgjBgCPCtetnLpN96ek0MYxHB8A/ link] | ||
|- | |- | ||
| [[wardrobe-o-matic]] || 2023 Nov || ''daynumber''×''[[Items by number|itemID]]'' + 2063 || seed | | [[wardrobe-o-matic]] || 2023 Nov || ''daynumber''×''[[Items by number|itemID]]'' + 2063 || seed || || [https://docs.google.com/spreadsheets/d/1roB9HArW579e1vXqZBn9SEiuH0Fi2FhLYZ7UWDLl9vk/ link] | ||
|- | |- | ||
| [[Prepare your Meal]] || 2024 || '''Unknown''' || '''Unknown''' || || | | [[Prepare your Meal]] || 2024 || '''Unknown''' || '''Unknown''' || || [https://docs.google.com/spreadsheets/d/1QFYnIw-M2AitR6MlRU42XB-NyG8wMyFlRDSqEtz4n8Y/ link] | ||
|- | |- | ||
| [[yam battery]] || 2024 May || '''Unknown''' || '''Unknown''' || || | | [[yam battery]] || 2024 May || '''Unknown''' || '''Unknown''' || || [https://docs.google.com/spreadsheets/d/12pFsmmOwlh4AUaStXfSlSd19mvMvbL0FQAv_d2g6d8Y/ link] | ||
|- | |- | ||
| [[Beret Busking]] || 2025 June || ''totalArmorPower'' + ''previousCastsDay'' || seed | | [[Beret Busking]] || 2025 June || ''totalArmorPower'' + ''previousCastsDay'' || seed || ''totalArmorPower'' is the power of your currently-equipped defensive items (hat, shirt, pants) including the bonus from [[Tao of the Terrapin]], and additional hats in [[Hat Trick]]. Effects are picked in order from a predefined list of effects that are generally [[ittah bittah hookah|wishable]]. || [https://docs.google.com/spreadsheets/d/1dZ0btBCt2bwXBPspFJRZaDU-67QdsfCv1XIZdeTKY_s/ link] | ||
|} | |} | ||
[[Category:Game Mechanics]] | [[Category:Game Mechanics]] |
Latest revision as of 19:59, 28 August 2025
![]() |
This page is in need of content.
|
![]() |
There are some vague or non-exact figures and information on this page. Some spading is required.
|
To reduce variance in ascensions some content uses formulas of different kinds to select results. Some use simple formulas while others produce random values from a random number generator seeded with a deterministic value. This results in the same values being generated whenever the input variables are the same. Most commonly in-game this will be experienced as a given class in a path receiving the same items every ascension, while a different class or path receives a different set of items.
For brevity this article only covers formulas where the results can differ between players or ascensions.
Algorithms
Content | Date | Input calculation | Type | Selection notes | Spading sheet |
---|---|---|---|---|---|
Summon Confiscated Things | 2014 Aug | Unknown (suspected to use the same formula as continental juice bar) | Unknown | link | |
continental juice bar | 2015 Jan | 3×pathID + 7×classID + 5×daycount | link | ||
protonic accelerator pack | 2016 Aug | 20×pathID + 30×classID + 10×previousGhostsAscension | seed | protonic accelerator pack explains the selection criteria in more detail, the list of zones is adjusted before the result of mt_rand is resolved against it. | |
cornucopia | 2016 Nov | 3×pathID + 7×classID + 5×daycount + 3×(previousCornuopias + 1) | link | ||
Through the Spacegate | 2017 Apr | Unknown | Unknown | old link | |
New-You Club Membership Form | 2017 May | 1×pathID + 1×classID + 1×daycount | link | ||
Meteor Lore | 2017 Aug | Unknown | Unknown | link | |
Daily Loathing Ballot | 2018 Nov | 4×pathID + 9×classID + 79×daycount | seed | ||
Two Crazy Random Summer | 2019 Summer | 100000×classID + 12345×moonSignID + 50×itemID | link | ||
Gaze at the Stars | 2019 Aug | ((daynumber + 2 + pathID) mod 8) + 1 = moonSignID | formula | daynumber is the days since kol came online and can be seen in the api status info. | link |
Seek out a Bird | 2020 Jan | 11×pathID + 23×classID + 37×daycount | seed | the algorithm predicts almost all of it; it does not predict the weapon damage/regen bit on the end, or bird name. | link |
fresh coat of paint | 2021 | Unknown | Unknown | link | |
Our Daily Candles™ order form | 2021 Aug | 3×pathID + 19×classID + 1×daycount | link | ||
Daylight Shavings Helmet | 2021 Nov | (classID×beardBuffCountAscension) mod 11 (if classID <7) | formula | selects from a list of the 11 buffs | link |
((classID mod 6 + 1)×beardBuffCountAscension) mod 11 (if classID >6) | |||||
MayDay™ supply package | 2022 May | -1×pathID + 11×classID + 13×daycount | link | ||
Cookbookbat | 2022 Nov | 37×pathID + 11×classID + 420×(daycount − 1) + 69×previousDropsToday | |||
Just the Facts | 2023 Sep | 11×pathID + 421×classID + monsterID | link | ||
wardrobe-o-matic | 2023 Nov | daynumber×itemID + 2063 | seed | link | |
Prepare your Meal | 2024 | Unknown | Unknown | link | |
yam battery | 2024 May | Unknown | Unknown | link | |
Beret Busking | 2025 June | totalArmorPower + previousCastsDay | seed | totalArmorPower is the power of your currently-equipped defensive items (hat, shirt, pants) including the bonus from Tao of the Terrapin, and additional hats in Hat Trick. Effects are picked in order from a predefined list of effects that are generally wishable. | link |