beyond-all-reason / spring

A powerful free cross-platform RTS game engine
https://beyond-all-reason.github.io/spring/
Other
215 stars 102 forks source link

Allow buildings to assist construction #1597

Open WatchTheFort opened 3 months ago

WatchTheFort commented 3 months ago

Currently a building with buildpower cannot assist other construction, only perform its own i.e. be a factory.

Due to this, construction turrets are implemented as mobile units with zero speed, but this has unwanted side effects, e.g. radar ghosts do not appear in fog because they are technically not buildings.

Allow buildings with buildpower to assist other construction, supporting the full set of building unit def tags that mobile builders use.

One consequence of this is that we will need to decide what counts as factory. One option is a factory is a unit with buildpower, a buildlist, and can start construction within its own footprint. Thus, SupCom's Fatboy would count as a factory, since it builds units inside itself, but BAR's combat engineers wouldn't, since they build units beside themselves.

sprunk commented 3 months ago

Sounds like what you really want is to have the unwanted side effects fixed.

WatchTheFort commented 3 months ago

Sounds like what you really want is to have the unwanted side effects fixed.

Since the implementation itself is a workaround, it would be nicer to not have to implement additional workarounds for the workaround.

sprunk commented 3 months ago

Things can be immobiles instead of true buildings purposefully so fixes should be made regardless.