# SpaceShooter
Simple shooter game prototype. Written in `Python`, utilizes `PySide` library capabilities.
Not decided yet what will be the target platform and SDK: C++/SDL/multiplatform or C++/WinAPI only.
## Description and play
Very simple space shooter, made as a cooperation with my son, Antoni.
[](https://www.youtube.com/watch?v=plLSaAU3At8)
Goal: shoot down all the enemies and the boss at the end.
Game contains 5 levels (so far!) and all of them produces few sets of enemies to shoot down.
Enemies can also shoot you, same as the guns at the bottom.
Watch the drops falling down, which are also deadly.
You have 3 life points (drawn as 3 little rockets at the bottom), all of them is worth of 10 minipoints
(also seen there) -- whenever you lost all 10 small points, you loose main life point. No life points means you're dead.
You can shoot your enemies and also the guns. You can use bombs to do this as well (however, bombs are significantly)
slower.
Boss appears at the end and can shoot at you with 3 streams of missiles.
Several items are quite useful and can be collected:
* `tnt box` -- allows to use `TNT` (shoot down 3 enemies at once)
* `lightball` -- allows you to use 3 streams of light missiles (for 10s)
* `shield` -- you can be immortal (for 10s)
* `medical kit` -- can increase your minipoints
* `icebox` -- can freeze all the enemies (for 10s)
## Installation and configuration
All you need to do is
```bash
$ python -m pip install spaceshooter
```
`PySide6` will also be installed as it's required to run.
## Running
Running is as easy as typing
```bash
$ python -m spaceshooter
```
in your terminal.
Default font is ugly, so please download some free `TTF` file that resembles you the 80s and install.
Then, please let the program know about it -- use `-f "font name"` in the command line:
```bash
python -m spaceshooter -f "Best font I found in all the Internets"
```
Remember about the quotes!
On the next run, font will be used again, as it's stored in the configuration file now.
To reset all the settings (including hi scores, so beware!), you may use:
```bash
python -m spaceshooter -r
```
This will run the program with default settings.
Options can be combined.
### Windowing mode
By default, application is using full screen to display its content. To run this in windowing mode, please use `-w` parameter:
```bash
python -m spaceshooter -w
```
This one:
```bash
$ python -m spaceshooter -h
```
gives you the full list of available options and their arguments.
## Navigation
### Menu
You can use `up/down arrow` keys and `Enter` to select a menu option, as well as mouse left button.
Language icons are available only with mouse.
Also `q` terminates the program.
### Ship selection
You can use `left/right arrow` keys and `Enter` to select you ship, as well as mouse left button.
Language icons are available only with mouse.
### Other screens
Follow the status line about available keys and actions.
### Game play
Default keys are as follows:
* `up/down/left/right arrows` for ship navigation
* `space` for missiles
* `b` for bombs
* `t` for TNTs, if available
* `ESC` for pause
* `q` for leaving game and back to the menu
You can reconfigure navigation keys, missiles, bombs and TNTs.
## Other
No, there is no sound. Maybe later.
Raw data
{
"_id": null,
"home_page": "https://iostream.pl/spaceshooter-en",
"name": "spaceshooter",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "pyqt spaceshooter game arcade",
"author": "Marcin Bielewicz",
"author_email": "marcin.bielewicz@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/e8/c1/2ccccb1bd930c2939b9a83d76d7b49dd211ada0f081e993b1ff8a329327a/spaceshooter-0.0.11.tar.gz",
"platform": null,
"description": "# SpaceShooter\n\nSimple shooter game prototype. Written in `Python`, utilizes `PySide` library capabilities.\n\nNot decided yet what will be the target platform and SDK: C++/SDL/multiplatform or C++/WinAPI only.\n\n## Description and play\n\nVery simple space shooter, made as a cooperation with my son, Antoni.\n\n[](https://www.youtube.com/watch?v=plLSaAU3At8)\n\nGoal: shoot down all the enemies and the boss at the end.\n\nGame contains 5 levels (so far!) and all of them produces few sets of enemies to shoot down.\n\nEnemies can also shoot you, same as the guns at the bottom.\n\nWatch the drops falling down, which are also deadly.\n\nYou have 3 life points (drawn as 3 little rockets at the bottom), all of them is worth of 10 minipoints\n(also seen there) -- whenever you lost all 10 small points, you loose main life point. No life points means you're dead.\n\nYou can shoot your enemies and also the guns. You can use bombs to do this as well (however, bombs are significantly)\nslower.\n\nBoss appears at the end and can shoot at you with 3 streams of missiles.\n\nSeveral items are quite useful and can be collected:\n* `tnt box` -- allows to use `TNT` (shoot down 3 enemies at once)\n* `lightball` -- allows you to use 3 streams of light missiles (for 10s)\n* `shield` -- you can be immortal (for 10s)\n* `medical kit` -- can increase your minipoints\n* `icebox` -- can freeze all the enemies (for 10s)\n\n## Installation and configuration\n\nAll you need to do is\n\n```bash\n$ python -m pip install spaceshooter\n```\n\n`PySide6` will also be installed as it's required to run.\n\n## Running\n\nRunning is as easy as typing\n\n```bash\n$ python -m spaceshooter\n```\n\nin your terminal.\n\nDefault font is ugly, so please download some free `TTF` file that resembles you the 80s and install.\nThen, please let the program know about it -- use `-f \"font name\"` in the command line:\n\n```bash\npython -m spaceshooter -f \"Best font I found in all the Internets\"\n```\n\nRemember about the quotes!\n\nOn the next run, font will be used again, as it's stored in the configuration file now.\n\nTo reset all the settings (including hi scores, so beware!), you may use:\n\n```bash\npython -m spaceshooter -r\n```\n\nThis will run the program with default settings.\n\nOptions can be combined.\n\n### Windowing mode\n\nBy default, application is using full screen to display its content. To run this in windowing mode, please use `-w` parameter:\n\n```bash\npython -m spaceshooter -w\n```\n\nThis one:\n```bash\n$ python -m spaceshooter -h\n```\ngives you the full list of available options and their arguments.\n\n## Navigation\n\n### Menu\n\nYou can use `up/down arrow` keys and `Enter` to select a menu option, as well as mouse left button.\nLanguage icons are available only with mouse.\n\nAlso `q` terminates the program.\n\n### Ship selection\n\nYou can use `left/right arrow` keys and `Enter` to select you ship, as well as mouse left button.\nLanguage icons are available only with mouse.\n\n### Other screens\n\nFollow the status line about available keys and actions.\n\n### Game play\n\nDefault keys are as follows:\n\n* `up/down/left/right arrows` for ship navigation\n* `space` for missiles\n* `b` for bombs\n* `t` for TNTs, if available\n* `ESC` for pause\n* `q` for leaving game and back to the menu\n\nYou can reconfigure navigation keys, missiles, bombs and TNTs.\n\n## Other\n\nNo, there is no sound. Maybe later.\n",
"bugtrack_url": null,
"license": "GPL",
"summary": "Simple spaceshooter game that uses PySide library",
"version": "0.0.11",
"project_urls": {
"Bug Tracker": "https://github.com/lvajxi03/spaceshooter/issues",
"Homepage": "https://iostream.pl/spaceshooter-en"
},
"split_keywords": [
"pyqt",
"spaceshooter",
"game",
"arcade"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "d02e737a29a20d5066852b1b5ef85dc4e1590320d52f620f47f7628aac07926e",
"md5": "51b6d11e3ff9e3d8e6d48dfc3881f651",
"sha256": "f38f6b7b1eca8bcfd4ed6e5007c3f6cb3ef023bf42bb5337a1093b749f6b099e"
},
"downloads": -1,
"filename": "spaceshooter-0.0.11-py3-none-any.whl",
"has_sig": false,
"md5_digest": "51b6d11e3ff9e3d8e6d48dfc3881f651",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 554292,
"upload_time": "2025-08-23T16:52:12",
"upload_time_iso_8601": "2025-08-23T16:52:12.629765Z",
"url": "https://files.pythonhosted.org/packages/d0/2e/737a29a20d5066852b1b5ef85dc4e1590320d52f620f47f7628aac07926e/spaceshooter-0.0.11-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "e8c12ccccb1bd930c2939b9a83d76d7b49dd211ada0f081e993b1ff8a329327a",
"md5": "936bb24bb9066d60b402ee0758d0df59",
"sha256": "ec6514c7bebdab8a068bc38bd9777f57c35fc64191f1b7522bab7a88788606a5"
},
"downloads": -1,
"filename": "spaceshooter-0.0.11.tar.gz",
"has_sig": false,
"md5_digest": "936bb24bb9066d60b402ee0758d0df59",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 510195,
"upload_time": "2025-08-23T16:52:13",
"upload_time_iso_8601": "2025-08-23T16:52:13.814168Z",
"url": "https://files.pythonhosted.org/packages/e8/c1/2ccccb1bd930c2939b9a83d76d7b49dd211ada0f081e993b1ff8a329327a/spaceshooter-0.0.11.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-23 16:52:13",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "lvajxi03",
"github_project": "spaceshooter",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "PySide6",
"specs": []
}
],
"lcname": "spaceshooter"
}