<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.kolmafia.us/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Alhifar</id>
	<title>Kolmafia - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.kolmafia.us/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Alhifar"/>
	<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=Special:Contributions/Alhifar"/>
	<updated>2026-04-24T23:57:38Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.44.0</generator>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=Now_to_string&amp;diff=7410</id>
		<title>Now to string</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=Now_to_string&amp;diff=7410"/>
		<updated>2014-01-23T13:29:30Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: Updated SimpleDateFormat link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{&lt;br /&gt;
#vardefine:name|now_to_string}}{{&lt;br /&gt;
#vardefine:return_type|string}}{{&lt;br /&gt;
&lt;br /&gt;
FunctionPage|&lt;br /&gt;
name={{#var:name}}|&lt;br /&gt;
&lt;br /&gt;
function1={{Function|&lt;br /&gt;
name={{#var:name}}|&lt;br /&gt;
aggregate={{#var:aggregate}}|&lt;br /&gt;
return_type={{#var:return_type}}|&lt;br /&gt;
return_also={{#var:return_also}}|&lt;br /&gt;
parameter1={{Param|string|format}}|&lt;br /&gt;
p1desc={{pspan|format}} is how the return value should be formatted.|&lt;br /&gt;
}}|&lt;br /&gt;
&lt;br /&gt;
function_description=Returns the current time (based on your local computer&#039;s system settings) in SimpleDateFormat format. Full information on [http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html SimpleDateFormat] here.|&lt;br /&gt;
&lt;br /&gt;
code1={{CodeSample|&lt;br /&gt;
title=Code Sample|&lt;br /&gt;
description=Examples of using now_to_string().|&lt;br /&gt;
code=&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
print(&amp;quot;Example 1: &amp;quot;+ now_to_string(&amp;quot;yyyy.MM.dd G &#039;at&#039; HH:mm:ss z&amp;quot;));&lt;br /&gt;
print(&amp;quot;Example 2: &amp;quot;+ now_to_string(&amp;quot;EEE, MMM d, &#039;&#039;yy&amp;quot;));&lt;br /&gt;
print(&amp;quot;Example 3: &amp;quot;+ now_to_string(&amp;quot;h:mm a&amp;quot;));&lt;br /&gt;
print(&amp;quot;Example 4: &amp;quot;+ now_to_string(&amp;quot;hh &#039;o&#039;&#039;clock&#039; a, zzzz&amp;quot;));&lt;br /&gt;
print(&amp;quot;Example 5: &amp;quot;+ now_to_string(&amp;quot;K:mm a, z&amp;quot;));&lt;br /&gt;
print(&amp;quot;Example 6: &amp;quot;+ now_to_string(&amp;quot;yyyyy.MMMMM.dd GGG hh:mm aaa&amp;quot;));&lt;br /&gt;
print(&amp;quot;Example 7: &amp;quot;+ now_to_string(&amp;quot;EEE, d MMM yyyy HH:mm:ss Z&amp;quot;));&lt;br /&gt;
print(&amp;quot;Example 8: &amp;quot;+ now_to_string(&amp;quot;yyMMddHHmmssZ&amp;quot;));&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;|&lt;br /&gt;
moreinfo=&lt;br /&gt;
This is the output:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Example 1: 2011.01.25 AD at 21:14:56 CST&lt;br /&gt;
Example 2: Tue, Jan 25, &#039;11&lt;br /&gt;
Example 3: 9:15 PM&lt;br /&gt;
Example 4: 09 o&#039;clock PM, Central Standard Time&lt;br /&gt;
Example 5: 9:15 PM, CST&lt;br /&gt;
Example 6: 02011.January.25 AD 09:16 PM&lt;br /&gt;
Example 7: Tue, 25 Jan 2011 21:16:16 -0600&lt;br /&gt;
Example 8: 110125211624-0600&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
}}|&lt;br /&gt;
}}&lt;br /&gt;
{{SeeAlso|gameday_to_string|gameday_to_int|today_to_string|time_to_string}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Miscellaneous Functions]]&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=Equipment&amp;diff=795</id>
		<title>Equipment</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=Equipment&amp;diff=795"/>
		<updated>2010-03-02T00:24:26Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: /* Part 3 - Equipment */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Part 3 - Equipment ==&lt;br /&gt;
&amp;lt;em&amp;gt;Time to get dressed!&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;boolean [[equip|equip( item it )]]&#039;&#039;&#039; - equips the specified [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item]] in the &amp;amp;#8220;natural&amp;amp;#8221; slot.  Only equips accessories in empty slots.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;boolean [[equip|equip( slot sl, item it )]]&#039;&#039;&#039; - equips the specified [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item]] in the specified [[%28ASHRM%29_Datatype_Constants#.24slot.5Bconstant.5D|slot]].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;item [[equipped_item|equipped_item( slot sl )]]&#039;&#039;&#039; - returns the item currently equipped in the given slot. (&amp;lt;em&amp;gt;Sample&amp;lt;/em&amp;gt;:[[%28ASHRM%29_Code_Samples#Sample_2:_Battlefield_gather|Battlefield_gather]])&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;boolean [[have_equipped|have_equipped( item it )]]&#039;&#039;&#039; - tells you if the specified item is currently equipped (as it would not otherwise show up in [[item_amount]]).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;boolean [[can_equip|can_equip( item it )]]&#039;&#039;&#039; - tells you if you meet the requirements to equip the given item (regardless of whether you own it).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;string [[item_type|item_type( item it )]]&#039;&#039;&#039; - returns a string indicating the type of weapon which was passed as a parameter.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;int [[weapon_hands|weapon_hands( item it )]]&#039;&#039;&#039; - tells you if a weapon will keep you from using your off-hand slot.  Even if a weapon is described as being 3-handed, this function will return 2. (&amp;lt;em&amp;gt;Sample&amp;lt;/em&amp;gt;:[[%28ASHRM%29_Code_Samples#Sample_2:_Battlefield_gather|Battlefield_gather]])&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;stat [[weapon_type|weapon_type( item it )]]&#039;&#039;&#039; - tells you what stat your weapon bases its hit chance on.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;boolean [[have_familiar|have_familiar( familiar pet )]]&#039;&#039;&#039; - tells you if you have placed the specified [[%28ASHRM%29_Datatype_Constants#.24familiar.5Bconstant.5D|familiar]] in your Terrarium (or have it equipped now).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;boolean [[use_familiar|use_familiar( familiar pet )]]&#039;&#039;&#039; - equips the specified [[%28ASHRM%29_Datatype_Constants#.24familiar.5Bconstant.5D|familiar]].  Use [[equip]] to change your familiar&amp;amp;#8217;s gear.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;item [[familiar_equipment|familiar_equipment( familiar pet )]]&#039;&#039;&#039; - returns the most common piece of equipment that is specially designed for the familiar&amp;amp;#8217;s type.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;item [[familiar_equipped_equipment|familiar_equipped_equipment( familiar pet )]]&#039;&#039;&#039; - returns the current item equipped on a [[%28ASHRM%29_Datatype_Constants#.24familiar.5Bconstant.5D|familiar]], as opposed to familiar_equipment( familiar ) which returns the special item only the familiar can use.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;boolean [[have_outfit|have_outfit( string outfit_name )]]&#039;&#039;&#039; - returns &#039;&#039;true&#039;&#039; if you could wear a specified outfit right now, either an in-game or a custom outfit.  A false result means either that you are missing one or more pieces of the outfit or that your stats are not high enough to equip all of the pieces. (&amp;lt;em&amp;gt;Sample&amp;lt;/em&amp;gt;:[[%28ASHRM%29_Code_Samples#Sample_1:_Seltzer|Seltzer]])&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;boolean [[outfit|outfit( string outfit_name )]]&#039;&#039;&#039; - wears the specified outfit. (&amp;lt;em&amp;gt;Sample&amp;lt;/em&amp;gt;:[[%28ASHRM%29_Code_Samples#Sample_2:_Battlefield_gather|Battlefield_gather]])&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=Pulls_remaining&amp;diff=4023</id>
		<title>Pulls remaining</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=Pulls_remaining&amp;diff=4023"/>
		<updated>2010-03-01T18:22:48Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#vardefine:name|pulls_remaining}}&lt;br /&gt;
{{#vardefine:return_type|int}}&lt;br /&gt;
&lt;br /&gt;
{{FunctionPage|&lt;br /&gt;
name={{#var:name}}|&lt;br /&gt;
function_category=Item Management|&lt;br /&gt;
&lt;br /&gt;
function1={{Function|&lt;br /&gt;
name={{#var:name}}|&lt;br /&gt;
aggregate={{#var:aggregate}}|&lt;br /&gt;
return_type={{#var:return_type}}|&lt;br /&gt;
return_also={{#var:return_also}}|&lt;br /&gt;
}}|&lt;br /&gt;
&lt;br /&gt;
function_description=Returns the number of pulls remaining for the day for characters in-Ronin, or 0 otherwise.|&lt;br /&gt;
&lt;br /&gt;
code1={{CodeSample|&lt;br /&gt;
title=Code Sample|&lt;br /&gt;
description=The following checks to see if you&#039;ve forgotten to use up your daily pulls.|&lt;br /&gt;
code=&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
if (pulls_remaining() &amp;gt; 0) {&lt;br /&gt;
   print(&amp;quot;You still have &amp;quot; + pulls_remaining() + &amp;quot; pulls you can make today.&amp;quot;);&lt;br /&gt;
} else {&lt;br /&gt;
   print(&amp;quot;You&#039;re all set on daily pulls.&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;}}|&lt;br /&gt;
special=Returns 0 when not logged in.&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=Initiative_modifier&amp;diff=3504</id>
		<title>Initiative modifier</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=Initiative_modifier&amp;diff=3504"/>
		<updated>2010-03-01T18:19:12Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#vardefine:name|initiative_modifier}}&lt;br /&gt;
{{#vardefine:return_type|float}}&lt;br /&gt;
{{FunctionPage|&lt;br /&gt;
name={{#var:name}}|&lt;br /&gt;
function_category=Your Character|&lt;br /&gt;
function1={{Function|&lt;br /&gt;
name={{#var:name}}|&lt;br /&gt;
aggregate={{#var:aggregate}}|&lt;br /&gt;
return_type={{#var:return_type}}|&lt;br /&gt;
return_also={{#var:return_also}}&lt;br /&gt;
}}|&lt;br /&gt;
function_description=Returns your current percentage initiative modifier in the form of a float.|&lt;br /&gt;
code1={{CodeSample|&lt;br /&gt;
title=Code Samples|&lt;br /&gt;
description=Checks to see whether your initiative modifier is positive.|&lt;br /&gt;
code=&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
boolean positive_initiative() {&lt;br /&gt;
   if(initiative_modifier() &amp;lt; 0){&lt;br /&gt;
      return false;&lt;br /&gt;
   }&lt;br /&gt;
   return true;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}|&lt;br /&gt;
code2={{CodeSample|&lt;br /&gt;
description=Uses your initiative result to determine whether it will adventure in the sewers (where a +60% initiative guarantees getting the jump). There is also a check for my_familiar().|&lt;br /&gt;
code=&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
boolean first_yellow_ray() {&lt;br /&gt;
   if(initiative_modifier() &amp;gt;= 60) {&lt;br /&gt;
      if(my_familiar() == $familiar[he-boulder]) {&lt;br /&gt;
         adventure(1 , $location[A Maze of Sewer Tunnels]);&lt;br /&gt;
         return true;&lt;br /&gt;
      }&lt;br /&gt;
      else {&lt;br /&gt;
         print(&amp;quot;You should use the He-Boulder for this&amp;quot;);&lt;br /&gt;
      }&lt;br /&gt;
   }&lt;br /&gt;
   else {&lt;br /&gt;
      print(&amp;quot;Your initiative is too low&amp;quot;);&lt;br /&gt;
   }&lt;br /&gt;
   return false;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}|&lt;br /&gt;
see_also={{SeeAlso|my_familiar}}|&lt;br /&gt;
special=When not logged in the function returns 0.0&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=Elemental_resistance&amp;diff=3488</id>
		<title>Elemental resistance</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=Elemental_resistance&amp;diff=3488"/>
		<updated>2010-03-01T18:18:03Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#vardefine:name|elemental_resistance}}&lt;br /&gt;
{{#vardefine:return_type|float}}&lt;br /&gt;
&lt;br /&gt;
{{FunctionPage|&lt;br /&gt;
name={{#var:name}}|&lt;br /&gt;
function_category=Your Character|&lt;br /&gt;
&lt;br /&gt;
function1={{Function|&lt;br /&gt;
name={{#var:name}}|&lt;br /&gt;
aggregate={{#var:aggregate}}|&lt;br /&gt;
return_type={{#var:return_type}}|&lt;br /&gt;
return_also={{#var:return_also}}|&lt;br /&gt;
parameter1={{Param|element|}}|&lt;br /&gt;
p1desc=The parameter of element is invoked using $element. Valid elements are hot ($element[hot]), cold, stench, spooky, sleaze.&lt;br /&gt;
}}|&lt;br /&gt;
&lt;br /&gt;
function_description=Returns your current resistance for a specified element in the form of a floating point integer.|&lt;br /&gt;
&lt;br /&gt;
code1={{CodeSample|&lt;br /&gt;
title=Code Samples|&lt;br /&gt;
description=Checks that you have a resistance greater than 20 for the element &amp;quot;hot&amp;quot;.|&lt;br /&gt;
code=&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
boolean hot_check() {&lt;br /&gt;
   if(elemental_resistance($element[hot]) &amp;gt; 20) {&lt;br /&gt;
      return true;&lt;br /&gt;
   }&lt;br /&gt;
   return false;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}|&lt;br /&gt;
&lt;br /&gt;
special=When not logged in the function returns 0.0&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=Current_hit_stat&amp;diff=2368</id>
		<title>Current hit stat</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=Current_hit_stat&amp;diff=2368"/>
		<updated>2010-03-01T18:15:30Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#vardefine:name|current_hit_stat}}&lt;br /&gt;
{{#vardefine:return_type|stat}}&lt;br /&gt;
&lt;br /&gt;
{{FunctionPage|&lt;br /&gt;
name={{#var:name}}|&lt;br /&gt;
function_category=Your Character|&lt;br /&gt;
&lt;br /&gt;
function1={{Function|&lt;br /&gt;
name={{#var:name}}|&lt;br /&gt;
aggregate={{#var:aggregate}}|&lt;br /&gt;
return_type={{#var:return_type}}|&lt;br /&gt;
return_also={{#var:return_also}}&lt;br /&gt;
}}|&lt;br /&gt;
&lt;br /&gt;
function_description=Returns the stat (muscle, mysticality or moxie) that is currently being used to calculate hit percentages. This is most likely to be useful in consult ccs scripts, or scripts designed to optimise equipment usage.|&lt;br /&gt;
&lt;br /&gt;
code1={{CodeSample|&lt;br /&gt;
title=Code Samples|&lt;br /&gt;
description=Checks to ensure your mainstat and hit stat are the same - to make sure you have the right type of weapon equipped. This only applies to muscle and moxie classes, so it checks to make sure you are not a mysticality class first.|&lt;br /&gt;
code=&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
if(my_primestat() != $stat[mysticality]) {&lt;br /&gt;
   if(current_hit_stat() != my_primestat()) {&lt;br /&gt;
      print(&amp;quot;You could probably select a more effective weapon!&amp;quot;);&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}|&lt;br /&gt;
&lt;br /&gt;
see_also={{SeeAlso|my_primestat}}|&lt;br /&gt;
special=When not logged in, this function returns $stat[muscle].&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=Buffed_hit_stat&amp;diff=2380</id>
		<title>Buffed hit stat</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=Buffed_hit_stat&amp;diff=2380"/>
		<updated>2010-03-01T18:12:43Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#vardefine:name|buffed_hit_stat}}&lt;br /&gt;
{{#vardefine:return_type|int}}&lt;br /&gt;
&lt;br /&gt;
{{FunctionPage|&lt;br /&gt;
name={{#var:name}}|&lt;br /&gt;
function_category=Your Character|&lt;br /&gt;
&lt;br /&gt;
function1={{Function|&lt;br /&gt;
name={{#var:name}}|&lt;br /&gt;
aggregate={{#var:aggregate}}|&lt;br /&gt;
return_type={{#var:return_type}}|&lt;br /&gt;
return_also={{#var:return_also}}&lt;br /&gt;
}}|&lt;br /&gt;
&lt;br /&gt;
function_description=Returns the buffed value of the stat that is currently used to calculate hit percentages. Note, ranged weapons use moxie to calculate hit percentage, melee weapons use muscle.|&lt;br /&gt;
&lt;br /&gt;
code1={{CodeSample|&lt;br /&gt;
title=Code Samples|&lt;br /&gt;
description=This code will check your hit percentage against every monster in a specified location to make sure it is 50% or over for every monster.|&lt;br /&gt;
code=&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
boolean safe_to_attack() {&lt;br /&gt;
   int x = buffed_hit_stat();&lt;br /&gt;
   monster [int] monster_list = get_monsters($location[Fantasy Airship]);&lt;br /&gt;
   foreach int in monster_list {&lt;br /&gt;
      float fumble = 1/22;&lt;br /&gt;
      float hit_percentage = (((6 + (x - monster_defense(monster_list[int]))) / 10.5) * (100 - fumble));&lt;br /&gt;
      if(hit_percentage &amp;lt; 50) {&lt;br /&gt;
         return false;&lt;br /&gt;
      }&lt;br /&gt;
   }&lt;br /&gt;
   return true;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}|&lt;br /&gt;
&lt;br /&gt;
see_also={{SeeAlso|get_monsters|monster_defense}}|&lt;br /&gt;
more_info=http://kol.coldfront.net/thekolwiki/index.php/Hit_Chance|&lt;br /&gt;
special=This function returns 0 when not logged in.&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=My_id&amp;diff=2670</id>
		<title>My id</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=My_id&amp;diff=2670"/>
		<updated>2010-03-01T18:10:48Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#vardefine:name|my_id}}&lt;br /&gt;
{{#vardefine:return_type|string}}&lt;br /&gt;
{{FunctionPage|&lt;br /&gt;
name={{#var:name}}|&lt;br /&gt;
function_category=Your Character|&lt;br /&gt;
function1={{Function|&lt;br /&gt;
name={{#var:name}}|&lt;br /&gt;
aggregate={{#var:aggregate}}|&lt;br /&gt;
return_type={{#var:return_type}}|&lt;br /&gt;
return_also={{#var:return_also}}&lt;br /&gt;
}}|&lt;br /&gt;
function_description=Returns the Character ID of the logged-in character.|&lt;br /&gt;
code1={{CodeSample|&lt;br /&gt;
title=Code Sample|&lt;br /&gt;
description=This example allows you to visit your own charsheet.|&lt;br /&gt;
code=&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
visit_url(&amp;quot;showplayer.php?who=&amp;quot; + my_id());&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}|&lt;br /&gt;
see_also={{SeeAlso|my_name}}|&lt;br /&gt;
special=When no character is logged in, this function returns the Character ID of the last logged-in character or 0 if no character has logged in yet.&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=Closet_amount&amp;diff=4112</id>
		<title>Closet amount</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=Closet_amount&amp;diff=4112"/>
		<updated>2010-03-01T18:08:23Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#vardefine:name|closet_amount}}&lt;br /&gt;
{{#vardefine:return_type|int}}&lt;br /&gt;
&lt;br /&gt;
{{FunctionPage|&lt;br /&gt;
name={{#var:name}}|&lt;br /&gt;
function_category=Item Management|&lt;br /&gt;
&lt;br /&gt;
function1={{Function|&lt;br /&gt;
name={{#var:name}}|&lt;br /&gt;
aggregate={{#var:aggregate}}|&lt;br /&gt;
return_type={{#var:return_type}}|&lt;br /&gt;
return_also={{#var:return_also}}|&lt;br /&gt;
parameter1={{Param|item|it}}|&lt;br /&gt;
p1desc={{Pspan|it}} is the item that will be checked for in the closet.|&lt;br /&gt;
}}|&lt;br /&gt;
&lt;br /&gt;
function_description=Returns the amount of a given item that is contained in your closet.|&lt;br /&gt;
&lt;br /&gt;
code1={{CodeSample|&lt;br /&gt;
title=Sample Code|&lt;br /&gt;
description=Checks if you have enough filthy lucre for Olfaction|&lt;br /&gt;
code=&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
void main(){&lt;br /&gt;
   if( item_amount($item[filthy lucre]) + display_amount($item[filthy lucre]) + closet_amount($item[filthy lucre]) &amp;gt; 200 ){ print( &amp;quot;Go get olfaction!&amp;quot; ) }&lt;br /&gt;
   else print( &amp;quot;Keep going, you need more lucre!&amp;quot; );&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}|&lt;br /&gt;
&lt;br /&gt;
see_also={{SeeAlso|item_amount|display_amount}}|&lt;br /&gt;
special=Not logged in value: 0&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=Closet_amount&amp;diff=4111</id>
		<title>Closet amount</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=Closet_amount&amp;diff=4111"/>
		<updated>2010-03-01T18:07:23Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: Created page with &amp;#039;{{#vardefine:name|closet_amount}} {{#vardefine:return_type|int}}  {{FunctionPage| name={{#var:name}}| function_category=Item Management|  function1={{Function| name={{#var:name}}…&amp;#039;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{#vardefine:name|closet_amount}}&lt;br /&gt;
{{#vardefine:return_type|int}}&lt;br /&gt;
&lt;br /&gt;
{{FunctionPage|&lt;br /&gt;
name={{#var:name}}|&lt;br /&gt;
function_category=Item Management|&lt;br /&gt;
&lt;br /&gt;
function1={{Function|&lt;br /&gt;
name={{#var:name}}|&lt;br /&gt;
aggregate={{#var:aggregate}}|&lt;br /&gt;
return_type={{#var:return_type}}|&lt;br /&gt;
return_also={{#var:return_also}}|&lt;br /&gt;
parameter1={{Param|item|checked}}|&lt;br /&gt;
p1desc=This is the item that will be checked for in the closet.|&lt;br /&gt;
}}|&lt;br /&gt;
&lt;br /&gt;
function_description=Returns the amount of a given item that is contained in your closet.|&lt;br /&gt;
&lt;br /&gt;
code1={{CodeSample|&lt;br /&gt;
title=Sample Code|&lt;br /&gt;
description=Checks if you have enough filthy lucre for Olfaction|&lt;br /&gt;
code=&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
void main(){&lt;br /&gt;
   if( item_amount($item[filthy lucre]) + display_amount($item[filthy lucre]) + closet_amount($item[filthy lucre]) &amp;gt; 200 ){ print( &amp;quot;Go get olfaction!&amp;quot; ) }&lt;br /&gt;
   else print( &amp;quot;Keep going, you need more lucre!&amp;quot; );&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
}}|&lt;br /&gt;
&lt;br /&gt;
see_also={{SeeAlso|item_amount|display_amount}}|&lt;br /&gt;
special=Not logged in value: 0&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=Talk:Main_Page&amp;diff=666</id>
		<title>Talk:Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=Talk:Main_Page&amp;diff=666"/>
		<updated>2009-04-15T04:45:18Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: Undo revision 4772 by 212.116.219.52 (Talk) -- Spam?&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Save these links for now:&lt;br /&gt;
&lt;br /&gt;
ELg27M df1zv853gvrvb7gv94gmlas&lt;br /&gt;
&lt;br /&gt;
WaBgN9 dfv078fnw8f934ndvkg2l&lt;br /&gt;
&lt;br /&gt;
== Updating? ==&lt;br /&gt;
Let&#039;s get started, guys. Soon enough, I&#039;ll have a list of all the functions, which I think should go in a wiki page to (as someone above said) search and link. Also, is there a way to do monospacing with code? --[[User:MagiNinjA|MagiNinjA]] 00:35, 29 March 2007 (CDT)&lt;br /&gt;
:You can get mono-spaced text by using &amp;amp;lt;code&amp;amp;gt; tags.  For example, using &amp;lt;pre&amp;gt;&amp;lt;code&amp;gt;EXAMPLE TEXT&amp;lt;/code&amp;gt;&amp;lt;/pre&amp;gt; produces this as a result.  &amp;lt;code&amp;gt;EXAMPLE TEXT&amp;lt;/code&amp;gt;&lt;br /&gt;
:If you need anymore help, just drop me a line on my [[User_talk:Ksumoe|talk page]]. &amp;amp;#151;[[User:Ksumoe|ksumoe]] &amp;lt;sup&amp;gt;([[User_talk:Ksumoe|talk]] &amp;amp;#149; [[Special:Contributions/Ksumoe|contrib]])&amp;lt;/sup&amp;gt; 18:35, 10 April 2007 (CDT)&lt;br /&gt;
&lt;br /&gt;
== Ideas... ==&lt;br /&gt;
&lt;br /&gt;
These are my ideas that I have floating around in my head:&lt;br /&gt;
# A template to put all the relevant information about a function into a table (with proper colored backgrounds and such)&lt;br /&gt;
## I can do this; I just need to know what information is &#039;relevant&#039;.&lt;br /&gt;
# Move this type of discussion to the Community Portal.  Right now the CP is just a bunch of links (we can make a &#039;links&#039; page and add it to the sidebar if needed).&lt;br /&gt;
# An overhaul of the main page.  Someone said that they don&#039;t like the &#039;portal&#039; type of look, but that kind of look has become the &#039;&#039;de facto&#039;&#039; standard for wikis, as it is the most popular.  I&#039;ll pound out a rough draft on a subpage of my user space.&lt;br /&gt;
# Creation of a template structure.  Templates for requesting deletion, protection, etc.  That way non-sysop flagged users can &#039;tag&#039; pages [[Talk:Bad title|such as this]] for deletion.&lt;br /&gt;
# Logo!  &#039;Cause we need to be cool like that.&lt;br /&gt;
# Define a category structure.  Do it now before too many pages get created.&lt;br /&gt;
&lt;br /&gt;
Like I said... I&#039;m here to help.  [[User_talk:Ksumoe|Comments]] &amp;lt;!--or below for that matter--&amp;gt; plox.  &amp;amp;#151;[[User:Ksumoe|ksumoe]] &amp;lt;sup&amp;gt;([[User_talk:Ksumoe|talk]] &amp;amp;#149; [[Special:Contributions/Ksumoe|contrib]])&amp;lt;/sup&amp;gt; 21:17, 13 April 2007 (CDT)&lt;br /&gt;
&lt;br /&gt;
I added some links on the home page -- hope that helps users find more documentation... :) -Daychilde&lt;br /&gt;
&lt;br /&gt;
I corrected the Script Repository link to http://www.kolmafia.us from http://www.kolmafia.ua.  ;)  -Regnar&lt;br /&gt;
&lt;br /&gt;
== Links to Redirects? ==&lt;br /&gt;
&lt;br /&gt;
While I understand the need for redirect, why are we linking to redirect pages? Why not use &amp;lt;nowiki&amp;gt;[[Page Title|Displayed Text]]&amp;lt;/nowiki&amp;gt; links instead?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Protection ==&lt;br /&gt;
Seriously, protect the front page. This is getting completely destroyed by spam [[User:80.189.248.109|80.189.248.109]] 12:05, 27 August 2007 (CDT)&lt;br /&gt;
&lt;br /&gt;
Is $wgSpamRegex set? If not it should be. If it is, it needs updating. Spam storming in like the flood! -divinewind420&lt;br /&gt;
&lt;br /&gt;
Articles on the subject&lt;br /&gt;
http://nothing.tmtm.com/archives/2571&lt;br /&gt;
http://wiki.evernex.com/index.php?title=Blocking_Spam_in_Mediawiki&lt;br /&gt;
-divinewind420&lt;br /&gt;
&lt;br /&gt;
== Current wiki layout ==&lt;br /&gt;
I was just curious if we could get the current wiki main page layout centered? As in simply putting &amp;lt;pre&amp;gt; &amp;lt;center&amp;gt; &amp;lt;/center&amp;gt; &amp;lt;/pre&amp;gt; around the main text.&lt;br /&gt;
--[[User:ZammyWarrior|ZammyWarrior]] 16:35, 7 December 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
What do you mean? And please sign your comments --[[User:Fewyn|Fewyn]] 10:59, 6 December 2007 (PST)&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1442</id>
		<title>String Handling Routines</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1442"/>
		<updated>2008-08-18T05:28:25Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: Seriously, do these bots have something against dealing with strings?&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Part  8 - String Handling Routines ==&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;em&amp;gt;Under Construction&amp;lt;/em&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;void print( string helloworld )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Prints the given string to the graphical CLI window and to the status line of the main Adventuring window.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string [[visit_url alpha|visit_url( string url )]]&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Accesses the specified URL, manages any applicable redirects (including if the page offered a choice adventure), and returns the HTML of the final response page.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string location_to_url( location place )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the URL that would need to be accessed to visit the specified location.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean contains_text( string source, string query )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Reveals if the query string is a substring of the source string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int extract_meat( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the amount of meat contained in a string passed to it in integer format. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int [item] extract_items( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
takes the text you have provided and parses it for any items that KoLmafia would have found normally.  This means you have access to the built-in pluralization handler as well as the ability to NOT have to lookup description IDs or whatever other loops you had to use to access that information. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int length( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the length of the given string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the first index of a given substring in a string.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int index_of( string source, string search, int start )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the next index of a given substring in a string starting from the given position.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int last_index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the last index of a given substring in a string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string substring( string source, int startfrom )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the substring of the given string starting from the given character position in the string, and ending at the last character.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string substring( string source, int start, int end )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the substring of the given string starting from the character position indicated by start in the string, and ending at the character position indicated by end.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string replace_string( string source, string search, string replace )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
searches the source string for the search string and replaces all instances with the replace string&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string url_encode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string url_decode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Converts a string text into a formatted string for using with raw URLs or from a formatted string back into “normal” text.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string [int] split_string( string source )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a map of strings which is the passed string split into individual lines. Originally implemented for use when parsing session logs, but may see more uses in the future.&lt;br /&gt;
http://kolmafia.us/index.php/topic,794.msg3868.html#msg3868 &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] split_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int,int] group_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
see this post located on the script repository for more information:  http://kolmafia.us/index.php/topic,451.msg2235.html#msg2235 &amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] session_logs( string player, int day_count )&amp;lt;/strong&amp;gt;&lt;br /&gt;
Gives access to the session logs saved by kolmafia. More details will be added when this function&#039;s own page is written. For now, more extensive details can be found here: http://kolmafia.us/index.php/topic,794.msg3879.html#msg3879&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;buffer append( buffer source, string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the source buffer with the string added on at the end.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;buffer append_tail( matcher regex, buffer source )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
This function appends the text returned by a matcher to the end of the buffer text.&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1440</id>
		<title>String Handling Routines</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1440"/>
		<updated>2008-08-03T08:15:45Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: Die.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Part  8 - String Handling Routines ==&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;em&amp;gt;Under Construction&amp;lt;/em&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;void print( string helloworld )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Prints the given string to the graphical CLI window and to the status line of the main Adventuring window.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string [[visit_url alpha|visit_url( string url )]]&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Accesses the specified URL, manages any applicable redirects (including if the page offered a choice adventure), and returns the HTML of the final response page.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string location_to_url( location place )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the URL that would need to be accessed to visit the specified location.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean contains_text( string source, string query )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Reveals if the query string is a substring of the source string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int extract_meat( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the amount of meat contained in a string passed to it in integer format. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int [item] extract_items( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
takes the text you have provided and parses it for any items that KoLmafia would have found normally.  This means you have access to the built-in pluralization handler as well as the ability to NOT have to lookup description IDs or whatever other loops you had to use to access that information. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int length( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the length of the given string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the first index of a given substring in a string.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int index_of( string source, string search, int start )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the next index of a given substring in a string starting from the given position.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int last_index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the last index of a given substring in a string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string substring( string source, int startfrom )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the substring of the given string starting from the given character position in the string, and ending at the last character.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string substring( string source, int start, int end )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the substring of the given string starting from the character position indicated by start in the string, and ending at the character position indicated by end.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string replace_string( string source, string search, string replace )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
searches the source string for the search string and replaces all instances with the replace string&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string url_encode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string url_decode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Converts a string text into a formatted string for using with raw URLs or from a formatted string back into “normal” text.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string [int] split_string( string source )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a map of strings which is the passed string split into individual lines. Originally implemented for use when parsing session logs, but may see more uses in the future.&lt;br /&gt;
http://kolmafia.us/index.php/topic,794.msg3868.html#msg3868 &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] split_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int,int] group_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
see this post located on the script repository for more information:  http://kolmafia.us/index.php/topic,451.msg2235.html#msg2235 &amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] session_logs( string player, int day_count )&amp;lt;/strong&amp;gt;&lt;br /&gt;
Gives access to the session logs saved by kolmafia. More details will be added when this function&#039;s own page is written. For now, more extensive details can be found here: http://kolmafia.us/index.php/topic,794.msg3879.html#msg3879&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;buffer append( buffer source, string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the source buffer with the string added on at the end.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;buffer append_tail( matcher regex, buffer source )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
This function appends the text returned by a matcher to the end of the buffer text.&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1438</id>
		<title>String Handling Routines</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1438"/>
		<updated>2008-07-30T20:24:53Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: Damned spammers.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Part  8 - String Handling Routines ==&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;em&amp;gt;Under Construction&amp;lt;/em&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;void print( string helloworld )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Prints the given string to the graphical CLI window and to the status line of the main Adventuring window.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string [[visit_url alpha|visit_url( string url )]]&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Accesses the specified URL, manages any applicable redirects (including if the page offered a choice adventure), and returns the HTML of the final response page.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string location_to_url( location place )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the URL that would need to be accessed to visit the specified location.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean contains_text( string source, string query )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Reveals if the query string is a substring of the source string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int extract_meat( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the amount of meat contained in a string passed to it in integer format. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int [item] extract_items( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
takes the text you have provided and parses it for any items that KoLmafia would have found normally.  This means you have access to the built-in pluralization handler as well as the ability to NOT have to lookup description IDs or whatever other loops you had to use to access that information. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int length( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the length of the given string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the first index of a given substring in a string.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int index_of( string source, string search, int start )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the next index of a given substring in a string starting from the given position.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int last_index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the last index of a given substring in a string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string substring( string source, int startfrom )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the substring of the given string starting from the given character position in the string, and ending at the last character.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string substring( string source, int start, int end )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the substring of the given string starting from the character position indicated by start in the string, and ending at the character position indicated by end.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string replace_string( string source, string search, string replace )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
searches the source string for the search string and replaces all instances with the replace string&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string url_encode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string url_decode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Converts a string text into a formatted string for using with raw URLs or from a formatted string back into “normal” text.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string [int] split_string( string source )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a map of strings which is the passed string split into individual lines. Originally implemented for use when parsing session logs, but may see more uses in the future.&lt;br /&gt;
http://kolmafia.us/index.php/topic,794.msg3868.html#msg3868 &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] split_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int,int] group_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
see this post located on the script repository for more information:  http://kolmafia.us/index.php/topic,451.msg2235.html#msg2235 &amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] session_logs( string player, int day_count )&amp;lt;/strong&amp;gt;&lt;br /&gt;
Gives access to the session logs saved by kolmafia. More details will be added when this function&#039;s own page is written. For now, more extensive details can be found here: http://kolmafia.us/index.php/topic,794.msg3879.html#msg3879&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;buffer append( buffer source, string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the source buffer with the string added on at the end.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;buffer append_tail( matcher regex, buffer source )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
This function appends the text returned by a matcher to the end of the buffer text.&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1434</id>
		<title>String Handling Routines</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1434"/>
		<updated>2008-07-24T01:13:23Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: /* Part  8 - String Handling Routines */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Part  8 - String Handling Routines ==&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;em&amp;gt;Under Construction&amp;lt;/em&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;void print( string helloworld )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Prints the given string to the graphical CLI window and to the status line of the main Adventuring window.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string [[visit_url alpha|visit_url( string url )]]&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Accesses the specified URL, manages any applicable redirects (including if the page offered a choice adventure), and returns the HTML of the final response page.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string location_to_url( location place )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the URL that would need to be accessed to visit the specified location.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean contains_text( string source, string query )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Reveals if the query string is a substring of the source string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int extract_meat( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the amount of meat contained in a string passed to it in integer format. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int [item] extract_items( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
takes the text you have provided and parses it for any items that KoLmafia would have found normally.  This means you have access to the built-in pluralization handler as well as the ability to NOT have to lookup description IDs or whatever other loops you had to use to access that information. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int length( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the length of the given string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the first index of a given substring in a string.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int index_of( string source, string search, int start )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the next index of a given substring in a string starting from the given position.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int last_index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the last index of a given substring in a string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string substring( string source, int startfrom )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the substring of the given string starting from the given character position in the string, and ending at the last character.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string substring( string source, int start, int end )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the substring of the given string starting from the character position indicated by start in the string, and ending at the character position indicated by end.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string replace_string( string source, string search, string replace )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
searches the source string for the search string and replaces all instances with the replace string&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string url_encode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string url_decode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Converts a string text into a formatted string for using with raw URLs or from a formatted string back into “normal” text.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string [int] split_string( string source )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a map of strings which is the passed string split into individual lines. Originally implemented for use when parsing session logs, but may see more uses in the future.&lt;br /&gt;
http://kolmafia.us/index.php/topic,794.msg3868.html#msg3868 &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] split_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int,int] group_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
see this post located on the script repository for more information:  http://kolmafia.us/index.php/topic,451.msg2235.html#msg2235 &amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] session_logs( string player, int day_count )&amp;lt;/strong&amp;gt;&lt;br /&gt;
Gives access to the session logs saved by kolmafia. More details will be added when this function&#039;s own page is written. For now, more extensive details can be found here: http://kolmafia.us/index.php/topic,794.msg3879.html#msg3879&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;buffer append( buffer source, string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the source buffer with the string added on at the end.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;buffer append_tail( matcher regex, buffer source )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
This function appends the text returned by a matcher to the end of the buffer text.&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=KoLmafia_Properties&amp;diff=1227</id>
		<title>KoLmafia Properties</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=KoLmafia_Properties&amp;diff=1227"/>
		<updated>2008-07-21T07:39:15Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Part 11 - KoLmafia Properties ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;In addition to affecting gameplay directly through ASH functions and CLI commands, scripters also have the ability to control certain core behaviors of KoLmafia through direct modification of the preferences file.  In addition, scripters can also create variables that will survive across sessions.  &amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;To see all of the pre-defined variables that exist, look in the &amp;amp;#8220;settings&amp;amp;#8221; subfolder wherever you keep the KoLmafia executable and open up any of the prefs_&amp;lt;character name&amp;gt;.txt and GLOBAL_prefs.txt files named for your characters.  This guide will not attempt to describe all of the variables that are there: many are uninteresting from the player&amp;amp;#8217;s point of view and others are too unwieldy to be properly set at the moment.  Of those that are interesting and accessable, the functionality can be divided into three main sections:&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Choice Adventures&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;These settings control all of the non-combat adventures that give you a choice of outcomes.  In the GUI, you can view and set these options in the Choices tab of the Preferences window, but you can also more-or-less directly access the values from ASH.  This is slightly unorthodox behavior, given that the GUI doesn&amp;amp;#8217;t get notified that the true value has been updated and so your Choices page could be out of synch, but needs must when the Devil drives, eh?&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;As I said before, setting these values may be more-or-less direct, which turns out to be true in a literal sense.  Of the two sections on the Choices tab, the lower set is &amp;amp;#8220;more&amp;amp;#8221; direct.  These line up as follows:&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;TABLE BORDER=1 CELLPADDING=4&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TH&amp;gt;Property Name&amp;lt;/TH&amp;gt;&amp;lt;TH&amp;gt;Preferences Tab Name&amp;lt;/TH&amp;gt;&amp;lt;TH&amp;gt;KoL Adventure Name&amp;lt;br /&amp;gt;&lt;br /&gt;
	&amp;lt;/TH&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure2&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Palindome&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;Denim Axes Examined&amp;lt;br /&amp;gt;&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure3&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Teleportitis&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;The Oracle Will See You Now&amp;lt;br /&amp;gt;&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure4&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;South of the Border&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;Finger-Lickin&amp;amp;#8217; &amp;amp;#8230; Death&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure5&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Gravy Barrow 1&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;Heart of Very, Very Dark Darkness&amp;lt;br /&amp;gt;&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure7&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Gravy Barrow 2&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;How Depressing&amp;lt;br /&amp;gt;&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure8&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Gravy Barrow 3&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;On the Verge of a Dirge&amp;lt;br /&amp;gt;&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure15&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;eXtreme Slope 1&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;Yeti Nother Hippy&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure16&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;eXtreme Slope 2&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;Saint Beernard&amp;lt;br /&amp;gt;&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure17&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;eXtreme Slope 3&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;Generic Teen Comedy&amp;lt;br /&amp;gt;&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure18&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Itznotyerzitz Mine 1&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;A Flat Miner&amp;lt;br /&amp;gt;&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure19&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Itznotyerzitz Mine 2&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;100% Legal&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure20&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Itznotyerzitz Mine 3&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;See You Next Fall&amp;lt;br /&amp;gt;&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure21&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Sleazy Back Alley&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;Under the Knife&amp;lt;br /&amp;gt;&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure22&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Pirate&amp;amp;#8217;s Cove 1&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;The Arrrbitrator&amp;lt;br /&amp;gt;&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure23&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Pirate&amp;amp;#8217;s Cove 2&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;Barrie Me at Sea&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure24&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Pirate&amp;amp;#8217;s Cove 3&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;Amatearrr Night&amp;lt;br /&amp;gt;&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure25&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Dungeon of Doom&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;Ouch!  You bump into a door!&amp;lt;br /&amp;gt;&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure40&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Cola Wars 1&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;The Effervescent Fray&amp;lt;br /&amp;gt;&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure41&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Cola Wars 2&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;Smells Like Team Spirit&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure42&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Cola Wars 3&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;What is it Good For?&amp;lt;br /&amp;gt;&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure45&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Spooky Forest 1&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;Maps and Legends&amp;lt;br /&amp;gt;&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure46&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Spooky Forest 2&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;An Interesting Choice&amp;lt;br /&amp;gt;&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure47&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Spooky Forest 3&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;Have a Heart&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure73&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Whitey&amp;amp;#8217;s Grove 1&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;Don&amp;amp;#8217;t Fence Me In&amp;lt;br /&amp;gt;&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure74&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Whitey&amp;amp;#8217;s Grove 2&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;The Only Thing About Him&amp;amp;#8230;&amp;lt;br /&amp;gt;&lt;br /&gt;
	&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;choiceAdventure75&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;Whitey&amp;amp;#8217;s Grove 3&amp;lt;/TD&amp;gt;&amp;lt;TD ALIGN=LEFT&amp;gt;Rapido!&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;/TABLE&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;Changing the settings for these adventures is as easy as an ASH function like set_property(&amp;amp;#8221;choiceAdventure40&amp;amp;#8243;, &amp;amp;#8220;2&amp;amp;#8243;) or the CLI command &amp;amp;#8220;set choiceAdventure46=3&amp;amp;#8243;.  To be candid, I can never figure out the correct numeric value by any amount of cleverness, so what I do is to log in to KoLmafia, use the Preferences Window to set the value to what I want, quit KoLmafia, and then check my character&amp;amp;#8217;s .txt file to see the value that was set for the appropriate key.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;By contrast, there is limited support for setting the adventures in the upper set, as these are compound settings.  The two that are most affected are Castle Wheel, which controls all of choiceAdventure9 through choiceAdventure12, and which corpse you want to loot in the Spooky Forest, which covers choiceAdventure26 through choiceAdventure29.  Again, your best bet is to set these two adventures to the choice you want and then check your data file to see which specific settings correspond to the high-level decision.  So far as I know, there is no way to use scripts to specify your choices for the Astral Trip.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;A full list of the choice adventure numbers can be found on the KoL Wiki here: [http://kol.coldfront.net/thekolwiki/index.php/Choice_adventures_by_number]&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;However, according to Holatuwol ([http://kolmafia.us/index.php/topic,1155.0.html here]), the settings map to &amp;quot;X=pick the Xth Option&amp;quot; and X+1=pick an item you don&#039;t have (i.e., complete the outfit).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt;Other KoLmafia-based preferences&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;This is going to be a limited survey of the more interesting of the settings that you can control.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;b&amp;gt;battleAction&amp;lt;/b&amp;gt; - This specifies the strategy that you will use in battle.  The sorts of values that you might select here are &amp;amp;#8220;attack&amp;amp;#8221; for normal attacking, &amp;amp;#8220;custom&amp;amp;#8221; to use the Custom Combat Scripts, &amp;amp;#8220;item dictionary&amp;amp;#8221; when you&amp;amp;#8217;re adventuring in the Valley beyond Orc Chasm, or &amp;amp;#8220;skill thrust smack&amp;amp;#8221; to use TS during the entire battle.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;b&amp;gt;hpAutoRecovery&amp;lt;/b&amp;gt; - This is a float value that specifies the percentage of your HP at which the autohealer kicks in.  I haven&amp;amp;#8217;t tried it, but I think you&amp;amp;#8217;d be generally unhappy if you set it to something other than a multiple of 0.1.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;b&amp;gt;hpAutoRecoveryTarget&amp;lt;/b&amp;gt; - A companion to the above, this is the target that the autohealer will aspire to achieve.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;As before, feel free to peruse the .kcs file to see all of the values.  The names aren&amp;amp;#8217;t very subtle, so you should be able to guess what they&amp;amp;#8217;re all for.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;h3&amp;gt;User-defined variables&amp;lt;/h3&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;In addition to setting the variables that KoLmafia predefines, you can also create any others to cover any information you wish.  As you do so, keep in mind that while you can clear a variable&amp;amp;#8217;s value to the null string, there is currently no way to delete a key (aside from editing the .txt file in the text processor of your choice and deleting the line that contains the key).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=Datatype_Conversions&amp;diff=1821</id>
		<title>Datatype Conversions</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=Datatype_Conversions&amp;diff=1821"/>
		<updated>2008-07-21T07:32:54Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: /* Part 10 - Datatype Conversions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Part 10 - Datatype Conversions ==&lt;br /&gt;
&lt;br /&gt;
These functions will convert 1 type of data to another.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string to_string( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts in-game variables to printable counterparts. The print command will cast non-string values properly now, but these are still useful for building URLs and setting properties.&amp;lt;br /&amp;gt;&lt;br /&gt;
accepts: boolean, int, float, item, zodiac, location, familiar, class, stat, skill, effect, slot, element, monster&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int to_int( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts the ASH-based object into the number that will be recognized by the KoL server. Needed when you&amp;amp;#8217;re building raw URLs from time to time.&amp;lt;br /&amp;gt;&lt;br /&gt;
accepts: String, float, item, zodiac, location, familiar, skill, effect, slot, element, monster, boolean, class, stat&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean to_boolean( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts the ASH-based object into boolean.&amp;lt;br /&amp;gt;&lt;br /&gt;
Accepts: String, int&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;float to_float( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts the ASH-based object into a float.&amp;lt;br /&amp;gt;&lt;br /&gt;
Accepts: String, int&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;item to_item( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts the ASH-based object into an item.&amp;lt;br /&amp;gt;&lt;br /&gt;
Accepts: string, int&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;location to_location( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts the ASH-based object into a location.&amp;lt;br /&amp;gt;&lt;br /&gt;
Accepts: string&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;familiar to_familiar( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts the ASH-based object into a familiar.&amp;lt;br /&amp;gt;&lt;br /&gt;
Accepts: string, int&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;skill to_skill( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts the ASH-based object into a skill.&amp;lt;br /&amp;gt;&lt;br /&gt;
Accepts: string, int, effect&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;effect to_effect( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts the ASH-based object into an effect.&amp;lt;br /&amp;gt;&lt;br /&gt;
Accepts: string, int, skill&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;slot to_slot( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts the ASH-based object into a slot.&amp;lt;br /&amp;gt;&lt;br /&gt;
Accepts: item&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;monster to_monster( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts the ASH-based object into a monster.&amp;lt;br /&amp;gt;&lt;br /&gt;
Accepts: string&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=Datatype_Conversions&amp;diff=1820</id>
		<title>Datatype Conversions</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=Datatype_Conversions&amp;diff=1820"/>
		<updated>2008-07-21T07:28:42Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: /* Part 10 - Datatype Conversions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Part 10 - Datatype Conversions ==&lt;br /&gt;
&lt;br /&gt;
These functions will convert 1 type of data to another.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string to_string( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts in-game variables to printable counterparts. The print command will cast non-string values properly now, but these are still useful for building URLs and setting properties.&amp;lt;br /&amp;gt;&lt;br /&gt;
accepts: boolean, int, float, item, zodiac, location, familiar, class, stat, skill, effect, slot, element, monster&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int to_int( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts the ASH-based object into the number that will be recognized by the KoL server. Needed when you&amp;amp;#8217;re building raw URLs from time to time.&amp;lt;br /&amp;gt;&lt;br /&gt;
accepts: String, float, item, zodiac, location, familiar, skill, effect, slot, element, monster&amp;lt;br /&amp;gt;&lt;br /&gt;
may accept: boolean,  class, stat&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean to_boolean( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts the ASH-based object into boolean.&amp;lt;br /&amp;gt;&lt;br /&gt;
Accepts: String&amp;lt;br /&amp;gt;&lt;br /&gt;
may accept: Int&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;float to_float( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts the ASH-based object into a float.&amp;lt;br /&amp;gt;&lt;br /&gt;
Accepts: String, int&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;item to_item( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts the ASH-based object into an item.&amp;lt;br /&amp;gt;&lt;br /&gt;
Accepts: string, int&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;location to_location( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts the ASH-based object into a location.&amp;lt;br /&amp;gt;&lt;br /&gt;
Accepts: string&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;familiar to_familiar( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts the ASH-based object into a familiar.&amp;lt;br /&amp;gt;&lt;br /&gt;
Accepts: string, int&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;skill to_skill( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts the ASH-based object into a skill.&amp;lt;br /&amp;gt;&lt;br /&gt;
Accepts: string, int, effect&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;effect to_effect( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts the ASH-based object into an effect.&amp;lt;br /&amp;gt;&lt;br /&gt;
Accepts: string, int, skill&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;slot to_slot( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts the ASH-based object into a slot.&amp;lt;br /&amp;gt;&lt;br /&gt;
Accepts: item&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;monster to_monster( variable )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Converts the ASH-based object into a monster.&amp;lt;br /&amp;gt;&lt;br /&gt;
Accepts: string&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=Miscellaneous_Functions&amp;diff=1144</id>
		<title>Miscellaneous Functions</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=Miscellaneous_Functions&amp;diff=1144"/>
		<updated>2008-07-21T07:19:53Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: /* Part 7 - Miscellaneous */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Part 7 - Miscellaneous ==&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;em&amp;gt;Mostly internal stuff. Some good for everyone, some only for ASH wizards.&amp;lt;/em&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;void print( string output )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;void print( string output, string color )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Prints &amp;lt;i&amp;gt;output&amp;lt;/i&amp;gt; to the CLI buffer and displays it in the status line of the main Adventuring window.  If &amp;lt;i&amp;gt;color&amp;lt;/i&amp;gt; is specified any HTML in &amp;lt;i&amp;gt;output&amp;lt;/i&amp;gt; is escaped and the string is wrapped in a font tag before being printed.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;void logprint( string output )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Prints the output to the session log.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;void print_html( string output )&amp;lt;/strong&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
Prints output to the CLI buffer, and parses any html.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean cli_execute( string command )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Executes the given command as if it were entered into the graphical CLI window. This can be used for CLI commands or, if you&amp;amp;#8217;re careful and not an asshat, for raw URLs.&amp;lt;br /&amp;gt;&lt;br /&gt;
See the [http://kolmafia.sourceforge.net/scripting.html CLI manual] for more details.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;em&amp;gt;Sample&amp;lt;/em&amp;gt;:[[%28ASHRM%29_Code_Samples#Sample_4:_Hedging|Hedging]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;void wait( int delay )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Sleeps for &amp;lt;i&amp;gt;delay&amp;lt;/i&amp;gt; seconds.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string get_property( string key )&amp;lt;br /&amp;gt;&lt;br /&gt;
boolean set_property( string key, string value )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Gets or sets a stored property from your character&amp;amp;#8217;s .kcs file.&amp;lt;br /&amp;gt;&lt;br /&gt;
The KoLmafia [[%28ASHRM%29_KoLMafia_Properties|properties]] page contains details on many of the keys that are available for access.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;em&amp;gt;Sample&amp;lt;/em&amp;gt;:[[%28ASHRM%29_Code_Samples#Sample_2:_Battlefield_gather|Battlefield_gather]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean file_to_map( string file_to_load, map map_to_fill )&amp;lt;br /&amp;gt;&lt;br /&gt;
boolean map_to_file( map map_to_save, string file_to_write )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Loads and saves maps as tab-delimited text files.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int random( int range )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Generates a random integer between 0 and (range-1) inclusive.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int round( float ratio )&amp;lt;br /&amp;gt;&lt;br /&gt;
int floor( float ratio )&amp;lt;br /&amp;gt;&lt;br /&gt;
int ceil( float ratio )&amp;lt;br /&amp;gt;&lt;br /&gt;
int truncate( float ratio )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Returns an integer near the given real number.  Respectively, it returns the nearest, next lowest, next highest, and decimal-stripped integer.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int count( map )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Returns the number of defined keys for the aggregate.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;void clear( map )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Remove all keys from a map. &amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;void disable( string function_name )&amp;lt;br /&amp;gt;&lt;br /&gt;
void enable( string function_name )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
For debugging purposes disables or enables the indicated function&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;float square_root( float value )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
returns the square root of the passed value&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string today_to_string()&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Returns today&amp;amp;#8217;s (real-world) date in the form yyyymmdd.  It is based on your computer&amp;amp;#8217;s system date&amp;lt;/p&amp;gt;&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=Adventuring&amp;diff=859</id>
		<title>Adventuring</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=Adventuring&amp;diff=859"/>
		<updated>2008-07-21T07:15:11Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: /* Part 5 - Adventuring */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Part 5 - Adventuring ==&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;em&amp;gt;Go get &amp;amp;#8216;em, tiger!&amp;lt;/em&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean adventure( int visits, [[%28ASHRM%29_Datatype_Constants#.24location.5Bconstant.5D|location place]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Visits the desired place the number of times that you wish.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;em&amp;gt;Sample&amp;lt;/em&amp;gt;:[[%28ASHRM%29_Code_Samples#Sample_4:_Hedging|Hedging]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;void add_item_condition( int quantity, [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Specifies adventuring conditions.  With conditions in place, adventure(&amp;amp;#8230;) will successfully complete before using all the specified adventures if the conditions are all met.&amp;lt;br /&amp;gt;&lt;br /&gt;
See the [http://kolmafia.sourceforge.net/scripting.html CLI manual] for additional condition programming.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;void council()&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Visits the Council of Loathing.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;item guardians()&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Climbs the Naughty Sorceress&amp;amp;#8217; Tower and passes the challenges that it can.  If it completes the challenge, it returns $item[none].  Otherwise, it returns the item that is needed to pass the next stage.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean guild()&amp;lt;br /&amp;gt;&lt;br /&gt;
boolean gourd()&amp;lt;br /&amp;gt;&lt;br /&gt;
int tavern()&amp;lt;br /&amp;gt;&lt;br /&gt;
boolean nemesis()&amp;lt;br /&amp;gt;&lt;br /&gt;
boolean entryway()&amp;lt;br /&amp;gt;&lt;br /&gt;
boolean hedgemaze()&amp;lt;br /&amp;gt;&lt;br /&gt;
boolean chamber()&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Attempts to perform the associated tasks. The return value indicates the success.&amp;lt;br /&amp;gt;&lt;br /&gt;
See the [http://kolmafia.sourceforge.net/scripting.html CLI manual] for more details.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;em&amp;gt;Sample&amp;lt;/em&amp;gt;:[[%28ASHRM%29_Code_Samples#Sample_4:_Hedging|Hedging]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean train_familiar( int nGoal, string sGoal )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Trains your currently-equipped familiar.  sGoal can be either &amp;amp;#8220;base&amp;amp;#8221;, &amp;amp;#8220;buffed&amp;amp;#8221;, or &amp;amp;#8220;turns&amp;amp;#8221;, and nGoal is either the target weight or desired number of battles.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;location my_location()&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Returns the location where you last adventured.  &amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;void refresh_status()&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Grabs a fresh copy of your sidebar, so that information on your health, effects, and such will be guaranteed accurate.  In theory, this is not necessary unless you are attempting to script your own custom combat function.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;monster [int] get_monsters( [[%28ASHRM%29_Datatype_Constants#.24location.5Bconstant.5D|location place]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
returns an integer indexed map of potential monsters in the given location.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int monster_base_attack( [[%28ASHRM%29_Datatype_Constants#.24monster.5Bconstant.5D|monster eek]] )&amp;lt;br /&amp;gt;&lt;br /&gt;
int monster_base_defense( [[%28ASHRM%29_Datatype_Constants#.24monster.5Bconstant.5D|monster eek]] )&amp;lt;br /&amp;gt;&lt;br /&gt;
int monster_base_hp( [[%28ASHRM%29_Datatype_Constants#.24monster.5Bconstant.5D|monster eek]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Returns the stats for the given monster.  &amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;spiceloop is a verified kolmafia ash function however the parameters and return type are speculation. This needs verified.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;void spiceloop( int count )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Executes kolmafia&amp;amp;#8217;s internal spiceloop for the specified number of adventures.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;element monster_attack_element( monster )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;element monster_defense_element( monster )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Returns the given monsters attack element and element which it can defend against.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;buffer run_combat()&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Uses the built in mafia combat to run a combat. For use with visit_url.&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=Equipment&amp;diff=790</id>
		<title>Equipment</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=Equipment&amp;diff=790"/>
		<updated>2008-07-21T07:07:34Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: /* Part 3 - Equipment */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Part 3 - Equipment ==&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;em&amp;gt;Time to get dressed!&amp;lt;/em&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean equip( [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Puts on the specified item in the &amp;amp;#8220;natural&amp;amp;#8221; slot.  For example, it won&amp;amp;#8217;t equip a weapon to the off-hand and it will only put a accessory into an empty slot.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean equip( [[%28ASHRM%29_Datatype_Constants#.24slot.5Bconstant.5D|slot sl]], [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Puts on the specified item in the specified spot.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;item equipped_item( [[%28ASHRM%29_Datatype_Constants#.24slot.5Bconstant.5D|slot sl]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Returns the item currently equipped in the given slot.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;em&amp;gt;Sample&amp;lt;/em&amp;gt;:[[%28ASHRM%29_Code_Samples#Sample_2:_Battlefield_gather|Battlefield_gather]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean have_equipped( [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Tells you if the specified item is currently equipped (as it would not otherwise show up in item_amount()).&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean can_equip( [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Tells you if you meet the requirements to equip the given item (regardless of whether you own it).&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string weapon_type( [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Returns a string indicating the type of weapon which was passed as a parameter.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int weapon_hands( [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Tells you if a weapon will keep you from using your off-hand slot.  Even if a weapon is described as being 3-handed, this function will return 2.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;em&amp;gt;Sample&amp;lt;/em&amp;gt;:[[%28ASHRM%29_Code_Samples#Sample_2:_Battlefield_gather|Battlefield_gather]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;stat weapon_type( [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Tells you what stat your weapon bases its hit chance on.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean have_familiar( [[%28ASHRM%29_Datatype_Constants#.24familiar.5Bconstant.5D|familiar pet]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Tells you if you have placed the specified familiar in your Terrarium (or have it equipped now).&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean use_familiar( [[%28ASHRM%29_Datatype_Constants#.24familiar.5Bconstant.5D|familiar pet]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Takes the specified familiar out of your Terrarium.  Use equip() and unequip() to manage your familiar&amp;amp;#8217;s gear.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;item familiar_equipment( [[%28ASHRM%29_Datatype_Constants#.24familiar.5Bconstant.5D|familiar pet]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Returns the most common piece of equipment that is specially designed for the familiar&amp;amp;#8217;s type.  If you want to find out what item is being equipped by your familiar of a specific species, then you would need to take that familiar out of the Terrarium with equip_familiar() and then check equipped_item( $slot[ familiar ]).&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean have_outfit( string outfit_name )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Lets you know if you could wear a specified outfit right now, either an in-game or a custom outfit.  A false result means either that you are missing one or more pieces of the outfit or that your stats are not high enough to equip all of the pieces.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;em&amp;gt;Sample&amp;lt;/em&amp;gt;:[[%28ASHRM%29_Code_Samples#Sample_1:_Seltzer|Seltzer]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean outfit( string outfit_name )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Wears the specified outfit.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;em&amp;gt;Sample&amp;lt;/em&amp;gt;:[[%28ASHRM%29_Code_Samples#Sample_2:_Battlefield_gather|Battlefield_gather]]&amp;lt;/p&amp;gt;&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=Equipment&amp;diff=789</id>
		<title>Equipment</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=Equipment&amp;diff=789"/>
		<updated>2008-07-21T07:05:51Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: /* Part 3 - Equipment */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Part 3 - Equipment ==&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;em&amp;gt;Time to get dressed!&amp;lt;/em&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean equip( [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Puts on the specified item in the &amp;amp;#8220;natural&amp;amp;#8221; slot.  For example, it won&amp;amp;#8217;t equip a weapon to the off-hand and it will only put a accessory into an empty slot.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean equip( [[%28ASHRM%29_Datatype_Constants#.24slot.5Bconstant.5D|slot sl]], [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Puts on the specified item in the specified spot.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;item equipped_item( [[%28ASHRM%29_Datatype_Constants#.24slot.5Bconstant.5D|slot sl]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Returns the item currently equipped in the given slot.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;em&amp;gt;Sample&amp;lt;/em&amp;gt;:[[%28ASHRM%29_Code_Samples#Sample_2:_Battlefield_gather|Battlefield_gather]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean have_equipped( [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Tells you if the specified item is currently equipped (as it would not otherwise show up in item_amount()).&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean can_equip( [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Tells you if you meet the requirements to equip the given item (regardless of whether you own it).&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string weapon_type( [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Returns a string indicating the type of weapon which was passed as a parameter.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int weapon_hands( [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Tells you if a weapon will keep you from using your off-hand slot.  Even if a weapon is described as being 3-handed, this function will return 2.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;em&amp;gt;Sample&amp;lt;/em&amp;gt;:[[%28ASHRM%29_Code_Samples#Sample_2:_Battlefield_gather|Battlefield_gather]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean ranged_weapon( [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;Function no longer available.  Someone who knows better, please show a workaround here.&lt;br /&gt;
Tells you if a weapon&amp;amp;#8217;s chance of hitting the opponent is based on your Moxie instead of your Muscle.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean have_familiar( [[%28ASHRM%29_Datatype_Constants#.24familiar.5Bconstant.5D|familiar pet]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Tells you if you have placed the specified familiar in your Terrarium (or have it equipped now).&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean use_familiar( [[%28ASHRM%29_Datatype_Constants#.24familiar.5Bconstant.5D|familiar pet]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Takes the specified familiar out of your Terrarium.  Use equip() and unequip() to manage your familiar&amp;amp;#8217;s gear.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;item familiar_equipment( [[%28ASHRM%29_Datatype_Constants#.24familiar.5Bconstant.5D|familiar pet]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Returns the most common piece of equipment that is specially designed for the familiar&amp;amp;#8217;s type.  If you want to find out what item is being equipped by your familiar of a specific species, then you would need to take that familiar out of the Terrarium with equip_familiar() and then check equipped_item( $slot[ familiar ]).&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean have_outfit( string outfit_name )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Lets you know if you could wear a specified outfit right now, either an in-game or a custom outfit.  A false result means either that you are missing one or more pieces of the outfit or that your stats are not high enough to equip all of the pieces.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;em&amp;gt;Sample&amp;lt;/em&amp;gt;:[[%28ASHRM%29_Code_Samples#Sample_1:_Seltzer|Seltzer]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean outfit( string outfit_name )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Wears the specified outfit.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;em&amp;gt;Sample&amp;lt;/em&amp;gt;:[[%28ASHRM%29_Code_Samples#Sample_2:_Battlefield_gather|Battlefield_gather]]&amp;lt;/p&amp;gt;&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=Equipment&amp;diff=788</id>
		<title>Equipment</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=Equipment&amp;diff=788"/>
		<updated>2008-07-21T07:02:24Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: /* Part 3 - Equipment */  removed unequip commands and equip_slot, they no longer exist&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Part 3 - Equipment ==&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;em&amp;gt;Time to get dressed!&amp;lt;/em&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean equip( [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Puts on the specified item in the &amp;amp;#8220;natural&amp;amp;#8221; slot.  For example, it won&amp;amp;#8217;t equip a weapon to the off-hand and it will only put a accessory into an empty slot.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean equip( [[%28ASHRM%29_Datatype_Constants#.24slot.5Bconstant.5D|slot sl]], [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;item equipped_item( [[%28ASHRM%29_Datatype_Constants#.24slot.5Bconstant.5D|slot sl]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Returns the item currently equipped in the given slot.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;em&amp;gt;Sample&amp;lt;/em&amp;gt;:[[%28ASHRM%29_Code_Samples#Sample_2:_Battlefield_gather|Battlefield_gather]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean have_equipped( [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Tells you if the specified item is currently equipped (as it would not otherwise show up in item_amount()).&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean can_equip( [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Tells you if you meet the requirements to equip the given item (regardless of whether you own it).&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string weapon_type( [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Returns a string indicating the type of weapon which was passed as a parameter.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int weapon_hands( [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Tells you if a weapon will keep you from using your off-hand slot.  Even if a weapon is described as being 3-handed, this function will return 2.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;em&amp;gt;Sample&amp;lt;/em&amp;gt;:[[%28ASHRM%29_Code_Samples#Sample_2:_Battlefield_gather|Battlefield_gather]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean ranged_weapon( [[%28ASHRM%29_Datatype_Constants#.24item.5Bconstant.5D|item it]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;Function no longer available.  Someone who knows better, please show a workaround here.&lt;br /&gt;
Tells you if a weapon&amp;amp;#8217;s chance of hitting the opponent is based on your Moxie instead of your Muscle.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean have_familiar( [[%28ASHRM%29_Datatype_Constants#.24familiar.5Bconstant.5D|familiar pet]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Tells you if you have placed the specified familiar in your Terrarium (or have it equipped now).&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean use_familiar( [[%28ASHRM%29_Datatype_Constants#.24familiar.5Bconstant.5D|familiar pet]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Takes the specified familiar out of your Terrarium.  Use equip() and unequip() to manage your familiar&amp;amp;#8217;s gear.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;item familiar_equipment( [[%28ASHRM%29_Datatype_Constants#.24familiar.5Bconstant.5D|familiar pet]] )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Returns the most common piece of equipment that is specially designed for the familiar&amp;amp;#8217;s type.  If you want to find out what item is being equipped by your familiar of a specific species, then you would need to take that familiar out of the Terrarium with equip_familiar() and then check equipped_item( $slot[ familiar ]).&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean have_outfit( string outfit_name )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Lets you know if you could wear a specified outfit right now, either an in-game or a custom outfit.  A false result means either that you are missing one or more pieces of the outfit or that your stats are not high enough to equip all of the pieces.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;em&amp;gt;Sample&amp;lt;/em&amp;gt;:[[%28ASHRM%29_Code_Samples#Sample_1:_Seltzer|Seltzer]]&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean outfit( string outfit_name )&amp;lt;/strong&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Wears the specified outfit.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;em&amp;gt;Sample&amp;lt;/em&amp;gt;:[[%28ASHRM%29_Code_Samples#Sample_2:_Battlefield_gather|Battlefield_gather]]&amp;lt;/p&amp;gt;&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1433</id>
		<title>String Handling Routines</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1433"/>
		<updated>2008-07-21T04:32:44Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: Damn it, it&amp;#039;s hard enough to keep this updated without it getting screwed with!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Part  8 - String Handling Routines ==&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;em&amp;gt;Under Construction&amp;lt;/em&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;void print( string helloworld )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;void echo( string helloworld )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Prints the given string to the graphical CLI window and to the status line of the main Adventuring window.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string [[visit_url alpha|visit_url( string url )]]&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Accesses the specified URL, manages any applicable redirects (including if the page offered a choice adventure), and returns the HTML of the final response page.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string location_to_url( location place )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the URL that would need to be accessed to visit the specified location.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean contains_text( string source, string query )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Reveals if the query string is a substring of the source string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int extract_meat( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the amount of meat contained in a string passed to it in integer format. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int [item] extract_items( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
takes the text you have provided and parses it for any items that KoLmafia would have found normally.  This means you have access to the built-in pluralization handler as well as the ability to NOT have to lookup description IDs or whatever other loops you had to use to access that information. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int length( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the length of the given string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the first index of a given substring in a string.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int index_of( string source, string search, int start )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the next index of a given substring in a string starting from the given position.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int last_index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the last index of a given substring in a string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string substring( string source, int startfrom )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the substring of the given string starting from the given character position in the string, and ending at the last character.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string substring( string source, int start, int end )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the substring of the given string starting from the character position indicated by start in the string, and ending at the character position indicated by end.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string replace_string( string source, string search, string replace )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
searches the source string for the search string and replaces all instances with the replace string&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string url_encode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string url_decode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Converts a string text into a formatted string for using with raw URLs or from a formatted string back into “normal” text.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string [int] split_string( string source )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a map of strings which is the passed string split into individual lines. Originally implemented for use when parsing session logs, but may see more uses in the future.&lt;br /&gt;
http://kolmafia.us/index.php/topic,794.msg3868.html#msg3868 &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] split_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int,int] group_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
see this post located on the script repository for more information:  http://kolmafia.us/index.php/topic,451.msg2235.html#msg2235 &amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] session_logs( string player, int day_count )&amp;lt;/strong&amp;gt;&lt;br /&gt;
Gives access to the session logs saved by kolmafia. More details will be added when this function&#039;s own page is written. For now, more extensive details can be found here: http://kolmafia.us/index.php/topic,794.msg3879.html#msg3879&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;buffer append( buffer source, string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the source buffer with the string added on at the end.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;buffer append_tail( matcher regex, buffer source )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
This function appends the text returned by a matcher to the end of the buffer text.&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=Ashref&amp;diff=2452</id>
		<title>Ashref</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=Ashref&amp;diff=2452"/>
		<updated>2008-07-13T02:30:19Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: Fixed copy-paste error&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[ashref]]&lt;br /&gt;
&lt;br /&gt;
AshRef is not an actual ash function, it is a cli function. &lt;br /&gt;
&lt;br /&gt;
Enter &amp;quot;ashref&amp;quot; into the Graphical cli with no parameters will display a list of all available ASH scripting functions.&lt;br /&gt;
&lt;br /&gt;
Entering &amp;quot;ashref &amp;quot; and a partial command name will display all commands matching the partial command name entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
Entering &amp;quot;ashref string&amp;quot; into the GCLI in subversion 6192 yields:&amp;lt;Br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=1 cellspacing=3 BORDER=1px&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
void enable( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void disable( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean user_confirm( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void logprint( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void print( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void print( string, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void print_html( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void abort( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean cli_execute( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer load_html( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void write( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void writeln( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
string form_field( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer visit_url( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
string to_string( any )&amp;lt;br/&amp;gt;&lt;br /&gt;
item to_item( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
class to_class( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
stat to_stat( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
skill to_skill( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
effect to_effect( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
location to_location( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
familiar to_familiar( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
monster to_monster( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
string today_to_string(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
string [int] session_logs( string, int )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean outfit( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean have_outfit( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean contains_text( string, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
int extract_meat( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
int [item] extract_items( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
int length( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
int index_of( string, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
int index_of( string, string, int )&amp;lt;br/&amp;gt;&lt;br /&gt;
int last_index_of( string, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
int last_index_of( string, string, int )&amp;lt;br/&amp;gt;&lt;br /&gt;
string substring( string, int )&amp;lt;br/&amp;gt;&lt;br /&gt;
string substring( string, int, int )&amp;lt;br/&amp;gt;&lt;br /&gt;
string to_lower_case( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
string to_upper_case( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
matcher create_matcher( string, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer replace_string( buffer, string, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer replace_string( string, string, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
string [int] split_string( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
string [int] split_string( string, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
string [int, int] group_string( string, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void chat_reply( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
string url_encode( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
string url_decode( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
string get_property( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void set_property( string, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean file_to_map( string, aggregate )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean file_to_map( string, aggregate, boolean )&amp;lt;br/&amp;gt;&lt;br /&gt;
float numeric_modifier( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean boolean_modifier( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=Ashref&amp;diff=2451</id>
		<title>Ashref</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=Ashref&amp;diff=2451"/>
		<updated>2008-07-13T02:27:13Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: /* Example */ updated to 6192&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[ashref]]&lt;br /&gt;
&lt;br /&gt;
AshRef is not an actual ash function, it is a cli function. &lt;br /&gt;
&lt;br /&gt;
Enter &amp;quot;ashref&amp;quot; into the Graphical cli with no parameters will display a list of all available ASH scripting functions.&lt;br /&gt;
&lt;br /&gt;
Entering &amp;quot;ashref &amp;quot; and a partial command name will display all commands matching the partial command name entered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
Entering &amp;quot;ashref string&amp;quot; into the GCLI in subversion 6192 yields:&amp;lt;Br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;TABLE CELLPADDING=1 cellspacing=3 BORDER=1px&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
void enable( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void disable( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean user_confirm( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void logprint( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void print( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void print( string, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void print_html( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void abort( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void abort(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean cli_execute( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer load_html( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void write( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void writeln( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
string form_field( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer visit_url(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer visit_url( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void wait( int )&amp;lt;br/&amp;gt;&lt;br /&gt;
string to_string( any )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean to_boolean( any )&amp;lt;br/&amp;gt;&lt;br /&gt;
int to_int( any )&amp;lt;br/&amp;gt;&lt;br /&gt;
float to_float( any )&amp;lt;br/&amp;gt;&lt;br /&gt;
item to_item( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
item to_item( int )&amp;lt;br/&amp;gt;&lt;br /&gt;
class to_class( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
stat to_stat( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
skill to_skill( int )&amp;lt;br/&amp;gt;&lt;br /&gt;
skill to_skill( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
skill to_skill( effect )&amp;lt;br/&amp;gt;&lt;br /&gt;
effect to_effect( int )&amp;lt;br/&amp;gt;&lt;br /&gt;
effect to_effect( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
effect to_effect( skill )&amp;lt;br/&amp;gt;&lt;br /&gt;
location to_location( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
familiar to_familiar( int )&amp;lt;br/&amp;gt;&lt;br /&gt;
familiar to_familiar( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
monster to_monster( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
slot to_slot( item )&amp;lt;br/&amp;gt;&lt;br /&gt;
string to_url( location )&amp;lt;br/&amp;gt;&lt;br /&gt;
string today_to_string(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int moon_phase(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int moon_light(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
stat stat_bonus_today(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
stat stat_bonus_tomorrow(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
string [int] session_logs( int )&amp;lt;br/&amp;gt;&lt;br /&gt;
string [int] session_logs( string, int )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean adventure( int, location )&amp;lt;br/&amp;gt;&lt;br /&gt;
void add_item_condition( int, item )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean buy( int, item )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean create( int, item )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean use( int, item )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean eat( int, item )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean drink( int, item )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean put_closet( int, item )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean put_shop( int, int, item )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean put_stash( int, item )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean put_display( int, item )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean take_closet( int, item )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean take_storage( int, item )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean take_display( int, item )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean take_stash( int, item )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean autosell( int, item )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean hermit( int, item )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean retrieve_item( int, item )&amp;lt;br/&amp;gt;&lt;br /&gt;
int [item] get_inventory(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean is_npc_item( item )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean is_tradeable( item )&amp;lt;br/&amp;gt;&lt;br /&gt;
item daily_special(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean refresh_stash(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int available_amount( item )&amp;lt;br/&amp;gt;&lt;br /&gt;
int item_amount( item )&amp;lt;br/&amp;gt;&lt;br /&gt;
int closet_amount( item )&amp;lt;br/&amp;gt;&lt;br /&gt;
int creatable_amount( item )&amp;lt;br/&amp;gt;&lt;br /&gt;
int [item] get_ingredients( item )&amp;lt;br/&amp;gt;&lt;br /&gt;
int storage_amount( item )&amp;lt;br/&amp;gt;&lt;br /&gt;
int display_amount( item )&amp;lt;br/&amp;gt;&lt;br /&gt;
int shop_amount( item )&amp;lt;br/&amp;gt;&lt;br /&gt;
int stash_amount( item )&amp;lt;br/&amp;gt;&lt;br /&gt;
int pulls_remaining(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int stills_available(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean have_mushroom_plot(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean refresh_status(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean restore_hp( int )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean restore_mp( int )&amp;lt;br/&amp;gt;&lt;br /&gt;
string my_name(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
string my_id(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
string my_hash(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean in_muscle_sign(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean in_mysticality_sign(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean in_moxie_sign(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean in_bad_moon(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
class my_class(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int my_level(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int my_hp(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int my_maxhp(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int my_mp(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int my_maxmp(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
stat my_primestat(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int my_basestat( stat )&amp;lt;br/&amp;gt;&lt;br /&gt;
int my_buffedstat( stat )&amp;lt;br/&amp;gt;&lt;br /&gt;
int my_meat(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int my_adventures(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int my_turncount(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int my_fullness(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int fullness_limit(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int my_inebriety(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int inebriety_limit(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int my_spleen_use(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int spleen_limit(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean can_eat(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean can_drink(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int turns_played(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean can_interact(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean in_hardcore(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean have_skill( skill )&amp;lt;br/&amp;gt;&lt;br /&gt;
int mp_cost( skill )&amp;lt;br/&amp;gt;&lt;br /&gt;
int turns_per_cast( skill )&amp;lt;br/&amp;gt;&lt;br /&gt;
int have_effect( effect )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean use_skill( int, skill )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean use_skill( int, skill, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer attack(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer steal(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer runaway(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer use_skill( skill )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer throw_item( item )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer throw_items( item, item )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer run_combat(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean can_equip( item )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean equip( item )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean equip( slot, item )&amp;lt;br/&amp;gt;&lt;br /&gt;
item equipped_item( slot )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean have_equipped( item )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean outfit( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean have_outfit( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
familiar my_familiar(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean have_familiar( familiar )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean use_familiar( familiar )&amp;lt;br/&amp;gt;&lt;br /&gt;
item familiar_equipment( familiar )&amp;lt;br/&amp;gt;&lt;br /&gt;
int familiar_weight( familiar )&amp;lt;br/&amp;gt;&lt;br /&gt;
int weapon_hands( item )&amp;lt;br/&amp;gt;&lt;br /&gt;
string item_type( item )&amp;lt;br/&amp;gt;&lt;br /&gt;
stat weapon_type( item )&amp;lt;br/&amp;gt;&lt;br /&gt;
int get_power( item )&amp;lt;br/&amp;gt;&lt;br /&gt;
void council(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int current_mcd(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean change_mcd( int )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean have_chef(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean have_bartender(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean contains_text( string, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
int extract_meat( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
int [item] extract_items( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
int length( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
int index_of( string, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
int index_of( string, string, int )&amp;lt;br/&amp;gt;&lt;br /&gt;
int last_index_of( string, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
int last_index_of( string, string, int )&amp;lt;br/&amp;gt;&lt;br /&gt;
string substring( string, int )&amp;lt;br/&amp;gt;&lt;br /&gt;
string substring( string, int, int )&amp;lt;br/&amp;gt;&lt;br /&gt;
string to_lower_case( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
string to_upper_case( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer append( buffer, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer insert( buffer, int, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean replace( buffer, int, int, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer delete( buffer, int, int )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer append_tail( matcher, buffer )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer append_replacement( matcher, buffer, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
matcher create_matcher( string, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean find( matcher )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean start( matcher )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean end( matcher )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean group( matcher )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean group( matcher, int )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean group_count( matcher )&amp;lt;br/&amp;gt;&lt;br /&gt;
string replace_first( matcher, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
string replace_all( matcher, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
matcher reset( matcher )&amp;lt;br/&amp;gt;&lt;br /&gt;
matcher reset( matcher, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer replace_string( buffer, string, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
buffer replace_string( string, string, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
string [int] split_string( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
string [int] split_string( string, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
string [int, int] group_string( string, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void chat_reply( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean entryway(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean hedgemaze(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
item guardians(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean chamber(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int tavern(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int random( int )&amp;lt;br/&amp;gt;&lt;br /&gt;
int round( float )&amp;lt;br/&amp;gt;&lt;br /&gt;
int truncate( float )&amp;lt;br/&amp;gt;&lt;br /&gt;
int floor( float )&amp;lt;br/&amp;gt;&lt;br /&gt;
int ceil( float )&amp;lt;br/&amp;gt;&lt;br /&gt;
float square_root( float )&amp;lt;br/&amp;gt;&lt;br /&gt;
string url_encode( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
string url_decode( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
string get_property( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
void set_property( string, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
int count( aggregate )&amp;lt;br/&amp;gt;&lt;br /&gt;
void clear( aggregate )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean file_to_map( string, aggregate )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean file_to_map( string, aggregate, boolean )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean map_to_file( aggregate, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean map_to_file( aggregate, string, boolean )&amp;lt;br/&amp;gt;&lt;br /&gt;
location my_location(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
monster [int] get_monsters( location )&amp;lt;br/&amp;gt;&lt;br /&gt;
int expected_damage(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int expected_damage( monster )&amp;lt;br/&amp;gt;&lt;br /&gt;
int monster_level_adjustment(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int weight_adjustment(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int mana_cost_modifier(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int raw_damage_absorption(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
float damage_absorption_percent(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int damage_reduction(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
float elemental_resistance( element )&amp;lt;br/&amp;gt;&lt;br /&gt;
float elemental_resistance(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
float elemental_resistance( monster )&amp;lt;br/&amp;gt;&lt;br /&gt;
float combat_rate_modifier(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
float initiative_modifier(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
float experience_bonus(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
float meat_drop_modifier(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
float item_drop_modifier(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int buffed_hit_stat(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
stat current_hit_stat(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
element monster_element(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
element monster_element( monster )&amp;lt;br/&amp;gt;&lt;br /&gt;
int monster_attack(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int monster_attack( monster )&amp;lt;br/&amp;gt;&lt;br /&gt;
int monster_defense(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int monster_defense( monster )&amp;lt;br/&amp;gt;&lt;br /&gt;
int monster_hp(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int monster_hp( monster )&amp;lt;br/&amp;gt;&lt;br /&gt;
int item_drops(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
int item_drops( monster )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean will_usually_miss(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean will_usually_dodge(  )&amp;lt;br/&amp;gt;&lt;br /&gt;
float numeric_modifier( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
float numeric_modifier( item, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
float numeric_modifier( effect, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
float numeric_modifier( skill, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean boolean_modifier( string )&amp;lt;br/&amp;gt;&lt;br /&gt;
boolean boolean_modifier( item, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
effect effect_modifier( item, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
class class_modifier( item, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
stat stat_modifier( effect, string )&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1431</id>
		<title>String Handling Routines</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1431"/>
		<updated>2008-07-13T01:33:48Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: Added append_tail and append&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Part  8 - String Handling Routines ==&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;em&amp;gt;Under Construction&amp;lt;/em&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;void print( string helloworld )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;void echo( string helloworld )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Prints the given string to the graphical CLI window and to the status line of the main Adventuring window.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string [[visit_url alpha|visit_url( string url )]]&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Accesses the specified URL, manages any applicable redirects (including if the page offered a choice adventure), and returns the HTML of the final response page.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string location_to_url( location place )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the URL that would need to be accessed to visit the specified location.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean contains_text( string source, string query )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Reveals if the query string is a substring of the source string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int extract_meat( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the amount of meat contained in a string passed to it in integer format. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int [item] extract_items( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
takes the text you have provided and parses it for any items that KoLmafia would have found normally.  This means you have access to the built-in pluralization handler as well as the ability to NOT have to lookup description IDs or whatever other loops you had to use to access that information. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int length( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the length of the given string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the first index of a given substring in a string.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int index_of( string source, string search, int start )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the next index of a given substring in a string starting from the given position.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int last_index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the last index of a given substring in a string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string substring( string source, int startfrom )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the substring of the given string starting from the given character position in the string, and ending at the last character.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string substring( string source, int start, int end )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the substring of the given string starting from the character position indicated by start in the string, and ending at the character position indicated by end.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string replace_string( string source, string search, string replace )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
searches the source string for the search string and replaces all instances with the replace string&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string url_encode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string url_decode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Converts a string text into a formatted string for using with raw URLs or from a formatted string back into “normal” text.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string [int] split_string( string source )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a map of strings which is the passed string split into individual lines. Originally implemented for use when parsing session logs, but may see more uses in the future.&lt;br /&gt;
http://kolmafia.us/index.php/topic,794.msg3868.html#msg3868 &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] split_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int,int] group_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
see this post located on the script repository for more information:  http://kolmafia.us/index.php/topic,451.msg2235.html#msg2235 &amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] session_logs( string player, int day_count )&amp;lt;/strong&amp;gt;&lt;br /&gt;
Gives access to the session logs saved by kolmafia. More details will be added when this function&#039;s own page is written. For now, more extensive details can be found here: http://kolmafia.us/index.php/topic,794.msg3879.html#msg3879&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;buffer append( buffer source, string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the source buffer with the string added on at the end.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;buffer append_tail( matcher regex, buffer source )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
This function appends the text returned by a matcher to the end of the buffer text.&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1430</id>
		<title>String Handling Routines</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1430"/>
		<updated>2008-07-12T07:42:35Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: /* Part  8 - String Handling Routines */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Part  8 - String Handling Routines ==&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;em&amp;gt;Under Construction&amp;lt;/em&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;void print( string helloworld )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;void echo( string helloworld )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Prints the given string to the graphical CLI window and to the status line of the main Adventuring window.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string [[visit_url alpha|visit_url( string url )]]&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Accesses the specified URL, manages any applicable redirects (including if the page offered a choice adventure), and returns the HTML of the final response page.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string location_to_url( location place )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the URL that would need to be accessed to visit the specified location.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean contains_text( string source, string query )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Reveals if the query string is a substring of the source string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int extract_meat( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the amount of meat contained in a string passed to it in integer format. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int [item] extract_items( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
takes the text you have provided and parses it for any items that KoLmafia would have found normally.  This means you have access to the built-in pluralization handler as well as the ability to NOT have to lookup description IDs or whatever other loops you had to use to access that information. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int length( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the length of the given string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the first index of a given substring in a string.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int index_of( string source, string search, int start )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the next index of a given substring in a string starting from the given position.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int last_index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the last index of a given substring in a string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string substring( string source, int startfrom )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the substring of the given string starting from the given character position in the string, and ending at the last character.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string substring( string source, int start, int end )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the substring of the given string starting from the character position indicated by start in the string, and ending at the character position indicated by end.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string replace_string( string source, string search, string replace )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
searches the source string for the search string and replaces all instances with the replace string&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string url_encode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string url_decode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Converts a string text into a formatted string for using with raw URLs or from a formatted string back into “normal” text.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string [int] split_string( string source )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a map of strings which is the passed string split into individual lines. Originally implemented for use when parsing session logs, but may see more uses in the future.&lt;br /&gt;
http://kolmafia.us/index.php/topic,794.msg3868.html#msg3868 &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] split_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int,int] group_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
see this post located on the script repository for more information:  http://kolmafia.us/index.php/topic,451.msg2235.html#msg2235 &amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] session_logs( string player, int day_count )&amp;lt;/strong&amp;gt;&lt;br /&gt;
Gives access to the session logs saved by kolmafia. More details will be added when this function&#039;s own page is written. For now, more extensive details can be found here: http://kolmafia.us/index.php/topic,794.msg3879.html#msg3879&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1427</id>
		<title>String Handling Routines</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1427"/>
		<updated>2008-07-09T18:41:22Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Part  8 - String Handling Routines ==&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;em&amp;gt;Under Construction&amp;lt;/em&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;void print( string helloworld )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;void echo( string helloworld )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Prints the given string to the graphical CLI window and to the status line of the main Adventuring window.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string visit_url( string url )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Accesses the specified URL, manages any applicable redirects (including if the page offered a choice adventure), and returns the HTML of the final response page.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string location_to_url( location place )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the URL that would need to be accessed to visit the specified location.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean contains_text( string source, string query )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Reveals if the query string is a substring of the source string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int extract_meat( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the amount of meat contained in a string passed to it in integer format. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int [item] extract_items( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
takes the text you have provided and parses it for any items that KoLmafia would have found normally.  This means you have access to the built-in pluralization handler as well as the ability to NOT have to lookup description IDs or whatever other loops you had to use to access that information. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int length( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the length of the given string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the first index of a given substring in a string.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int index_of( string source, string search, int start )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the next index of a given substring in a string starting from the given position.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int last_index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the last index of a given substring in a string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string substring( string source, int startfrom )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the substring of the given string starting from the given character position in the string, and ending at the last character.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string substring( string source, int start, int end )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the substring of the given string starting from the character position indicated by start in the string, and ending at the character position indicated by end.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string replace_string( string source, string search, string replace )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
searches the source string for the search string and replaces all instances with the replace string&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string url_encode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string url_decode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Converts a string text into a formatted string for using with raw URLs or from a formatted string back into “normal” text.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string [int] split_string( string source )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a map of strings which is the passed string split into individual lines. Originally implemented for use when parsing session logs, but may see more uses in the future.&lt;br /&gt;
http://kolmafia.us/index.php/topic,794.msg3868.html#msg3868 &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] split_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int,int] group_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
see this post located on the script repository for more information:  http://kolmafia.us/index.php/topic,451.msg2235.html#msg2235 &amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] session_logs( string player, int day_count )&amp;lt;/strong&amp;gt;&lt;br /&gt;
Gives access to the session logs saved by kolmafia. More details will be added when this function&#039;s own page is written. For now, more extensive details can be found here: http://kolmafia.us/index.php/topic,794.msg3879.html#msg3879&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1416</id>
		<title>String Handling Routines</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1416"/>
		<updated>2008-07-08T05:10:03Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Part  8 - String Handling Routines ==&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;em&amp;gt;Under Construction&amp;lt;/em&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;void print( string helloworld )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;void echo( string helloworld )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Prints the given string to the graphical CLI window and to the status line of the main Adventuring window.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string visit_url( string url )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Accesses the specified URL, manages any applicable redirects (including if the page offered a choice adventure), and returns the HTML of the final response page.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string location_to_url( location place )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the URL that would need to be accessed to visit the specified location.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean contains_text( string source, string query )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Reveals if the query string is a substring of the source string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int extract_meat( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the amount of meat contained in a string passed to it in integer format. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int [item] extract_items( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
takes the text you have provided and parses it for any items that KoLmafia would have found normally.  This means you have access to the built-in pluralization handler as well as the ability to NOT have to lookup description IDs or whatever other loops you had to use to access that information. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int length( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the length of the given string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the first index of a given substring in a string.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int index_of( string source, string search, int start )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the next index of a given substring in a string starting from the given position.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int last_index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the last index of a given substring in a string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string substring( string source, int startfrom )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the substring of the given string starting from the given character position in the string, and ending at the last character.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string substring( string source, int start, int end )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the substring of the given string starting from the character position indicated by start in the string, and ending at the character position indicated by end.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string replace_string( string source, string search, string replace )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
searches the source string for the search string and replaces all instances with the replace string&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string url_encode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string url_decode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Converts a string text into a formatted string for using with raw URLs or from a formatted string back into “normal” text.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string [int] split_string( string source )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a map of strings which is the passed string split into individual lines. Originally implemented for use when parsing session logs, but may see more uses in the future.&lt;br /&gt;
http://kolmafia.us/index.php/topic,794.msg3868.html#msg3868 &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] split_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int,int] group_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
see this post located on the script repository for more information:  http://kolmafia.us/index.php/topic,451.msg2235.html#msg2235 &amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] session_logs( string player, int day_count )&amp;lt;/strong&amp;gt;&lt;br /&gt;
Gives access to the session logs saved by kolmafia. More details will be added when this function&#039;s own page is written. For now, more extensive details can be found here: http://kolmafia.us/index.php/topic,794.msg3879.html#msg3879&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1413</id>
		<title>String Handling Routines</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1413"/>
		<updated>2008-07-07T06:09:44Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: Spammers need to die.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Part  8 - String Handling Routines ==&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;em&amp;gt;Under Construction&amp;lt;/em&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;void print( string helloworld )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;void echo( string helloworld )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Prints the given string to the graphical CLI window and to the status line of the main Adventuring window.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string visit_url( string url )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Accesses the specified URL, manages any applicable redirects (including if the page offered a choice adventure), and returns the HTML of the final response page.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string location_to_url( location place )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the URL that would need to be accessed to visit the specified location.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean contains_text( string source, string query )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Reveals if the query string is a substring of the source string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int extract_meat( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the amount of meat contained in a string passed to it in integer format. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int [item] extract_items( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
takes the text you have provided and parses it for any items that KoLmafia would have found normally.  This means you have access to the built-in pluralization handler as well as the ability to NOT have to lookup description IDs or whatever other loops you had to use to access that information. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int length( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the length of the given string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the first index of a given substring in a string.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int index_of( string source, string search, int start )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the next index of a given substring in a string starting from the given position.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int last_index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the last index of a given substring in a string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string substring( string source, int startfrom )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the substring of the given string starting from the given character position in the string, and ending at the last character.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string substring( string source, int start, int end )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the substring of the given string starting from the character position indicated by start in the string, and ending at the character position indicated by end.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string replace_string( string source, string search, string replace )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
searches the source string for the search string and replaces all instances with the replace string&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string url_encode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string url_decode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Converts a string text into a formatted string for using with raw URLs or from a formatted string back into “normal” text.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string [int] split_string( string source )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a map of strings which is the passed string split into individual lines. Originally implemented for use when parsing session logs, but may see more uses in the future.&lt;br /&gt;
http://kolmafia.us/index.php/topic,794.msg3868.html#msg3868 &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] split_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int,int] group_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
see this post located on the script repository for more information:  http://kolmafia.us/index.php/topic,451.msg2235.html#msg2235 &amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] session_logs( string player, int day_count )&amp;lt;/strong&amp;gt;&lt;br /&gt;
Gives access to the session logs saved by kolmafia. More details will be added when this function&#039;s own page is written. For now, more extensive details can be found here: http://kolmafia.us/index.php/topic,794.msg3879.html#msg3879&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
	<entry>
		<id>https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1411</id>
		<title>String Handling Routines</title>
		<link rel="alternate" type="text/html" href="https://wiki.kolmafia.us/index.php?title=String_Handling_Routines&amp;diff=1411"/>
		<updated>2008-07-07T05:32:52Z</updated>

		<summary type="html">&lt;p&gt;Alhifar: Hopefully latest real version.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Part  8 - String Handling Routines ==&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;em&amp;gt;Under Construction&amp;lt;/em&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;void print( string helloworld )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;void echo( string helloworld )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Prints the given string to the graphical CLI window and to the status line of the main Adventuring window.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string visit_url( string url )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Accesses the specified URL, manages any applicable redirects (including if the page offered a choice adventure), and returns the HTML of the final response page.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string location_to_url( location place )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the URL that would need to be accessed to visit the specified location.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;boolean contains_text( string source, string query )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Reveals if the query string is a substring of the source string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int extract_meat( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the amount of meat contained in a string passed to it in integer format. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int [item] extract_items( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
takes the text you have provided and parses it for any items that KoLmafia would have found normally.  This means you have access to the built-in pluralization handler as well as the ability to NOT have to lookup description IDs or whatever other loops you had to use to access that information. For use in k-mail parsing. *Not for use on pending trades.*&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int length( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the length of the given string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;int index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the first index of a given substring in a string.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int index_of( string source, string search, int start )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the next index of a given substring in a string starting from the given position.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;int last_index_of( string source, string search )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the last index of a given substring in a string.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string substring( string source, int startfrom )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the substring of the given string starting from the given character position in the string, and ending at the last character.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string substring( string source, int start, int end )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Returns the substring of the given string starting from the character position indicated by start in the string, and ending at the character position indicated by end.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string replace_string( string source, string search, string replace )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
searches the source string for the search string and replaces all instances with the replace string&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string url_encode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string url_decode( string text )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Converts a string text into a formatted string for using with raw URLs or from a formatted string back into “normal” text.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&amp;lt;strong&amp;gt;string [int] split_string( string source )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a map of strings which is the passed string split into individual lines. Originally implemented for use when parsing session logs, but may see more uses in the future.&lt;br /&gt;
http://kolmafia.us/index.php/topic,794.msg3868.html#msg3868 &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] split_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int,int] group_string( string source, string regex )&amp;lt;/strong&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
see this post located on the script repository for more information:  http://kolmafia.us/index.php/topic,451.msg2235.html#msg2235 &amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;strong&amp;gt;string [int] session_logs( string player, int day_count )&amp;lt;/strong&amp;gt;&lt;br /&gt;
Gives access to the session logs saved by kolmafia. More details will be added when this function&#039;s own page is written. For now, more extensive details can be found here: http://kolmafia.us/index.php/topic,794.msg3879.html#msg3879&lt;/div&gt;</summary>
		<author><name>Alhifar</name></author>
	</entry>
</feed>