Proxy Records

From Kolmafia
Revision as of 08:40, 11 October 2011 by imported>Bale (added bounty proxy information in r9881)
Jump to navigation Jump to search

Proxy Records is a way for KoLmafia to pass additional information to the scripter. Many datatypes contain these proxy records. such as items, skills, effects, monsters and coinmasters. This information is referred to as proxy records because the manner of reference is similar to a field of a record.


This is an example of how to retrieve proxy record information in a script. Notice it uses the same notation as if the item datatype is a record.

item it = $item[coffee pixie stick];
print("You can buy a "+ it +" at the "+ it.seller);
print("It will consume "+ it.spleen +" spleen and give "+ it.adventures +" adventures.");


Here's an example of displaying a proxy record in the CLI. Note that it displays all fields associated with that datatype.

> ash $item[coffee pixie stick]

Returned: coffee pixie stick
plural => coffee pixie sticks
descid => 936288573
image => cpstick.gif
levelreq => 4
quality =>
adventures => 5-10
muscle => 0
mysticality => 0
moxie => 0
fullness => 0
inebriety => 0
spleen => 4
notes =>
combat => false
reusable => false
usable => false
multi => true
bounty => none
bounty_count => 0
seller => Arcade Ticket Counter
buyer => none

> ash $coinmaster[Arcade Ticket Counter]

Returned: Arcade Ticket Counter
token => ticket
item => Game Grid ticket
property =>
available_tokens => 0
buys => false
sells => true

> ash $location[Fantasy Airship]

Returned: Fantasy Airship
nocombats => false
zone => Beanstalk
parent => Plains
parentdesc => Nearby Plains
bounty => burned-out arcanodiode

> ash $item[burned-out arcanodiode]

Returned: burned-out arcanodiode
plural => burned-out arcanodiodes
descid => 207784873
image => diode.gif
levelreq => 0
quality =>
adventures =>
muscle =>
mysticality =>
moxie =>
fullness => 0
inebriety => 0
spleen => 0
notes =>
combat => false
reusable => false
usable => false
multi => false
bounty => Fantasy Airship
bounty_count => 5
seller => none
buyer => none

> ash $skill[empathy of the newt]

Returned: Empathy of the Newt
level => 8
traincost => 6500
class => Turtle Tamer
libram => false
passive => false
buff => true
combat => false
permable => true

> ash $familiar[slimeling]

Returned: Slimeling
combat => true
hatchling => squirming Slime larva
image => slimeling.gif
name => Princess Vina

> ash $monster[black widow]

Returned: Black Widow
base_hp => 130
base_attack => 139
base_defense => 128
base_initiative => 0
attack_element => none
defense_element => none
min_meat => 40
max_meat => 60
base_mainstat_exp => 17.375
phylum => bug
poison => Really Quite Poisoned

> ash $effect[sugar rush]

Returned: Sugar Rush
default => use either 1 Angry Farmer candy, 1 Tasty Fun Good rice candy, 1 Crimbo candied pecan,
 Crimbo fudge, Crimbo peppermint bark, 1 Breath mint
note =>
all => aggregate boolean [string]
  use 1 Angry Farmer candy => true
  use 1 Tasty Fun Good rice candy => true
  use 1 Crimbo candied pecan => true
  use Crimbo fudge => true
  use Crimbo peppermint bark => true
  use 1 Breath mint => true
image => http://images.kingdomofloathing.com/itemimages/hoppedup.gif
descid => 83695b70e0470a36125feca3198a16b4