Miscellaneous Functions: Difference between revisions

From Kolmafia
Jump to navigation Jump to search
No edit summary
Add "gCLI Command Functions" section
 
(123 intermediate revisions by 54 users not shown)
Line 1: Line 1:
[http://smallbizbohol.com/democatalog/images/baner/cnakje.html attorneys san jose] [http://bluespringsbmx.com/4IMAGES/data/media/10/tmp/ofrkgf.html 245 35 20 tire] [http://talentmodeles.com/mannequin/images/cache/lhugpj.html university of montana logo] [http://www.biblored.org.co/agenda_actividades/programas/images/odoogm.html new york 20th century] [http://roycemotor.com/carpics/cache/chbxvu.html engage rpm] [http://asie-voyages.com/upload/images/lens/lpibhj.html myspace.com site thai] [http://www.youthfitnesssolutions.com/FTP1/page9/bfevli.html ira taxes] [http://www.sedbogota.edu.co/FINANCIERA/temp/tmp/jglmco.html nude ass video] [http://indianaoutfitters.com/s/info/tmp/rmocrb.html web based document management] [http://www.lewakins.com/sr/images/xgtphv.html oscar de la olla] [http://www.norcab.com.au/joeavatiforum/templates/cache/pssbwk.html add manufacturing off site url] [http://www.redacademica.edu.co/manejocorreo/Cliente/cache/ikibff.html oil service companies canada] [http://www.lewakins.com/sr/images/iljjnj.html enterprise cars] [http://tch-voyages.com/documents/prague/896/rttbbi.html epc online] [http://smallbizbohol.com/democatalog/images/baner/iwmhwq.html reinstall ie6 windows 2000] [http://www.sedbogota.edu.co/FINANCIERA/temp/tmp/atxxdx.html and tigger too] [http://xuccco.org/themes/AT-Green3/ikasef.html jack n box] [http://cvscaft-tcc.edu.ph/gallery/uploads/cache/ikirak.html structure triglyceride] [http://www.lewakins.com/sr/images/qnkkab.html sample bridal shower game] [http://www.norcab.com.au/joeavatiforum/templates/cache/fvqwut.html lowest home financing rate] [http://www.redacademica.edu.co/manejocorreo/Cliente/cache/kiagtu.html kao chemical] [http://www.youthfitnesssolutions.com/FTP1/page9/ksbqal.html msn search vs google search] [http://coastguard.gov.ph/content.old/license/utbntr.html association ga realtor] [http://www.sedbogota.edu.co/FINANCIERA/temp/tmp/sojrme.html one piece flow] [http://hoosierfishing.com/phpBB/images/avatars/avatar/fhbvcs.html manufacturer regulator voltage] [http://www.biblored.org.co/agenda_actividades/programas/images/ftbbsk.html re submit] [http://coastguard.gov.ph/content.old/license/gnoutf.html pop3 web mail] [http://www.norcab.com.au/joeavatiforum/templates/cache/oaqrpp.html wheel repair bay area] [http://panties-pictures.com/free/lib/temp/ddxugi.html attorney california deputy general] [http://indianaoutfitters.com/s/info/tmp/qjwoll.html 2 war warfare world] [http://tarsierfoundation.org/content/license/jxrevx.html area illinois in position recruiter] [http://tch-voyages.com/documents/prague/896/gikdpt.html top 20 singles in the uk] [http://coastguard.gov.ph/content.old/license/ftvsow.html need explanation] [http://indianaoutfitters.com/s/info/tmp/qknuee.html reason war of 1812] [http://www.sedbogota.edu.co/FINANCIERA/temp/tmp/fewbfk.html touch and go i find you very attractive] [http://www.sedbogota.edu.co/FINANCIERA/temp/tmp/buicos.html 2 storey house plan] [http://www.lewakins.com/sr/images/miidji.html 1976 calendar dates] [http://www.norcab.com.au/joeavatiforum/templates/cache/grhsdq.html the swan reality tv] [http://hoosierfishing.com/phpBB/images/avatars/avatar/bxknrw.html laser log measurement] [http://xuccco.org/themes/AT-Green3/hjohgg.html maria regina church] [http://www.sedbogota.edu.co/FINANCIERA/temp/tmp/gagujr.html myspace pic playboy] [http://lumayagrealty.com/catalog/images/pics/wkoesi.html asp net issue tracker] [http://panties-pictures.com/free/lib/temp/svqfgu.html process modules definition] [http://www.youthfitnesssolutions.com/FTP1/page9/tgjkqj.html platform building materials] [http://xuccco.org/themes/AT-Green3/orvhlr.html and here we go again lyrics] [http://tarsierfoundation.org/content/license/ottjws.html adding pictures with html] [http://hoosierfishing.com/phpBB/images/avatars/avatar/nhwlaj.html petroleum solvent] [http://www.redacademica.edu.co/manejocorreo/Cliente/cache/tfekgj.html infrared optics] [http://tarsierfoundation.org/content/license/egkear.html low voltage detector] [http://www.redacademica.edu.co/manejocorreo/Cliente/cache/nmqcwl.html age of empires free game download] [http://bluespringsbmx.com/4IMAGES/data/media/10/tmp/ogrxak.html large women 4] [http://www.youthfitnesssolutions.com/FTP1/page9/icejlu.html pre wedding party] [http://ankelia-nature.com/catalogues/catalogues/wokdjo.html natural breast mexican] [http://tarsierfoundation.org/content/license/pngokk.html the rain song guitar tab] [http://hoosierfishing.com/phpBB/images/avatars/avatar/egbgeb.html long term car hire usa] [http://www.norcab.com.au/joeavatiforum/templates/cache/pckxbh.html 1979 ford truck pic] [http://asie-voyages.com/upload/images/lens/cmwaur.html indoor growing system] [http://www.redacademica.edu.co/manejocorreo/Cliente/cache/npcves.html white rock gardens] [http://bluespringsbmx.com/4IMAGES/data/media/10/tmp/qgitdt.html woman online magazine] [http://bluespringsbmx.com/4IMAGES/data/media/10/tmp/blfjke.html location new rochester wedding york] [http://panties-pictures.com/free/lib/temp/vldovm.html online job finders] [http://www.sedbogota.edu.co/FINANCIERA/temp/tmp/vhaoci.html local katrina relief efforts] [http://smallbizbohol.com/democatalog/images/baner/dlwhvj.html wild bird of california] [http://indianaoutfitters.com/s/info/tmp/qfgfnx.html epithelium tissue slides] [http://www.norcab.com.au/joeavatiforum/templates/cache/srmxvo.html volvo service schedule] [http://www.hdac.org/hdfaq/faq/nhmhua.html the silence gets us nowhere way too fast] [http://www.redacademica.edu.co/manejocorreo/Cliente/cache/lmtnrl.html aim buddy list sign] [http://xuccco.org/themes/AT-Green3/ossxol.html private escort nj] [http://www.biblored.org.co/agenda_actividades/programas/images/vlabqh.html material services] [http://www.redacademica.edu.co/manejocorreo/Cliente/cache/wmghwo.html nascar qualifing] [http://roycemotor.com/carpics/cache/dvjikp.html never gonna let you go lyric] [http://roycemotor.com/carpics/cache/edekrh.html night and the city deniro] [http://www.norcab.com.au/joeavatiforum/templates/cache/wogdqg.html art institute sf ca] [http://www.youthfitnesssolutions.com/FTP1/page9/ovpwqe.html image reject filters] [http://coastguard.gov.ph/content.old/license/clqudl.html mature drunk movies] [http://www.lewakins.com/sr/images/sbhcbl.html arizona club night phoenix] [http://www.norcab.com.au/joeavatiforum/templates/cache/ntntdg.html animal iraqs] [http://xuccco.org/themes/AT-Green3/gpnmor.html affective needs of students] [http://www.norcab.com.au/joeavatiforum/templates/cache/jsvtim.html ruling classes] [http://talentmodeles.com/mannequin/images/cache/rjevax.html earth giant mover] [http://asie-voyages.com/upload/images/lens/bquipi.html target pharmacy] [http://www.youthfitnesssolutions.com/FTP1/page9/oqexkn.html london free press obituary] [http://panties-pictures.com/free/lib/temp/uudtfq.html mailer video] [http://bluespringsbmx.com/4IMAGES/data/media/10/tmp/xgqjoe.html inventory sticker] [http://hoosierfishing.com/phpBB/images/avatars/avatar/cdsbmn.html natural looking cosmetics] [http://asie-voyages.com/upload/images/lens/urjdbh.html shared memory service not created yet] [http://www.biblored.org.co/agenda_actividades/programas/images/qvumfk.html levelling guides] [http://indianaoutfitters.com/s/info/tmp/ehcstx.html melbourne sydney railway] [http://cvscaft-tcc.edu.ph/gallery/uploads/cache/avvnga.html new tool bar] [http://www.biblored.org.co/agenda_actividades/programas/images/erqbla.html anaylsis of hamlet] [http://panties-pictures.com/free/lib/temp/pxcggm.html stark county home sales] [http://xuccco.org/themes/AT-Green3/egbtnk.html joes garage] [http://cvscaft-tcc.edu.ph/gallery/uploads/cache/muobse.html 9th street market restaurant nyc] [http://www.biblored.org.co/agenda_actividades/programas/images/bnsuxc.html michigan firemens memorial] [http://tarsierfoundation.org/content/license/uafuxo.html new imate jam] [http://bluespringsbmx.com/4IMAGES/data/media/10/tmp/qpkovd.html texas hunting dog] [http://tarsierfoundation.org/content/license/gwilcs.html i just want you] [http://xuccco.org/themes/AT-Green3/nwlduh.html library of speech language pathology] [http://asie-voyages.com/upload/images/lens/cphoso.html what is a non compete clause] [http://tarsierfoundation.org/content/license/hnvikx.html you have mail sound wav] [http://www.norcab.com.au/joeavatiforum/templates/cache/soeote.html la langue francaise] [http://smallbizbohol.com/democatalog/images/baner/jfqdrj.html radio mar del plata] [http://panties-pictures.com/free/lib/temp/nxaghr.html stock screen] [http://www.sedbogota.edu.co/FINANCIERA/temp/tmp/usalvl.html sample test cases for unit testing] [http://roycemotor.com/carpics/cache/lddawb.html extra myspace stuff] [http://ankelia-nature.com/catalogues/catalogues/pknkuh.html used car in buffalo] [http://hoosierfishing.com/phpBB/images/avatars/avatar/ssnidq.html auto body salvage yards] [http://smallbizbohol.com/democatalog/images/baner/vdsxpa.html umax scanners] [http://www.biblored.org.co/agenda_actividades/programas/images/wrnxel.html kitchen waste can] [http://panties-pictures.com/free/lib/temp/gxgpfu.html moon theories] [http://bluespringsbmx.com/4IMAGES/data/media/10/tmp/iobprn.html motivation case studies] [http://www.lewakins.com/sr/images/fwiagf.html sandra bullock films] [http://talentmodeles.com/mannequin/images/cache/qoxfsi.html airline broker mile] [http://www.sedbogota.edu.co/FINANCIERA/temp/tmp/flusoe.html am logo pan] [http://tch-voyages.com/documents/prague/896/btquoi.html art recipe for child] [http://www.lewakins.com/sr/images/cspjhl.html staple fastener] [http://indianaoutfitters.com/s/info/tmp/uuberj.html ms detection limit] [http://coastguard.gov.ph/content.old/license/kedfnw.html exclusivity contract sample] [http://roycemotor.com/carpics/cache/qgwbqp.html quake full game] [http://bluespringsbmx.com/4IMAGES/data/media/10/tmp/mqwpas.html pittsburgh international airport parking] [http://www.youthfitnesssolutions.com/FTP1/page9/liuaqw.html account hotmail upgrade] [http://www.norcab.com.au/joeavatiforum/templates/cache/vfaqhr.html prostrate treatments] [http://www.sedbogota.edu.co/FINANCIERA/temp/tmp/dpslof.html usb pendrives] [http://bluespringsbmx.com/4IMAGES/data/media/10/tmp/lvqshs.html esterlina libra] [http://www.sedbogota.edu.co/FINANCIERA/temp/tmp/xcxlwj.html 5 1 2 shoes] [http://www.sedbogota.edu.co/FINANCIERA/temp/tmp/tqtmpi.html may festival youth chorus] [http://ankelia-nature.com/catalogues/catalogues/xtmdox.html 1 mile equal feet] [http://bluespringsbmx.com/4IMAGES/data/media/10/tmp/rjvscu.html wood home office desk] [http://panties-pictures.com/free/lib/temp/xsvowg.html post secondary recruitment government of canada] [http://www.sedbogota.edu.co/FINANCIERA/temp/tmp/dsqled.html safe sound car audio] [http://lumayagrealty.com/catalog/images/pics/nsflul.html process piping and design] [http://www.hdac.org/hdfaq/faq/kjdphs.html medal of honor pacific assault medals] [http://xuccco.org/themes/AT-Green3/bmofvr.html variable auto transformers] [http://tarsierfoundation.org/content/license/uhgnfk.html racing coil over] [http://www.norcab.com.au/joeavatiforum/templates/cache/xrxfvm.html annealing plastic] [http://ankelia-nature.com/catalogues/catalogues/dexsut.html adult birthday free greeting] [http://www.biblored.org.co/agenda_actividades/programas/images/adegmh.html resource for christian banquet] [http://bluespringsbmx.com/4IMAGES/data/media/10/tmp/cssjhw.html your bird feeder] [http://lumayagrealty.com/catalog/images/pics/pukiln.html absolutists games] [http://roycemotor.com/carpics/cache/ismdet.html landscape palm picture tree] [http://bluespringsbmx.com/4IMAGES/data/media/10/tmp/mxcqua.html x scale processors] [http://www.norcab.com.au/joeavatiforum/templates/cache/ljwqqi.html mercy college of health] [http://www.redacademica.edu.co/manejocorreo/Cliente/cache/hnfjtm.html transformation in mathematics] [http://tarsierfoundation.org/content/license/wxfwux.html performance shock and strut] [http://ankelia-nature.com/catalogues/catalogues/wudiwq.html to i can get my satisfaction] [http://www.sedbogota.edu.co/FINANCIERA/temp/tmp/shsmgi.html la pe republica] [http://tarsierfoundation.org/content/license/vnqhga.html ares home p2p] [http://talentmodeles.com/mannequin/images/cache/bmlgao.html lake superior michigan real estate] [http://indianaoutfitters.com/s/info/tmp/fbqfof.html spy killer 2005 serial] [http://indianaoutfitters.com/s/info/tmp/dptqsn.html ivy summer video] == 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 output )</strong><br />
== Debugging Functions ==
<strong>void print( string output, string color )</strong><br />
{{Flink|void|disable|string|desc=Disables the specified function.}}
Prints <i>output</i> to the CLI buffer and displays it in the status line of the main Adventuring window.  If <i>color</i> is specified any HTML in <i>output</i> is escaped and the string is wrapped in a font tag before being printed.</p>
{{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