>           _______           
>          / _____ \          
>         | |     | |         
>         | |     | |         
>         | |     | |   _ __ ___   __ _ _   _  ___         
>         | |     | |  | '__/ _ \ / _` | | | |/ _ \
>         | |_____| |  | | | (_) | (_| | |_| |  __/    
>          \______\_\  |_|  \___/ \__, |\__,_|\___|   
>                                  __/ |            
>                                 |___/ 
ASCII-Art generated by https://www.ascii-art-generator.org/

# QRogue v0.7.0 #

QRogue is a modernized Quantum Computing take of the classical game 
[Rogue](https://en.wikipedia.org/wiki/Rogue_%28video_game%29). 

You will play as a student whose dream is to travel through the galaxy. 
As they hear about "Mission Quniverse" they immediately apply for its 
training program to be able to join this fascinating Quantum Computing 
powered universe exploration mission.


## Table of Contents ##
- Installation
  - Dependencies
  - Linux
  - Windows
- Notes
- How to play - Controls
- Outlook

## Installation ##


### Dependencies ###
- py_cui 0.1.4
- qiskit 0.34.2
- numpy 1.20.3
- antlr4-python3-runtime 4.10

However, these dependencies are installed automatically if you install QRogue via pip.

### Linux/macOS ###

#### Prerequisites ####

- Python 3.8
- pip

For Linux/macOS you simply have to run 
```bash
pip install qrogue
```
to install QRogue in your current Python environment. 

Afterwards you can launch the game simply by executing `qrogue` in the Python environment you installed QRogue in.

### Windows ###

#### Prerequisites ####

Same as for Linux/macOS

## Notes ##

- `py_cui.errors.PyCUIOutOfBoundsError` 

Should you ever encounter this error
when starting the game please try to maximize the console you 
use for playing. This is because currently there is no automatic 
font size adaption so depending on your console settings a 
minimum width and height is required. Alternatively or if 
maximizing doesn't help you can also lower the font size of the 
console.

- newer Python versions

Usually also Python 3.9 should perfectly work for 
playing QRogue but testing is currently done for Python 3.8 so 
there is no official support yet for other versions. The same 
is true if you decide to manually install the dependencies; newer 
version will likely work but are not recommended.
Python 3.10 is not yet supported due to changes in import locations.

## How to play - Controls ##
- Navigate in menus: Arrow Keys, wasd
- Move in game world: Arrow Keys, wasd
- Scroll in popup: Arrow Keys, wasd
- Close popup: Space, Enter
- Reopen last popup: H
- Select answer in question popup: horizontal Arrow Keys, ad
- Confirm selection (also in question popup): Space, Enter
- Cancel/back: Shift+A, Shift+Left, Backspace
- Pause: P, Tab
- Situational 
  - shortcut keys: 0-9
  - 
- Debug Keys (not for use in normal play through!)
  - Print screen: CTRL+P
  - Force re-render: CTRL+R 

# todo: example images for screen check to *see* how the colors should differ
  
## Feedback ##
We'd be very happy if you share any feedback with us, regardless whether you liked the game or not.
Just send it via Email to artnermike@gmail.com with the subject "QRogue Feedback". 
It would also be nice if you could add your user-data folder ("qrogue/QrogueData", for normal installations it can be found in your virtual environment's packages) with the log files. Thanks!

## Outlook ##



