Pick a random winnable deal at start
This commit is contained in:
parent
05294eaa4b
commit
ae1955b7c4
@ -40,7 +40,9 @@ function board:init(ruleset)
|
||||
return new.rank==lst.rank-1
|
||||
end))
|
||||
|
||||
self:deal(12889>>16)
|
||||
local seed=seeds:choose(self.ruleset.pool)
|
||||
printh("chosen seed: "..tostr(seed,2))
|
||||
self:deal(seeds:choose(self.ruleset.pool))
|
||||
end
|
||||
|
||||
function board:deal(seed)
|
||||
@ -50,7 +52,6 @@ function board:deal(seed)
|
||||
for i=1,#self.ruleset.deck.aces do
|
||||
local well=self.wells[i]
|
||||
local ace=self.ruleset.deck.aces[i]
|
||||
well:add(ace) -- temporarily, so would_accept will work
|
||||
self:animate_move_ace_to_well(ace,i)
|
||||
end
|
||||
|
||||
|
133
main.p8
133
main.p8
@ -11,6 +11,7 @@ __lua__
|
||||
#include ruleset.lua
|
||||
#include progression.lua
|
||||
#include seed_constants.lua
|
||||
#include seeds.lua
|
||||
#include main.lua
|
||||
|
||||
--[[
|
||||
@ -35,3 +36,135 @@ __gfx__
|
||||
00000000000000000000000000000000000000000000000000000000000070000000000000007000007777700077777000777770000000000000000000000000
|
||||
00000000000070000000700000700070007000700070007000700070007000700070007000700070070077700700777007007770000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000070000000700000007000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
a45b403c0aa0360f5944347b0018170a1312011307511c2075829964331301088305c86241754c071719a68aa302a962944fa20393c3e726a6308b36804a7013
|
||||
505043247423215f30f77413244003620624034405a12c02347070330103b0d524535c21cbd1187013311316c161583180b01250f8a92308652817329c220125
|
||||
51c2746157071abd696554091183b5453222346324005c7a502274729035031320a54610a134145270606923d2624887d45601017bcf92a570c08002538065a3
|
||||
7722d440060430371f7796b901314fc00040caa73b9d670a016c26305a67795c32f67a3c48bd372e664136e003442a036e6a48009d460a8413333005a15c1221
|
||||
25feb24a024641a930649018e06af40613c6df323df0922136c0b3a628a9704887eb465f103eb312113a71d6132681ec5314660112a592500a7332050b110022
|
||||
2133bf841ad2e08531151212008b1b93269808f6e7084bf509645c4d17e5381030d09a21374097e7205833281b4968b2d257805070cb23f660123a8961d02217
|
||||
99c4a3543235608e61c082461387e3a08112422243124c95b80527b4c70297bb53111112ae012101701d57021a33baa5320a75220703e67316450a470811222f
|
||||
2407132570675cad8466b089c6ae8b1cd63445254321211112211225171902cc2f52b3431a96e0621a0b320810118847210217302c829172a9142e81471a1222
|
||||
151012109139251e01535f3f60d066309689f475500ac31f0c51550fb2c040636116072bb95c3c20623312d15802729e11a7863610235565041e05d811102790
|
||||
2303bb6766a35d19634125255536468126950ed0511d2004a869600b03606008402c423631430234c82143b431911ad813080730a56952dff8d930c0710f9c59
|
||||
1560411e195885ab12a47046a513355330834851127111b0b01223b425a03700713fd455012919b962ea2204803297512905048b60e0070b10db28d95d041334
|
||||
6413616371255f16bc72123662020571218053d29a0a08d5614cb03218e4202307a3331121072003208b5216380484d071152504157a34646b93320421067bfd
|
||||
71328140448aa00003916fb823a42960baf06050bbbc50802215d3247720e254ada00e824740640b1d220134900a865163575c651d12fb3a5142e10402804018
|
||||
d34432745132241ea1144102343936850621e24e38478403732882714b6095a00a8bc12563fb29a95124622b191e132d71031028233188cff2b6054c5a500220
|
||||
06461bb07141bd203519449c4a7b81059519e186332206a601080782219753433271d3f7a60bb0325500dcd0320a4f425263a0635103119131a6c114220d483c
|
||||
22692c1f36d0a4e4b650a574d52035129d6043a71416f190d044201e640d9361a28795850d841420008330235203565132f09c1062b314c01100130214826079
|
||||
4433210066db20e7d4243c00363044503221a9a248028275163032437db731156197323b110083556bc6882b62120145932723c410141720502110607096341b
|
||||
040253269c334a9ad729304c593a6541c8512542d252305530103c61142f64d7d884937139a6082c8af4436d472012b2a520dc2401b055ce7472750d2a334f50
|
||||
02c529bd7c0950635919c19f7b339d700061121604392031118b4550112932e89603008cd0fb931925c5c25b110a43460d23941436924a202077044914a618d2
|
||||
411e3341031101c5e0f0127719125212545515771b9b1db33070001903110033333c01032c3265162f30010b00d3232022416e5a6625a391e0736112b0030131
|
||||
a33e106330c444a849058741a02733922393921f0230f2e645234d441b84f20ae452222723d363f2c0a0230136181d550c1054542190004072371d4e13069153
|
||||
0b905062ea1b1831348050161007723cbf05e0122080c4030533b1396114221153345021058405d139924e92ad06010105e0452a8c0b703116f0342005c66451
|
||||
62110200c314070a144300ca63855bc1be01cb9326008aeb0a2bc12e0fcb2120d13c806494815a00b2a2048007195e54f49f9a1bda72163953e4b55516013e01
|
||||
17a030e8e9009dc461a41017a8de92072403ff12724200356739323429133a3131030ae919a118c38268a569e604609027e6d12511e1d1005f235661d08a6642
|
||||
0101913aeb58522a65c9ab7108b412d5315940519305310d5e83a39a0621605902354212014ab3ce24e0276205201da9d25322db8158e0e533501c733deb2b65
|
||||
82032123367845157b8203031329616024114326763031c67207e61b1489f1114603909b3c320200775856471002965c31007f4393c033910433505033001c59
|
||||
84070b4404312f550d8caa4271887618b24c141401141266c2277005a2483e931a24844542112793c3321009f7657185617119015e7030049021154661a246d5
|
||||
66a51123ec45154031a14727580101433190b05309382063244766e0c0226217503bc02064936f032241d81650511057171f2150044f213b2e0015a38c243680
|
||||
ab3010b466481db267510761c2073003b10640243926b0d90ad4600429f4134323130114132d435c4793621a6823fa402629e1806045135b3f5818112091025a
|
||||
1cf83438cf042533381708106085ca79020210f55003c06020c49848d20503c6363f7c9c22b32c7b3b1878752222a40235c1c2b14211647f20fd51b5b067c267
|
||||
2604670f173da221902fc232269007651016f335274e02e3117ca6b341230d75011062b2318619531730a6117d0373b36509292c054189450968133141c11625
|
||||
19883316235530007105f02314791a01789012050c740b010649696124b1d9032b0c0720002a065c9005105f018d4038a177510069544180311c470624701819
|
||||
7059d63554287564a047bd9950e732c14f54a6000529070b24850d07200bd70c41b910c31d47a516d353e06f179262831975015958350d3673088f55721440f3
|
||||
7026505f3ad2527235bafc335b0098035d138016c174031131100f445e48359829326a09225332136c105f455032720f3d44419d36a1992113032eec61831447
|
||||
772809a792545913677b4371a877796c6889264a50119462f21f812291e2014390815078140047a9947008e0c04056628323530064650372a61457c623857aa9
|
||||
53a9204033200112353841122a6e302401a32f15432d4013abf436474330056605c404c203724428e5674062403d34112f18010bd0e592916c903dc856037950
|
||||
0963008c803f0293932a5e51c20b072148c512262b43313104d25024589451b058802c1841a0b8270b5e26631812671c11c112d10e036b54265454171427a062
|
||||
7542720a0601caaf273804730a30522111a952078e747641627573704c2a5400e01056145a2e32f78676232d26450b251e0122e41f23405c958804600d104554
|
||||
91625709a60196f0c064058d9e08493d8235ba39651a2270531a2488a78f8b64a2231744a5d602a151e3570080513385731e0e111381713211d0a3b419c6a5b3
|
||||
21960bf53736235130011060a60b6130cf0740d02623371061122b0b534203b0e25ea1142535276f95a104a1215e30d9a986f06cc1a102940f2650208b0cd047
|
||||
12478de7de3090c730504d10602c021027703a2ca90517d200a010910530952ae7016861d4771215c179b4415d75011800242382101763d38100140010653204
|
||||
7336e0035a17802eb329002522210400747e76730e6c90450450e3a13da5620322c2222b0132a810451c9c25f7030278f24830113651ea14360862331d411164
|
||||
f4d3295a634022c3aba1357001210e97a22e92278142a024f428351f32101f756a317403268d31755712811374d5122834b921b3c40d10241fee0a126a645818
|
||||
25a1d55000186c218507281030124af1277320570775768c19d3472120ed02354318d105e4006d5009e5ff413b83e92008b04a28028075bf3ac3e4f850c13962
|
||||
4f5f50ea324fb344364186a4353a218a0b92031555100b3220b223cd363370400077d3317921a42e21618b4b80641e904b11703b8153b0620ab00247d001403a
|
||||
ba700a3b007243401f64164418a02304d6b03e394d601060f751614681301c8487413905019331570124d500c91833315f025be0707208e706a4a37409bb540c
|
||||
40000c320db304c953f1176063aa48613172e632832a049452806011b07054d23e09b340d032110c557a0c29247e191298c4770d43044224115053864571060e
|
||||
00766473701905322a148177154ce13230963323000062502063e891168081a7911003750054042a745834a70b80d1147ad551a37c14465a54fa1da3a42c1430
|
||||
0b02d04505c8f103471874735968bb1cd203743347342fd27240c1b613504750648c426c016021707720c683d21133a05c241204591407134403ae02b36c8c51
|
||||
4251261327004c729e0c3b328012e5011d6b854332683d0910a0002639144b901b0300211a613433c05b4630153bf3e30b23172d2023440a059c01b3275426f0
|
||||
23383a370375496c0760039d00f8d25101f4809032302198261111202ace6ac100543264641289340f1634390cac2f204ad300548641a5086d11333409b44840
|
||||
0d3111694b3d464b62e17460311442855d05cd3704923e9d0770707c0132109b399428a8146012d7a5043207d64e03fd1126742b016745603500113043464471
|
||||
777326217676060195001268be8381430c862a1c2b0265a4234a69635140318597cb49370643550c2a314e33781b490095f73245600a00de12041497c80550a4
|
||||
701604144259018e4314582680b0bb8a28b4061216010d3063521c666031d4460d1412012e2547030e2389252b19e9da341623912035220923220d61f5d10673
|
||||
575950d15619fb7355715a214d604411ab425c28017fa0069204b0663402432027a2205515603021b5012178664215329112a53b219206035f3c10116e562c1b
|
||||
810f50bb51811900008920109036a46044a566fa5c3d75f2930d101b41033e6e718450e5f32d36072531f1022065d01546295b20f09900200b200f125f060105
|
||||
320bd2021354bd12376d4391020cb46909a21392d066d219e072259f0c554057d6f02b893514531a4a873080f05063001516435231229200a15d50aab311e82b
|
||||
2f4c3353942ab36526425316135b3894161e224530243321900532352125720229f25b6e63272685339f70b62724ac734dfb9539aa81104f7c43c6125303a0b0
|
||||
26c576b4123535e13346510610016436b311015422250811770250d4a3f86291acde02513d9541811164981402046f2351d5331390f538664452a09411464591
|
||||
1923e750019b705151701c1633b06eb064015121181cb6b1414b1120e03d715118259963471fa8151bb5a2502492222a910611365306ee6fa1a43015d227e65b
|
||||
407033404721f0c019292341e5e8206104601ed1574d21e8ca05171a04320ed862140210590a090430985c1289011804206a049a71f054016463335440135936
|
||||
02c6202303351c50f3406fb0a1004610142f161400b481df8b740f3617bafb033c64f26562057017c58400d5a13a2320210631b361f2a1029211268166226207
|
||||
013285caa12003604001110f152c7671a80f8e743406d0505156083235037931dd020107a700781e2bf6dc081266341019e61cee2698eb259d0759c481710139
|
||||
255c14601869861492306742b03a2f060513a1211130042a0575301102220c20d30a5458c01554312484223950410b463035e232a58773710174065266239d2a
|
||||
__map__
|
||||
12272711306328d47551b51b4c8610acf67a11171810339055e1331841200028a2611a977291bc0633572201044ba2d638db0dc860213021c3d112540c847a3d2b88693720504c31e4c2a055431ea47602f804e4f405ea10be68d639ab9642a1a0f9744232be8b125319405159f512649d3402d0f79b242cc8070585421956f1
|
||||
0584116d681c448868019160838b3092e51133c11263b7e4a313b74352a3a46110ad32d144b302e26975019463487231002d09c89c9840767c1233002a63a4119274ca950163625513502e12302efaa1f0da9bd420612524a1633109a700f00006686083c205503d7474030070402a080b771442d79631632280e071b7d0fbb7
|
||||
412f13543919c4033e083182299b4330060551235013a835620e5a550325022a2d7b6250b34740163bde22730861f407910271937553c120b5c744206292856e00177230131e46015d219b307ea03d1374224f339b0332ac1d305462d2072b67cc2b2c719fd41b6d7055c4034638560aa482d0b4174a44155203a5f26b03e1c4
|
||||
050a061bb02125530606752302412b605a53d7031508303520ee7358104b094101782e0da82aa965130b220f5118784700058771bb09c1848a84e32894119c8c830111590f933415202a40e60104443520d85821d00105399c0423922c8a8c60c600a333716c6097531112330c7bb050227f550833742371ac8e2e2312dd34e0
|
||||
95107d34612049251a3deb6208401203151a43a27a118cf1a03f760708847432034f246608904943930431780a3ed102d070346a8180e40001b5fba3451b167353e0ab21fec20653f18161b035200815132041a5511b50c80cb8ec658516319143950f05932c71460162439bb00c35530113be243271389c083c73c731106070
|
||||
335009dd0051113622908990265b11472516044a777d4707da0a9053504030942690db86053408221540300221a1b223d201403440048d1f484031617635e060621524e87647400b86740349c001590791270282f1305f32609b70132269a2e523f29108033096e310074312114a134e52922a29092b23421793346149671bd4
|
||||
91176025541256501109144457253663a3041a394b173931169515f337ae26330c801902d2354d51a0d502f19a68088df41a38841f83044202165400107b081e045b2d911211a8712289a63102323b2a767022341116b34c639c0304052bc382e21905427000630d0344c8516c4665925034920b9e82e6539039736e02064780
|
||||
1142321b12b421352743f871c100440b6f531b020113e6371140020437a921126a05779678c4402151412281754c4778ca02ac432553e12607330d3b1af86533a032400724969268734f760a27f45001fc40174422188a161d2b20289007145394e66022a840575b320200f8407e833275018515844490ad0274093119b1a801
|
||||
0367323f2135ad8338806974bdcf944424070b0100c95446014320023a08347f77b21f31872f09139552112c417007140f63fcb520a41120160295260120027224b5b87554902044101506154406128150c06446423260ca5002317a18f37405043057165158a6084708c515050021be292a811208283572c826a2810977302e
|
||||
c94a55ff919502b2a33442144b74715544716219300212f37011e813c08fd56608a386131e44f220902515151bc569b305210218c1e545826c4d34323500a9431391130198127276500440b220a1422b6b58b6a6367635e10b61808b7002313e52053a146635275f70118a2339ba62046d760b5000d3bd0012687814013f87a2
|
||||
a306831030325632662132df101a5135900a7f1b3300e00860033081ec4010c00204b14440037253060c2451d45409e76d349560b2593b336532459905b00864008c262420078270533013221a930d612db04c05a42fb620419293885f24e59110d0005c320075cd4841a019089c63f521d6b8c92babf6430b48030084324d00
|
||||
25af206b02e0300bf8854a07666b0423108028201456180b4216287129020549401639a610ba03231030662131c41543d3b070208d0a12323071431b689680b02410030f304bfb6684a31fc6017605041745581335b0749863260429ad11e061ed6e25a287895137ef20b21260418041d2a04408aa5b960a230a1b522000b325
|
||||
e270a090811741436d45572801621c4496bd57895524875309220b5187209a1b20519b253842509224b56812a2910935501f1d040a008a2460155508248600254795b5b16ea19227d1778a7880d91843084837f450a85c0013035505588001e0718000312c7340025143107c3f1e39c5515151621712018f7700112d81170956
|
||||
13020005794534d3241ab897b0d1bd287c0020012b01f0008d4b05418a400af2271362259c660a090391020222c0df12e86b3440000584050c5637072006bf05e801b465c2621967083d0b0398115119a8a3035b04210310cba70b9aa852730f100d307b00062fb003b20767442823f233303082432338c029c70e761c381418
|
||||
0802150300df070980c19b3745ea37f075717622a530a08765450627000082080a0054706b6695b73832b009290054e7001c98404c2be41203aa5d07675526e306a49c50e220e7350148d085070623116528350f05003090f21400007d0047c035240273124800700339218809070000b43005252e00371000840c048e01ea20
|
||||
84000d5530c12756ac1d93d0d5c060c70004d0106720b8c800b0d8e0038000504108d78577810481533ba0f0c804000c07005205760000b85002f76081e1020f00d0d01e9a14224e1e4078186105860002404003070950000090001f430910009b0300290de050d6d02077c01400f00400048d00e050060c500c87060000020d
|
||||
00c0006540d290002100586000a0d00d00b14a00000a00f044f9002800600003a0400af00b0409580d040070670c0005000009e805000000200000070000080678000300600009000b00d06000000f0d77e0000000000400c000009610d00000000000a050000000000000080000a0d0000a60d805000000080000026000b000
|
||||
00000060c0e000000000000080500004000009e0000306000000000000000000000706700000000050d0600000906000b00000900c0000000000030d00c0050000090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
||||
|
@ -10,7 +10,7 @@ progression={
|
||||
-- level 5
|
||||
-- ruleset:new(9,3,11,18),
|
||||
-- fortune's foundation
|
||||
ruleset:new(11,4,13,22)
|
||||
ruleset:new(11,4,13,22,"seeds_ff")
|
||||
-- harder than fortune's foundation
|
||||
-- ruleset:new(11,5,10,25)
|
||||
}
|
@ -16,12 +16,14 @@ function ruleset:init(
|
||||
|
||||
-- Number of arcana (unbounded)
|
||||
-- For Fortune's Foundation: 22
|
||||
n_arcana
|
||||
n_arcana,
|
||||
pool
|
||||
)
|
||||
self.n_slots=n_slots
|
||||
self.n_suits=n_suits
|
||||
self.n_cards_per_suit=n_cards_per_suit
|
||||
self.n_arcana=n_arcana
|
||||
self.pool=pool
|
||||
assert(self.n_slots<=11)
|
||||
assert(self.n_suits<=5)
|
||||
assert(self.n_cards_per_suit<=13)
|
||||
|
1
seed_compressor/.gitignore
vendored
Normal file
1
seed_compressor/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
__pycache__
|
@ -6,14 +6,14 @@ def main():
|
||||
ff = load_seeds("input/fortunes_foundation.txt")
|
||||
|
||||
ffdata = delta_4b(ff)
|
||||
offset_ffdata = 0
|
||||
|
||||
augment_map("../main.p8", "../seed_constants.lua", ffdata, {
|
||||
"ffdata": 0
|
||||
"ffdata_start": 0,
|
||||
"ffdata_end": len(ffdata),
|
||||
})
|
||||
|
||||
|
||||
def augment_map(target, target2, constants_file, binary, offsets):
|
||||
def augment_map(target, constants_file, binary, offsets):
|
||||
assert isinstance(binary, bytes) and len(binary) < 8192 # length of mapdata
|
||||
print(f"Length of basic extra map data: {len(binary)}")
|
||||
mapdata = (binary + bytes([0] * 8192))[:8192]
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,3 +1,4 @@
|
||||
seed_constants={
|
||||
ffdata=4096
|
||||
ffdata_start=4096,
|
||||
ffdata_end=10434
|
||||
}
|
||||
|
25
seeds.lua
Normal file
25
seeds.lua
Normal file
@ -0,0 +1,25 @@
|
||||
seeds={}
|
||||
add(modules,seeds)
|
||||
function seeds:init()
|
||||
self.seeds_ff=seed_pool:new(seed_constants.ffdata_start,seed_constants.ffdata_end)
|
||||
end
|
||||
function seeds:choose(pool)
|
||||
if (pool) return rnd(self[pool].seeds)
|
||||
return rnd(0xffff.ffff)
|
||||
end
|
||||
|
||||
seed_pool=klass()
|
||||
|
||||
function seed_pool:init(addr_start,addr_end)
|
||||
local seeds={}
|
||||
local acc=0
|
||||
while addr_start < addr_end do
|
||||
local byte=@addr_start
|
||||
local nb0=byte>>20
|
||||
local nb1=(byte&0xf)>>16
|
||||
if nb0==0 then acc+=0x0.000f else acc+=nb0 add(seeds,acc) end
|
||||
if nb1==0 then acc+=0x0.000f else acc+=nb1 add(seeds,acc) end
|
||||
addr_start+=1
|
||||
end
|
||||
self.seeds=seeds
|
||||
end
|
@ -10345,3 +10345,490 @@
|
||||
83938
|
||||
83551
|
||||
81969
|
||||
82053
|
||||
85654
|
||||
89217
|
||||
93285
|
||||
91514
|
||||
87990
|
||||
86315
|
||||
82117
|
||||
88102
|
||||
84190
|
||||
78448
|
||||
86343
|
||||
86427
|
||||
85682
|
||||
78812
|
||||
84386
|
||||
85766
|
||||
87671
|
||||
83815
|
||||
86214
|
||||
89385
|
||||
80899
|
||||
86987
|
||||
91072
|
||||
83663
|
||||
91296
|
||||
83719
|
||||
82593
|
||||
83803
|
||||
84027
|
||||
84684
|
||||
86210
|
||||
91688
|
||||
91682
|
||||
88953
|
||||
84139
|
||||
91716
|
||||
91744
|
||||
87753
|
||||
91934
|
||||
84167
|
||||
92578
|
||||
86494
|
||||
88091
|
||||
84902
|
||||
86322
|
||||
87809
|
||||
88541
|
||||
86378
|
||||
89441
|
||||
88597
|
||||
88270
|
||||
84936
|
||||
92662
|
||||
92984
|
||||
86858
|
||||
84964
|
||||
81067
|
||||
84307
|
||||
89317
|
||||
81123
|
||||
88005
|
||||
84391
|
||||
85014
|
||||
93012
|
||||
88203
|
||||
88287
|
||||
84992
|
||||
85020
|
||||
89721
|
||||
85154
|
||||
88427
|
||||
76962
|
||||
91940
|
||||
87607
|
||||
83955
|
||||
93306
|
||||
84498
|
||||
83069
|
||||
87831
|
||||
89044
|
||||
87547
|
||||
87855
|
||||
93362
|
||||
84587
|
||||
88914
|
||||
88905
|
||||
88942
|
||||
81151
|
||||
84615
|
||||
89548
|
||||
89632
|
||||
79316
|
||||
86914
|
||||
84638
|
||||
93152
|
||||
91996
|
||||
83147
|
||||
89222
|
||||
84867
|
||||
89362
|
||||
93761
|
||||
93180
|
||||
86970
|
||||
79372
|
||||
88679
|
||||
93845
|
||||
85378
|
||||
87054
|
||||
93488
|
||||
89692
|
||||
89716
|
||||
89776
|
||||
90337
|
||||
88257
|
||||
84890
|
||||
87138
|
||||
90024
|
||||
84979
|
||||
86602
|
||||
90505
|
||||
89558
|
||||
85343
|
||||
93656
|
||||
90561
|
||||
84974
|
||||
89381
|
||||
89485
|
||||
85455
|
||||
88223
|
||||
93684
|
||||
93446
|
||||
88251
|
||||
92164
|
||||
93726
|
||||
83265
|
||||
88707
|
||||
85216
|
||||
81347
|
||||
88671
|
||||
83231
|
||||
89409
|
||||
92416
|
||||
90136
|
||||
89577
|
||||
81711
|
||||
82669
|
||||
83287
|
||||
86770
|
||||
83315
|
||||
88621
|
||||
82740
|
||||
82852
|
||||
79540
|
||||
83048
|
||||
79596
|
||||
94489
|
||||
84095
|
||||
83104
|
||||
94629
|
||||
83797
|
||||
84347
|
||||
84459
|
||||
82781
|
||||
87418
|
||||
79624
|
||||
88387
|
||||
88847
|
||||
79652
|
||||
87246
|
||||
88931
|
||||
89043
|
||||
89670
|
||||
89888
|
||||
83328
|
||||
88677
|
||||
84543
|
||||
79764
|
||||
93894
|
||||
90276
|
||||
94713
|
||||
82837
|
||||
89726
|
||||
94090
|
||||
83427
|
||||
90053
|
||||
88807
|
||||
87358
|
||||
85636
|
||||
85651
|
||||
87446
|
||||
89782
|
||||
83965
|
||||
85916
|
||||
89922
|
||||
90444
|
||||
86000
|
||||
85394
|
||||
87530
|
||||
83623
|
||||
83651
|
||||
82921
|
||||
87414
|
||||
88947
|
||||
89003
|
||||
81879
|
||||
90364
|
||||
84739
|
||||
90420
|
||||
89007
|
||||
90448
|
||||
94608
|
||||
84795
|
||||
95028
|
||||
94118
|
||||
85422
|
||||
95252
|
||||
87698
|
||||
85730
|
||||
91205
|
||||
95532
|
||||
95616
|
||||
95672
|
||||
89143
|
||||
95924
|
||||
90221
|
||||
77522
|
||||
77718
|
||||
87610
|
||||
87750
|
||||
92612
|
||||
89155
|
||||
86252
|
||||
85903
|
||||
89227
|
||||
86386
|
||||
89367
|
||||
89877
|
||||
88761
|
||||
83707
|
||||
88873
|
||||
86498
|
||||
83763
|
||||
89978
|
||||
90473
|
||||
89211
|
||||
86554
|
||||
95329
|
||||
85982
|
||||
90501
|
||||
89463
|
||||
90073
|
||||
86239
|
||||
88901
|
||||
90129
|
||||
83285
|
||||
83341
|
||||
86379
|
||||
84161
|
||||
86603
|
||||
90185
|
||||
92948
|
||||
91373
|
||||
91457
|
||||
86715
|
||||
89287
|
||||
86722
|
||||
90812
|
||||
84301
|
||||
86750
|
||||
90585
|
||||
90174
|
||||
95805
|
||||
90924
|
||||
82411
|
||||
84329
|
||||
88058
|
||||
88118
|
||||
84609
|
||||
89631
|
||||
83649
|
||||
86206
|
||||
90753
|
||||
85243
|
||||
84665
|
||||
90202
|
||||
86806
|
||||
86700
|
||||
89377
|
||||
85001
|
||||
89405
|
||||
92976
|
||||
90213
|
||||
85271
|
||||
89591
|
||||
96001
|
||||
86290
|
||||
85355
|
||||
86855
|
||||
86834
|
||||
87198
|
||||
86458
|
||||
77914
|
||||
80436
|
||||
89539
|
||||
91709
|
||||
94706
|
||||
89875
|
||||
90269
|
||||
94734
|
||||
91849
|
||||
82551
|
||||
96197
|
||||
83552
|
||||
85113
|
||||
90808
|
||||
83901
|
||||
86840
|
||||
82747
|
||||
82915
|
||||
90836
|
||||
86868
|
||||
90605
|
||||
94818
|
||||
90454
|
||||
88230
|
||||
85439
|
||||
93564
|
||||
87751
|
||||
91540
|
||||
89787
|
||||
91396
|
||||
87450
|
||||
88370
|
||||
96680
|
||||
91452
|
||||
84407
|
||||
90986
|
||||
94874
|
||||
96225
|
||||
78586
|
||||
84377
|
||||
85169
|
||||
89843
|
||||
90717
|
||||
85225
|
||||
91620
|
||||
91933
|
||||
96253
|
||||
89685
|
||||
91676
|
||||
91816
|
||||
83279
|
||||
92185
|
||||
96589
|
||||
88426
|
||||
87176
|
||||
87046
|
||||
87372
|
||||
83447
|
||||
84119
|
||||
91708
|
||||
91117
|
||||
91145
|
||||
88338
|
||||
89955
|
||||
93704
|
||||
84547
|
||||
80772
|
||||
91126
|
||||
92269
|
||||
96708
|
||||
84545
|
||||
88846
|
||||
85477
|
||||
84371
|
||||
92465
|
||||
91910
|
||||
88702
|
||||
92549
|
||||
80940
|
||||
84575
|
||||
91789
|
||||
87478
|
||||
78754
|
||||
84623
|
||||
84799
|
||||
93928
|
||||
92236
|
||||
83944
|
||||
78838
|
||||
87680
|
||||
87932
|
||||
88870
|
||||
88016
|
||||
97184
|
||||
88184
|
||||
95098
|
||||
90049
|
||||
88930
|
||||
84911
|
||||
90105
|
||||
88898
|
||||
91929
|
||||
91938
|
||||
87947
|
||||
88926
|
||||
87975
|
||||
92013
|
||||
85981
|
||||
90525
|
||||
92069
|
||||
90973
|
||||
91141
|
||||
86009
|
||||
90291
|
||||
84825
|
||||
92717
|
||||
84853
|
||||
88986
|
||||
88408
|
||||
91169
|
||||
86149
|
||||
89967
|
||||
92072
|
||||
90023
|
||||
84937
|
||||
86289
|
||||
88003
|
||||
90969
|
||||
89126
|
||||
89154
|
||||
79090
|
||||
97436
|
||||
92181
|
||||
92320
|
||||
87410
|
||||
92773
|
||||
95462
|
||||
97464
|
||||
92376
|
||||
87702
|
||||
90547
|
||||
90051
|
||||
94460
|
||||
87466
|
||||
79146
|
||||
91309
|
||||
91337
|
||||
94544
|
||||
97576
|
||||
94852
|
||||
88423
|
||||
92712
|
||||
97632
|
||||
88150
|
||||
81192
|
||||
95636
|
||||
84168
|
||||
84995
|
||||
91449
|
||||
85245
|
||||
88262
|
||||
89206
|
||||
92380
|
||||
88290
|
||||
85163
|
||||
84819
|
||||
93160
|
||||
89266
|
||||
90275
|
||||
89402
|
||||
90331
|
||||
89486
|
||||
89332
|
||||
97688
|
||||
92801
|
||||
90471
|
||||
81332
|
||||
90543
|
||||
95692
|
||||
92520
|
||||
90655
|
||||
84875
|
||||
85247
|
||||
92829
|
||||
91669
|
||||
|
Loading…
Reference in New Issue
Block a user