2025-07-04 14:15 CEST

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0006305AIAIpublic2019-10-08 11:47
Reporteraeonios 
Assigned To 
PrioritynormalSeveritymajorReproducibilityalways
StatusclosedResolutionno change required 
Summary0006305: isPossibleToBuildAt() and findClosestBuildSite() try to place buildings on top of other buildings' yards
DescriptionfindClosestBuildSite() will try to place buildings on other buildings' yards (ie factories) and isPossibleToBuildAt() returns true for said buildings as well, even though engine does not actually allow the workers to construct. The workers just get stuck doing nothing as a result.
Steps To Reproduce(Using Zero-K) load the attached AI (java) and run an instance on Titan Duel (where this issue appears very consistently). When you see a worker sitting near the factory doing nothing, type "kgbdebug" into chat to have it create points showing the location of its build tasks along with the result of isPossibleToBuildAt(). (best to only run one instance)
Additional Informationrunning 104.0.1-1398-g7442945 but the issue seems to be older than that. Note: ZK now has extra-large yards for its facs to prevent units from getting stuck due to bad fac placement/wrecks/etc.
TagsNo tags attached.
Attached Files

-Relationships
+Relationships

-Notes

~0020154

lamer (reporter)

https://springrts.com/phpbb/viewtopic.php?f=15&t=33912&sid=8f180399f0afbe560d1eb366ec8b3bad

It's a feature.
Also check this out: https://github.com/ZeroK-RTS/Zero-K/blob/35ae3ee66686555bebdcef2967669e3bd05ce0e4/LuaRules/Gadgets/unit_prevent_lab_hax.lua#L389

If it was not the same issue then please provide more details (screenshots, conceptual demo AI, etc.)

~0020168

aeonios (reporter)

meh.. that uses allowCommand which doesn't inform AI of anything at all. It'd be nice if yardbuild was a game option so that spring wouldn't lie about build placement. :\ Guess I'll just have to use a fac overlap check.

~0020172

hokomoko (developer)

I'm pretty sure you can use the build mask for implementing the feature in a far far smaller and nicer way.
+Notes

-Issue History
Date Modified Username Field Change
2019-09-22 08:46 aeonios New Issue
2019-09-22 08:46 aeonios File Added: ZKGBAI.7z
2019-09-29 11:20 lamer Note Added: 0020154
2019-10-04 05:40 aeonios Note Added: 0020168
2019-10-06 19:21 Kloot Status new => closed
2019-10-06 19:21 Kloot Resolution open => no change required
2019-10-08 11:47 hokomoko Note Added: 0020172
+Issue History