/dozo-app

Primary LanguageTypeScriptMIT LicenseMIT

Realms.World : Castle Hexapolis

A Strategic City-Development Game

Overview

View the Guide

Welcome, esteemed city planners and strategists!

You have been summoned by the Lord of the Realm to the grand challenge of "Castle Hexapolis", the digital realm where your urban planning skills and tactical acumen will be put to the test! This web-based browser game blends the charm of medieval city-building with the cerebral challenge of hexagonal tile placement. Prepare to embark on a journey of strategy, foresight, and creativity as you expand your city from a single Castle hex tile to a sprawling, interconnected metropolis.

Game Objective

Your mission in "Castle Hexapolis" is straightforward yet captivating: skilfully expand your city outward from the central Castle tile, utilising a variety of hex tiles to maximize your points. With ROADS, WATCH TOWERS, and PARKS hex tiles at your disposal, every decision can tilt the balance of power in this dynamic cityscape.

Core Game Elements

   

The CASTLE : Your starting point and the heart of your city. All roads lead here!

   

CITY WALL GATES: The gateways to the outside world. Connecting these to your Castle via roads is a key to victory.

GAME TILES:

 

ROAD

 

Connect these to your Castle and city-wall gates for essential points.

 

 

WATCH TOWER

 

 

Strategically place these for defence and bonus points, especially on hill tiles

 

 PARK    

Group these in threes to create lush parks and score big

 

Gameplay Mechanics

Each turn, you place a trio of hex tiles, carefully considering their placement in relation to your existing structures. With 24 trio tiles in the game, each decision is crucial in sculpting your city's landscape and securing your triumph.

Scoring System

Place trios of hexes to grow your city outward from the CASTLE. Try to get the highest score you can!

ROADS:

+1 points if connected to CASTLE by other ROADS

+3 points per CITY WALL GATE connected to the CASTLE by ROADS

WATCH TOWER:

+1 point if not touching another WATCH TOWER

+2 points if also on a hill

PARK:

+5 points for every 3 PARKS in a connected group

How to run client

We are going to use bun as a package manager. you can use npm or yarn as well.

cd client
bun install
bun run dev
  • a. Deployment processes and debugging techniques

Step 9: Running the Client

Steps include: -a. Launching the client

  • b. Generating models via npm
  • c. Understanding client architecture
  • d. Learning about the torii client

Step 10: Utilizing slot for Remote Deployments

Understand slot and its applications. Install slot and log in with these commands:

curl -L https://slot.cartridge.sh | bash
slotup
slot auth login
# For old auth credentials debug:
rm ~/Library/Application\ Support/slot/credentials.json

Deployment steps:

# Create and manage deployments
slot deployments create castle-hexapolis katana

# Retrieve and save credentials
slot deployments logs castle-hexapolis katana -f

# Build and migrate releases
sozo --release build
sozo --release migrate

# Set up torii and connect to the world
slot deployments create castle-hexapolis torii --rpc https://api.cartridge.gg/x/castle-hexapolis/katana --world 0xb18e8ef76b6739c501ccb7be5121704babacc68976b4b07789e3a366e68b15 --start-block 1

# Update authentication for the release
./scripts/default_auth.sh release

Deployed Katana Instance: https://api.cartridge.gg/x/castle-hexapolis/katana Deployed Torii Instance: https://api.cartridge.gg/x/castle-hexapolis/torii

Design Inspirations and game Asset credit:

Six Sided Streets (Chris Klimowski)

My City (Reiner Knizia)

Tiny Islands (David King)

Cascadia (Randy Flynn)