8000 GitHub - Rampboss/DoomLedger: Port of DOOM-nano on a Ledger Nanos+
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Rampboss/DoomLedger

Repository files navigation

Doom Ledger Application

This is a port of Doom-Nano, a Doom-like game made for Arduino. This application is designed for Nanos+ devices only (for now). This port is still in the early stages and might be improved in the near future.

Demo video:

yt_preview

Quick Start Guide

To play on your Nanos+, you will have to follow the developer guide to set up VSCode, clone this repository, and use Ledger's VSCode Developer Tools extension to load the app onto your device.

BE AWARE THAT INSTALLING THIS APP WILL RESET YOUR DEVICE. MAKE SURE YOU HAVE YOUR 24-WORDS RECOVERY PHRASE TO RESTORE YOUR DEVICE LATER. DO NOT INSTALL THIS APP IF YOU ARE NOT WILLING TO TAKE THE RISK.

Setup VScode, load the app and device configuration

The Ledger Developper Guide will help you set up your environment to build and load the app onto your device. Watch the videos carefully and ensure your device is updated to the latest version. Only NanoS+ Release app is supported.

Thanks to the Ledger documentation, you're close to playing on your Ledger. Now, you need to configure your device to disable the PIN lock and screen saver. This will prevent the device from sleeping while playing. To do so, follow this article from Ledger Support.

CAN I START SHOOTING CRYPTO IMPS ?

Almost! You need to install the requirements to start the pygame client (only tested on Linux). This client will communicate with your device to send inputs to the game. In the root folder of this project, run the following steps:

python3 -m venv tools/clients/doom
source tools/clients/doom/bin/activate
pip install -r tools/clients/requirements.txt

For Linux users, you need to grant udev some permissions and then activate them with the following commands:

sudo udevadm control --reload-rules
sudo udevadm trigger

You're all set up. Now, just launch the client:

source tools/clients/doom/bin/activate
python3 tools/clients/doom_ledger_client.py

A pygame window will pop up. Click inside the window, launch the Doom app on your device, and play!

Controls

The default controls provided with the Python client script are:

  • Arrows to move
  • Space bar to shoot
  • Q to quit/pause the game
  • Return to start/resume the game

Developper

If you want to improve the game, correct an issue, or create your own version, all you need is to set up VSCode, and then you’re good to go. There is also a Python client script available to help you test the game with the Speculos emulator.

This application does not have unit tests or tests made with the Ragger. I know this is not ideal; my apologies.

Thanks

Thanks to the existing project Doom-Nano for providing a 3D raycasting engine that perfectly matches the SecureElement spec. Thanks to the Ledger team for providing excellent tools that make it easier.

About

Port of DOOM-nano on a Ledger Nanos+

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0