Skip to content

tassaron/batchfile.py

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Batchfile.py

A Python library to execute simple batch files (.bat) that would normally only work on Windows. After installing, get a REPL (live commandline) to test it out by running bat, or check out the /games folder and play FUNTIMES.bat

See my bat2web repo for an example of how you can use this library to turn a batch file into a website. Something you've always wanted to do, surely :)

Installation

I recommend using the git version with pip install git+https://github.com/tassaron/batchfile.py

There is an older version on PyPI, which is suitable enough for casual testing of the project if you prefer.

How to play games

  • Go in the /games directory for python scripts that will launch games.
  • So far the only supported game is one I wrote when I was 16, which you can play by running funtimes.py using Python 3.6+ on Linux, Windows, or MacOS.
  • On Windows you can also play the original game without Python using FUNTIMES.bat inside the funtimes directory
  • The original game actually works using wineconsole in Ubuntu as well, except for rare math problems
  • Funtimes can also be played in a web browser

Running other batch files

I definitely don't intend to support every batch file, but it would be nice if similar batch-file-games worked without introducing too much complexity. Another game I wrote in 2010 called "Recruitment" is included as an example, but it doesn't yet work. Ultimately it would be really cool if this library supported Time Streamer.

The main obstacle to most games working is the lack of support for parentheses and quotation marks. Some hacky solutions are included to deal with the simple cases in Funtimes, but eventually I have to write a tokenizer/lexer to correctly deal with these complex structures. This should greatly increase compatibility once I do that!

Another obstacle is that a lot of batch files use weird .EXE or .COM files that do various tasks, but when I discover these cases I'll try to include them as standard functions. My primary goal is supporting batch file games, so I'm not worried about if something is a "pure" batch file.

About

run simple Windows batch files (.bat) on Linux

Topics

Resources

License

Stars

Watchers

Forks