Skip to main content

A Python module and bridge for reflecting KoLmafia's Java environment.

Project description

pymafia

A Python module and bridge for reflecting KoLmafia's Java environment.

Overview

The aim of the pymafia module is to provide an easy-to-use environment for scripting Kingdom of Loathing in Python. It achieves this by reflecting and wrapping the community-developed KoLmafia desktop tool. While other languages for scripting KoL exist, they are arguably less approachable to non-developers than Python (although the efforts of LASS have made this less so).

Installation

pip install pymafia

The pymafia module uses PyJNIus to access Java classes, so make sure a Java Development Kit (JDK) is installed on your operating system. On windows, make sure JAVA_HOME points to your java installation so PyJNIus can locate the jvm.dll file to start java. For more information see https://pyjnius.readthedocs.io/en/stable/installation.html.

Quickstart

>>> from pymafia import *

>>> login("devster6")
>>> ash.my_name()
"devster6"

>>> Effect("Synthesis: Greed").quality
<EffectQuality.GOOD: 0>

>>> ash.display_amount(Item("big rock"))
6540

>>> ash.appearance_rates(Location("Barf Mountain"))
{Monster('none'): 0.0,
 Monster('angry tourist'): 33.333333333333336,
 Monster('horrible tourist family'): 33.333333333333336,
 Monster('garbage tourist'): 33.333333333333336}

>>> get_property("sourceTerminalEducate1")
'digitize.edu'

>>> get_property("_sourceTerminalDigitizeMonster", Monster)
Monster('Knob Goblin Embezzler')

>>> boxing_daycare.have()
True

>>> witchess.fights_left()
5

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pymafia-0.1.5.tar.gz (22.3 kB view details)

Uploaded Source

Built Distribution

pymafia-0.1.5-py3-none-any.whl (37.4 kB view details)

Uploaded Python 3

File details

Details for the file pymafia-0.1.5.tar.gz.

File metadata

  • Download URL: pymafia-0.1.5.tar.gz
  • Upload date:
  • Size: 22.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.1 CPython/3.10.6 Linux/5.15.0-1019-azure

File hashes

Hashes for pymafia-0.1.5.tar.gz
Algorithm Hash digest
SHA256 9684d7b580edf34278d8e174d6dd69fb94b97de93d577dfa190c4f54171302df
MD5 95ae6b26ac6d99d7acba96eb2f4d4210
BLAKE2b-256 9aecaae28807fc6f38cce694f308258082cb49cb6663db24047545de7fb96d3e

See more details on using hashes here.

File details

Details for the file pymafia-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: pymafia-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 37.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.1 CPython/3.10.6 Linux/5.15.0-1019-azure

File hashes

Hashes for pymafia-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 c2d2e44b5db1b0a13b99fb737fb06c1f7aafbec263bce1a9141dcdef050e3072
MD5 e33d2034ae444f7489862da4d587b9dc
BLAKE2b-256 27e688b283f8d48348d8aa4c065b1173ecc6628f020baac16f63a38de95870f7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page