Appearance rates: Difference between revisions
Jump to navigation
Jump to search
imported>Bale mNo edit summary |
imported>Bale r14615 & r14616 |
||
Line 35: | Line 35: | ||
print("Frequency of " + mob + ": Boss (one time encounter) or semirare encounter."); | print("Frequency of " + mob + ": Boss (one time encounter) or semirare encounter."); | ||
break; | break; | ||
case freq | case freq == -1: | ||
print("Frequency of " + mob + ": Ultra-rare!"); | print("Frequency of " + mob + ": Ultra-rare!"); | ||
break; | break; | ||
default: | |||
print("Frequency of " + mob + ": Unknown"); | print("Frequency of " + mob + ": Unknown"); | ||
break; | break; |
Revision as of 06:25, 12 September 2014
Function Syntax
float [monster] appearance_rates(location place )
- place is the adventuring location to parse
Returns a map, keyed by monster, with the appearance rate percentages as decimal values (ie a 30% rate monster has a value of 30.0). Bosses, semirare encounters, and other one-time-only monsters have a value of 0.0; ultra-rare monsters have a negative value (the actual value varies; test by looking for value < 0, not value == -1). Does not account for combat rate modifiers, olfaction, etc.
If there is a chance of non-combat encounters, that will be listed as the chance of encountering $monster[none].
Simple Example
Prints the encounters in a zone and their rates of appearing.
foreach mob, freq in appearance_rates($location[Dungeon of Doom])
switch {
case mob == $monster[none]:
if(freq > 0) print("Frequency of non-combats: "+ freq + "%");
break;
case freq > 0:
print("Frequency of " + mob + ": " + freq + "%");
break;
case freq == 0:
print("Frequency of " + mob + ": Boss (one time encounter) or semirare encounter.");
break;
case freq == -1:
print("Frequency of " + mob + ": Ultra-rare!");
break;
default:
print("Frequency of " + mob + ": Unknown");
break;
}
See Also
Special
When not logged in, this function still returns the same data, as it is pulled from KoLmafia's data files.