yojimbos_law icon

failed attempt at spading TCRS enchantment seeding

yojimbos_law | PRO | 06/17/19 02:05:25 AM UTC | 0 ⭐ | 818 👁️ | Never ⏰ | []
text |

10.41 KB

|

None

|

0 👍

/

0 👎

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;
//				
*/

Comments