Skip to content

Project-Pandora-Game/pandora

Repository files navigation

The Pandora Game Project

Pandora Logo

An open-source 2D web-based game in the making.

Getting Started

Prerequisites

Required software:

  • Node.js v20+
  • Either corepack enabled (recommended) or manually installed pnpm
  • Git
  • Visual Studio Code (recommended)

For more detailed steps you can follow Pandora asset creation tutorial: Development tools installation

Client connecting to official servers

If you don't want to run your own Server & Shard alongside the client, you can connect directly to the official server by editing the pandora-client-web/.env (not the .template!) file, replacing

DIRECTORY_ADDRESS="http://127.0.0.1:25560"

With:

DIRECTORY_ADDRESS="https://project-pandora.com"

And then skip to the step 4 of the "Initial setup" section, selecting "Run Client" instead of "Local Pandora Stack".

Local Dev Server

Initial setup

These steps need to only be done once to setup Pandora stack locally:

  1. Clone the pandora-assets repository to the same directory you cloned this repository into.

  2. Build the assets by opening pandora-assets in VSCode, waiting for setup to finish, then pressing Ctrl+Shift+B. Alternatively you can build them by running following command in the pandora-assets folder:

git submodule update --init; pnpm i; pnpm build
  1. After doing that, your folder structure should look like this (note the out folder in pandora-assets):
(Your Pandora project folder)
├── pandora
│   ├── pandora-client-web
│   ├── pandora-common
│   ├── pandora-server-directory
│   └── pandora-server-shard
└── pandora-assets
    ├── out
    └── src
  1. Open the pandora folder with VSCode, select "trust" and wait for setup to finish. Alternatively you can run the following command in the pandora folder:
pnpm i

Actually running the project

If you are using VSCode and the setup finished, simply press F5 and wait for all 4 components to start.

If want to start Pandora in console, then run following command in the pandora folder and then navigate to http://localhost:6969:

pnpm dev

Congratulations, you've ran the entire pandora stack locally.

Common problems

Database fails to start

You are most likely missing C++ redistributables required by MongoDB on your computer and no other application required them yet. Download and install them from here.

Specifications

Please refer to the documentation repository for more details.

Project structure

Individual components and their repository:

Standards

  • Code styles:
    • Not part of this document, enforced by linting; TODO: Writeup.
  • Review process:
    • No direct pushes to master.
    • 2 Approving reviews required (can be blocked by anyone, requires resolving).
    • Preferred reviews by peers (code things by coders, assets by asset makers).