Marauder - an automatic mapper for IF

Hi there!

I’d like to showcase the first program I’ve ever built. Marauder is a cross-platform tool that aims to make mapping a lot easier for IF games. It integrates the Quixe interpreter and therefore works for games in Glulx format.
Some of its features include:

  • Automatic mapping of the game’s rooms and connections.
  • A multi-layer display system to display rooms on different floors
  • Quick travel to the desired room
  • Note taking for rooms
  • Automatic exploration (an attempt to build part of the map before diving into the game)
  • Save/Load maps for future playthroughs
  • The option to add rooms/connections manually if the player wants to do so

You can find everything here

In order to use Marauder you will have to follow the instructions below:

Install Python and add it to the PATH.
Install python’s library, Textblob and its necessary corpora by running the following commands in your terminal:

pip install textblob

python -m textblob.download_corpora

python -m nltk.downloader punkt_tab

python -m nltk.downloader averaged_perceptron_tagger_eng

On a more technical level it is built with Electron, using Javascript and a bit of Python. Room detection employs rule-based filtering and Natural Language Processing. Quick traveling is achieved by implementing the BFS algorithm. Automatic exploration uses a combination of the DFS algorithm + backtracking to find new rooms. Maps are saved as JSON files.

This program is my baby and i really hope you find it useful! :slight_smile:
In case you want to contribute to make it even better let me know.

Cheers!

6 Likes

Appreciating that the Linux binary package is much smaller than the competition (Linux Rulez !) I must point a pair of mistakes in the binary build, a little output show what are:

~/dload/maruder/linuxinstaller/linuxinstaller/marauder-linux-x64$ file marauder 
marauder: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=fa3c4c49eb4111cee314f750e80a62c5692065e2, not stripped

That is, at least one unneeded subdir and the executable NOT stripped, two relatively common mistakes in packaging under *nix.

I’ll test later, and I’ll report. hope is much better than the problematic Trizbort.

Best regards from Italy,
dott. Piergiorgio.