Skip to content

frankhale/textworld

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TextWorld

A text based role playing game engine written in TypeScript on Deno with an Angular frontend. This is still a work in progress but there is a lot here. There is a strong focus on test driven design although we don't currently have 100% code coverage.

The current focus is more on the game engine and less on the little world that was created to play in. This will change as time moves on.

Screenshot(s)

Screenshot

TODO

  • Command line interface
  • Parser
  • Rooms/Zones
  • Room/Zone movement
  • Items (pickup, use, drop)
  • Objects (look, examine)
  • Crafting
  • NPCs
  • NPC interaction
  • Vendors
  • Quests
  • Mapping
  • Basic command help
  • Combat
  • Exposed through WebSocket server
  • Exposed through command line interface
  • Web UI
  • Spawn Locations
  • Save/Load (uses Deno KV)
  • Leveling

Run

NOTE: Because we are using Deno.Kv we need to pass the --unstable flag

Backend:

deno run --unstable --allow-read --allow-write --allow-net .\textworld_game.ts

Frontend:

NOTE: Requires Node.js and Angular CLI

ng serve

Test

NOTE: Because we are using Deno.Kv we need to pass the --unstable flag

deno test --unstable --allow-read --allow-write .\textworld_tests.ts

Author(s)

Frank Hale <frankhaledevelops AT gmail.com>

Date

27 November 2023