Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/im-rises/space-invaders-arcade-emulator-website
Space Invaders Arcade Game Emulator made in Rust 🦀 ported to WebAssembly WebGL and WebAudio
https://github.com/im-rises/space-invaders-arcade-emulator-website
arcade-game emulator game npm package rust webassembly webgl website
Last synced: about 9 hours ago
JSON representation
Space Invaders Arcade Game Emulator made in Rust 🦀 ported to WebAssembly WebGL and WebAudio
- Host: GitHub
- URL: https://github.com/im-rises/space-invaders-arcade-emulator-website
- Owner: Im-Rises
- License: mit
- Created: 2023-08-26T00:58:02.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-02-06T09:35:34.000Z (11 months ago)
- Last Synced: 2024-11-06T16:25:18.016Z (about 2 months ago)
- Topics: arcade-game, emulator, game, npm, package, rust, webassembly, webgl, website
- Language: JavaScript
- Homepage: https://im-rises.github.io/space-invaders-arcade-emulator-website/
- Size: 3.11 MB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# space-invaders-arcade-emulator-website
## Description
Space Invaders arcade game emulator package demo written in Rust for the web.
Complete Emulator of the Intel 8080, the app is implemented to run the Space Invaders Arcade game.
## 🚀🚀[You can try it online from your browser](https://im-rises.github.io/space-invaders-arcade-emulator-website/) 🚀🚀
The demo source code is available in this repository.
## 🚀🚀 The package source code is available in the [space-invaders-arcade-emulator](https://github.com/Im-Rises/space-invaders-arcade-emulator/tree/main) repository. 🚀🚀
The game is implemented with all the 10 sounds of the original game and can be played in black and white or in color (
SV), normal screen mode (TV) or in colored mode (CV).# 🚀🚀 [The package is available on npm](https://www.npmjs.com/package/space-invaders-arcade-emulator) 🚀🚀
## Images
### Without background
| SV version | TV version | CV version |
|:---------------------------------------------------------------------------------------------------------------------------:|:------------------------------------------------------------------------------------------------------------------------------:|:------------------------------------------------------------------------------------------------------------------------------:|
| ![NOBG_BW](https://github.com/Im-Rises/space-invaders-arcade-emulator/assets/59691442/96276b2a-d75c-4eef-ae76-74624960ba19) | ![NOBG_Color](https://github.com/Im-Rises/space-invaders-arcade-emulator/assets/59691442/32bc3e25-7883-4229-bab3-7bbfae745e9e) | ![NOBG_Geeen](https://github.com/Im-Rises/space-invaders-arcade-emulator/assets/59691442/4ec1df0d-98e5-4327-b25c-da80e6a44470) |### Using background 1
| SV version | TV version | CV version |
|------------|------------|------------|
| ![BG2_Green](https://github.com/Im-Rises/space-invaders-arcade-emulator/assets/59691442/433a9da2-cdb8-48f8-85b8-9e615766bdf9) | ![BG2_BW](https://github.com/Im-Rises/space-invaders-arcade-emulator/assets/59691442/7a5c9618-9fd6-48a5-81eb-81d5964aa98e) | ![BG2_Color](https://github.com/Im-Rises/space-invaders-arcade-emulator/assets/59691442/39adf0b0-2fe9-488d-a10f-b390c4c1141a) |### Using background 2
| SV version | TV version | CV version |
|----------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------|
| ![BG1_BW](https://github.com/Im-Rises/space-invaders-arcade-emulator/assets/59691442/d0a903f4-b92f-48a2-b4d2-f4173be2ce3d) | ![BG1_Green](https://github.com/Im-Rises/space-invaders-arcade-emulator/assets/59691442/7a31f2f5-38ba-4881-894c-bfacc2faf659) | ![BG1_Color](https://github.com/Im-Rises/space-invaders-arcade-emulator/assets/59691442/563ab206-1382-4311-b0b5-76d34b41a0aa) |## Videos
https://user-images.githubusercontent.com/59691442/183045566-0a3df947-06e7-4c46-9fc6-9d2b8f7d9a46.mp4
## Controls
You can use the keyboard to play the game.
| Arcade buttons | Emulator/Keyboard |
|----------------|-------------------|
| Insert coin | C |
| P1 start | Space |
| P1 shoot | ↑ |
| P1 ← | ← |
| P1 → | → |
| P2 start | G |
| P2 shoot | E |
| P2 ← | S |
| P2 → | F |The original game is mapped with some inputs that allow the constructor to choose the difficulty. This allows you to
increase the numer of lives and change the extra ship necessity points. To change those settings check the checkboxes
before starting the game.## GitHub Actions
[![Node.js CI](https://github.com/Im-Rises/space-invaders-arcade-emulator-website/actions/workflows/node.js.yml/badge.svg)](https://github.com/Im-Rises/space-invaders-arcade-emulator-website/actions/workflows/node.js.yml)
[![ESLint](https://github.com/Im-Rises/space-invaders-arcade-emulator-website/actions/workflows/eslint.yml/badge.svg)](https://github.com/Im-Rises/space-invaders-arcade-emulator-website/actions/workflows/eslint.yml)
[![CodeQL](https://github.com/Im-Rises/space-invaders-arcade-emulator-website/actions/workflows/codeql.yml/badge.svg)](https://github.com/Im-Rises/space-invaders-arcade-emulator-website/actions/workflows/codeql.yml)
[![pages-build-deployment](https://github.com/Im-Rises/space-invaders-arcade-emulator-website/actions/workflows/pages/pages-build-deployment/badge.svg)](https://github.com/Im-Rises/space-invaders-arcade-emulator-website/actions/workflows/pages/pages-build-deployment)The project is set up to run the following actions:
- node.js.yml : Runs the tests for the Node.js project.
- eslint.yml : Runs the ESLint linter on the project.
- codeql.yml : Runs the CodeQL linter on the project.
- pages-build-deployment : Publish the website## Libraries
React:
Xo:
ESLint:
GitHub gh-pages:
P5.js:
react-device-detect:
## Links
Check the source code
on [![github](https://user-images.githubusercontent.com/59691442/223556058-6244e346-8117-43cd-97c6-bf68611bf286.svg)](https://github.com/im-rises/space-invaders-arcade-emulator)Check the demo
on [![github](https://user-images.githubusercontent.com/59691442/223556058-6244e346-8117-43cd-97c6-bf68611bf286.svg)](https://github.com/im-rises/space-invaders-arcade-emulator-website)Check the package
on [![npm](https://user-images.githubusercontent.com/59691442/223556055-4e9ef014-79d4-4136-ac07-b837b49066c8.svg)](https://www.npmjs.com/package/space-invaders-arcade-emulator)## Contributors
Quentin MOREL :
- @Im-Rises
-[![GitHub contributors](https://contrib.rocks/image?repo=Im-Rises/particle-simulator-react-p5-website)](https://github.com/Im-Rises/particle-simulator-react-p5-website/graphs/contributors)