RPG JS is a framework for creating RPGs and MMORPGs.The code remains the same depending on the type of game!
Don't hesitate to propose your ideas, your remarks and feedbacks on bugs, that will allow us to progress faster on the project!
It only works on NodeJS version 14. You can help with the development to make it work on version 16 (you will have to update Webpack and Node SASS in packages/compiler)
I am pleased to announce the opening of the RPGJS discussion forum. Do you need help? Go to https://community.rpgjs.dev and ask your question!
- Features
- Demo
- Why Alpha Version
- Documentation
- Installation
- Production
- Contribute to developments
- Old Version
- License
- Create events Shared/Scenario mode
- Tiled Map Editor Map creation with Tiled Map Editor. You can have as many scenery layers and event layers as you want
- Collisions by tile or precise
- WebGL Rendering Game rendering uses WebGL rendering (with PixiJS) for better rendering performance
- Precise movement, pixel by pixel
- Playing on mobile, with a gamepad and of course the keyboard
- MMORPG Performance Low Bandwidth, Client-Side Prediction
- Using VueJS for user interfaces Prebuilt GUI (dialog box, main menu, shop menu, etc.)
- Code with Typescript The creation of the game uses TypeScript. The interest is to know the properties and to make the structure clearer.
- Thought for the RPG The API is simple. For example, just by doing:
player.exp += 100
. This can raise the player one level automatically, you can indicate this to all the players on the map, and the map events will be updated according to this new state. - With same code: MMORPG or RPG
- Modular
- Unit tests
npx degit rpgjs/starter my-rpg-game
cd my-rpg-game
npm install
npm run dev
To test only in RPG mode:
RPG_TYPE=rpg npm run dev
To put into production:
MMORPG
NODE_ENV=production npm run build
- Put the folders
dist/server
anddist/client
on a server - Starting the server in
dist/server/index.js
.
Example 1:
node dist/server
Example 2: (with PM2)
pm2 start dist/server/index.js
RPG
NODE_ENV=production RPG_TYPE=rpg npm run build
Put the files in the dist/standalone
folder on a static server (as Vercel or Netlify or your own server)
WIP
To contribute to the developments, install the sources locally:
git clone https://github.com/RSamaium/RPG-JS.git
npm install
npm run dev
The installation is a bit long, don't worry!
The game can be found in @rpgjs/sample
package.
MIT. Free for commercial use.