I think I am on to something. Well, something worked. I managed to use the NOT conditional without the buildings disappearing from the browser. I'll explain:
As I said, there's a group of 3 buildings and once you build one the other two should become unavailable. The buildings are Workshop, Hospital and Library. This is my first requirement design:
The workshop has the following requirements: "requires factions { roman, } and not building_present hospital and not building_present library".
The hospital has the following requirements: "requires factions { roman, } and not building_present workshop and not building_present library".
The library has the following requirements: "requires factions { roman, } and not building_present workshop and not building_present hospital".
Normally this would work but the 3 buildings would not show up in the building browser. As we know, the "not" conditional somehow confuses the building browser and it simply skips the buildings all together. This is the design I tried just now:
The workshop has the following requirements: "requires factions { roman, } and building_present workshop or not building_present hospital and not building_present library".
The hospital has the following requirements: "requires factions { roman, } and building_present hospital or not building_present workshop and not building_present library".
The library has the following requirements: "requires factions { roman, } and building_present library or not building_present workshop and not building_present hospital".
It appears that by first adding a requirement that doesn't start with "not" the building browser displays the building correctly. The first requirement is a non-sense and can never be met (the building requires it's self to be already built) but the second one is the real requirement and works as intended. The downside is that if you hover over the buildings in the browser it will show the requirements in a messy unintelligible fashion.
This is what I've got so far. I am still a bit skeptical and expecting nasty surprises that will render this useless for my mod so if anyone is curious to test it let me know how it went. If it works like it did for me a few minutes ago it could prove to be a very useful technique for mods that involve complex building trees. I will report anything else I find on this as I use it for my buildings.
Bookmarks