Resource Spawner Overhaul

by orzelek

Overhauls resource spawning system.

13 days ago
0.14 - 1.1
135K

i Suport for Ocean Liners mod

7 years ago

Hello,
I relay love this mod, but recently I discover Ocean Liners mod (https://mods.factorio.com/mods/xavier630/OceanLiners) and the spawn rate is a bitt too high with RSO. Could you add an equilibrate support of this mod please?
thanks

7 years ago
(updated 7 years ago)

Support for this mod will be a bit problematic.
It assumes that resource is spawned on water and logic in RSO prevents resources from spawning on water. Also RSO has no logic to actually target water with resources so it can't spawn them over water only.
I can make RSO not disable spawns of this resource but support for it is not likely.

Also mod seems to go around RSO disabling of resource spawning so it still works with RSO present.

7 years ago
(updated 7 years ago)

Hey Florian, thanks for looking out for the mod, I should have asked for this myself a while ago. I added an issue on the RSO Github, but it might have been on the wrong repository, maybe it was an RSO addon

@orzelek
What's the logic regarding water? At the moment, deep water no longer has "water-tile" in it's collision mask for my mod (Ocean Liners), so it's not really water if you use that to check for water.

That means that everything spawns on deep water, and then I go through whenever a chunk is generated and wipe everything that isn't sea oil. Could this possibly work with RSO?

I didn't realise that I went around the way RSO disables resource spawning, it wasn't intentional!

If you think that it's balanced together with RSO in the current state, could you at least disable the warning message at startup saying that it isn't compatible?

There's also an issue with biter nests spawning on water with Ocean Liners and RSO, but I'll test to double check that this is with RSO

Thanks,

Xavier

7 years ago

If you are removing collision mask from water then RSO will be able to spawn everything on water. It's using collision check to validate if it can place ore field and/or biters.
I can suppress the warning - but removal of water collision mask means that things will go wrong with RSO as you noticed with biters. I might be actually tempted to self disable RSO when detecting your mod to prevent resource placement issues.
I'd rather not reimplement base game collision checks by hand with actual tile type checks to go around removal of water collision mask.

7 years ago

So yeah, as mentioned above, I wipe everything on the water already that isn't oil, so it shouldn't cause any issues for you with spawning other resources on water. You shouldn't have to do tile collision checks and I'm not asking you to.

The only issue I see is if RSO balances resources so that there's only one patch per x chunks (No idea if you do or you make distribution random). Then water resources might get counted before they get wiped and the player potentially gets fewer resources on their map. If this is an issue, maybe frequency could be raised slightly when RSO and Ocean Liners are in the same pack.

Anyway, it would be great if you would disable that message if RSO and Ocean Liners are both installed. I hope it doesn't come to disabling RSO with Ocean Liners installed, because I'd really love to be able to play with both.

Thanks for the reply orzelek!

7 years ago

Oh and regarding the biters, I am wiping them too when a chunk is spawned, so I'm not sure how they are spawning on water. It may be that the way a big biter nest is bound to a tile is strange as I check what tile it's placed upon in my code to see if it's water. I'll look into it tomorrow

7 years ago

Your mod event might be happening before RSO - thats why biter bases and ore can be spawned on water currently.
There is no way to affect event order other then renaming mod - devs stated that dependencies will affect it in 0.15.
Looking at the code I have no idea why sea oil is actually spawning - it should be disabled by RSO and not spawned - thats why warning message is shown. I can suppress warning but all other side effects of collision mask edits will continue to happen.

New response