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.0.3.tar.gz (20.8 kB view details)

Uploaded Source

Built Distribution

pymafia-0.0.3-py3-none-any.whl (34.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pymafia-0.0.3.tar.gz
  • Upload date:
  • Size: 20.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.15 CPython/3.10.6 Linux/5.15.0-1017-azure

File hashes

Hashes for pymafia-0.0.3.tar.gz
Algorithm Hash digest
SHA256 97647ec2a24c7fc95d1f99129621ece89cc52bb950566bd24d21e01e89a75029
MD5 a5dcd32d249a0f8633e996ecb85d02ba
BLAKE2b-256 75caf7ec1297cdf0c77ce890e417b33836d930df67e1b41874a6fad1941db549

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for pymafia-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 edb88a4dbd656956e7cb232efc5417534292f4a547355c12102fc6470e86bd63
MD5 8c010e15d96d0fe3c75904212df807b8
BLAKE2b-256 11bfb690226b2b8d7c35e4c3bbb2f938986efb88944b965ed7f5b4cf831f7f5d

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