zero-to-mastery / ZTM-Quest

A fun little 2D top-down rpg where you can explore the world of zero-to-mastery. Be prepared for funny and serious content and of course, Bruno.
https://zero-to-mastery.github.io/ZTM-Quest/
27 stars 69 forks source link
hacktoberfest

ZTM Quest - A Journey Begins

ztm quest - a journey begins cover

Whether you're an experienced game developer, a Javascript expert, an HTML and CSS pro, or have never worked with any of these, this project is designed for everyone who's interested in creating something new and special. The core languages used in this project are Javascript, HTML, and CSS, enhanced with the magic of kaplay.js (formerly kaboom.js). However, even if you're not familiar with Javascript, you can still contribute by submitting non-code pull requests. We also need game assets like spritesheets, music, or even ideas in the form of a screenplay, which will serve as a guide for developers to create assets that align with the project's vision.

Let's see how far we can get and where the game will lead into.

Rules

There are some rules regarding contributions (especially during hacktoberfest)

How to get started

Forking & Cloning the repository

Forking the repository is as easy as hitting the fork button in this repo. After the fork process, you can then

git clone https://github.com/<your-username>/ZTM-Quest.git

Or even better if you have set up ssh for your github account with

git clone git@github.com:<your-username>/ZTM-Quest.git

After cloning it, you have to set up the upstream to be able to sync your local repository with the current version of this repository by running

cd ZTM-Quest
git remote add upstream git@github.com:zero-to-mastery/ZTM-Quest.git

So every now and then - or better said each time you start working, you should run

git pull upstream main

In order to get the latest code and avoid merge conflicts in advance.

Setup the project itself

You should already be in the ZTM-Quest directory. If not just cd into it by running

cd ZTM-Quest

Make sure you use the entire path where you have cloned it into. Inside run

npm install

This should set everything up and you should be good to go.

Scripts

You can run the dev server with hot module reloading with

npm run dev

Run code style checks

npm run prettier

Run code style fix

npm run prettier:fix

Run linting

npm run lint

Additional Information

One of the tasks will be to add interactions in the ZTM Quest world. In order to help contributors identify objects in a map, screenshots were made from the Tiled software with available objects with their corresponding names. If you want to develop interactions, make sure to check out the additional-map-info readme

How-To Guides

To make things easier (because it can be really confusing how to start contributing), we have added two HOW-TOs to help you out.

How-To add game objects

How-To add interactions

Recommendations for creating new assets (not mandatory to contribute)

Here are some tools which I can recommend regarding game asset creation from scratch