Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Brutal Maze is a thrilling shoot 'em up game with minimalist art style.
The game features a trigon trapped in an infinite maze. As our hero tries to escape, the maze's border turns into aggressive squares trying to stop per. Your job is to help the trigon fight against those evil squares and find a way out (if there is any). Be aware that the more get killed, the more will show up and our hero will get weaker when wounded.
Brutal Maze has a few notable features:
Brutal Maze is written in Python and is compatible version 3.7 and above. The installation procedure should be as simple as follows:
$PATH
.pip install --user brutalmaze
.For more information, see Installation page in the documentation.
After installation, you can launch the game by running the command
brutalmaze
. Below are the default bindings, which can be configured as
shown in the next section:
F2
: new gamep
: toggle pausem
: toggle mutea
: move leftd
: move rightw
: move ups
: move downAdditionally, Brutal Maze also supports touch-friendly control. In this mode, touches on different grid (empty, wall, enemy, hero) send different signals (to guide the hero to either move or attack, or start new game). Albeit it is implemented using mouse button up event, touch control is not a solution for mouse-only input, but an attempt to support mobile GNU/Linux distribution such as postmarketOS, i.e. it's meant to be played using two thumbs :-)
Brutal Maze supports both configuration file and command-line options. Apparently, while settings for graphics, sound and socket server can be set either in the config file or using CLI, keyboard and mouse bindings are limited to configuration file only.
Settings are read in the following order:
brutalmaze --write-config PATH
. brutalmaze --write-config
alone
will print the file to stdout)brutalmaze --help
; see the Configuration
documentation for more info)brutalmaze --config PATH
)Later-read preferences will override previous ones.
If you enable the socket server, Brutal Maze will no longer accept
direct input from your mouse or keyboard, but wait for a client to connect.
This can be done by either editing option Enable in section Server
in the configuration file or launching the game via brutalmaze --server
.
The I/O format is explained in details in the Remote Control page.
Either game played by human or client script can be recorded to JSON format.
This can be enabled by setting the output directory to a non-empty string:
brutalmaze --record-dir DIR
. Navigate to Configuration for more options.
Recordings can be played using Brutal Maze HTML5 record player.
Brutal Maze's source code and its icon are released under GNU Affero General Public License version 3 or later. This means if you run a modified program on a server and let other users communicate with it there, your server must also allow them to download the source code corresponding to the modified version running there.
This project also uses Tango color palette and several sound effects, whose authors and licenses are listed in the Copying page in our documentation.
FAQs
Minimalist thrilling shoot 'em up game
We found that brutalmaze demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.