Skip to content

mbpolan/retro-realms

Repository files navigation

Retro Realms

Build Status [Heroku]

This is a simple project that makes use of WebGL and WebSockets.

I was inspired by some pretty cool examples of people creating interactive games and multimedia content with the help of these two technologies, so I figured that the time has come for me to learn it.

This repo is basically a rolling "log" of my progress. There exists a legacy-1.x branch that contains my initial attempt at this type of project. After a brief hiatus, I decided to rewrite it from scratch to give myself a better codebase to work with. The first design had some fundamental design flaws that were hard to fix without introducing bugs, hence this new attempt.

Project

You will find here a Gradle project that has a frontend written in AngularJS 2.x and PIXI.JS, and a backend written in Java using the Spring framework. The code is for a very watered-down multiplayer RPG with some basic controls, like chatting and server-side collision detection. It uses the STOMP protocol to deliver messages over a web socket between clients and the server. I borrowed sprites and tiles from RPG Maker resources to give the demo some color - a big thanks to this project for making them available to everyone!

Building

You can start the project up right away by first cloning this repository, and then running the following command in the root directory on Linux:

gradle bootRun

Or on Windows:

gradlew.bat bootRun

Then open https://localhost:8080 in your favorite browser, preferably Chrome or Firefox.

TODO List

Here are some things that I still plan on trying to implement:

  • Multiple map areas, instead of just the one map block today
  • Slightly more intelligent collision detection and proper layering of sprites
  • NPCs and other computer-controlled entities
  • Customizing player sprites
  • Mouse interactions (moving, right-clicking, etc.)
  • Items and player inventory

About

A simple websockets and WebGL example app

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published