https://github.com/tktech/burger
A simple tool for picking out information from the minecraft JARs, primarily useful for developers.
https://github.com/tktech/burger
Last synced: 9 months ago
JSON representation
A simple tool for picking out information from the minecraft JARs, primarily useful for developers.
- Host: GitHub
- URL: https://github.com/tktech/burger
- Owner: TkTech
- License: mit
- Created: 2011-05-04T23:32:53.000Z (about 15 years ago)
- Default Branch: master
- Last Pushed: 2022-02-17T18:52:11.000Z (over 4 years ago)
- Last Synced: 2025-04-02T02:11:54.016Z (about 1 year ago)
- Language: Python
- Homepage:
- Size: 717 KB
- Stars: 143
- Watchers: 15
- Forks: 34
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Burger
Burger is a "framework" for automatically extracting data
from the Minecraft game for the purpose of writing the protocol
specification, interoperability, and other neat uses.
## The Idea
Burger is made up of *toppings*, which can provide and satisfy
simple dependencies, and which can be run all-together or just
a few specifically. Each topping is then aggregated by
`munch.py` into the whole and output as a JSON dictionary.
## Usage
The simplest way to use Burger is to pass the `-d` or `--download`
flag, which will download the specified minecraft client for you.
This option can be specified multiple times. The downloaded jar will be saved
in the working directory, and if it already exists the existing verison will be used.
$ python munch.py --download 1.13.2
To download the latest snapshot, `-D` or `--download-latest` can be used.
$ python munch.py -D
Alternatively, you can specify the client JAR by passing it as an argument.
$ python munch.py 1.8.jar
You can redirect the output from the default `stdout` by passing
`-o ` or `--output `. This is useful when combined with
verbose output (`-v` or `--verbose`) so that the output doesn't go into the file.
$ python munch.py -D --output output.json
You can see what toppings are available by passing `-l` or `--list`.
$ python munch.py --list
You can also run specific toppings by passing a comma-delimited list
to `-t` or `--toppings`. If a topping cannot be used because it's
missing a dependency, it will output an error telling you what
also needs to be included. Toppings will generally automatically load
their dependencies, however.
$ python munch.py -D --toppings language,stats
The above example would only extract the language information, as
well as the stats and achievements (both part of `stats`).