import seeded_mt_rand.ash import seeded_rand.ash /* personal trainer items with one enchantment in seed: 2481 demon buckler 2889 tiny plastic apathetic lizardman 5089 Pokëmann figurine: Vegemite 5100 Pokëmann figurine: Frank */ //throwing in 1, 10, 69, and 100 because you never know. int[int] primes_also_one = {1, 2, 3, 5, 7, 10, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 69, 71, 73, 79, 83, 89, 97, 100}; //subset of slightly higher likelihood things for quicker tests. //int[int] primes_also_one = {1, 3, 5, 7, 10, 11, 13, 23, 37, 69, 100}; int[int] roll; int[int] test_item; int but = 2**31-1; test_item = {$item[2481].to_int(), $item[2889].to_int(), $item[5089].to_int(), $item[5100].to_int()}; //test_item = {$item[2481].descid.to_int(), $item[2889].descid.to_int(), $item[5089].descid.to_int(), $item[5100].descid.to_int()}; int county_thing; int start = gametime_to_int(); for sample from 0 to 1{ //maybe there's a multiplier? for g from 0 to (primes_also_one.count()-1){ //maybe path matters? for h from 0 to primes_also_one.count()-1{ //not including path because eh... //for h from primes_also_one.count() to primes_also_one.count(){ for i from 0 to (primes_also_one.count()-1){ for j from 0 to (primes_also_one.count()-1){ for k from 0 to (primes_also_one.count()-1){ roll[1] = seeded_rand(primes_also_one[g] * ( primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[0]+primes_also_one[h]*35 ), 0, but, sample)%170; roll[2] = seeded_rand(primes_also_one[g] * ( primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[1]+primes_also_one[h]*35 ), 0, but, sample)%170; if(roll[2] == roll[1]){ roll[3] = seeded_rand(primes_also_one[g] * ( primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[2]+primes_also_one[h]*35 ), 0, but, sample)%170; if(roll[3] == roll[1]){ roll[4] = seeded_rand(primes_also_one[g] * ( primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[3]+primes_also_one[h]*35 ), 0, but, sample)%170; if(roll[4] == roll[1]){ print("("+primes_also_one[i]+", "+primes_also_one[j]+", "+primes_also_one[k]+", "+primes_also_one[h]+", "+primes_also_one[g]+") on sample "+sample+" of ["+0+","+but+"] mod 170"); } } } roll[1] = seeded_rand(primes_also_one[g] * ( primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[0]+primes_also_one[h]*35 ), 0, 169, sample); roll[2] = seeded_rand(primes_also_one[g] * ( primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[1]+primes_also_one[h]*35 ), 0, 169, sample); if(roll[2] == roll[1]){ roll[3] = seeded_rand(primes_also_one[g] * ( primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[2]+primes_also_one[h]*35 ), 0, 169, sample); if(roll[3] == roll[1]){ roll[4] = seeded_rand(primes_also_one[g] * ( primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[3]+primes_also_one[h]*35 ), 0, 169, sample); if(roll[4] == roll[1]){ print("("+primes_also_one[i]+", "+primes_also_one[j]+", "+primes_also_one[k]+", "+primes_also_one[h]+", "+primes_also_one[g]+") on sample "+sample+" of ["+0+","+169+"]"); } } } roll[1] = seeded_rand(primes_also_one[g] * ( primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[0]+primes_also_one[h]*35 ), 1, 170, sample); roll[2] = seeded_rand(primes_also_one[g] * ( primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[1]+primes_also_one[h]*35 ), 1, 170, sample); if(roll[2] == roll[1]){ roll[3] = seeded_rand(primes_also_one[g] * ( primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[2]+primes_also_one[h]*35 ), 1, 170, sample); if(roll[3] == roll[1]){ roll[4] = seeded_rand(primes_also_one[g] * ( primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[3]+primes_also_one[h]*35 ), 1, 170, sample); if(roll[4] == roll[1]){ print("("+primes_also_one[i]+", "+primes_also_one[j]+", "+primes_also_one[k]+", "+primes_also_one[h]+", "+primes_also_one[g]+") on sample "+sample+" of ["+1+","+170+"]"); } } } county_thing++; if(county_thing % 10000 == 0){ //print_html(county_thing+" iterations done"); print((county_thing)+" iterations done in "+((gametime_to_int() - start)/1000)+" seconds"); } } } } } } } print("done"); /* test_item = {$item[2481].to_int(), $item[2889].to_int(), $item[5089].to_int(), $item[5100].to_int()}; //test_item = {$item[2481].descid.to_int(), $item[2889].descid.to_int(), $item[5089].descid.to_int(), $item[5100].descid.to_int()}; int county_thing; int start = gametime_to_int(); for sample from 1 to 3{ for low_mod from 0 to 0{ //maybe there's a multiplier? for g from 0 to (primes_also_one.count()-1){ //maybe path matters? for h from 0 to primes_also_one.count(){ for i from 0 to (primes_also_one.count()-1){ for j from 0 to (primes_also_one.count()-1){ for k from 0 to (primes_also_one.count()-1){ roll[1] = seeded_mt_rand(primes_also_one[g] * ( primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[0]+primes_also_one[h]*35 ), 0, but, sample)%170; roll[2] = seeded_mt_rand(primes_also_one[g] * ( primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[1]+primes_also_one[h]*35 ), 0, but, sample)%170; if(roll[2] == roll[1]){ roll[3] = seeded_mt_rand(primes_also_one[g] * ( primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[2]+primes_also_one[h]*35 ), 0, but, sample)%170; if(roll[3] == roll[1]){ roll[4] = seeded_mt_rand(primes_also_one[g] * ( primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[3]+primes_also_one[h]*35 ), 0, but, sample)%170; if(roll[4] == roll[1]){ print("("+primes_also_one[i]+", "+primes_also_one[j]+", "+primes_also_one[k]+", "+primes_also_one[h]+", "+primes_also_one[g]+") on sample "+sample+" of ["+0+","+but+"] mod 170"); } } } county_thing++; if(county_thing % 10000 == 0){ //print_html(county_thing+" iterations done"); print((county_thing)+" iterations done in "+((gametime_to_int() - start)/1000)+" seconds"); } } } } } } } } print("done"); */ /* test_item = {$item[2481].to_int(), $item[2889].to_int(), $item[5089].to_int(), $item[5100].to_int()}; //test_item = {$item[2481].descid.to_int(), $item[2889].descid.to_int(), $item[5089].descid.to_int(), $item[5100].descid.to_int()}; int county_thing; int start = gametime_to_int(); for sample from 1 to 2{ for low_mod from 0 to 1{ //maybe path matters? for h from 0 to (primes_also_one.count()-1){ for i from 0 to (primes_also_one.count()-1){ for j from 0 to (primes_also_one.count()-1){ for k from 0 to (primes_also_one.count()-1){ roll[1] = seeded_mt_rand(primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[0]+primes_also_one[h]*35,low_mod, low_mod+169, sample); roll[2] = seeded_mt_rand(primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[1]+primes_also_one[h]*35,low_mod, low_mod+169, sample); if(roll[2] == roll[1]){ roll[3] = seeded_mt_rand(primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[2]+primes_also_one[h]*35,low_mod, low_mod+169, sample); if(roll[3] == roll[1]){ roll[4] = seeded_mt_rand(primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[3]+primes_also_one[h]*35,low_mod, low_mod+169, sample); if(roll[4] == roll[1]){ print("("+primes_also_one[i]+", "+primes_also_one[j]+", "+primes_also_one[k]+") on sample "+sample+" of ["+low_mod+","+(low_mod+169)+"]"); } } } county_thing++; if(county_thing % 10000 == 0){ //print_html(county_thing+" iterations done"); print((county_thing)+" iterations done in "+((gametime_to_int() - start)/1000)+" seconds"); } } } } } } } print("done"); */ /* no result for int[int] primes_also_one = {1, 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 69, 71, 73, 79, 83, 89, 97}; test_item = {$item[2481].to_int(), $item[2889].to_int(), $item[5089].to_int(), $item[5100].to_int()}; for sample from 1 to 1{ for low_mod from 0 to 1{ for x from 167 to 169{ for i from 0 to 26{ for j from 0 to 26{ for k from 0 to 26{ */ /* no result for int[int] primes_also_one = {1, 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 69, 71, 73, 79, 83, 89, 97}; test_item = {$item[2481].descid.to_int(), $item[2889].descid.to_int(), $item[5089].descid.to_int(), $item[5100].descid.to_int()}; for sample from 1 to 1{ for low_mod from 0 to 1{ for x from 167 to 169{ for i from 0 to 26{ for j from 0 to 26{ for k from 0 to 26{ */ /* no result for int[int] primes_also_one = {1, 2, 3, 5, 7, 10, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 69, 71, 73, 79, 83, 89, 97, 100}; test_item = {$item[2481].to_int(), $item[2889].to_int(), $item[5089].to_int(), $item[5100].to_int()}; for sample from 2 to 3{ for low_mod from 0 to 1{ for i from 0 to (primes_also_one.count()-1){ for j from 0 to (primes_also_one.count()-1){ for k from 0 to (primes_also_one.count()-1){ */ /* no result for int[int] primes_also_one = {1, 3, 5, 7, 10, 11, 13, 23, 37, 69, 100}; test_item = {$item[2481].to_int(), $item[2889].to_int(), $item[5089].to_int(), $item[5100].to_int()}; for sample from 1 to 2{ for low_mod from 0 to 1{ //maybe path matters? for h from 0 to (primes_also_one.count()-1){ for i from 0 to (primes_also_one.count()-1){ for j from 0 to (primes_also_one.count()-1){ for k from 0 to (primes_also_one.count()-1){ roll[1] = seeded_mt_rand(primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[0]+primes_also_one[h]*35,low_mod, low_mod+169, sample); */ /* no result for int[int] primes_also_one = {1, 3, 5, 7, 10, 11, 13, 23, 37, 69, 100}; int but = 2**31-1; test_item = {$item[2481].to_int(), $item[2889].to_int(), $item[5089].to_int(), $item[5100].to_int()}; for sample from 1 to 1{ for low_mod from 0 to 0{ //maybe path matters? for h from 0 to primes_also_one.count(){ for i from 0 to (primes_also_one.count()-1){ for j from 0 to (primes_also_one.count()-1){ for k from 0 to (primes_also_one.count()-1){ roll[1] = seeded_mt_rand(primes_also_one[i]*2+primes_also_one[j]*4+primes_also_one[k]*test_item[0]+primes_also_one[h]*35, 0, but, sample)%170; // */