Difference between pages "KoLmafia Guide: Preface" and "Ash Functions"

From Kolmafia
(Difference between pages)
Jump to navigation Jump to search
m (rooting out all "sourceforge" references...)
 
 
Line 1: Line 1:
== How I Teach & Requirements ==
+
{{TOCright}}
 +
Master list of all ASH functions. All functions as of r27333 are listed; this list is intended to be kept current, but it is possible that some functions added since the above revision may be missing. (Please feel free to add in any you notice.)
 +
The CLI command "[[ashref]]" shows every implemented ash function for your mafia version. A guide to add new functions via a script can be found [https://wiki.kolmafia.us/index.php/NewFunctionsScript here.]
  
I have only played KoL for 3 months. (well, more like 7 now!) I am hoping this means that I will not take stuff for-granted like year-long players. I can actually address more advanced stuff now that I know how clan dungeons work, the Sea, and so forth. ;-)
+
===a===
 +
{{FunctionEmbed|abort|format=signature}}
 +
{{Flink|boolean [monster]|absorbed_monsters}}
 +
{{FunctionEmbed|add_item_condition|format=signature}}
 +
{{Flink|boolean|adv1|location|{{opt|int}}|{{opt|string}}}}
 +
{{Flink|int|adv_cost|skill}}
 +
{{Flink|boolean|adventure|int|location|{{opt|string}}}}
 +
{{Flink|boolean|adventure|location|int|{{opt|string}}}}
 +
{{FunctionEmbed|all_monsters_with_id|format=signature}}
 +
{{Flink|string [0]|all_normal_outfits}}
 +
{{Flink|float [monster]|appearance_rates|location|{{opt|boolean}}}}
 +
{{Flink|buffer|append|buffer|string}}
 +
{{Flink|buffer|append_replacement|matcher|buffer|string}}
 +
{{Flink|buffer|append_tail|matcher|buffer}}
 +
{{Flink|buffer|attack}}
 +
{{Flink|boolean|autosell|int|item}}
 +
{{Flink|boolean|autosell|item|int}}
 +
{{Flink|int|autosell_price|item}}
 +
{{Flink|int|available_amount|item}}
 +
{{FunctionEmbed|available_choice_options}}
 +
{{FunctionEmbed|available_choice_select_inputs}}
 +
{{Flink|string [string]|available_choice_text_inputs|int}}
 +
{{Flink|int|available_pocket|effect}}
 +
{{Flink|int|available_pocket|item}}
 +
{{Flink|int|available_pocket|monster}}
 +
{{Flink|int|available_pocket|stat}}
  
I assume that you have played KoL for at least a few weeks before reading this guide. This is simply so I can reference examples while teaching. This is not a strict requirement though... it just means that you might not catch some of my examples.
+
===b===
 +
{{Flink|boolean|batch_close}}
 +
{{Flink|void|batch_open}}
 +
{{Flink|boolean|bjornify_familiar|familiar}}
 +
{{Flink|boolean|black_market_available}}
 +
{{Flink|boolean|boolean_modifier|effect|string}}
 +
{{Flink|boolean|boolean_modifier|item|string}}
 +
{{Flink|boolean|boolean_modifier|{{opt|string}}|string}}
 +
{{Flink|int|buffed_hit_stat}}
 +
{{FunctionEmbed|buffer_to_file|format=signature}}
 +
{{Flink|boolean|buy|coinmaster|item}}
 +
{{Flink|boolean|buy|item|{{opt|int}}|{{opt|int}}}}
 +
{{Flink|boolean|buy|{{opt|coinmaster}}|int|item}}
 +
{{Flink|int|buy|int|item|int}}
 +
{{Flink|int|buy_price|coinmaster|item}}
 +
{{Flink|boolean|buy_using_storage|int|item}}
 +
{{Flink|boolean|buy_using_storage|item|int}}
 +
{{Flink|boolean|buy_using_storage|item}}
 +
{{Flink|int|buy_using_storage|int|item|int}}
 +
{{Flink|int|buy_using_storage|item|int|int}}
 +
{{Flink|boolean|buys_item|coinmaster|item}}
  
Finally, you need to be able to '''play''' while reading this guide! Learning while trying to break a speed ascension record or something is probably not the best way to go. 50 turns should be enough to get through most of the lessons.
+
===c===
 +
{{Flink|boolean|can_adventure|location}}
 +
{{Flink|boolean|can_drink}}
 +
{{Flink|boolean|can_eat}}
 +
{{Flink|boolean|can_equip|familiar|{{opt|item}}}}
 +
{{Flink|boolean|can_equip|item}}
 +
{{Flink|boolean|can_faxbot|monster}}
 +
{{Flink|boolean|can_interact}}
 +
{{Flink|boolean|can_still_steal}}
 +
{{Flink|boolean|canadia_available}}
 +
{{Flink|item [0]|candy_for_tier|int|{{opt|int}}}}
 +
{{Flink|int|ceil|float}}
 +
{{Flink|boolean|change_mcd|int}}
 +
{{Flink|string|char_at|string|int}}
 +
{{Flink|void|chat_clan|string|{{opt|string}}}}
 +
{{Flink|void|chat_macro|string}}
 +
{{Flink|void|chat_notify|string|string}}
 +
{{Flink|void|chat_private|string|string}}
 +
{{Flink|boolean|chew|int|item}}
 +
{{Flink|boolean|chew|item|{{opt|int}}}}
 +
{{Flink|boolean|choice_follows_fight}}
 +
{{Flink|class|class_modifier|item|string}}
 +
{{Flink|class|class_modifier|string|string}}
 +
{{Flink|void|clear|aggregate}}
 +
{{FunctionEmbed|clear_booze_helper|format=signature}}
 +
{{FunctionEmbed|clear_food_helper|format=signature}}
 +
{{FunctionEmbed|cli_execute|format=signature}}
 +
{{FunctionEmbed|cli_execute_output|format=signature}}
 +
{{Flink|int|closet_amount|item}}
 +
{{Flink|int|combat_mana_cost_modifier}}
 +
{{Flink|float|combat_rate_modifier}}
 +
{{Flink|boolean|combat_skill_available|skill}}
 +
{{Flink|int|concoction_price|item}}
 +
{{Flink|int|concoction_price|vykea}}
 +
{{FunctionEmbed|contains_text|format=signature}}
 +
{{Flink|void|council}}
 +
{{Flink|int|count|aggregate}}
 +
{{Flink|int|craft|string|int|item|item}}
 +
{{Flink|string|craft_type|item}}
 +
{{Flink|int|creatable_amount|item}}
 +
{{Flink|int|creatable_turns|item|{{opt|int}}|{{opt|boolean}}}}
 +
{{Flink|boolean|create|int|item}}
 +
{{Flink|boolean|create|item|{{opt|int}}}}
 +
{{Flink|matcher|create_matcher|string|string}}
 +
{{Flink|stat|current_hit_stat}}
 +
{{Flink|int|current_mcd}}
 +
{{Flink|int [string]|current_pvp_stances}}
 +
{{Flink|int|current_rad_sickness}}
 +
{{Flink|int|current_round}}
  
 +
===d===
 +
{{Flink|element|dad_sea_monkee_weakness|int}}
 +
{{Flink|item|daily_special}}
 +
{{Flink|float|damage_absorption_percent}}
 +
{{Flink|int|damage_reduction}}
 +
{{Flink|int|date_to_timestamp|string|string}}
 +
{{Flink|int|daycount}}
 +
{{Flink|void|debugprint|string}}
 +
{{Flink|buffer|delete|buffer|int|int}}
 +
{{Flink|effect|desc_to_effect|string}}
 +
{{Flink|item|desc_to_item|string}}
 +
{{Flink|void|disable|string}}
 +
{{Flink|boolean|dispensary_available}}
 +
{{Flink|int|display_amount|item}}
 +
{{FunctionEmbed|drink|format=signature}}
 +
{{Flink|boolean|drinksilent|int|item}}
 +
{{Flink|boolean|drinksilent|item|{{opt|int}}}}
 +
{{Flink|void|dump|any|{{opt|string}}}}
  
My main goal is to start out playing KoL using KoLmafia's 'Relay Browser', which is basically identical to normal browser play. Then, each short lesson will progressively give you a new 'trick' that you can use. This lets you learn at your own pace.
+
===e===
 +
{{FunctionEmbed|eat|format=signature}}
 +
{{Flink|boolean|eatsilent|int|item}}
 +
{{Flink|boolean|eatsilent|item|{{opt|int}}}}
 +
{{Flink|effect|effect_modifier|item|string}}
 +
{{Flink|effect|effect_modifier|string|string}}
 +
{{Flink|boolean [int]|effect_pockets}}
 +
{{Flink|int|eight_bit_points|location|string|float}}
 +
{{Flink|int|eight_bit_points|location}}
 +
{{Flink|float|elemental_resistance|monster}}
 +
{{Flink|float|elemental_resistance|{{opt|element}}}}
 +
{{Flink|boolean|empty_closet}}
 +
{{Flink|void|enable|string}}
 +
{{Flink|int|end|matcher|{{opt|int}}}}
 +
{{FunctionEmbed|ends_with|format=signature}}
 +
{{Flink|boolean|enthrone_familiar|familiar}}
 +
{{Flink|string|entity_decode|string}}
 +
{{Flink|string|entity_encode|string}}
 +
{{Flink|boolean|equip|item|{{opt|slot}}}}
 +
{{Flink|boolean|equip|slot|item}}
 +
{{Flink|boolean|equip_all_familiars}}
 +
{{Flink|int|equipped_amount|item|boolean}}
 +
{{Flink|int|equipped_amount|item}}
 +
{{Flink|item|equipped_item|slot}}
 +
{{Flink|boolean|eudora|string}}
 +
{{Flink|string|eudora}}
 +
{{Flink|item|eudora_item}}
 +
{{Flink|string|every_card_name|strict_string}}
 +
{{Flink|item [string]|expected_cold_medicine_cabinet}}
 +
{{Flink|int|expected_damage|{{opt|monster}}}}
 +
{{Flink|float|experience_bonus}}
 +
{{Flink|float|expression_eval|string}}
 +
{{Flink|int [item]|extract_items|string}}
 +
{{Flink|int|extract_meat|string}}
  
Continue working through the guide by doing 'Lessons' until you have learned as much as you want. The lessons are roughly in the order of importance, or more honestly, the order in which I figured the stuff out. :-) There is tons of stuff that I probably won't cover, but by the time you are done with the lessons, you will have the hang of it.
+
===f===
 +
{{Flink|item|familiar_equipment|familiar}}
 +
{{Flink|item|familiar_equipped_equipment|familiar}}
 +
{{Flink|int|familiar_weight|familiar}}
 +
{{Flink|boolean [familiar]|favorite_familiars}}
 +
{{Flink|boolean|faxbot|monster|{{opt|string}}}}
 +
{{Flink|boolean|fight_follows_choice}}
 +
{{FunctionEmbed|file_to_array|format=signature}}
 +
{{FunctionEmbed|file_to_buffer|format=signature}}
 +
{{Flink|boolean|file_to_map|string|aggregate|{{opt|boolean}}}}
 +
{{Flink|boolean|find|matcher}}
 +
{{Flink|int|floor|float}}
 +
{{Flink|boolean|florist_available}}
 +
{{Flink|boolean|flush_monster_manuel_cache}}
 +
{{Flink|string|form_field|string}}
 +
{{Flink|string [string]|form_fields}}
 +
{{Flink|string|format_date_time|string|string|string}}
 +
{{Flink|boolean|friars_available}}
 +
{{Flink|int|fuel_cost|skill}}
 +
{{Flink|int|fullness_limit}}
  
== What About Greasemonkey? ==
+
===g===
 +
{{Flink|int|gameday_to_int}}
 +
{{Flink|string|gameday_to_string}}
 +
{{Flink|int|gametime_to_int}}
 +
{{Flink|boolean [string]|get_all_properties|string|boolean}}
 +
{{Flink|int|get_auto_attack}}
 +
{{Flink|location [0]|get_autumnaton_locations}}
 +
{{Flink|int [item]|get_campground}}
 +
{{Flink|string|get_ccs_action|int}}
 +
{{Flink|int [item]|get_chateau}}
 +
{{Flink|int|get_clan_id}}
 +
{{Flink|int [item]|get_clan_lounge}}
 +
{{Flink|string|get_clan_name}}
 +
{{Flink|int [string]|get_clan_rumpus}}
 +
{{Flink|int [item]|get_closet}}
 +
{{Flink|int|get_counter|string}}
 +
{{Flink|string|get_counters|string|int|int}}
 +
{{Flink|string [0]|get_custom_outfits}}
 +
{{Flink|int [item]|get_display}}
 +
{{Flink|item|get_dwelling}}
 +
{{Flink|location [string]|get_fishing_locations}}
 +
{{Flink|string [location, 3]|get_florist_plants}}
 +
{{Flink|int [item]|get_free_pulls}}
 +
{{Flink|int|get_fuel}}
 +
{{Flink|string [0]|get_goals}}
 +
{{Flink|boolean|get_ignore_zone_warnings}}
 +
{{Flink|int [item]|get_ingredients|item}}
 +
{{Flink|int [item]|get_inventory}}
 +
{{Flink|boolean [monster]|get_location_monsters|location}}
 +
{{Flink|boolean [monster]|get_locket_monsters}}
 +
{{Flink|monster [monster]|get_monster_mapping|{{opt|string}}}}
 +
{{Flink|monster [0]|get_monsters|location}}
 +
{{Flink|string [0]|get_moods}}
 +
{{Flink|string [0]|get_outfits}}
 +
{{Flink|string|get_path}}
 +
{{Flink|string|get_path_full}}
 +
{{Flink|string|get_path_variables}}
 +
{{Flink|boolean [skill]|get_permed_skills}}
 +
{{Flink|string|get_player_id|string}}
 +
{{Flink|string|get_player_name|int}}
 +
{{Flink|int|get_power|item}}
 +
{{Flink|string|get_property|string|{{opt|boolean}}}}
 +
{{Flink|int [item]|get_related|item|string}}
 +
{{Flink|int|get_revision}}
 +
{{Flink|int [item]|get_shop}}
 +
{{Flink|string [0]|get_shop_log}}
 +
{{Flink|string|file|string|name|int|line [0]|get_stack_trace}}
 +
{{Flink|int [item]|get_stash}}
 +
{{Flink|int [item]|get_storage}}
 +
{{Flink|string|get_version}}
 +
{{Flink|item|get_workshed}}
 +
{{Flink|item|get_zap_wand}}
 +
{{Flink|boolean|git_at_head|string}}
 +
{{Flink|boolean|git_exists|string}}
 +
{{Flink|string [0]|git_list}}
 +
{{Flink|boolean|gnomads_available}}
 +
{{Flink|boolean|goal_exists|string}}
 +
{{Flink|string|group|matcher|string}}
 +
{{Flink|string|group|matcher|{{opt|int}}}}
 +
{{Flink|int|group_count|matcher}}
 +
{{Flink|boolean [string]|group_names|matcher}}
 +
{{Flink|string [int, int]|group_string|string|string}}
 +
{{Flink|boolean|guild_available}}
 +
{{Flink|boolean|guild_store_available}}
  
Greasemonkey is another scripting tool that can be used for Kingdom of Loathing.  Please skip this section if you don't know or care about Greasemonkey.
+
===h===
 +
{{Flink|boolean|handling_choice}}
 +
{{Flink|boolean|have_bartender}}
 +
{{Flink|boolean|have_chef}}
 +
{{Flink|boolean|have_display}}
 +
{{Flink|int|have_effect|effect}}
 +
{{Flink|boolean|have_equipped|item}}
 +
{{Flink|boolean|have_familiar|familiar}}
 +
{{Flink|boolean|have_mushroom_plot}}
 +
{{Flink|boolean|have_outfit|string}}
 +
{{Flink|boolean|have_servant|servant}}
 +
{{Flink|boolean|have_shop}}
 +
{{Flink|boolean|have_skill|skill}}
 +
{{Flink|boolean|hedge_maze|string}}
 +
{{Flink|boolean|heist|int|item}}
 +
{{Flink|boolean|heist|item}}
 +
{{Flink|item [monster, int]|heist_targets}}
 +
{{Flink|boolean|hermit|int|item}}
 +
{{Flink|boolean|hermit|item|int}}
 +
{{Flink|boolean|hidden_temple_unlocked}}
 +
{{Flink|boolean|hippy_stone_broken}}
 +
{{Flink|boolean|hippy_store_available}}
 +
{{FunctionEmbed|historical_age}}
 +
{{FunctionEmbed|historical_price}}
 +
{{Flink|string|holiday}}
 +
{{Flink|int|hp_cost|skill}}
  
 +
===i===
 +
{{Flink|monster|image_to_monster|strict_string}}
 +
{{Flink|boolean|in_bad_moon}}
 +
{{Flink|boolean|in_casual}}
 +
{{Flink|boolean|in_hardcore}}
 +
{{Flink|boolean|in_moxie_sign}}
 +
{{Flink|boolean|in_multi_fight}}
 +
{{Flink|boolean|in_muscle_sign}}
 +
{{Flink|boolean|in_mysticality_sign}}
 +
{{Flink|boolean|in_terrarium|familiar}}
 +
{{Flink|string|inaccessible_reason|coinmaster}}
 +
{{FunctionEmbed|index_of|format=signature}}
 +
{{Flink|int|inebriety_limit}}
 +
{{Flink|float|initiative_modifier}}
 +
{{Flink|buffer|insert|buffer|int|string}}
 +
{{Flink|boolean|is_accessible|coinmaster}}
 +
{{Flink|boolean|is_banished|monster}}
 +
{{Flink|boolean|is_coinmaster_item|item}}
 +
{{FunctionEmbed|is_dark_mode}}
 +
{{Flink|boolean|is_discardable|item}}
 +
{{Flink|boolean|is_displayable|item}}
 +
{{Flink|boolean|is_familiar_equipment_locked}}
 +
{{Flink|boolean|is_giftable|item}}
 +
{{Flink|boolean|is_goal|item}}
 +
{{Flink|boolean|is_headless}}
 +
{{Flink|boolean|is_integer|string}}
 +
{{Flink|boolean|is_npc_item|item}}
 +
{{Flink|boolean|is_online|string}}
 +
{{Flink|boolean|is_tradeable|item}}
 +
{{Flink|boolean|is_trendy|item/familiar/skill/string}}
 +
{{Flink|boolean|is_unrestricted|item/familiar/skill/string}}
 +
{{Flink|boolean|is_wearing_outfit|string}}
 +
{{Flink|int|item_amount|item}}
 +
{{Flink|float|item_drop_modifier}}
 +
{{Flink|int [item]|item_drops|{{opt|monster}}}}
 +
{{Flink|item int string [int]|item_drops_array|{{opt|monster}}}}
 +
{{Flink|boolean [int]|item_pockets}}
 +
{{Flink|string|item_type|item}}
  
I tried Greasemonkey scripts. They are nice, but have four major disadvantages:
+
===j===
 +
{{Flink|boolean [int]|joke_pockets}}
 +
{{Flink|int|jump_chance|location|{{opt|int}}|{{opt|int}}}}
 +
{{Flink|int|jump_chance|{{opt|monster}}|{{opt|int}}|{{opt|int}}}}
  
* CodeRot - Many scripts are outdated and their functionality continues to break due to new content, changes, etc.
+
===k===
 +
{{Flink|boolean|knoll_available}}
  
* Out of Date - A script is typically written by the author who uses it, posts it, then it is forgotten. People quit KoL all the time for varying reasons. Hence, scripts are very likely to be outdated by the time you find them.
+
===l===
 +
{{Flink|int|last_choice}}
 +
{{Flink|int|last_decision}}
 +
{{FunctionEmbed|last_index_of|format=signature}}
 +
{{Flink|string|last_item_message}}
 +
{{Flink|monster|last_monster}}
 +
{{Flink|string|last_skill_message}}
 +
{{Flink|string|leetify|string}}
 +
{{Flink|int|length|string}}
 +
{{Flink|int|lightning_cost|skill}}
 +
{{Flink|string|limit_mode}}
 +
{{Flink|buffer|load_html|string}}
 +
{{Flink|void|lock_familiar_equipment|boolean}}
 +
{{Flink|float|log_n|float|{{opt|float}}}}
 +
{{Flink|void|logprint|string}}
  
* Version Overload - On the other hand, there can be too many versions of a popular script, all written by different people who baselined off of someone else's version and so forth. Certain versions incorporate particular fixes and updates, but might be lacking updates and rewrites by someone else. It can be difficult to find the latest, most correct version of a particular script.
+
===m===
 +
{{Flink|string|make_url|string|boolean|boolean}}
 +
{{FunctionEmbed|mall_price}}
 +
{{FunctionEmbed|mall_prices}}
 +
{{Flink|int|mana_cost_modifier}}
 +
{{Flink|boolean|map_to_file|aggregate|string|{{opt|boolean}}}}
 +
{{Flink|float|max|float|float}}
 +
{{Flink|int|max|int|int}}
 +
{{Flink|boolean|maximize|string|boolean}}
 +
{{Flink|boolean|maximize|string|int|int|boolean}}
 +
{{Flink|string|display|string|command|float|score|effect|effect|item|item|skill|skill [0]|maximize|string|int|int|boolean|boolean}}
 +
{{Flink|int|meat_drop|{{opt|monster}}}}
 +
{{Flink|float|meat_drop_modifier}}
 +
{{Flink|int [int]|meat_pockets}}
 +
{{Flink|float|min|float|float}}
 +
{{Flink|int|min|int|int}}
 +
{{Flink|item|minstrel_instrument}}
 +
{{Flink|int|minstrel_level}}
 +
{{Flink|boolean|minstrel_quest}}
 +
{{Flink|float|modifier_eval|string}}
 +
{{Flink|boolean|monkey_paw|effect}}
 +
{{Flink|boolean|monkey_paw|item}}
 +
{{Flink|boolean|monkey_paw|string}}
 +
{{Flink|int|monster_attack|{{opt|monster}}}}
 +
{{Flink|int|monster_defense|{{opt|monster}}}}
 +
{{Flink|element|monster_element|{{opt|monster}}}}
 +
{{Flink|float|monster_eval|string}}
 +
{{Flink|int|monster_factoids_available|monster|boolean}}
 +
{{Flink|int|monster_hp|{{opt|monster}}}}
 +
{{Flink|int|monster_initiative|{{opt|monster}}}}
 +
{{Flink|int|monster_level_adjustment}}
 +
{{Flink|string|monster_manuel_text|monster}}
 +
{{Flink|monster|monster_modifier|effect|string}}
 +
{{Flink|phylum|monster_phylum|{{opt|monster}}}}
 +
{{Flink|boolean [int]|monster_pockets}}
 +
{{Flink|void|mood_execute|int}}
 +
{{Flink|string [0]|mood_list}}
 +
{{Flink|int|moon_light}}
 +
{{Flink|int|moon_phase}}
 +
{{Flink|int|mp_cost|skill}}
 +
{{Flink|int|my_absorbs}}
 +
{{Flink|int|my_adventures}}
 +
{{Flink|int|my_ascensions}}
 +
{{Flink|int|my_audience}}
 +
{{Flink|int|my_basestat|stat}}
 +
{{Flink|familiar|my_bjorned_familiar}}
 +
{{Flink|int|my_buffedstat|stat}}
 +
{{Flink|class|my_class}}
 +
{{Flink|int|my_closet_meat}}
 +
{{Flink|string|my_companion}}
 +
{{Flink|int|my_daycount}}
 +
{{Flink|int|my_discomomentum}}
 +
{{Flink|familiar|my_effective_familiar}}
 +
{{Flink|int [effect]|my_effects}}
 +
{{Flink|familiar|my_enthroned_familiar}}
 +
{{Flink|familiar|my_familiar}}
 +
{{Flink|int|my_fullness}}
 +
{{Flink|int|my_fury}}
 +
{{Flink|string|my_garden_type}}
 +
{{Flink|string|my_hash}}
 +
{{Flink|int|my_hp}}
 +
{{Flink|string|my_id}}
 +
{{Flink|int|my_inebriety}}
 +
{{Flink|int|my_level}}
 +
{{Flink|int|my_lightning}}
 +
{{Flink|location|my_location}}
 +
{{Flink|string|my_mask}}
 +
{{Flink|int|my_maxfury}}
 +
{{Flink|int|my_maxhp}}
 +
{{Flink|int|my_maxmp}}
 +
{{Flink|int|my_maxpp}}
 +
{{Flink|int|my_meat}}
 +
{{Flink|int|my_mp}}
 +
{{Flink|string|my_name}}
 +
{{Flink|path|my_path}}
 +
{{Flink|int|my_path_id}}
 +
{{Flink|familiar|my_poke_fam|int}}
 +
{{Flink|int|my_pp}}
 +
{{Flink|stat|my_primestat}}
 +
{{Flink|int|my_rain}}
 +
{{Flink|int|my_robot_energy}}
 +
{{Flink|int|my_robot_scraps}}
 +
{{Flink|servant|my_servant}}
 +
{{Flink|int|my_session_adv}}
 +
{{Flink|int [item]|my_session_items}}
 +
{{Flink|int|my_session_items|item}}
 +
{{Flink|int|my_session_meat}}
 +
{{Flink|int [string]|my_session_results}}
 +
{{Flink|string|my_sign}}
 +
{{Flink|int|my_soulsauce}}
 +
{{Flink|int|my_spleen_use}}
 +
{{Flink|int|my_storage_meat}}
 +
{{Flink|thrall|my_thrall}}
 +
{{Flink|int|my_thunder}}
 +
{{Flink|int|my_turncount}}
 +
{{Flink|vykea|my_vykea_companion}}
 +
{{Flink|int|my_wildfire_water}}
  
* Security Issues - Greasemonkey by itself doesn't do anything. All functionality comes from the actual scripts, which coupled with many versions/updates and the fact that scripts are scattered all over the internet makes executing them more of a security risk.
+
===n===
 +
{{Flink|int|now_to_int}}
 +
{{Flink|string|now_to_string|string}}
 +
{{Flink|int|npc_price|item}}
 +
{{Flink|string|numberology_prize|int}}
 +
{{Flink|float|numeric_modifier|effect|string}}
 +
{{Flink|float|numeric_modifier|familiar|string|int|item}}
 +
{{Flink|float|numeric_modifier|item|string}}
 +
{{Flink|float|numeric_modifier|skill|string}}
 +
{{Flink|float|numeric_modifier|{{opt|string}}|string}}
  
 +
===o===
 +
{{Flink|boolean|outfit|string}}
 +
{{Flink|item [0]|outfit_pieces|string}}
 +
{{Flink|string|outfit_tattoo|{{opt|string}}}}
 +
{{Flink|float [item]|outfit_treats|string}}
 +
{{FunctionEmbed|overdrink|format=signature}}
  
I decided to try KoLmafia which has these advantages:
+
===p===
 +
{{Flink|string|path_id_to_name|int}}
 +
{{Flink|int|path_name_to_id|string}}
 +
{{Flink|boolean|pick_pocket|int}}
 +
{{Flink|boolean|pick_pocket|monster}}
 +
{{Flink|int [effect]|pick_pocket|effect}}
 +
{{Flink|int [item]|pick_pocket|item}}
 +
{{Flink|int [stat]|pick_pocket|stat}}
 +
{{Flink|boolean [int]|picked_pockets}}
 +
{{Flink|boolean [int]|picked_scraps}}
 +
{{Flink|int [effect]|pocket_effects|int}}
 +
{{Flink|int [item]|pocket_items|int}}
 +
{{Flink|string|pocket_joke|int}}
 +
{{Flink|string [int]|pocket_meat|int}}
 +
{{Flink|monster|pocket_monster|int}}
 +
{{Flink|string [int]|pocket_poem|int}}
 +
{{Flink|string [int]|pocket_scrap|int}}
 +
{{Flink|int [stat]|pocket_stats|int}}
 +
{{Flink|int [int]|poem_pockets}}
 +
{{Flink|int [int]|potential_pockets|effect/item/monster/stat}}
 +
{{Flink|boolean|pre_validate_adventure|location}}
 +
{{Flink|boolean|prepare_for_adventure|location}}
 +
{{Flink|void|print|{{opt|string}}|{{opt|string}}}}
 +
{{Flink|void|print_html|string|boolean}}
 +
{{Flink|void|print_html|string}}
 +
{{FunctionEmbed|property_default_value|format=signature}}
 +
{{FunctionEmbed|property_exists|format=signature}}
 +
{{FunctionEmbed|property_has_default|format=signature}}
 +
{{Flink|int|pulls_remaining}}
 +
{{Flink|boolean|put_closet|int|{{opt|item}}}}
 +
{{Flink|boolean|put_closet|item|{{opt|int}}}}
 +
{{Flink|boolean|put_display|int|item}}
 +
{{Flink|boolean|put_display|item|int}}
 +
{{Flink|boolean|put_shop|int|int|{{opt|int}}|item}}
 +
{{Flink|boolean|put_shop_using_storage|int|int|{{opt|int}}|item}}
 +
{{Flink|boolean|put_stash|int|item}}
 +
{{Flink|boolean|put_stash|item|int}}
 +
{{Flink|int|pvp_attacks_left}}
  
* More Secure - It comes from ONE open-source website and its base version includes plenty of functionality. This makes it much safer to use out of the box.
+
===r===
 +
{{Flink|int|rain_cost|skill}}
 +
{{Flink|int|random|int}}
 +
{{Flink|int|raw_damage_absorption}}
 +
{{Flink|buffer|read_ccs|string}}
 +
{{Flink|void|receive_fax}}
 +
{{Flink|boolean|refresh_shop}}
 +
{{Flink|boolean|refresh_stash}}
 +
{{Flink|boolean|refresh_status}}
 +
{{Flink|void|remove_item_condition|int|item}}
 +
{{Flink|void|remove_item_condition|item|int}}
 +
{{FunctionEmbed|remove_property|format=signature}}
 +
{{FunctionEmbed|rename_property|format=signature}}
 +
{{Flink|buffer|replace|buffer|int|int|string}}
 +
{{Flink|string|replace_all|matcher|string}}
 +
{{Flink|string|replace_first|matcher|string}}
 +
{{Flink|buffer|replace_string|buffer|string|string}}
 +
{{Flink|buffer|replace_string|string|string|string}}
 +
{{Flink|boolean|reprice_shop|int|{{opt|int}}|item}}
 +
{{Flink|matcher|reset|matcher|{{opt|string}}}}
 +
{{Flink|boolean [int]|restoration_pockets}}
 +
{{Flink|boolean|restore_hp|int}}
 +
{{Flink|boolean|restore_mp|int}}
 +
{{Flink|boolean|retrieve_item|int|item}}
 +
{{Flink|boolean|retrieve_item|item|{{opt|int}}}}
 +
{{Flink|int|retrieve_price|int|item|boolean}}
 +
{{Flink|int|retrieve_price|int|item}}
 +
{{Flink|int|retrieve_price|item|int|boolean}}
 +
{{Flink|int|retrieve_price|item|int}}
 +
{{Flink|int|retrieve_price|item}}
 +
{{Flink|int [int]|reverse_numberology|{{opt|int|int}}}}
 +
{{Flink|int|rollover}}
 +
{{Flink|int|round|float}}
 +
{{FunctionEmbed|run_choice|format=signature}}
 +
{{Flink|buffer|run_combat|{{opt|string}}}}
 +
{{Flink|buffer|run_turn}}
 +
{{Flink|buffer|runaway}}
  
* Easier to Install - No digging around and searching forums for hours to find the right script. (At least not until you have mastered Mafia and go looking for Mafia-specific scripts...)
+
===s===
 +
{{Flink|int [int]|scrap_pockets}}
 +
{{Flink|boolean|sell|coinmaster|int|item}}
 +
{{Flink|int|sell_price|coinmaster|item}}
 +
{{Flink|boolean|sells_item|coinmaster|item}}
 +
{{Flink|void|send_fax}}
 +
{{Flink|string [int]|session_logs|{{opt|string}}|{{opt|string}}|int}}
 +
{{Flink|void|set_auto_attack|int/string}}
 +
{{Flink|boolean|set_ccs|string}}
 +
{{Flink|void|set_length|buffer|int}}
 +
{{Flink|void|set_location|location}}
 +
{{Flink|void|set_property|string|string}}
 +
{{Flink|int|shop_amount|item}}
 +
{{Flink|int|shop_limit|item}}
 +
{{Flink|int|shop_price|item}}
 +
{{Flink|skill|skill_modifier|item|string}}
 +
{{Flink|skill|skill_modifier|string|string}}
 +
{{Flink|int|slash_count|item}}
 +
{{Flink|int|soulsauce_cost|skill}}
 +
{{Flink|int|spleen_limit}}
 +
{{Flink|string [int]|split_string|string|{{opt|string}}}}
 +
{{Flink|float|square_root|float}}
 +
{{Flink|int|start|matcher|{{opt|int}}}}
 +
{{FunctionEmbed|starts_with|format=signature}}
 +
{{Flink|int|stash_amount|item}}
 +
{{Flink|stat|stat_bonus_today}}
 +
{{Flink|stat|stat_bonus_tomorrow}}
 +
{{Flink|stat|stat_modifier|effect|string}}
 +
{{Flink|boolean [int]|stats_pockets}}
 +
{{Flink|buffer|steal}}
 +
{{Flink|int|stills_available}}
 +
{{Flink|void|stop_counter|string}}
 +
{{Flink|int|storage_amount|item}}
 +
{{Flink|string|string_modifier|{{opt|string}}|string}}
 +
{{Flink|skill|stun_skill}}
 +
{{Flink|string|substring|string|int|{{opt|int}}}}
 +
{{Flink|boolean|svn_at_head|string}}
 +
{{Flink|boolean|svn_exists|string}}
 +
{{Flink|string [0]|svn_list}}
 +
{{Flink|boolean|sweet_synthesis|effect|{{opt|int}}}}
 +
{{Flink|boolean|sweet_synthesis|int|effect|{{opt|int}}}}
 +
{{Flink|boolean|sweet_synthesis|{{opt|int}}|item|item}}
 +
{{Flink|item [0]|sweet_synthesis_pair|effect|{{opt|item}}|{{opt|int}}}}
 +
{{Flink|item [0]|sweet_synthesis_pairing|effect|item|int}}
 +
{{Flink|item [0]|sweet_synthesis_pairing|effect|item}}
 +
{{Flink|effect|sweet_synthesis_result|item|item}}
  
* Easier to Customize - Not much of an issue at first, but writing a new Greasemonkey script is relatively hard. Modifying KoLmafia behavior can be a lot easier for certain aspects.
+
===t===
 +
{{Flink|boolean|take_closet|int|{{opt|item}}}}
 +
{{Flink|boolean|take_closet|item|{{opt|int}}}}
 +
{{Flink|boolean|take_display|int|item}}
 +
{{Flink|boolean|take_display|item|int}}
 +
{{Flink|boolean|take_shop|{{opt|int}}|item}}
 +
{{Flink|boolean|take_stash|int|item}}
 +
{{Flink|boolean|take_stash|item|int}}
 +
{{Flink|boolean|take_storage|int|item}}
 +
{{Flink|boolean|take_storage|item|int}}
 +
{{Flink|int|tavern|{{opt|string}}}}
 +
{{Flink|buffer|throw_item|item}}
 +
{{Flink|buffer|throw_items|item|item}}
 +
{{Flink|int|thunder_cost|skill}}
 +
{{Flink|string|time_to_string}}
 +
{{Flink|string|timestamp_to_date|int|string}}
 +
{{Flink|boolean|to_boolean|any}}
 +
{{Flink|bounty|to_bounty|strict_string}}
 +
{{Flink|class|to_class|strict_string/int}}
 +
{{Flink|coinmaster|to_coinmaster|strict_string}}
 +
{{Flink|effect|to_effect|int/skill/strict_string}}
 +
{{Flink|element|to_element|strict_string}}
 +
{{Flink|familiar|to_familiar|int/strict_string}}
 +
{{Flink|float|to_float|any}}
 +
{{Flink|int|to_int|any}}
 +
{{Flink|item|to_item|int/strict_string}}
 +
{{Flink|item|to_item|string|int}}
 +
{{Flink|string|to_json|aggregate}}
 +
{{Flink|location|to_location|int/strict_string}}
 +
{{Flink|string|to_lower_case|string}}
 +
{{Flink|monster|to_monster|int/strict_string}}
 +
{{Flink|path|to_path|int}}
 +
{{Flink|path|to_path|strict_string}}
 +
{{Flink|phylum|to_phylum|strict_string}}
 +
{{Flink|string|to_plural|item}}
 +
{{Flink|servant|to_servant|int/strict_string}}
 +
{{Flink|skill|to_skill|effect/int}}
 +
{{Flink|skill|to_skill|strict_string|{{opt|strict_string}}}}
 +
{{Flink|slot|to_slot|item/strict_string}}
 +
{{Flink|stat|to_stat|strict_string}}
 +
{{Flink|string|to_string|any}}
 +
{{Flink|thrall|to_thrall|int/strict_string}}
 +
{{Flink|string|to_upper_case|string}}
 +
{{Flink|string|to_url|location}}
 +
{{Flink|vykea|to_vykea|strict_string}}
 +
{{Flink|string|to_wiki_url|effect}}
 +
{{Flink|string|to_wiki_url|item}}
 +
{{Flink|string|to_wiki_url|monster}}
 +
{{Flink|string|to_wiki_url|skill}}
 +
{{Flink|string|to_wiki_url|string}}
 +
{{Flink|string|today_to_string}}
 +
{{Flink|int|total_free_rests}}
 +
{{Flink|int|total_turns_played}}
 +
{{Flink|boolean|tower_door}}
 +
{{Flink|void|traceprint|string}}
 +
{{Flink|int|truncate|float}}
 +
{{Flink|int|turns_per_cast|skill}}
 +
{{Flink|int|turns_played}}
 +
{{Flink|buffer|twiddle}}
  
* Consolidated Updates - All KoLmafia work occurs at its sourceforge website. Versions are numbered and under version-control. This means you can easily find the most up-to-date version and no intermediate fixes were skipped.
+
===u===
 +
{{Flink|item|unusual_construct_disc}}
 +
{{Flink|void|update_candy_prices}}
 +
{{Flink|string|url|int|revision|string|last_changed_author|int|last_changed_rev|string|last_changed_date|svn_info|string}}
 +
{{Flink|string|url|string|branch|string|commit|string|last_changed_author|string|last_changed_date|git_info|string}}
 +
{{Flink|string|url_decode|string}}
 +
{{Flink|string|url_encode|string}}
 +
{{Flink|boolean|use|int|item}}
 +
{{Flink|boolean|use|item|{{opt|int}}}}
 +
{{Flink|boolean|use_familiar|familiar}}
 +
{{Flink|boolean|use_servant|servant}}
 +
{{Flink|boolean|use_skill|int|skill|{{opt|string}}}}
 +
{{Flink|boolean|use_skill|skill|int|{{opt|string}}}}
 +
{{Flink|buffer|use_skill|skill}}
 +
{{Flink|boolean|user_confirm|string|int|boolean}}
 +
{{Flink|boolean|user_confirm|string}}
 +
{{Flink|void|user_notify|string|boolean}}
 +
{{Flink|void|user_notify|string}}
 +
{{Flink|string|user_prompt|string|aggregate}}
 +
{{Flink|string|user_prompt|string|int|string}}
 +
{{Flink|string|user_prompt|string}}
  
* Easier to Figure Out - While the documentation for KoLmafia is not amazing, you will have a lot more luck finding help documents (like this one!) for Mafia, as opposed to documentation for random Greasemonkey scripts.
+
===v===
 +
{{Flink|boolean|visit|coinmaster}}
 +
{{FunctionEmbed|visit_url}}
 +
{{Flink|boolean [string]|voting_booth_initiatives|class|path|int}}
 +
{{Flink|boolean [string]|voting_booth_initiatives|int|int|int}}
  
== Links ==
+
===w===
 +
{{Flink|void|wait|int}}
 +
{{Flink|void|waitq|int}}
 +
{{Flink|int|weapon_hands|item}}
 +
{{Flink|stat|weapon_type|item}}
 +
{{Flink|int|weight_adjustment}}
 +
{{Flink|boolean|well_stocked|string|int|int}}
 +
{{Flink|boolean|white_citadel_available}}
 +
{{Flink|boolean [string]|who_clan}}
 +
{{Flink|boolean|will_usually_dodge}}
 +
{{Flink|boolean|will_usually_miss}}
 +
{{Flink|void|write|string}}
 +
{{Flink|boolean|write_ccs|buffer|string}}
 +
{{Flink|void|writeln|string}}
  
You need to have this post handy, '''while playing''' I will guide you through each lesson, but you have to be reading it while using KoLmafia for it to really make any sense. Printing it or having it on a second monitor is helpful.
+
===x===
 +
{{Flink|string [0]|xpath|string|string}}
  
First, here's a list of various websites that I may refer to during the guide. You do not need to worry about them now!
+
===z===
 +
{{Flink|item|zap|item}}
  
*KoLmafia's website: http://kolmafia.sourceforge.net/<br />
+
[[Category:Scripting]]
*KoLmafia forum: http://kolmafia.us/<br />
 
*KolMafia Wiki: http://wiki.kolmafia.us/index.php?title=Main_Page<br />
 
*A Previously Existing Guide: http://forums.kingdomofloathing.com/vb/showthread.php?t=140340<br />
 
*List of CLI Commands http://kolmafia.sourceforge.net/scripting.html<br />
 
*List of all KoLmafia global variables (more for scripting): http://wiki.kolmafia.us/index.php?title=List_of_KoLmafia_Properties<br />
 
 
 
 
 
== Getting Started ==
 
 
 
We are now officially starting your KoLmafia lessons!
 
 
 
# Go to KoLmafia's website (listed above).  The download link is not really obvious; it's a small link at the top left somewhere. Click it to go here:  https://sourceforge.net/project/showfiles.php?group_id=126572
 
# By default it picks the appropriate package for you. All you need is '''your''' system's file. As a windows user, I download the 3 Meg executable. Mac users download theirs. Linux, etc. If all else fails, use the java Jar file.
 
# Move the file somewhere handy. Note that KoLmafia can be downloaded as an executable. However, it does '''not install''' per se.  Instead, I like to say that it 'roots'.  When executed, '''will create quite a few subfolders''' to store its settings. Therefore, I extremely highly recommend placing it in its own folder. Once moved, make a link to it on your desktop so you can easily execute it. . You just run the file to run KoLmafia. No further setup is needed.
 
# If the file doesn't run, you need the 1.6 or better Java Runtime Environment. This is not particularly hard and many will likely already have it. The KoLmafia website given above, has a 'Getting Started' section that you can refer to in case of such issues.
 
# When you first run it, '''two''' windows pop up. Ignore the complicated looking frame, and look at the one with the login fields. Type in your login info (make sure you don't have KoL running elsewhere obviously), then click the '''LOGIN''' button. Ignore the RELAY button for now. Keep the other options unchecked, including breakfast. We will discuss this stuff later.
 
# The Login frame goes away and now you have the main box, which I will call the KoLmafia Frame. I don't have a place to store an up to date picture, but the whole thing is kind-of intimidating. You are probably ready to quit, but ''stick in there!''' We will make this easy by doing things step-by-step. I'm a noob, remember? I got your back! ;-)
 
# Note that is possible that KoLmafia '''may pop up an events logger window'''.  This occurrs if you were attacked, received a message, or whatever other event type stuff might happen.  Just close that small window if you encounter it.
 
 
 
 
 
 
 
'''Continue''' to [[KoLmafia Guide: Basics (Relay Browser)|Lesson 1: Basics (Relay Browser)]]
 
 
 
[[Category:KoLmafia Guide]][[Category:New User Help]]
 

Latest revision as of 04:46, 29 April 2023

Master list of all ASH functions. All functions as of r27333 are listed; this list is intended to be kept current, but it is possible that some functions added since the above revision may be missing. (Please feel free to add in any you notice.) The CLI command "ashref" shows every implemented ash function for your mafia version. A guide to add new functions via a script can be found here.

a

void abortstring? )

boolean [monster] absorbed_monsters()

void add_item_conditionint, item )

void add_item_conditionitem, int )

boolean adv1( location, [int], [string] )

int adv_cost( skill )

boolean adventure( int, location, [string] )

boolean adventure( location, int, [string] )

boolean [monster] all_monsters_with_id()

string [0] all_normal_outfits()

float [monster] appearance_rates( location, [boolean] )

buffer append( buffer, string )

buffer append_replacement( matcher, buffer, string )

buffer append_tail( matcher, buffer )

buffer attack()

boolean autosell( int, item )

boolean autosell( item, int )

int autosell_price( item )

int available_amount( item )

string [int] available_choice_optionsboolean? )

string[string, string] available_choice_select_inputsint )

string [string] available_choice_text_inputs( int )

int available_pocket( effect )

int available_pocket( item )

int available_pocket( monster )

int available_pocket( stat )


b

boolean batch_close()

void batch_open()

boolean bjornify_familiar( familiar )

boolean black_market_available()

boolean boolean_modifier( effect, string )

boolean boolean_modifier( item, string )

boolean boolean_modifier( [string], string )

int buffed_hit_stat()

boolean buffer_to_filebuffer, string )

boolean buy( coinmaster, item )

boolean buy( item, [int], [int] )

boolean buy( [coinmaster], int, item )

int buy( int, item, int )

int buy_price( coinmaster, item )

boolean buy_using_storage( int, item )

boolean buy_using_storage( item, int )

boolean buy_using_storage( item )

int buy_using_storage( int, item, int )

int buy_using_storage( item, int, int )

boolean buys_item( coinmaster, item )


c

boolean can_adventure( location )

boolean can_drink()

boolean can_eat()

boolean can_equip( familiar, [item] )

boolean can_equip( item )

boolean can_faxbot( monster )

boolean can_interact()

boolean can_still_steal()

boolean canadia_available()

item [0] candy_for_tier( int, [int] )

int ceil( float )

boolean change_mcd( int )

string char_at( string, int )

void chat_clan( string, [string] )

void chat_macro( string )

void chat_notify( string, string )

void chat_private( string, string )

boolean chew( int, item )

boolean chew( item, [int] )

boolean choice_follows_fight()

class class_modifier( item, string )

class class_modifier( string, string )

void clear( aggregate )

void clear_booze_helper()

void clear_food_helper()

boolean cli_executestring )

string cli_execute_outputstring )

int closet_amount( item )

int combat_mana_cost_modifier()

float combat_rate_modifier()

boolean combat_skill_available( skill )

int concoction_price( item )

int concoction_price( vykea )

boolean contains_textstring, string )

void council()

int count( aggregate )

int craft( string, int, item, item )

string craft_type( item )

int creatable_amount( item )

int creatable_turns( item, [int], [boolean] )

boolean create( int, item )

boolean create( item, [int] )

matcher create_matcher( string, string )

stat current_hit_stat()

int current_mcd()

int [string] current_pvp_stances()

int current_rad_sickness()

int current_round()


d

element dad_sea_monkee_weakness( int )

item daily_special()

float damage_absorption_percent()

int damage_reduction()

int date_to_timestamp( string, string )

int daycount()

void debugprint( string )

buffer delete( buffer, int, int )

effect desc_to_effect( string )

item desc_to_item( string )

void disable( string )

boolean dispensary_available()

int display_amount( item )

boolean drinkitem, int? )

boolean drinkint, item )

boolean drinksilent( int, item )

boolean drinksilent( item, [int] )

void dump( any, [string] )


e

boolean eatitem, int? )

boolean eatint, item )

boolean eatsilent( int, item )

boolean eatsilent( item, [int] )

effect effect_modifier( item, string )

effect effect_modifier( string, string )

boolean [int] effect_pockets()

int eight_bit_points( location, string, float )

int eight_bit_points( location )

float elemental_resistance( monster )

float elemental_resistance( [element] )

boolean empty_closet()

void enable( string )

int end( matcher, [int] )

boolean ends_withstring, string )

boolean enthrone_familiar( familiar )

string entity_decode( string )

string entity_encode( string )

boolean equip( item, [slot] )

boolean equip( slot, item )

boolean equip_all_familiars()

int equipped_amount( item, boolean )

int equipped_amount( item )

item equipped_item( slot )

boolean eudora( string )

string eudora()

item eudora_item()

string every_card_name( strict_string )

item [string] expected_cold_medicine_cabinet()

int expected_damage( [monster] )

float experience_bonus()

float expression_eval( string )

int [item] extract_items( string )

int extract_meat( string )


f

item familiar_equipment( familiar )

item familiar_equipped_equipment( familiar )

int familiar_weight( familiar )

boolean [familiar] favorite_familiars()

boolean faxbot( monster, [string] )

boolean fight_follows_choice()

string [int] file_to_arraystring )

buffer file_to_bufferstring )

boolean file_to_map( string, aggregate, [boolean] )

boolean find( matcher )

int floor( float )

boolean florist_available()

boolean flush_monster_manuel_cache()

string form_field( string )

string [string] form_fields()

string format_date_time( string, string, string )

boolean friars_available()

int fuel_cost( skill )

int fullness_limit()


g

int gameday_to_int()

string gameday_to_string()

int gametime_to_int()

boolean [string] get_all_properties( string, boolean )

int get_auto_attack()

location [0] get_autumnaton_locations()

int [item] get_campground()

string get_ccs_action( int )

int [item] get_chateau()

int get_clan_id()

int [item] get_clan_lounge()

string get_clan_name()

int [string] get_clan_rumpus()

int [item] get_closet()

int get_counter( string )

string get_counters( string, int, int )

string [0] get_custom_outfits()

int [item] get_display()

item get_dwelling()

location [string] get_fishing_locations()

string [location, 3] get_florist_plants()

int [item] get_free_pulls()

int get_fuel()

string [0] get_goals()

boolean get_ignore_zone_warnings()

int [item] get_ingredients( item )

int [item] get_inventory()

boolean [monster] get_location_monsters( location )

boolean [monster] get_locket_monsters()

monster [monster] get_monster_mapping( [string] )

monster [0] get_monsters( location )

string [0] get_moods()

string [0] get_outfits()

string get_path()

string get_path_full()

string get_path_variables()

boolean [skill] get_permed_skills()

string get_player_id( string )

string get_player_name( int )

int get_power( item )

string get_property( string, [boolean] )

int [item] get_related( item, string )

int get_revision()

int [item] get_shop()

string [0] get_shop_log()

string file( string, name, int, line [0], get_stack_trace )

int [item] get_stash()

int [item] get_storage()

string get_version()

item get_workshed()

item get_zap_wand()

boolean git_at_head( string )

boolean git_exists( string )

string [0] git_list()

boolean gnomads_available()

boolean goal_exists( string )

string group( matcher, string )

string group( matcher, [int] )

int group_count( matcher )

boolean [string] group_names( matcher )

string [int, int] group_string( string, string )

boolean guild_available()

boolean guild_store_available()


h

boolean handling_choice()

boolean have_bartender()

boolean have_chef()

boolean have_display()

int have_effect( effect )

boolean have_equipped( item )

boolean have_familiar( familiar )

boolean have_mushroom_plot()

boolean have_outfit( string )

boolean have_servant( servant )

boolean have_shop()

boolean have_skill( skill )

boolean hedge_maze( string )

boolean heist( int, item )

boolean heist( item )

item [monster, int] heist_targets()

boolean hermit( int, item )

boolean hermit( item, int )

boolean hidden_temple_unlocked()

boolean hippy_stone_broken()

boolean hippy_store_available()

float historical_ageitem )

int historical_priceitem )

string holiday()

int hp_cost( skill )


i

monster image_to_monster( strict_string )

boolean in_bad_moon()

boolean in_casual()

boolean in_hardcore()

boolean in_moxie_sign()

boolean in_multi_fight()

boolean in_muscle_sign()

boolean in_mysticality_sign()

boolean in_terrarium( familiar )

string inaccessible_reason( coinmaster )

int index_ofstring, string, int? )

int inebriety_limit()

float initiative_modifier()

buffer insert( buffer, int, string )

boolean is_accessible( coinmaster )

boolean is_banished( monster )

boolean is_coinmaster_item( item )

boolean is_dark_mode()

boolean is_discardable( item )

boolean is_displayable( item )

boolean is_familiar_equipment_locked()

boolean is_giftable( item )

boolean is_goal( item )

boolean is_headless()

boolean is_integer( string )

boolean is_npc_item( item )

boolean is_online( string )

boolean is_tradeable( item )

boolean is_trendy( item/familiar/skill/string )

boolean is_unrestricted( item/familiar/skill/string )

boolean is_wearing_outfit( string )

int item_amount( item )

float item_drop_modifier()

int [item] item_drops( [monster] )

item int string [int] item_drops_array( [monster] )

boolean [int] item_pockets()

string item_type( item )


j

boolean [int] joke_pockets()

int jump_chance( location, [int], [int] )

int jump_chance( [monster], [int], [int] )


k

boolean knoll_available()


l

int last_choice()

int last_decision()

int last_index_ofstring, string, int? )

string last_item_message()

monster last_monster()

string last_skill_message()

string leetify( string )

int length( string )

int lightning_cost( skill )

string limit_mode()

buffer load_html( string )

void lock_familiar_equipment( boolean )

float log_n( float, [float] )

void logprint( string )


m

string make_url( string, boolean, boolean )

int mall_priceitem )

int mall_pricesstring, string? )

int mall_pricesboolean [item] )

int mana_cost_modifier()

boolean map_to_file( aggregate, string, [boolean] )

float max( float, float )

int max( int, int )

boolean maximize( string, boolean )

boolean maximize( string, int, int, boolean )

string display( string, command, float, score, effect, effect, item )

int meat_drop( [monster] )

float meat_drop_modifier()

int [int] meat_pockets()

float min( float, float )

int min( int, int )

item minstrel_instrument()

int minstrel_level()

boolean minstrel_quest()

float modifier_eval( string )

boolean monkey_paw( effect )

boolean monkey_paw( item )

boolean monkey_paw( string )

int monster_attack( [monster] )

int monster_defense( [monster] )

element monster_element( [monster] )

float monster_eval( string )

int monster_factoids_available( monster, boolean )

int monster_hp( [monster] )

int monster_initiative( [monster] )

int monster_level_adjustment()

string monster_manuel_text( monster )

monster monster_modifier( effect, string )

phylum monster_phylum( [monster] )

boolean [int] monster_pockets()

void mood_execute( int )

string [0] mood_list()

int moon_light()

int moon_phase()

int mp_cost( skill )

int my_absorbs()

int my_adventures()

int my_ascensions()

int my_audience()

int my_basestat( stat )

familiar my_bjorned_familiar()

int my_buffedstat( stat )

class my_class()

int my_closet_meat()

string my_companion()

int my_daycount()

int my_discomomentum()

familiar my_effective_familiar()

int [effect] my_effects()

familiar my_enthroned_familiar()

familiar my_familiar()

int my_fullness()

int my_fury()

string my_garden_type()

string my_hash()

int my_hp()

string my_id()

int my_inebriety()

int my_level()

int my_lightning()

location my_location()

string my_mask()

int my_maxfury()

int my_maxhp()

int my_maxmp()

int my_maxpp()

int my_meat()

int my_mp()

string my_name()

path my_path()

int my_path_id()

familiar my_poke_fam( int )

int my_pp()

stat my_primestat()

int my_rain()

int my_robot_energy()

int my_robot_scraps()

servant my_servant()

int my_session_adv()

int [item] my_session_items()

int my_session_items( item )

int my_session_meat()

int [string] my_session_results()

string my_sign()

int my_soulsauce()

int my_spleen_use()

int my_storage_meat()

thrall my_thrall()

int my_thunder()

int my_turncount()

vykea my_vykea_companion()

int my_wildfire_water()


n

int now_to_int()

string now_to_string( string )

int npc_price( item )

string numberology_prize( int )

float numeric_modifier( effect, string )

float numeric_modifier( familiar, string, int, item )

float numeric_modifier( item, string )

float numeric_modifier( skill, string )

float numeric_modifier( [string], string )


o

boolean outfit( string )

item [0] outfit_pieces( string )

string outfit_tattoo( [string] )

float [item] outfit_treats( string )

boolean overdrinkint, item )

boolean overdrinkitem, int? )

p

string path_id_to_name( int )

int path_name_to_id( string )

boolean pick_pocket( int )

boolean pick_pocket( monster )

int [effect] pick_pocket( effect )

int [item] pick_pocket( item )

int [stat] pick_pocket( stat )

boolean [int] picked_pockets()

boolean [int] picked_scraps()

int [effect] pocket_effects( int )

int [item] pocket_items( int )

string pocket_joke( int )

string [int] pocket_meat( int )

monster pocket_monster( int )

string [int] pocket_poem( int )

string [int] pocket_scrap( int )

int [stat] pocket_stats( int )

int [int] poem_pockets()

int [int] potential_pockets( effect/item/monster/stat )

boolean pre_validate_adventure( location )

boolean prepare_for_adventure( location )

void print( [string], [string] )

void print_html( string, boolean )

void print_html( string )

string property_default_valuestring )

boolean property_existsstring, boolean? )

boolean property_has_defaultstring )

int pulls_remaining()

boolean put_closet( int, [item] )

boolean put_closet( item, [int] )

boolean put_display( int, item )

boolean put_display( item, int )

boolean put_shop( int, int, [int], item )

boolean put_shop_using_storage( int, int, [int], item )

boolean put_stash( int, item )

boolean put_stash( item, int )

int pvp_attacks_left()


r

int rain_cost( skill )

int random( int )

int raw_damage_absorption()

buffer read_ccs( string )

void receive_fax()

boolean refresh_shop()

boolean refresh_stash()

boolean refresh_status()

void remove_item_condition( int, item )

void remove_item_condition( item, int )

string remove_propertystring, boolean? )

boolean rename_propertystring, string )

buffer replace( buffer, int, int, string )

string replace_all( matcher, string )

string replace_first( matcher, string )

buffer replace_string( buffer, string, string )

buffer replace_string( string, string, string )

boolean reprice_shop( int, [int], item )

matcher reset( matcher, [string] )

boolean [int] restoration_pockets()

boolean restore_hp( int )

boolean restore_mp( int )

boolean retrieve_item( int, item )

boolean retrieve_item( item, [int] )

int retrieve_price( int, item, boolean )

int retrieve_price( int, item )

int retrieve_price( item, int, boolean )

int retrieve_price( item, int )

int retrieve_price( item )

int [int] reverse_numberology( [int] )

int rollover()

int round( float )

buffer run_choiceint, boolean?, string? )

buffer run_choiceint, string )

buffer run_combat( [string] )

buffer run_turn()

buffer runaway()


s

int [int] scrap_pockets()

boolean sell( coinmaster, int, item )

int sell_price( coinmaster, item )

boolean sells_item( coinmaster, item )

void send_fax()

string [int] session_logs( [string], [string], int )

void set_auto_attack( int/string )

boolean set_ccs( string )

void set_length( buffer, int )

void set_location( location )

void set_property( string, string )

int shop_amount( item )

int shop_limit( item )

int shop_price( item )

skill skill_modifier( item, string )

skill skill_modifier( string, string )

int slash_count( item )

int soulsauce_cost( skill )

int spleen_limit()

string [int] split_string( string, [string] )

float square_root( float )

int start( matcher, [int] )

boolean starts_withstring, string )

int stash_amount( item )

stat stat_bonus_today()

stat stat_bonus_tomorrow()

stat stat_modifier( effect, string )

boolean [int] stats_pockets()

buffer steal()

int stills_available()

void stop_counter( string )

int storage_amount( item )

string string_modifier( [string], string )

skill stun_skill()

string substring( string, int, [int] )

boolean svn_at_head( string )

boolean svn_exists( string )

string [0] svn_list()

boolean sweet_synthesis( effect, [int] )

boolean sweet_synthesis( int, effect, [int] )

boolean sweet_synthesis( [int], item, item )

item [0] sweet_synthesis_pair( effect, [item], [int] )

item [0] sweet_synthesis_pairing( effect, item, int )

item [0] sweet_synthesis_pairing( effect, item )

effect sweet_synthesis_result( item, item )


t

boolean take_closet( int, [item] )

boolean take_closet( item, [int] )

boolean take_display( int, item )

boolean take_display( item, int )

boolean take_shop( [int], item )

boolean take_stash( int, item )

boolean take_stash( item, int )

boolean take_storage( int, item )

boolean take_storage( item, int )

int tavern( [string] )

buffer throw_item( item )

buffer throw_items( item, item )

int thunder_cost( skill )

string time_to_string()

string timestamp_to_date( int, string )

boolean to_boolean( any )

bounty to_bounty( strict_string )

class to_class( strict_string/int )

coinmaster to_coinmaster( strict_string )

effect to_effect( int/skill/strict_string )

element to_element( strict_string )

familiar to_familiar( int/strict_string )

float to_float( any )

int to_int( any )

item to_item( int/strict_string )

item to_item( string, int )

string to_json( aggregate )

location to_location( int/strict_string )

string to_lower_case( string )

monster to_monster( int/strict_string )

path to_path( int )

path to_path( strict_string )

phylum to_phylum( strict_string )

string to_plural( item )

servant to_servant( int/strict_string )

skill to_skill( effect/int )

skill to_skill( strict_string, [strict_string] )

slot to_slot( item/strict_string )

stat to_stat( strict_string )

string to_string( any )

thrall to_thrall( int/strict_string )

string to_upper_case( string )

string to_url( location )

vykea to_vykea( strict_string )

string to_wiki_url( effect )

string to_wiki_url( item )

string to_wiki_url( monster )

string to_wiki_url( skill )

string to_wiki_url( string )

string today_to_string()

int total_free_rests()

int total_turns_played()

boolean tower_door()

void traceprint( string )

int truncate( float )

int turns_per_cast( skill )

int turns_played()

buffer twiddle()


u

item unusual_construct_disc()

void update_candy_prices()

string url( int, revision, string, last_changed_author, int, last_changed_rev, string )

string url( string, branch, string, commit, string, last_changed_author, string )

string url_decode( string )

string url_encode( string )

boolean use( int, item )

boolean use( item, [int] )

boolean use_familiar( familiar )

boolean use_servant( servant )

boolean use_skill( int, skill, [string] )

boolean use_skill( skill, int, [string] )

buffer use_skill( skill )

boolean user_confirm( string, int, boolean )

boolean user_confirm( string )

void user_notify( string, boolean )

void user_notify( string )

string user_prompt( string, aggregate )

string user_prompt( string, int, string )

string user_prompt( string )


v

boolean visit( coinmaster )

buffer visit_url()

buffer visit_urlstring, boolean?, boolean? )

boolean [string] voting_booth_initiatives( class, path, int )

boolean [string] voting_booth_initiatives( int, int, int )


w

void wait( int )

void waitq( int )

int weapon_hands( item )

stat weapon_type( item )

int weight_adjustment()

boolean well_stocked( string, int, int )

boolean white_citadel_available()

boolean [string] who_clan()

boolean will_usually_dodge()

boolean will_usually_miss()

void write( string )

boolean write_ccs( buffer, string )

void writeln( string )


x

string [0] xpath( string, string )


z

item zap( item )