Biter Spawner Questions

Place to get help with not working mods / modding interface.
Post Reply
TheSAguy
Smart Inserter
Smart Inserter
Posts: 1449
Joined: Mon Jan 13, 2014 6:17 pm
Contact:

Biter Spawner Questions

Post by TheSAguy »

Hi,
I’d like to better understand some of the Biter Spawner variables:

Unknown to me:
max_spawn_shift = 0, - ?
max_richness_for_spawn_shift = 100, - ?
spawning_radius = 10, - Radius around spawner that an enemy can appear? Or zone that a player enters and it starts to spawn?
spawning_spacing = 3, - space between spawned units?

Thanks.
Last edited by TheSAguy on Tue Jun 23, 2015 7:37 pm, edited 1 time in total.

TheSAguy
Smart Inserter
Smart Inserter
Posts: 1449
Joined: Mon Jan 13, 2014 6:17 pm
Contact:

Re: Bitter Spawner Questions

Post by TheSAguy »

Not asking for a lot here....Just would like to know what these variables do.
Thanks.

User avatar
ssilk
Global Moderator
Global Moderator
Posts: 12888
Joined: Tue Apr 16, 2013 10:35 pm
Contact:

Re: Bitter Spawner Questions

Post by ssilk »

Moved from general.
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...

daniel34
Global Moderator
Global Moderator
Posts: 2761
Joined: Thu Dec 25, 2014 7:30 am
Contact:

Re: Bitter Spawner Questions

Post by daniel34 »

Actually, it looks like it belongs to Modding help

Related (very old) topic: https://forums.factorio.com/forum/vie ... =25&t=1658
quick links: log file | graphical issues | wiki

User avatar
ssilk
Global Moderator
Global Moderator
Posts: 12888
Joined: Tue Apr 16, 2013 10:35 pm
Contact:

Re: Bitter Spawner Questions

Post by ssilk »

Moved from Gameplay Help.
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...

User avatar
cube
Former Staff
Former Staff
Posts: 1111
Joined: Tue Mar 05, 2013 8:14 pm
Contact:

Re: Biter Spawner Questions

Post by cube »

Spawn shift determines how strong monsters are born from the spawner -- when the spawner is placed:

Code: Select all

spawnShift = prototype.maxSpawnShift * std::min(prototype.maxRichnessForSpawnShift, double(entityCreationParameters.richness)) / prototype.maxRichnessForSpawnShift;
And when spawning a monster:

Code: Select all

EntityID spawnedID = prototype.selectUnitToSpawn(this->spawnShift + this->getMap().getEvolutionFactor(), randomValue);
Here richness is the map generation parameter that allows us to use the same mechanism for placing resources and enemy bases and selectUnitToSpawn, basically determines which biter is born next time -- the higher the values, the stronger enemy.

Spawning radius is the radius around the spawner where new enemies are created.
Before spawning we also check if inside of this radius is not too crowded. spawning_spacing determines what "too crowded" means.

TheSAguy
Smart Inserter
Smart Inserter
Posts: 1449
Joined: Mon Jan 13, 2014 6:17 pm
Contact:

Re: Biter Spawner Questions

Post by TheSAguy »

Thanks Bluecube for your response!!

Now, if someone could translate this for me :lol:

In Vanilla spawn shift would be 0 and maxRichnessForSpawnShift would have no effect, since you're multiplying that by 0
Using DyTech's Max Spawn Shift of 0.65, you'll get a value for spawnshift, so your spawned monster will have a chance of being bigger/stronger version in the table.

I guess the bottom line is that with a larger Max Spawn shift or a larger Max Richness you'll have a change of getting bigger monsters from the table when spawning a monster.

Post Reply

Return to “Modding help”