Skip to content

Instantly share code, notes, and snippets.

@bladecoding
Last active July 25, 2021 07:41
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bladecoding/5fcc1356bfb0cf26555b0ade7c4fedca to your computer and use it in GitHub Desktop.
Save bladecoding/5fcc1356bfb0cf26555b0ade7c4fedca to your computer and use it in GitHub Desktop.
find a seed that has eden with mega blast, scapular and emperor card
void Main()
{
var rand = new Random();
var seeds = new List<uint>();
for(uint i = 0; i < uint.MaxValue; i++)
{
var startSeed = (uint)i;//rand.Next();
var dropSeed = CalculatePlayerSeed(startSeed);
var items = CalculateEdenItems(dropSeed);
if (items.Active == 186 && (items.Passive == 276 || items.Passive == 108 || items.Passive == 301) && items.Card == 5)
{
seeds.Add(startSeed);
SeedToString(startSeed).Dump();
}
/*if (items.Active == 85 && items.Passive == 142 && items.Card == 5)
{
var colSeeds = CalculateCollectibleSeeds(startSeed, 86);
var card = GetCard(colSeeds[85].Next(), true);
if (card == 42)
{
seeds.Add(startSeed);
SeedToString(startSeed).Dump();
}
}*/
/*if (items.Hearts >= 4 && items.Active == 133 && items.Passive == 251)
{
var colSeeds = CalculateCollectibleSeeds(startSeed, 252);
colSeeds[251].Next();
var card = GetCard(colSeeds[251].Next(), true);
var hasChaos = card == 42 || items.Card == 42;
var hasEmp = card == 5 || items.Card == 5;
var numToCheck = (card == 53 ? 1 : 0) + (items.Card == 53 ? 1 : 0);
if (numToCheck > 0)
{
var cardRng = CalculateCardSeeds(startSeed);
for (var o = 0; o < numToCheck * 3; o++)
{
var subCard = GetCard(cardRng[53].Next(), true);
hasChaos = hasChaos || subCard == 42;
hasEmp = hasEmp || subCard == 5;
}
}
if (hasChaos && hasEmp)
{
seeds.Add(startSeed);
SeedToString(startSeed).Dump();
}
}*/
if (i % 100000000 == 0)
(":" + i).Dump();
}
seeds.Select(s => SeedToString(s)).ToArray().Dump();
}
//ItemCount impacts the item pick RNG even though eden can't start with an item over id 552
public static EdenItems CalculateEdenItems(uint dropSeed, int itemCount = 552)
{
var rng = new Rng(dropSeed, 0x1, 0x5, 0x13);
var trinket = 0;
var card = 0;
var pill = 0;
var hearts = 0;
var soulHearts = 0;
if ((rng.Next() % 3) == 0)
{
//trinket
}
else if ((rng.Next() & 1) == 0)
{
if ((rng.Next() & 1) == 0)
{
card = GetCard(rng.Next());
}
else
{
//pill
var pillSeed = rng.Next();
}
}
var activeId = 0;
var passiveId = 0;
for (var i = 0; i < 100; i++)
{
int itemId = (int)(rng.Next() % itemCount) + 1;
//BlackList
if (itemId > 552)
continue;
switch(itemId){
case 0x3B:
case 0xEB:
case 0x107:
case 0x2b:
case 0x3d:
case 0xee:
case 0xef:
case 0x226:
case 0x227:
case 0x228:
continue;
default:
break;
}
var itemType = ItemConfig[itemId];
if (itemType == ItemType.Active)
{
activeId = activeId != 0 ? activeId : itemId;
}
else if (itemType == ItemType.Passive || itemType == ItemType.Familiar)
{
passiveId = passiveId != 0 ? passiveId : itemId;
}
//Isaac doesn't exit early :thinking:
if (activeId != 0 && passiveId != 0)
break;
}
//Hearts and SoulHearts are actually done in Player::Init
var healthRng = new Rng(dropSeed, 0x1, 0x5, 0x13);
var halfHearts = (int)healthRng.Next() & 3;
hearts = halfHearts * 2;
soulHearts = ((int)healthRng.Next() % (4 - halfHearts)) * 2;
if (hearts == 0 && soulHearts < 4)
soulHearts = 4;
return new EdenItems(hearts, soulHearts, activeId, passiveId, trinket, card, pill);
}
public static int GetCard(uint seed, bool playing = false)
{
var cardRng = new Rng(seed, 0x5, 0x9, 0x7);
if (cardRng.Next() % 25 == 0) {
return (int)(cardRng.Next() % 13) + 42;
}
if (cardRng.Next() % 10 == 0)
{
//Rune
}
if (cardRng.Next() % 5 == 0 && playing)
{
//Playing card
return (int)(cardRng.Next() % 9) + 23;
}
return (int)(cardRng.Next() % 22) + 1;
}
public static Rng[] CalculateCollectibleSeeds(uint startSeed, int itemCount = 552)
{
var playerInitSeed = CalculatePlayerInitSeed(startSeed);
var playerInitRng = new Rng(playerInitSeed, 0x1, 0xB, 0x10);
var collRng = new Rng(playerInitRng.Next(), 0x1, 0x13, 0x3);
var seeds = new Rng[itemCount];
for(var i = 0; i < seeds.Length; i++)
seeds[i] = new Rng(collRng.Next(), 5, 9, 7);
return seeds;
}
public static Rng[] CalculateCardSeeds(uint startSeed, int cardCount = 54)
{
var playerInitSeed = CalculatePlayerInitSeed(startSeed);
var playerInitRng = new Rng(playerInitSeed, 0x1, 0xB, 0x10);
playerInitRng.Next();
playerInitRng.Next();
playerInitRng.Next();
var cardsRng = new Rng(playerInitRng.Next(), 0x2, 0x5, 0xf);
var seeds = new Rng[cardCount];
for (var i = 0; i < seeds.Length; i++)
seeds[i] = new Rng(cardsRng.Next(), 5, 9, 7);
return seeds;
}
public static uint CalculatePlayerInitSeed(uint startSeed)
{
var startRng = new Rng(startSeed, 0x3, 0x17, 0x19);
//Stage Seeds
for (var i = 0; i < 0xD; i++)
startRng.Next();
return startRng.Next(); //Seeds::PlayerInitSeed
}
public static uint CalculatePlayerSeed(uint startSeed)
{
var playerInitSeed = CalculatePlayerInitSeed(startSeed);
//These happen inside Player::Init
var playerInitRng = new Rng(playerInitSeed, 0x1, 0xB, 0x10);
playerInitRng.Next();
playerInitRng.Next();
playerInitRng.Next();
playerInitRng.Next();
return playerInitRng.Next(); //Entity::DropSeed
}
public class EdenItems
{
public int Hearts;
public int SoulHearts;
public int Active;
public int Passive;
public int Trinket;
public int Card;
public int Pill;
public EdenItems(int hearts, int soulHearts, int active, int passive, int trinket, int card, int pill)
{
Hearts = hearts;
SoulHearts = soulHearts;
Active = active;
Passive = passive;
Trinket = trinket;
Card = card;
Pill = pill;
}
}
static string SeedToString(uint num)
{
const string chars = "ABCDEFGHJKLMNPQRSTWXYZ01234V6789";
byte x = 0;
var tnum = num;
while (tnum != 0)
{
x += ((byte)tnum);
x += (byte)(x + (x >> 7));
tnum >>= 5;
}
num ^= 0x0FEF7FFD;
tnum = (num) << 8 | x;
var ret = new char[8];
for (int i = 0; i < 6; i++)
{
ret[i] = chars[(int)(num >> (27 - (i * 5)) & 0x1F)];
}
ret[6] = chars[(int)(tnum >> 5 & 0x1F)];
ret[7] = chars[(int)(tnum & 0x1F)];
return new string(ret);
}
public class Rng
{
public uint Seed;
public int Shift1;
public int Shift2;
public int Shift3;
public uint Next()
{
var num = Seed;
num ^= num >> Shift1;
num ^= num << Shift2;
num ^= num >> Shift3;
Seed = num;
return num;
}
public Rng(uint seed, int s1, int s2, int s3) {
this.Seed = seed;
Shift1 = s1;
Shift2 = s2;
Shift3 = s3;
}
};
public enum ItemType {
Null = 0,
Passive = 1,
Trinket = 2,
Active = 3,
Familiar = 4,
}
public static ItemType[] ItemConfig = GetItemConfig();
public static ItemType[] GetItemConfig() {
var itemConfig = new ItemType[553];
itemConfig[1] = ItemType.Passive;
itemConfig[2] = ItemType.Passive;
itemConfig[3] = ItemType.Passive;
itemConfig[4] = ItemType.Passive;
itemConfig[5] = ItemType.Passive;
itemConfig[6] = ItemType.Passive;
itemConfig[7] = ItemType.Passive;
itemConfig[8] = ItemType.Familiar;
itemConfig[9] = ItemType.Passive;
itemConfig[10] = ItemType.Familiar;
itemConfig[11] = ItemType.Familiar;
itemConfig[12] = ItemType.Passive;
itemConfig[13] = ItemType.Passive;
itemConfig[14] = ItemType.Passive;
itemConfig[15] = ItemType.Passive;
itemConfig[16] = ItemType.Passive;
itemConfig[17] = ItemType.Passive;
itemConfig[18] = ItemType.Passive;
itemConfig[19] = ItemType.Passive;
itemConfig[20] = ItemType.Passive;
itemConfig[21] = ItemType.Passive;
itemConfig[22] = ItemType.Passive;
itemConfig[23] = ItemType.Passive;
itemConfig[24] = ItemType.Passive;
itemConfig[25] = ItemType.Passive;
itemConfig[26] = ItemType.Passive;
itemConfig[27] = ItemType.Passive;
itemConfig[28] = ItemType.Passive;
itemConfig[29] = ItemType.Passive;
itemConfig[30] = ItemType.Passive;
itemConfig[31] = ItemType.Passive;
itemConfig[32] = ItemType.Passive;
itemConfig[33] = ItemType.Active;
itemConfig[34] = ItemType.Active;
itemConfig[35] = ItemType.Active;
itemConfig[36] = ItemType.Active;
itemConfig[37] = ItemType.Active;
itemConfig[38] = ItemType.Active;
itemConfig[39] = ItemType.Active;
itemConfig[40] = ItemType.Active;
itemConfig[41] = ItemType.Active;
itemConfig[42] = ItemType.Active;
itemConfig[44] = ItemType.Active;
itemConfig[45] = ItemType.Active;
itemConfig[46] = ItemType.Passive;
itemConfig[47] = ItemType.Active;
itemConfig[48] = ItemType.Passive;
itemConfig[49] = ItemType.Active;
itemConfig[50] = ItemType.Passive;
itemConfig[51] = ItemType.Passive;
itemConfig[52] = ItemType.Passive;
itemConfig[53] = ItemType.Passive;
itemConfig[54] = ItemType.Passive;
itemConfig[55] = ItemType.Passive;
itemConfig[56] = ItemType.Active;
itemConfig[57] = ItemType.Familiar;
itemConfig[58] = ItemType.Active;
itemConfig[60] = ItemType.Passive;
itemConfig[62] = ItemType.Passive;
itemConfig[63] = ItemType.Passive;
itemConfig[64] = ItemType.Passive;
itemConfig[65] = ItemType.Active;
itemConfig[66] = ItemType.Active;
itemConfig[67] = ItemType.Familiar;
itemConfig[68] = ItemType.Passive;
itemConfig[69] = ItemType.Passive;
itemConfig[70] = ItemType.Passive;
itemConfig[71] = ItemType.Passive;
itemConfig[72] = ItemType.Passive;
itemConfig[73] = ItemType.Familiar;
itemConfig[74] = ItemType.Passive;
itemConfig[75] = ItemType.Passive;
itemConfig[76] = ItemType.Passive;
itemConfig[77] = ItemType.Active;
itemConfig[78] = ItemType.Active;
itemConfig[79] = ItemType.Passive;
itemConfig[80] = ItemType.Passive;
itemConfig[81] = ItemType.Familiar;
itemConfig[82] = ItemType.Passive;
itemConfig[83] = ItemType.Active;
itemConfig[84] = ItemType.Active;
itemConfig[85] = ItemType.Active;
itemConfig[86] = ItemType.Active;
itemConfig[87] = ItemType.Passive;
itemConfig[88] = ItemType.Familiar;
itemConfig[89] = ItemType.Passive;
itemConfig[90] = ItemType.Passive;
itemConfig[91] = ItemType.Passive;
itemConfig[92] = ItemType.Passive;
itemConfig[93] = ItemType.Active;
itemConfig[94] = ItemType.Familiar;
itemConfig[95] = ItemType.Familiar;
itemConfig[96] = ItemType.Familiar;
itemConfig[97] = ItemType.Active;
itemConfig[98] = ItemType.Familiar;
itemConfig[99] = ItemType.Familiar;
itemConfig[100] = ItemType.Familiar;
itemConfig[101] = ItemType.Passive;
itemConfig[102] = ItemType.Active;
itemConfig[103] = ItemType.Passive;
itemConfig[104] = ItemType.Passive;
itemConfig[105] = ItemType.Active;
itemConfig[106] = ItemType.Passive;
itemConfig[107] = ItemType.Active;
itemConfig[108] = ItemType.Passive;
itemConfig[109] = ItemType.Passive;
itemConfig[110] = ItemType.Passive;
itemConfig[111] = ItemType.Active;
itemConfig[112] = ItemType.Familiar;
itemConfig[113] = ItemType.Familiar;
itemConfig[114] = ItemType.Passive;
itemConfig[115] = ItemType.Passive;
itemConfig[116] = ItemType.Passive;
itemConfig[117] = ItemType.Passive;
itemConfig[118] = ItemType.Passive;
itemConfig[119] = ItemType.Passive;
itemConfig[120] = ItemType.Passive;
itemConfig[121] = ItemType.Passive;
itemConfig[122] = ItemType.Passive;
itemConfig[123] = ItemType.Active;
itemConfig[124] = ItemType.Active;
itemConfig[125] = ItemType.Passive;
itemConfig[126] = ItemType.Active;
itemConfig[127] = ItemType.Active;
itemConfig[128] = ItemType.Familiar;
itemConfig[129] = ItemType.Passive;
itemConfig[130] = ItemType.Active;
itemConfig[131] = ItemType.Familiar;
itemConfig[132] = ItemType.Passive;
itemConfig[133] = ItemType.Active;
itemConfig[134] = ItemType.Passive;
itemConfig[135] = ItemType.Active;
itemConfig[136] = ItemType.Active;
itemConfig[137] = ItemType.Active;
itemConfig[138] = ItemType.Passive;
itemConfig[139] = ItemType.Passive;
itemConfig[140] = ItemType.Passive;
itemConfig[141] = ItemType.Passive;
itemConfig[142] = ItemType.Passive;
itemConfig[143] = ItemType.Passive;
itemConfig[144] = ItemType.Familiar;
itemConfig[145] = ItemType.Active;
itemConfig[146] = ItemType.Active;
itemConfig[147] = ItemType.Active;
itemConfig[148] = ItemType.Passive;
itemConfig[149] = ItemType.Passive;
itemConfig[150] = ItemType.Passive;
itemConfig[151] = ItemType.Passive;
itemConfig[152] = ItemType.Passive;
itemConfig[153] = ItemType.Passive;
itemConfig[154] = ItemType.Passive;
itemConfig[155] = ItemType.Familiar;
itemConfig[156] = ItemType.Passive;
itemConfig[157] = ItemType.Passive;
itemConfig[158] = ItemType.Active;
itemConfig[159] = ItemType.Passive;
itemConfig[160] = ItemType.Active;
itemConfig[161] = ItemType.Passive;
itemConfig[162] = ItemType.Passive;
itemConfig[163] = ItemType.Familiar;
itemConfig[164] = ItemType.Active;
itemConfig[165] = ItemType.Passive;
itemConfig[166] = ItemType.Active;
itemConfig[167] = ItemType.Familiar;
itemConfig[168] = ItemType.Passive;
itemConfig[169] = ItemType.Passive;
itemConfig[170] = ItemType.Familiar;
itemConfig[171] = ItemType.Active;
itemConfig[172] = ItemType.Familiar;
itemConfig[173] = ItemType.Passive;
itemConfig[174] = ItemType.Familiar;
itemConfig[175] = ItemType.Active;
itemConfig[176] = ItemType.Passive;
itemConfig[177] = ItemType.Active;
itemConfig[178] = ItemType.Familiar;
itemConfig[179] = ItemType.Passive;
itemConfig[180] = ItemType.Passive;
itemConfig[181] = ItemType.Active;
itemConfig[182] = ItemType.Passive;
itemConfig[183] = ItemType.Passive;
itemConfig[184] = ItemType.Passive;
itemConfig[185] = ItemType.Passive;
itemConfig[186] = ItemType.Active;
itemConfig[187] = ItemType.Familiar;
itemConfig[188] = ItemType.Familiar;
itemConfig[189] = ItemType.Passive;
itemConfig[190] = ItemType.Passive;
itemConfig[191] = ItemType.Passive;
itemConfig[192] = ItemType.Active;
itemConfig[193] = ItemType.Passive;
itemConfig[194] = ItemType.Passive;
itemConfig[195] = ItemType.Passive;
itemConfig[196] = ItemType.Passive;
itemConfig[197] = ItemType.Passive;
itemConfig[198] = ItemType.Passive;
itemConfig[199] = ItemType.Passive;
itemConfig[200] = ItemType.Passive;
itemConfig[201] = ItemType.Passive;
itemConfig[202] = ItemType.Passive;
itemConfig[203] = ItemType.Passive;
itemConfig[204] = ItemType.Passive;
itemConfig[205] = ItemType.Passive;
itemConfig[206] = ItemType.Familiar;
itemConfig[207] = ItemType.Familiar;
itemConfig[208] = ItemType.Passive;
itemConfig[209] = ItemType.Passive;
itemConfig[210] = ItemType.Passive;
itemConfig[211] = ItemType.Passive;
itemConfig[212] = ItemType.Passive;
itemConfig[213] = ItemType.Passive;
itemConfig[214] = ItemType.Passive;
itemConfig[215] = ItemType.Passive;
itemConfig[216] = ItemType.Passive;
itemConfig[217] = ItemType.Passive;
itemConfig[218] = ItemType.Passive;
itemConfig[219] = ItemType.Passive;
itemConfig[220] = ItemType.Passive;
itemConfig[221] = ItemType.Passive;
itemConfig[222] = ItemType.Passive;
itemConfig[223] = ItemType.Passive;
itemConfig[224] = ItemType.Passive;
itemConfig[225] = ItemType.Passive;
itemConfig[226] = ItemType.Passive;
itemConfig[227] = ItemType.Passive;
itemConfig[228] = ItemType.Passive;
itemConfig[229] = ItemType.Passive;
itemConfig[230] = ItemType.Passive;
itemConfig[231] = ItemType.Passive;
itemConfig[232] = ItemType.Passive;
itemConfig[233] = ItemType.Passive;
itemConfig[234] = ItemType.Passive;
itemConfig[236] = ItemType.Passive;
itemConfig[237] = ItemType.Passive;
itemConfig[238] = ItemType.Familiar;
itemConfig[239] = ItemType.Familiar;
itemConfig[240] = ItemType.Passive;
itemConfig[241] = ItemType.Passive;
itemConfig[242] = ItemType.Passive;
itemConfig[243] = ItemType.Passive;
itemConfig[244] = ItemType.Passive;
itemConfig[245] = ItemType.Passive;
itemConfig[246] = ItemType.Passive;
itemConfig[247] = ItemType.Passive;
itemConfig[248] = ItemType.Passive;
itemConfig[249] = ItemType.Passive;
itemConfig[250] = ItemType.Passive;
itemConfig[251] = ItemType.Passive;
itemConfig[252] = ItemType.Passive;
itemConfig[253] = ItemType.Passive;
itemConfig[254] = ItemType.Passive;
itemConfig[255] = ItemType.Passive;
itemConfig[256] = ItemType.Passive;
itemConfig[257] = ItemType.Passive;
itemConfig[258] = ItemType.Passive;
itemConfig[259] = ItemType.Passive;
itemConfig[260] = ItemType.Passive;
itemConfig[261] = ItemType.Passive;
itemConfig[262] = ItemType.Passive;
itemConfig[264] = ItemType.Familiar;
itemConfig[265] = ItemType.Familiar;
itemConfig[266] = ItemType.Familiar;
itemConfig[267] = ItemType.Familiar;
itemConfig[268] = ItemType.Familiar;
itemConfig[269] = ItemType.Familiar;
itemConfig[270] = ItemType.Familiar;
itemConfig[271] = ItemType.Familiar;
itemConfig[272] = ItemType.Familiar;
itemConfig[273] = ItemType.Familiar;
itemConfig[274] = ItemType.Familiar;
itemConfig[275] = ItemType.Familiar;
itemConfig[276] = ItemType.Familiar;
itemConfig[277] = ItemType.Familiar;
itemConfig[278] = ItemType.Familiar;
itemConfig[279] = ItemType.Familiar;
itemConfig[280] = ItemType.Familiar;
itemConfig[281] = ItemType.Familiar;
itemConfig[282] = ItemType.Active;
itemConfig[283] = ItemType.Active;
itemConfig[284] = ItemType.Active;
itemConfig[285] = ItemType.Active;
itemConfig[286] = ItemType.Active;
itemConfig[287] = ItemType.Active;
itemConfig[288] = ItemType.Active;
itemConfig[289] = ItemType.Active;
itemConfig[290] = ItemType.Active;
itemConfig[291] = ItemType.Active;
itemConfig[292] = ItemType.Active;
itemConfig[293] = ItemType.Active;
itemConfig[294] = ItemType.Active;
itemConfig[295] = ItemType.Active;
itemConfig[296] = ItemType.Active;
itemConfig[297] = ItemType.Active;
itemConfig[298] = ItemType.Active;
itemConfig[299] = ItemType.Passive;
itemConfig[300] = ItemType.Passive;
itemConfig[301] = ItemType.Passive;
itemConfig[302] = ItemType.Passive;
itemConfig[303] = ItemType.Passive;
itemConfig[304] = ItemType.Passive;
itemConfig[305] = ItemType.Passive;
itemConfig[306] = ItemType.Passive;
itemConfig[307] = ItemType.Passive;
itemConfig[308] = ItemType.Passive;
itemConfig[309] = ItemType.Passive;
itemConfig[310] = ItemType.Passive;
itemConfig[311] = ItemType.Passive;
itemConfig[312] = ItemType.Passive;
itemConfig[313] = ItemType.Passive;
itemConfig[314] = ItemType.Passive;
itemConfig[315] = ItemType.Passive;
itemConfig[316] = ItemType.Passive;
itemConfig[317] = ItemType.Passive;
itemConfig[318] = ItemType.Familiar;
itemConfig[319] = ItemType.Familiar;
itemConfig[320] = ItemType.Familiar;
itemConfig[321] = ItemType.Familiar;
itemConfig[322] = ItemType.Familiar;
itemConfig[323] = ItemType.Active;
itemConfig[324] = ItemType.Active;
itemConfig[325] = ItemType.Active;
itemConfig[326] = ItemType.Active;
itemConfig[327] = ItemType.Passive;
itemConfig[328] = ItemType.Passive;
itemConfig[329] = ItemType.Passive;
itemConfig[330] = ItemType.Passive;
itemConfig[331] = ItemType.Passive;
itemConfig[332] = ItemType.Passive;
itemConfig[333] = ItemType.Passive;
itemConfig[334] = ItemType.Passive;
itemConfig[335] = ItemType.Passive;
itemConfig[336] = ItemType.Passive;
itemConfig[337] = ItemType.Passive;
itemConfig[338] = ItemType.Active;
itemConfig[339] = ItemType.Passive;
itemConfig[340] = ItemType.Passive;
itemConfig[341] = ItemType.Passive;
itemConfig[342] = ItemType.Passive;
itemConfig[343] = ItemType.Passive;
itemConfig[344] = ItemType.Passive;
itemConfig[345] = ItemType.Passive;
itemConfig[346] = ItemType.Passive;
itemConfig[347] = ItemType.Active;
itemConfig[348] = ItemType.Active;
itemConfig[349] = ItemType.Active;
itemConfig[350] = ItemType.Passive;
itemConfig[351] = ItemType.Active;
itemConfig[352] = ItemType.Active;
itemConfig[353] = ItemType.Passive;
itemConfig[354] = ItemType.Passive;
itemConfig[355] = ItemType.Passive;
itemConfig[356] = ItemType.Passive;
itemConfig[357] = ItemType.Active;
itemConfig[358] = ItemType.Passive;
itemConfig[359] = ItemType.Passive;
itemConfig[360] = ItemType.Familiar;
itemConfig[361] = ItemType.Familiar;
itemConfig[362] = ItemType.Familiar;
itemConfig[363] = ItemType.Familiar;
itemConfig[364] = ItemType.Familiar;
itemConfig[365] = ItemType.Familiar;
itemConfig[366] = ItemType.Passive;
itemConfig[367] = ItemType.Passive;
itemConfig[368] = ItemType.Passive;
itemConfig[369] = ItemType.Passive;
itemConfig[370] = ItemType.Passive;
itemConfig[371] = ItemType.Passive;
itemConfig[372] = ItemType.Familiar;
itemConfig[373] = ItemType.Passive;
itemConfig[374] = ItemType.Passive;
itemConfig[375] = ItemType.Passive;
itemConfig[376] = ItemType.Passive;
itemConfig[377] = ItemType.Passive;
itemConfig[378] = ItemType.Passive;
itemConfig[379] = ItemType.Passive;
itemConfig[380] = ItemType.Passive;
itemConfig[381] = ItemType.Passive;
itemConfig[382] = ItemType.Active;
itemConfig[383] = ItemType.Active;
itemConfig[384] = ItemType.Familiar;
itemConfig[385] = ItemType.Familiar;
itemConfig[386] = ItemType.Active;
itemConfig[387] = ItemType.Familiar;
itemConfig[388] = ItemType.Familiar;
itemConfig[389] = ItemType.Familiar;
itemConfig[390] = ItemType.Familiar;
itemConfig[391] = ItemType.Passive;
itemConfig[392] = ItemType.Passive;
itemConfig[393] = ItemType.Passive;
itemConfig[394] = ItemType.Passive;
itemConfig[395] = ItemType.Passive;
itemConfig[396] = ItemType.Active;
itemConfig[397] = ItemType.Passive;
itemConfig[398] = ItemType.Passive;
itemConfig[399] = ItemType.Passive;
itemConfig[400] = ItemType.Passive;
itemConfig[401] = ItemType.Passive;
itemConfig[402] = ItemType.Passive;
itemConfig[403] = ItemType.Familiar;
itemConfig[404] = ItemType.Familiar;
itemConfig[405] = ItemType.Familiar;
itemConfig[406] = ItemType.Active;
itemConfig[407] = ItemType.Passive;
itemConfig[408] = ItemType.Passive;
itemConfig[409] = ItemType.Passive;
itemConfig[410] = ItemType.Passive;
itemConfig[411] = ItemType.Passive;
itemConfig[412] = ItemType.Passive;
itemConfig[413] = ItemType.Passive;
itemConfig[414] = ItemType.Passive;
itemConfig[415] = ItemType.Passive;
itemConfig[416] = ItemType.Passive;
itemConfig[417] = ItemType.Familiar;
itemConfig[418] = ItemType.Passive;
itemConfig[419] = ItemType.Active;
itemConfig[420] = ItemType.Passive;
itemConfig[421] = ItemType.Active;
itemConfig[422] = ItemType.Active;
itemConfig[423] = ItemType.Passive;
itemConfig[424] = ItemType.Passive;
itemConfig[425] = ItemType.Passive;
itemConfig[426] = ItemType.Familiar;
itemConfig[427] = ItemType.Active;
itemConfig[428] = ItemType.Passive;
itemConfig[429] = ItemType.Passive;
itemConfig[430] = ItemType.Familiar;
itemConfig[431] = ItemType.Familiar;
itemConfig[432] = ItemType.Passive;
itemConfig[433] = ItemType.Passive;
itemConfig[434] = ItemType.Active;
itemConfig[435] = ItemType.Familiar;
itemConfig[436] = ItemType.Familiar;
itemConfig[437] = ItemType.Active;
itemConfig[438] = ItemType.Passive;
itemConfig[439] = ItemType.Active;
itemConfig[440] = ItemType.Passive;
itemConfig[441] = ItemType.Active;
itemConfig[442] = ItemType.Passive;
itemConfig[443] = ItemType.Passive;
itemConfig[444] = ItemType.Passive;
itemConfig[445] = ItemType.Passive;
itemConfig[446] = ItemType.Passive;
itemConfig[447] = ItemType.Passive;
itemConfig[448] = ItemType.Passive;
itemConfig[449] = ItemType.Passive;
itemConfig[450] = ItemType.Passive;
itemConfig[451] = ItemType.Passive;
itemConfig[452] = ItemType.Passive;
itemConfig[453] = ItemType.Passive;
itemConfig[454] = ItemType.Passive;
itemConfig[455] = ItemType.Passive;
itemConfig[456] = ItemType.Passive;
itemConfig[457] = ItemType.Passive;
itemConfig[458] = ItemType.Passive;
itemConfig[459] = ItemType.Passive;
itemConfig[460] = ItemType.Passive;
itemConfig[461] = ItemType.Passive;
itemConfig[462] = ItemType.Passive;
itemConfig[463] = ItemType.Passive;
itemConfig[464] = ItemType.Passive;
itemConfig[465] = ItemType.Passive;
itemConfig[466] = ItemType.Passive;
itemConfig[467] = ItemType.Familiar;
itemConfig[468] = ItemType.Familiar;
itemConfig[469] = ItemType.Familiar;
itemConfig[470] = ItemType.Familiar;
itemConfig[471] = ItemType.Familiar;
itemConfig[472] = ItemType.Familiar;
itemConfig[473] = ItemType.Familiar;
itemConfig[474] = ItemType.Familiar;
itemConfig[475] = ItemType.Active;
itemConfig[476] = ItemType.Active;
itemConfig[477] = ItemType.Active;
itemConfig[478] = ItemType.Active;
itemConfig[479] = ItemType.Active;
itemConfig[480] = ItemType.Active;
itemConfig[481] = ItemType.Active;
itemConfig[482] = ItemType.Active;
itemConfig[483] = ItemType.Active;
itemConfig[484] = ItemType.Active;
itemConfig[485] = ItemType.Active;
itemConfig[486] = ItemType.Active;
itemConfig[487] = ItemType.Active;
itemConfig[488] = ItemType.Active;
itemConfig[489] = ItemType.Active;
itemConfig[490] = ItemType.Active;
itemConfig[491] = ItemType.Familiar;
itemConfig[492] = ItemType.Familiar;
itemConfig[493] = ItemType.Passive;
itemConfig[494] = ItemType.Passive;
itemConfig[495] = ItemType.Passive;
itemConfig[496] = ItemType.Passive;
itemConfig[497] = ItemType.Passive;
itemConfig[498] = ItemType.Passive;
itemConfig[499] = ItemType.Passive;
itemConfig[500] = ItemType.Familiar;
itemConfig[501] = ItemType.Passive;
itemConfig[502] = ItemType.Passive;
itemConfig[503] = ItemType.Passive;
itemConfig[504] = ItemType.Active;
itemConfig[505] = ItemType.Passive;
itemConfig[506] = ItemType.Passive;
itemConfig[507] = ItemType.Active;
itemConfig[508] = ItemType.Familiar;
itemConfig[509] = ItemType.Familiar;
itemConfig[510] = ItemType.Active;
itemConfig[511] = ItemType.Familiar;
itemConfig[512] = ItemType.Active;
itemConfig[513] = ItemType.Passive;
itemConfig[514] = ItemType.Passive;
itemConfig[515] = ItemType.Active;
itemConfig[516] = ItemType.Active;
itemConfig[517] = ItemType.Passive;
itemConfig[518] = ItemType.Familiar;
itemConfig[519] = ItemType.Familiar;
itemConfig[520] = ItemType.Passive;
itemConfig[521] = ItemType.Active;
itemConfig[522] = ItemType.Active;
itemConfig[523] = ItemType.Active;
itemConfig[524] = ItemType.Passive;
itemConfig[525] = ItemType.Familiar;
itemConfig[526] = ItemType.Familiar;
itemConfig[527] = ItemType.Active;
itemConfig[528] = ItemType.Familiar;
itemConfig[529] = ItemType.Passive;
itemConfig[530] = ItemType.Passive;
itemConfig[531] = ItemType.Passive;
itemConfig[532] = ItemType.Passive;
itemConfig[533] = ItemType.Passive;
itemConfig[534] = ItemType.Passive;
itemConfig[535] = ItemType.Passive;
itemConfig[536] = ItemType.Active;
itemConfig[537] = ItemType.Familiar;
itemConfig[538] = ItemType.Passive;
itemConfig[539] = ItemType.Familiar;
itemConfig[540] = ItemType.Passive;
itemConfig[541] = ItemType.Passive;
itemConfig[542] = ItemType.Familiar;
itemConfig[543] = ItemType.Familiar;
itemConfig[544] = ItemType.Familiar;
itemConfig[545] = ItemType.Active;
itemConfig[546] = ItemType.Passive;
itemConfig[547] = ItemType.Passive;
itemConfig[548] = ItemType.Familiar;
itemConfig[549] = ItemType.Passive;
itemConfig[550] = ItemType.Active;
itemConfig[551] = ItemType.Passive;
itemConfig[552] = ItemType.Active;
return itemConfig;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment