react-roguelike icon indicating copy to clipboard operation
react-roguelike copied to clipboard

A roguelike game built with React and TypeScript.

React Roguelike

A roguelike game built with React and TypeScript.

https://react-roguelike-demo.netlify.app

CircleCI All Contributors

Screenshot 2021-05-08 at 10 29 27

How to play

Go to https://react-roguelike-demo.netlify.app to start a new game.

The level editor is available here.

Built with

  • react - a JavaScript library for building user interfaces
  • typescript - a typed superset of JavaScript that compiles to plain JavaScript
  • konva.js - HTML5 2d canvas js library
  • react-konva - declarative canvas components for React
  • use-immer - a hook to use immer as a React hook to manipulate state
  • styled-components - a convenient way to style components with CSS
  • use-sound - a React Hook for Sound Effects
  • seedrandom - seeded random number generator for JavaScript
  • fontfaceobserver - a fast and simple web font loader
  • RPG Dice Roller - easy advanced dice rolling

Contributing

You are welcome to contribute to this project! See CONTRIBUTING.

Roadmap

See ROADMAP.

Installation

# Clone the repository
$ git clone https://github.com/TimAstier/react-roguelike

# Install dependencies
$ cd react-roguelike
$ yarn install

# Start the app
$ yarn dev

# Open a browser tab at http://localhost:3000/

Deployments:

Merging commits to master will auto-deploy to:
https://react-roguelike-demo.netlify.app

Manual deployment

yarn build
netlify deploy
# specify "build" as directory
netlify deploy --prod

Credits

  • Music from Pixelsphere.org / The Cynic Project from opengameart
  • Gameover theme by Cleyton Kauffman - https://soundcloud.com/cleytonkauffman
  • Font Ugly Terminal 8 by "ahoge", Creative Commons Attribution license
  • Roguelike/RPG Items by @JoeCreates (Twitter)
  • Flames art from Sharm
  • Font Ubuntu Mono
  • Coin sound effects from StarNinjas
  • Stone stairs sound effect from Dorkster
  • Squeaky Rat by Iwan 'qubodup' Gabovitch http://opengameart.org/users/qubodup
  • Monster growl sounds from Ogrebane
  • Attack miss sound from remaxim
  • Punches, hits, swords and squishes sounds by Philippe Groarke. Many sounds have been used for these, below is the complete attributions:
    afterguard - unionsword 1865 (CC-BY 3.0 -- http://www.freesound.org/people/afterguard/sounds/44660/) benboncan - bang (CC-BY 3.0 -- http://www.freesound.org/people/Benboncan/sounds/63831/) black-snow - sword slice 23 (CC-BY 3.0 -- http://www.freesound.org/people/Black%20Snow/sounds/109432/) cgeffex - bang thunder (CC-BY 3.0 -- http://www.freesound.org/people/CGEffex/sounds/121566/) cgeffex - swishes (CC-BY 3.0 -- http://www.freesound.org/people/CGEffex/sounds/93081/) cinevid - breakingneck (CC0 -- http://www.freesound.org/people/cinevid/sounds/144159/) cosmicembers - cape swoosh (CC-BY 3.0 -- http://www.freesound.org/people/CosmicEmbers/sounds/161415/) cosmicembers - fast swing air woosh (CC-BY 3.0 -- http://www.freesound.org/people/CosmicEmbers/sounds/160756/) djahren - plastic bang (CC-BY 3.0 -- http://www.freesound.org/people/djahren/sounds/84803/) dobroide - 20061030 bang ms (CC-BY 3.0 -- http://www.freesound.org/people/dobroide/sounds/24633/) erdie - egg01 (CC-BY 3.0 -- http://www.freesound.org/people/Erdie/sounds/155873/) erdie - sword04 (CC-BY 3.0 -- http://www.freesound.org/people/Erdie/sounds/27858/) filipe chagas - lemon juicy squeeze fruit (CC0 -- http://www.freesound.org/people/Filipe%20Chagas/sounds/91915/) herbertboland - distantcrackcountryside (CC-BY 3.0 -- http://www.freesound.org/people/HerbertBoland/sounds/142020/) iedlabs - cruch eggshells medium (CC-BY 3.0 -- http://www.freesound.org/people/IEDlabs/sounds/82318/) jobro - sword pulled 2 (CC-BY 3.0 -- http://www.freesound.org/people/jobro/sounds/74832/) joelaudio - lettuce snap crunch long 002 (CC-BY 3.0 -- http://www.freesound.org/people/JoelAudio/sounds/135462/) jymdavis - mud squish take 2 (CC-BY 3.0 -- http://www.freesound.org/people/jymdavis/sounds/140478/) kibibu - sword_4 (CC0 -- http://www.freesound.org/people/kibibu/sounds/22428/) kleanthism - kleaudio_crackingbone2_msST (CC0 -- http://www.freesound.org/people/kleanthism/sounds/145363/) lolamadeus - watermelon squelch4 (CC0 -- http://www.freesound.org/people/lolamadeus/sounds/159669/) muses212 - stirring pasta batch1 bip (CC0 -- http://www.freesound.org/people/muses212/sounds/77251/) qat - sheath sword (CC0 -- http://www.freesound.org/people/Qat/sounds/107590/) qat - unsheath sword (CC0 -- http://www.freesound.org/people/Qat/sounds/107589/) qubodup - punching bag (CC0 -- http://www.freesound.org/people/qubodup/sounds/53985/) qubodup - swosh swoosh whoosh air sound free high quality (CC0 -- http://www.freesound.org/people/qubodup/sounds/60026/) qubodup - swosh sword swing (CC0 -- http://www.freesound.org/people/qubodup/sounds/59992/) robkinsons - sworddraw (CC-BY 3.0 -- http://www.freesound.org/people/Robkinsons/sounds/103128/) slave2thelight - blood and gore fx performance 2 (CC-BY 3.0 -- http://www.freesound.org/people/Slave2theLight/sounds/157113/) snowflakes - whips01 (CC0 -- http://www.freesound.org/people/snowflakes/sounds/72192/) stereostereo - 05 broken hand foley (CC-BY 3.0 -- http://www.freesound.org/people/stereostereo/sounds/117342/) velvorn - punches (CC0 -- http://www.freesound.org/people/Velvorn/sounds/96486/) xenognosis - egg pulp (CC0 -- http://www.freesound.org/people/xenognosis/sounds/137254/) ztrees1 - punch (CC-BY 3.0 -- http://www.freesound.org/people/ztrees1/sounds/134934/)

License

This project is licensed under the MIT License.
See the LICENSE file for details.

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Timothée Astier
Timothée Astier

💻 📖 🚧 🤔

This project follows the all-contributors specification. Contributions of any kind welcome!