I've been keeping my eye out for any purple slimes since posting here, and I'm not seeing them either. Haven't gotten one in the middle of the map forest nor in the 1/3 edge of the map forest. I'm not sure they're in, but then again I'm not sure they're not in either.
If I do see one I'll let you know.
I have just go to GitHub to get the source code for the
ver 1.2.4. (PC version)
It seems that.. "NPC.cs" (line 37224)
if (Main.rand.Next(10) == 0 && num47 > 400)
{
Main.npc[num31].SetDefaults("Purple Slime");
}
The && (and) could be mistaken from || (or)?
Making it nearly impossible to get condition meet to spawn the Purple Slime?
For what I understand, it means,
Random number from 0 to 9, if then number generated are 0,
AND,
something (num47) more than 400 it will assign the Purple Slime to spawn.
The condition for other slime.
Surface:-
Green Slime - if (Main.rand.Next(3) == 0 || num47 < 200)
Blue Slime - if (Main.rand.Next(2) == 0)
Underground:-
Red Slime - if NOT (Main.rand.Next(2) == 0)
Yellow Slime - if (Main.rand.Next(5) == 0)
Currently I have no ideal what num47 means. It could be depth of the map? or left/right side of the map? or something else...
Updates:---
if (
num47 > Main.maxTilesX / 3 && (Main.rand.Next(15) == 0 || (!NPC.downedGoblins && WorldGen.shadowOrbSmashed && Main.rand.Next(7) == 0))) {
num31 = NPC.NewNPC(num * 16 + 8, num2 * 16,
"Goblin Scout", 0);
}
Goblin Scout = type 73
So, num47 is world map "X" location left/right.
Means it must be more than 400 (tiles?) left/right surface of player initial center spawn location for the 'Purple Slime' to spawn?
or
400 (tiles) from the edge of the map?