SecretLab logic needs a lot of fixing
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ares |
Fix Released
|
Wishlist
|
DCoder DCoder |
Bug Description
As documented in http://
* Bonuses are assigned at map load instead of building acquisition.
* Bonuses don't check if the new owner can already build this bonus.
* Bonuses don't change between consequent captures.
* Bonuses are defined globally.
* Bonuses only work if there are more possible bonuses than labs on the map.
* Bonus probabilities are skewed and inversely proportional to a bonus's index on the bonus list.
* Potential bonuses don't include AircraftTypes.
* SecretHouses don't work.
Fixing all the issues will cause a significant change in how Secret Labs operate. Therefore, it might be worth introducing a parallel Secret Lab system and leaving the original one intact.
##### STEPS TO REPRODUCE #####
1. Create a map with multiple Secret Labs pre-placed.
2. Run map repetitively.
Expected results:
3. All bonuses appear with more or less the same frequency.
Actual results:
3. Bonuses further down the bonus list (especially the Grand Cannon) appear very rarely.
4. Grand Cannon only appears on the very first Lab, if at all.
##### ADDITIONAL INFORMATION #####
A brief discussion about possible fixes:
could do with having an entirely new system that is separate/in addition to the existing system (i.e. existing system not touched)
indeed
so [CASLAB2] has NewSecretInfant
AssignNewSecre
NewSecretLab=
if no, will get assigned on map enumeration or when built
if yes, will get assigned on every capture
yeah
don't think we need NewSecretLab= - CASLAB2 (or 3/4/5/etc) simply have or do not have the NewSecret### flags
In addition, SecretLab=yes can be used [i]on the same building[/i] if wanted (so a building can be a SecretLab and a NewSecretLAb at the same time
the only thing I haven't thought of is how we could incoporate SecretHouses=
SecretForbidden and SecretRequired seem necessary
Well, obviously that would only be used in conjunction with AssignNewSecret
Yeah, good idea
SecretForbidde
question is how to handle interaction between Forbidden and Required
Additional improvement idea:
edit the game to make spy infiltration show which unit plans are in a secret lab, RA1 style XD
(The hard part would be drawing the cameo on the battlefield, the rest is already doable with Syringe.)