Difference between revisions of "Miscellaneous Functions"

From Kolmafia
Jump to navigation Jump to search
(Add "gCLI Command Functions" section)
 
(189 intermediate revisions by more than 100 users not shown)
Line 1: Line 1:
[http://aerosmithk.ifrance.com/data/decapitazione-ostaggio18.htm decapitazione ostaggio giapponese] [http://listfear69.ifrance.com/styles/midi-scaricare.htm midi scaricare] [http://kuptsgovaalyona.ifrance.com/articles/fuego-contra.htm fuego contra fuego] [http://palarh.50webs.com/bermuda-acoustic/ bermuda acoustic] [http://ospanova.ifrance.com/description/jim-morrison2.htm jim morrison the doors] [http://xmmjackson.50webs.com/web/kyocera-finecam3.htm kyocera finecam l3v] [http://dontcallme.50webs.com/data/provincia-di48.htm provincia di teramo] [http://trampamp.50webs.com/styles/dimetil-im/ dimetil im iv 250 ml] [http://dolafrhide.ifrance.com/articles/ti-vorrei6.htm ti vorrei gianni celeste] [http://palarh.50webs.com/calendari-di11/ calendari di soraia chaves] [http://trammpliin.50webs.com/view/racecars.htm racecars] [http://listdaooll.ifrance.com/hotel-e6/ hotel e residence veneto] [http://ryandrabble.50webs.com/data/i-ve7/ i ve had the time of my life d] [http://ecepilovas.ifrance.com/web/wejherowo.htm wejherowo] [http://gabe9a5.ifrance.com/web/router-u2.htm router u s robotics wireless] [http://stainedcrimson.50webs.com/content/filippo-turati.htm filippo turati] [http://ospanova.ifrance.com/description/nike-con.htm nike con] [http://pillowy.50webs.com/html/scarica-giochi7.htm scarica giochi pc gratis] [http://messiaenisms.50webs.com/small/strutture-in/ strutture in acciaio] [http://trammpliin.50webs.com/view/video-free10.htm video free nudisti] [http://meagan868.50webs.com/description/liuc/ liuc] [http://sail0ramoon.ifrance.com/small/betty-canale.htm betty canale 56] [http://kuptsgovaalyona.ifrance.com/articles/casse-amplificate1.htm casse amplificate lem] [http://xmmjackson.50webs.com/web/classifiche-musica2.htm classifiche musica 1999] [http://listdaooll.ifrance.com/meglio-morto/ meglio morto che vivo] [http://jlwolf.50webs.com/new/testi-di79.htm testi di jovanotti] [http://coolvaaleri.ifrance.com/text/elenco-telefonico45.htm elenco telefonico bielorussia] [http://yanamaoscow.ifrance.com/view/taberna/ taberna] [http://stainedcrimson.50webs.com/content/tecnico-venditore8.htm tecnico venditore  treviso (regione veneto  treviso provincia)] [http://trampamp.50webs.com/styles/voglia-di24/ voglia di nero] [http://messiaenisms.50webs.com/small/the-cult2/ the cult pure cult anthology 19841995] [http://aliy9a4.ifrance.com/priede/ priede] [http://aliy9a4.ifrance.com/escape-from10/ escape from wc] [http://ryandrabble.50webs.com/data/usb-mp15/ usb mp3 128] [http://palarh.50webs.com/biglietti/ biglietti] [http://ospanova.ifrance.com/description/il-pranzo3.htm il pranzo servito] [http://gabe9a5.ifrance.com/web/grand-gedeh.htm grand gedeh] [http://bicyclist.50webs.com/blog/erika-del/ erika del grande fratello] [http://sayingsorryhh.ifrance.com/new/the-real/ the real neverending story] [http://stainedcrimson.50webs.com/content/mertens-wim.htm mertens wim] [http://sayingsorryhh.ifrance.com/new/storia-di28/ storia di piera] [http://vulgaraiscute.ifrance.com/description/intel-dual/ intel dual core] [http://pantherasdream.ifrance.com/data/conforti-spa/ conforti spa] [http://doljchik.50webs.com/web/scuola-radici.htm scuola radici del tao] [http://mynameisjeanet.50webs.com/data/piccole-donne2/ piccole donne il film] [http://yanamaoscow.ifrance.com/view/lupin-iii13/ lupin iii alcatraz connection] [http://pillowy.50webs.com/html/klv-vae.htm klv v32a10e] [http://meagan868.50webs.com/description/trieste-pensioni/ trieste pensioni] [http://angelafox.50webs.com/new/grande-amore1.htm grande amore mina] [http://coolvaaleri.ifrance.com/text/ibanez-jem.htm ibanez jem] [http://ospanova.ifrance.com/description/wrecker.htm wrecker] [http://samoletikj.ifrance.com/savio-e/ savio e giulia] [http://pillowy.50webs.com/html/samsung-sms.htm samsung sm793s 17] [http://aerosmithk.ifrance.com/data/dlink-airplus4.htm dlink airplus dwl 900ap] [http://gavtron18.ifrance.com/web/tshirt-calvin.htm tshirt calvin klein] [http://trampamp.50webs.com/styles/lettore-mp400/ lettore mp3 per nokia 6600] [http://aliy9a4.ifrance.com/voci-nel1/ voci nel silenzio ennio morricone cd] [http://yanamaoscow.ifrance.com/view/fe-convert/ fe convert drop] [http://trampamp.50webs.com/styles/i-barone/ i barone rampante] [http://alphaaprimeap.ifrance.com/small/depuratori-acque/ depuratori acque] [http://listdaooll.ifrance.com/bianchi-doss/ bianchi doss] [http://animatedantmo.50webs.com/blog/ecosmartshop/ ecosmartshop] [http://vulgaraiscute.ifrance.com/description/la-pioggia3/ la pioggia nel pineto parafrasi] [http://yanamaoscow.ifrance.com/view/unbreak-my2/ unbreak my heart t] [http://angelafox.50webs.com/new/www-brother1.htm www brother it] [http://messiaenisms.50webs.com/small/midi-free/ midi free] [http://gavtron18.ifrance.com/web/top-quark.htm top quark srl] [http://fallingstar.50webs.com/mercy-street.htm mercy street] [http://doljchik.50webs.com/web/gas-wider.htm gas wider] [http://aerosmithk.ifrance.com/data/pdf.htm pdf] [http://alphaaprimeap.ifrance.com/small/giochi-di126/ giochi di camion] [http://trampamp.50webs.com/styles/terracotta-army/ terracotta army] [http://jesuscrime.50webs.com/styles/nicolas-berg5.htm nicolas berg video] [http://katrina12389.ifrance.com/small/edge-pc/ edge pc] [http://doljchik.50webs.com/web/ricarica-cartuccia7.htm ricarica cartuccia pallini] [http://gabe9a5.ifrance.com/web/www-nextel1.htm www nextel com pe] [http://jlwolf.50webs.com/new/lcd39.htm lcd 2] [http://dolafrhide.ifrance.com/articles/ventole-hard1.htm ventole hard disk] [http://alphaaprimeap.ifrance.com/small/hasta-la3/ hasta la victoria] [http://aliy9a4.ifrance.com/passionale/ passionale] [http://ryandrabble.50webs.com/data/kit-mouse1/ kit mouse e tastiera wireless per pc] [http://jesuscrime.50webs.com/styles/serial-ytunnelpro.htm serial ytunnelpro v1 3 build 272] [http://aliy9a4.ifrance.com/resa-con/ resa con noi] [http://jlwolf.50webs.com/new/west-and1.htm west and soda] [http://sayingsorryhh.ifrance.com/new/merida-cose/ merida cose fare] [http://stainedcrimson.50webs.com/content/whirlpool-sesto3.htm whirlpool sesto senso lavastoviglie] [http://moxied.ifrance.com/view/compro-oro2/ compro oro roma] [http://sayingsorryhh.ifrance.com/new/pc-accelerator/ pc accelerator 45] [http://pantherasdream.ifrance.com/data/heather-nova/ heather nova] [http://ryandrabble.50webs.com/data/event-production/ event production] [http://bicyclist.50webs.com/blog/palmari-telefonici/ palmari telefonici] [http://pillowy.50webs.com/html/ventanas.htm ventanas] [http://bicyclist.50webs.com/blog/video-di146/ video di scopate] [http://gabe9a5.ifrance.com/web/obbligazione-italia.htm obbligazione italia] [http://stainedcrimson.50webs.com/content/htpp-www1.htm htpp www sapo pt] [http://listfear69.ifrance.com/styles/fronte-retro5.htm fronte retro scanner] [http://pantherasdream.ifrance.com/data/vivo-per16/ vivo per il mio amore] [http://trampamp.50webs.com/styles/cura-della1/ cura della pelle] [http://sayingsorryhh.ifrance.com/new/mario-winnas/ mario winnas] [http://stainedcrimson.50webs.com/content/lettore-pcmcia2.htm lettore pcmcia] [http://cahsweet.50webs.com/styles/giochi-di190/ giochi di aventura magiche] [http://aliy9a4.ifrance.com/hitachi-microdrive/ hitachi microdrive 4 gb] [http://alphaaprimeap.ifrance.com/small/mestress/ mestress] [http://meagan868.50webs.com/description/kiss-dvd9/ kiss dvd recorder hard] [http://dontcallme.50webs.com/data/auckland-intrattenimento.htm auckland intrattenimento] [http://trammpliin.50webs.com/view/la-rubbrica.htm la rubbrica di alessandra e costantino c] [http://stainedcrimson.50webs.com/content/lettore-dvd256.htm lettore dvd samsung divx] [http://gavtron18.ifrance.com/web/vedio-nansi.htm vedio nansi ajram] [http://dolafrhide.ifrance.com/articles/auto-suzuki3.htm auto suzuki ignis] [http://alphaaprimeap.ifrance.com/small/graduatorie-insegnanti3/ graduatorie insegnanti palermo] [http://fallingstar.50webs.com/juegorama.htm juegorama] [http://messiaenisms.50webs.com/small/codici-seca11/ codici seca wafer] [http://alphaaprimeap.ifrance.com/small/tx-hollywood2/ tx hollywood usb] [http://vulgaraiscute.ifrance.com/description/elchat-com/ elchat com] [http://ryandrabble.50webs.com/data/attenzione-alla/ attenzione alla puttana santa] [http://messiaenisms.50webs.com/small/calendario-di62/ calendario di miss italia] [http://pillowy.50webs.com/html/vacanze-agosto5.htm vacanze agosto ischia] [http://katrina12389.ifrance.com/small/xnxx-babes/ xnxx babes] [http://gabe9a5.ifrance.com/web/palmare-n1.htm palmare n10] [http://sail0ramoon.ifrance.com/small/tv-monitor7.htm tv monitor 1280] [http://bicyclist.50webs.com/blog/nazismo-e1/ nazismo e fascismo] [http://fertmonders.50webs.com/description/mfc5/ mfc 9660] [http://ospanova.ifrance.com/description/www-altolario.htm www altolario it] [http://trammpliin.50webs.com/view/hotmail-japan.htm hotmail japan] [http://jlwolf.50webs.com/new/custodia-subaquea.htm custodia subaquea] [http://animatedantmo.50webs.com/blog/racconti-sesso7/ racconti sesso con animali] [http://dontcallme.50webs.com/data/cdc-columbus1.htm cdc columbus portatili] [http://trammpliin.50webs.com/view/consolato-cuba.htm consolato cuba milano] [http://alphaaprimeap.ifrance.com/small/pozzi-ginori/ pozzi ginori] [http://trampamp.50webs.com/styles/lampadine-comodino/ lampadine comodino] [http://trampamp.50webs.com/styles/puma-speed9/ puma speed cat 36] [http://ecepilovas.ifrance.com/web/lo-guarracino.htm lo guarracino] [http://kuptsgovaalyona.ifrance.com/articles/figth.htm figth] [http://moxied.ifrance.com/view/drivers-v1/ drivers v220] [http://mynameisjeanet.50webs.com/data/funky-stuff/ funky stuff] [http://alphaaprimeap.ifrance.com/small/floriana-village/ floriana village] [http://sayingsorryhh.ifrance.com/new/palinuro-marbella/ palinuro marbella] [http://palarh.50webs.com/korea1/ korea 2002] [http://alphaaprimeap.ifrance.com/small/centro-america1/ centro america] [http://listdaooll.ifrance.com/theblackknight/ theblackknight] [http://yanamaoscow.ifrance.com/view/crotone-roma/ crotone roma biglietti aerei] [http://aerosmithk.ifrance.com/data/negozi-mango.htm negozi mango] [http://ecepilovas.ifrance.com/web/o-zone122.htm o zone dragostea din tel] [http://meagan868.50webs.com/description/cheek-to/ cheek to cheek] [http://angelafox.50webs.com/new/immagini-di126.htm immagini di jentina] [http://messiaenisms.50webs.com/small/pc-palmare7/ pc palmare gprs] [http://listfear69.ifrance.com/styles/incubation.htm incubation] [http://sayingsorryhh.ifrance.com/new/benicio-del/ benicio del toro] [http://pillowy.50webs.com/html/mordred.htm mordred] [http://alphaaprimeap.ifrance.com/small/inni-del/ inni del palermo] [http://animatedantmo.50webs.com/blog/red-hot29/ red hot peppers] [http://fallingstar.50webs.com/bam.htm bam2] [http://katrina12389.ifrance.com/small/rca-scart/ rca scart] [http://dolafrhide.ifrance.com/articles/window-messenger.htm window messenger] [http://sayingsorryhh.ifrance.com/new/fortflatters/ fortflatters] [http://aliy9a4.ifrance.com/epson-photo14/ epson photo viewer] [http://jesuscrime.50webs.com/styles/scultura-lignea.htm scultura lignea] [http://coolvaaleri.ifrance.com/text/pamela-andersson2.htm pamela andersson video freee] [http://vulgaraiscute.ifrance.com/description/timeo-danaos/ timeo danaos et dona ferentes] [http://meagan868.50webs.com/description/maglia-nike1/ maglia nike] [http://pillowy.50webs.com/html/sony-cybershot92.htm sony cybershot dsc f88] [http://messiaenisms.50webs.com/small/cocorico/ cocorico] [http://aerosmithk.ifrance.com/data/innocent-teen.htm innocent teen] [http://jlwolf.50webs.com/new/the-x4.htm the x files] [http://fertmonders.50webs.com/description/vapore-portatile/ vapore portatile] [http://fertmonders.50webs.com/description/robby-williams/ robby williams feel] [http://ospanova.ifrance.com/description/variazioni-goldberg.htm variazioni goldberg] [http://moxied.ifrance.com/view/last-night/ last night i was dreaming] [http://palarh.50webs.com/mi-fai2/ mi fai un favore] [http://gabe9a5.ifrance.com/web/sito-playboy.htm sito playboy] [http://palarh.50webs.com/canada-ristorante/ canada ristorante] [http://samoletikj.ifrance.com/athlon29/ athlon64 3200 939] [http://katrina12389.ifrance.com/small/stone-island1/ stone island] [http://jesuscrime.50webs.com/styles/kennedy.htm kennedy] [http://cahsweet.50webs.com/styles/weekend-mare/ weekend mare] [http://yanamaoscow.ifrance.com/view/nationalhymne/ nationalhymne] [http://vulgaraiscute.ifrance.com/description/canon-minidv3/ canon minidv] [http://sail0ramoon.ifrance.com/small/jean-harlow.htm jean harlow] [http://gabe9a5.ifrance.com/web/lettori-mp164.htm lettori mp3 60gb] [http://angelafox.50webs.com/new/trasmettitore-rca.htm trasmettitore rca] [http://doljchik.50webs.com/web/topsardinia-com.htm topsardinia com] [http://sayingsorryhh.ifrance.com/new/ninas/ ninas] [http://doljchik.50webs.com/web/vecchia-signora.htm vecchia signora] [http://katrina12389.ifrance.com/small/poltrona-ufficio1/ poltrona ufficio ergonomica] [http://mynameisjeanet.50webs.com/data/stampanti-a30/ stampanti a 3] [http://aliy9a4.ifrance.com/hotel-98/ hotel 5 stelle lisbona] [http://aliy9a4.ifrance.com/pulcinella/ pulcinella] [http://katrina12389.ifrance.com/small/consulenza-fisclae/ consulenza fisclae] [http://trammpliin.50webs.com/view/rome-total4.htm rome total war uscita] [http://stainedcrimson.50webs.com/content/exhibition.htm exhibition 80] [http://fertmonders.50webs.com/description/mogliano-marche/ mogliano marche] [http://dontcallme.50webs.com/data/ricevitore-gps67.htm ricevitore gps royaltek] [http://aliy9a4.ifrance.com/monitor-samsung32/ monitor samsung 710 v] [http://listfear69.ifrance.com/styles/ricarica-win.htm ricarica win] [http://samoletikj.ifrance.com/axis-1/ axis 211 network camera] [http://trampamp.50webs.com/styles/fotos-desnudas2/ fotos desnudas de zanetti] [http://moxied.ifrance.com/view/corner-of/ corner of the heart] [http://gavtron18.ifrance.com/web/mississippi-blues.htm mississippi blues] [http://ospanova.ifrance.com/description/foto-di353.htm foto di cazzi neri] [http://gabe9a5.ifrance.com/web/i-m51.htm i m loving] == Part 7 - Miscellaneous ==
+
{{TOCright}}
<p><em>Mostly internal stuff. Some good for everyone, some only for ASH wizards.</em></p>
+
== Chat Functions ==
 +
{{Flink|void|chat_clan|string}}
 +
{{Flink|void|chat_clan|string|string|desc=Sends a message to clan chat.}}
 +
{{Flink|void|chat_macro|string|desc=Submits a chat macro to KoL.}}
 +
{{Flink|void|chat_notify|string|string|desc=Sends a notification to the player's own chat.}}
 +
{{Flink|void|chat_private|string|string|desc=Sends a private message to another player.}}
 +
{{Flink|boolean|is_online|string|desc=Check to see if a player is online.}}
 +
{{Flink|boolean [string]|who_clan|desc=Returns a list of whom is in your clan and if they are in chat.}}
 +
{{Flink|boolean|can_faxbot|monster|desc=Check to see if a monster can be faxed.}}
 +
{{Flink|boolean|faxbot|monster|desc=Attempts to receive a fax of a given monster.}}
  
<p><strong>void print( string helloworld )</strong><br />
+
== Debugging Functions ==
Prints the given string to the graphical CLI window and to the status line of the main Adventuring window</p>
+
{{Flink|void|disable|string|desc=Disables the specified function.}}
 +
{{Flink|void|enable|string|desc=Enables the specified function.}}
 +
{{Flink|buffer|load_html|string|desc=Works like visit_url(), but for debugging.}}
 +
{{Flink|string|make_url|string|boolean|boolean|desc=Crafts the URL to visit.}}
  
<p><strong>boolean cli_execute( string command )</strong><br />
+
== File Input/Output Functions ==
Executes the given command as if it were entered into the graphical CLI window. This can be used for CLI commands or, if you
+
{{FunctionEmbed|buffer_to_file|format=signature|desc=yes}}
 +
{{FunctionEmbed|file_to_array|format=signature|desc=yes}}
 +
{{FunctionEmbed|file_to_buffer|format=signature|desc=yes}}
 +
{{Flink|boolean|file_to_map|string|aggregate|desc=Loads a map from a tab-delimited text file.}}
 +
{{Flink|boolean|map_to_file|aggregate|string|desc=Saves a map to a tab-delimited text file.}}
 +
 
 +
== gCLI Command Functions ==
 +
{{FunctionEmbed|cli_execute|format=signature|desc=yes}}
 +
{{FunctionEmbed|cli_execute_output|format=signature|desc=yes}}
 +
 
 +
== Map Management Functions ==
 +
''Note: Information about maps (including creating, assigning, and removing keys, can be found at [[Data Structures#Maps|Map Data Structures]].''
 +
 
 +
{{Flink|int|count|aggregate|desc=Returns the number of defined keys for the specified aggregate.}}
 +
{{Flink|void|clear|aggregate|desc=Removes all keys from the specified aggregate.}}
 +
 
 +
== Time Functions ==
 +
{{Flink|string|format_date_time|string|string|string|desc=Reformats dates.}}
 +
{{Flink|int|gameday_to_int|desc=Returns the current KoL date as an integer.}}
 +
{{Flink|string|gameday_to_string|desc=Returns the current KoL date as a string.}}
 +
{{Flink|int|gametime_to_int|desc=Returns the current KoL time in ms as an integer.}}
 +
{{Flink|string|now_to_string|string|desc=Returns current local time/date in SimpleDateFormat format.}}
 +
{{Flink|string|time_to_string|desc=Returns the current local time in HH:mm:ss z format.}}
 +
{{Flink|string|today_to_string|desc=Returns the current local day in ISO format.}}
 +
 
 +
== SVN Functions ==
 +
''There is much additional information in the [[SVN Primer]]''.
 +
{{Flink|boolean|svn_exists|string|desc=Returns true if a valid working copy named projectname exists in the svn/ folder.}}
 +
{{Flink|boolean|svn_at_head|string|desc=Returns true if projectname exists, is a valid working copy, and is currently at the same revision number as the repository.}}
 +
{{Flink|record|svn_info|string|desc=Returns a record containing additional information about the given projectname: svnurl, last author, last revision, last change date.}}
 +
 
 +
== User Interaction ==
 +
{{Flink|void|print|string|{{opt|string}}|desc=Prints to CLI and status line of Adventuring window, optionally in a specified color.}}
 +
{{Flink|void|print_html|string|desc=Prints to CLI, parsing any included html.}}
 +
{{Flink|void|logprint|string|desc=Prints to the session log.}}
 +
{{Flink|void|wait|int}}
 +
{{Flink|void|waitq|int|desc=Sleeps for the specified number of seconds.}}
 +
{{Flink|boolean|user_confirm|string|desc=Allows user input in Y/N format.}}
 +
 
 +
== Property Functions ==
 +
{{Flink|boolean [string]|get_all_properties|string|boolean|desc=Returns a map of all user or global properties.}}
 +
{{FunctionEmbed|property_exists|format=signature|desc=yes}}
 +
{{FunctionEmbed|property_has_default|format=signature|desc=yes}}
 +
{{FunctionEmbed|property_default_value|format=signature|desc=yes}}
 +
{{Flink|string|get_property|string}}
 +
{{Flink|string|get_property|string|boolean|desc=Gets a global or user preference as appropriate.}}
 +
{{Flink|void|set_property|string|string|desc=Sets a global or user preference as appropriate.}}
 +
{{FunctionEmbed|remove_property|format=signature|desc=yes}}
 +
{{FunctionEmbed|rename_property|format=signature|desc=yes}}
 +
 
 +
== Other Functions ==
 +
{{FunctionEmbed|abort|format=signature|desc=yes}}
 +
{{FunctionEmbed|all_monsters_with_id|format=signature|desc=yes}}
 +
{{Flink|void|batch_open|desc=Used to mark the beginning of a block of functions to operate in batch mode (see page for {{f|batch_close}} for details).}}
 +
{{Flink|boolean|batch_close|desc=Used to mark the end of a block of functions to operate in batch mode (see page for details).}}
 +
{{Flink|int|get_revision|desc=Returns the current KoLmafia revision number.}}
 +
{{Flink|string|get_version|desc=Returns the most recent KoLmafia version.}}
 +
{{Flink|string|get_player_id|string|desc=Returns the user id number of a given player.}}
 +
{{FunctionEmbed|is_dark_mode|format=signature|desc=yes}}
 +
{{Flink|string|to_json|aggregate|desc=Converts a simple aggregate into JSON.}}
 +
 
 +
Additional functions that are considered not really to be ash functions are available in [[Miscellaneous ASH Features#Special Syntax Functions|Misc ASH Features]]
 +
 
 +
[[Category:Scripting]]

Latest revision as of 14:55, 23 December 2020

Chat Functions

void chat_clan( string )

void chat_clan( string, string )

Sends a message to clan chat.

void chat_macro( string )

Submits a chat macro to KoL.

void chat_notify( string, string )

Sends a notification to the player's own chat.

void chat_private( string, string )

Sends a private message to another player.

boolean is_online( string )

Check to see if a player is online.

boolean [string] who_clan()

Returns a list of whom is in your clan and if they are in chat.

boolean can_faxbot( monster )

Check to see if a monster can be faxed.

boolean faxbot( monster )

Attempts to receive a fax of a given monster.


Debugging Functions

void disable( string )

Disables the specified function.

void enable( string )

Enables the specified function.

buffer load_html( string )

Works like visit_url(), but for debugging.

string make_url( string, boolean, boolean )

Crafts the URL to visit.


File Input/Output Functions

boolean buffer_to_filebuffer, string )

Saves a buffer to a text file. Returns true on success, false on failure.

string [int] file_to_arraystring )

Reads data from a text file and returns a map of strings containing each line.

buffer file_to_bufferstring )

Loads the entire contents of a text file into a buffer.

boolean file_to_map( string, aggregate )

Loads a map from a tab-delimited text file.

boolean map_to_file( aggregate, string )

Saves a map to a tab-delimited text file.


gCLI Command Functions

boolean cli_executestring )

Executes a string as a gCLI command. Returns true on success, false on failure.

string cli_execute_outputstring )

Executes a gCLI command, capturing and returning the gCLI output.

Map Management Functions

Note: Information about maps (including creating, assigning, and removing keys, can be found at Map Data Structures.

int count( aggregate )

Returns the number of defined keys for the specified aggregate.

void clear( aggregate )

Removes all keys from the specified aggregate.


Time Functions

string format_date_time( string, string, string )

Reformats dates.

int gameday_to_int()

Returns the current KoL date as an integer.

string gameday_to_string()

Returns the current KoL date as a string.

int gametime_to_int()

Returns the current KoL time in ms as an integer.

string now_to_string( string )

Returns current local time/date in SimpleDateFormat format.

string time_to_string()

Returns the current local time in HH:mm:ss z format.

string today_to_string()

Returns the current local day in ISO format.


SVN Functions

There is much additional information in the SVN Primer.

boolean svn_exists( string )

Returns true if a valid working copy named projectname exists in the svn/ folder.

boolean svn_at_head( string )

Returns true if projectname exists, is a valid working copy, and is currently at the same revision number as the repository.

record svn_info( string )

Returns a record containing additional information about the given projectname: svnurl, last author, last revision, last change date.


User Interaction

void print( string, [string] )

Prints to CLI and status line of Adventuring window, optionally in a specified color.

void print_html( string )

Prints to CLI, parsing any included html.

void logprint( string )

Prints to the session log.

void wait( int )

void waitq( int )

Sleeps for the specified number of seconds.

boolean user_confirm( string )

Allows user input in Y/N format.


Property Functions

boolean [string] get_all_properties( string, boolean )

Returns a map of all user or global properties.

boolean property_existsstring, boolean? )

Checks whether a property exists.

boolean property_has_defaultstring )

Checks if a property has a built-in default value.

string property_default_valuestring )

Returns the default value of a property, or an empty string if a default value does not exist.

string get_property( string )

string get_property( string, boolean )

Gets a global or user preference as appropriate.

void set_property( string, string )

Sets a global or user preference as appropriate.

string remove_propertystring, boolean? )

Removes or resets a property and returns its previous value.

boolean rename_propertystring, string )

Renames a property. Returns true on success, false on failure.

Other Functions

void abortstring? )

Immediately halts the current script and all queued functions.

boolean [monster] all_monsters_with_id()

Returns a map of all monsters that have a non-zero monster ID.

void batch_open()

Used to mark the beginning of a block of functions to operate in batch mode (see page for batch_close() for details).

boolean batch_close()

Used to mark the end of a block of functions to operate in batch mode (see page for details).

int get_revision()

Returns the current KoLmafia revision number.

string get_version()

Returns the most recent KoLmafia version.

string get_player_id( string )

Returns the user id number of a given player.

boolean is_dark_mode()

Checks if the current KoLmafia theme is dark mode.

string to_json( aggregate )

Converts a simple aggregate into JSON.


Additional functions that are considered not really to be ash functions are available in Misc ASH Features