regenerate_decorative not on top of belts/rails

Things that we aren't going to implement
hreintke
Fast Inserter
Fast Inserter
Posts: 115
Joined: Mon Sep 04, 2017 6:52 pm
Contact:

regenerate_decorative not on top of belts/rails

Post by hreintke »

Hi,

When running regenerate_decorative on an existing chunk it places new decoratives on top of belts/trains.

Would like to have the function only next to but not over existing entities.
regenerated_decorative.JPG
regenerated_decorative.JPG (100.46 KiB) Viewed 1411 times
regenerated_decorative_rail.JPG
regenerated_decorative_rail.JPG (84.6 KiB) Viewed 1411 times
Rseding91
Factorio Staff
Factorio Staff
Posts: 14601
Joined: Wed Jun 11, 2014 5:23 am
Contact:

Re: regenerate_decorative not on top of belts/rails

Post by Rseding91 »

Regenerate decorative has no such logic built into it and I'm not going to add it in because it would be extremely expensive to do.

It uses the same logic that normal map generation uses just during normal generation the entities are placed after decoratives so they remove them partially.
If you want to get ahold of me I'm almost always on Discord.
hreintke
Fast Inserter
Fast Inserter
Posts: 115
Joined: Mon Sep 04, 2017 6:52 pm
Contact:

Re: regenerate_decorative not on top of belts/rails

Post by hreintke »

Bad luck.

Expected to be easy as the create_decoratives() hase the option.

Code: Select all

create_decoratives{check_collision=…, decoratives=…}
Adds the given decoratives to the surface.

Each Decorative is

name :: string
position :: Position
amount :: uint8
Parameters
Table with the following fields:
check_collision :: boolean (optional): If collision should be checked against entities/tiles.
decoratives :: array of Decorative
I think I cannot solve it myself because I have no possibilty to find/manipulate decoratives. Correct ?
User avatar
eradicator
Smart Inserter
Smart Inserter
Posts: 5211
Joined: Tue Jul 12, 2016 9:03 am
Contact:

Re: regenerate_decorative not on top of belts/rails

Post by eradicator »

hreintke wrote: I think I cannot solve it myself because I have no possibilty to find/manipulate decoratives. Correct ?
There's at least: LuaSurface.destroy_decoratives, running that on the collision_box of every entity you want cleared won't be cheap though.
Post Reply

Return to “Won't implement”