All purchasable vanilla homes are set to "NoResetZone" and therefore, the flora never regrows. The Arch Mage quarters is set to "NONE", so that doesn't apply. I'm basically looking for a workaround to reset flora in the no reset zones where changing the zone isn't practical. But coupled with the lack of a harvested check, I'm pretty stumped.
The Nirnroot plants and the mining ore's don't count since they're actual activators and not flora/trees. because they're not flora, the function in ObjectReference.psc actually work on them. In their scripts, they use something akin to:
Event OnReset() Self.Reset() Self.ClearDestruction() Self.SetDestroyed(False)EndEventNone of which has any affect on flora/trees.
There also seems to be no way to check if the flora has been harvested or not. I thought IsActivationBlocked might return true after harvesting, but it does not. If you put a script on the flora and a hello world in the OnActivate block, it will hello world even if it's harvested. Which also means it's not being set to "Destroyed". But lacking a "GetDestroyed / IsDestroyed" check, that probably wouldn't help much anyway.
From looking at the flora nif's, I'm pretty baffled on how it works. Some more intuitive ones switch between nodes on activation (flora: mushrooms), but others have me completely at a loss (tree: blue, red, purple flowers, etc). Either way, there doesn't seem to be anything in papyrus that can interact with them.
I've seen some talk of making custom activators that resemble the flora to simulate harvesting, but that would be incompatible with any mod that makes changes to the flora/trees (or would it?). At this point, that doesn't bother me since leaving it default would be compatible with other mods, but it can only be harvested once. What I'm not sure about is if each flora activator would be persistent? I'm not sure of a reasonable amount of persistent flora (25, 50, 100) would be? Also, making it an activator would require language plugins since the on activate text would have to be changed to "Harvest".
If it is made into an activator, how do you switch to the "harvested" mode when activated and then reset it back to the un-harvested mode at a later time? It seems like it would always appear harvestable if it's an activator.
I was also thinking that if there was a harvested check, loop through the cell or formlist of fora and use PlaceAtMe to replace picked ones, but there's no harvested check. So to go that route, I would have to replace all flora every so often. That way if it has been picked or not is irrelevant. I'm just wondering what kind of slowdowns would happen by disabling, deleting and the placing all new flora in an area every 10 days or so. It might be kind of chuggy on cell load every now and then.
I'm also wondering if somehow SKSE could introduce some type of "IsHarvested" check on the flora / object ref's? Or maybe even a "Reset()" for flora/trees akin to the function in the object reference script?
I guess lastly I would like to know if it's possible to attach a script to an object that was placed with PlaceAtMe for flora/trees (not actors)? So that a flora can be placed and the scale/angle mirrored with a DoOnce bool in the script that can be flipped when activated for later checks.
Thanks
Some other threads on this matter:
http://www.gamesas.com/topic/1386742-is-it-possible-to-have-respawning-and-non-respawning-containers-in-same-cell/page__p__21046637__hl__flora%20reset__fromsearch__1#entry21046637
http://www.gamesas.com/topic/1377899-respawning-plants/page__p__20859745__hl__plant%20reset__fromsearch__1#entry20859745