Feature - Implemented Add "environment" proxy field to locations.

Bale

Minion
It would be helpful if KoLmafia contained information on location environment and provided it to scripters as a proxy field.

Environment: Outdoors, Indoors, Underground, Underwater

Alternately like phylum we can make it a datatype, although that might seem excessive:
$environment[Outdoors], $environment[Indoors], $environment[Underground], $environment[Underwater],

The only current application for this is the Florist Friars, but that was originally true for phylumns and the boots. We know from experience that Jick loves to re-use any game mechanic that he invents so we can be reasonably certain that there will eventually be another reason to care about this.

Anyway, bordemstirs is working on something over here which would benefit from this information.

The biggest obvious hurdle would be discovering this information since it isn't on the wiki or kolspading. Fortunately the spading would not be especially difficult and I'd be quite willing to help out with it if a dev expressed interest.
 
I think this will need a new field in adventures.txt. The wiki actually has category pages with environment sorted out. I don't know if they're actually complete, but that doesn't have to hold back implementing the feature. I think I'll take the opportunity to update the hasClover column in adventures.txt too.
 
I have this coded up except for actually adding values to adventures.txt. I think the values will be "outdoor", "indoor", "underground", "underwater", "unknown", and "none". "none" only applies to things that are not adventure.php (for now, but things besides the florist could change that later). I thought about entering "unknown" and having that reported as "none", but those "unknown" values will become known a lot faster if a script can easily find them, leaving only no-longer-accessible areas.
 
12275. There are a lot of unknown values that could easily be determined, so I'll leave this open for reporting those for now.
 
I'm also thinking that florist planting should have some validation to make sure the plant you picked can be planted in your current location. I think KoLAdventure.lastVisitedLocation is always the location you are currently trying to plant in, but I'm not really sure about that.
 
On page nine of the bug reports, I found this one, open.

You did what was requested, back on July 4. Any reason not to close this? Your "I'm also thinking" comment seems like a new feature/improvement.
 
I don't think much would be added by adding that validation since a script has to check what plant types are valid regardless, so this looks complete.
 
Back
Top