Welcome to Delaford. An online, 2D medieval game using JavaScript and HTML5.
First, fork the repository. Then, go into your favorite terminal.
git clone [email protected]:YOUR_USERNAME/game.git
cd game
npm install
npm run serve
npm run serve
will start the development server and watch for changes on the client-side code inside thesrc
folder and otherwise elsewhere applicable.
Now, while still inside the game
folder, open another terminal session in that same location. Type and run npm run dev:node
. This will start the Node.js game server.
If you want to debug, type
npm run ndb
.ndb
is Google Chrome's Node Debugging tool which allows Node.js programs to be easily debugged and see all its context and variables. Highly recommended for a much easier time.
Now you may visit http://localhost:8080
to login and start developing!
Please check out our CONTRIBUTING.md guide on how you can actively participate in the development of this medieval game. It's pretty easy and fun!
Here are the types of things I will be adding as a minimum viable product (alpha). Not too over the top but enough to cover the basics until more is added. Each section links to a project which will contain its sub-tasks within.
When an item is checkmarked, it means the basic foundation is in place. Sometimes, however, it is not fully complete. For example, Inventory is checkmarked but the inventory currently only supports weapons. You cna help fix that.
- Player
- Walking / pathfinding
- Context-menu / Actions*
- Health and stats
- Inventory*
- Character wear*
- Your first quest
- User Interface
- Inventory tab
- Quests tab
- Chatbox (for players and actions)
- Character wear tab
- Overall look & feel
- NPC
- Trading
- Walking around
- Talking
- Examine
- Monsters
- Battle System
- Looting
- Spawning
- Networking
- Player connect to server
- Non-playable characters
- Monsters
- Items
- Minor networking tweaks / alpha-stage
Items marked with an asterisk (*) are started but have not been finalized or finished.
Once all of these items are checked, Delaford will be stable without breaking changes.
Learning how to debug in this game is critical in order to interact with the Node.js server and to the client. Your primary source should be the ndb tool from Google. It is an improved debugging experience witch drastically improved client-side debugging.
Read more at DEBUGGING.md.
Delaford contains work from multiple sources not organically made by contributions from Delaford directly.
- Tileset, monsters, items, players by David E. Gervais. · CC license
- Main screen music by Matthew Pablo. · CC license
- Game font 'PixelMix' by Andrew Tyler, IBM VGA8 by IBM.
- Heroicons by Steve Schoger