Building a Roguelike Game with TypeScript

This page summarizes the projects mentioned and recommended in the original post on dev.to

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • cordova-phaser-typescript-template

    A cordova template for mobile game.

    Phaser has its caveats, but it has a lot of tutorials. In fact, most stuff I've implemented, I used their tutorial examples as a template. Their API documentation is a bit fuzzy and not everything will be on the first page you hit. After dwelling through GitHub, I forked a nice Cordova Phaser Template with Typescript which has some cool feature out of the box, mainly a BGM player (with Howler.js), Firebase integration and mobile platform support with Cordova on top of a webpack config with a dev server, and of course, Typescript support.

  • tiled

    Flexible level editor

    This one is free and open source. Tiled alows you to create your level maps with a graphical interface. One of my inspirations was built with Tiled and I had already heard about it. You can import your tilesets (created in Aseprite), have multiple tile layers and object layers, which are used to pin enemy spawns or chests. Again, the most defining feature that made me use this was Phaser's out of the box support for Tiled maps. You need to embed your tileset in your tiled export, and then simply preload the json file, and you can load it in Phaser by doing this.make.tilemap({ key: }); on your scene. Also, like with Aseprite, there's tons of examples for loading a Tiled map and its layers onto your Phaser game.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

  • aseprite

    Animated sprite editor & pixel art tool (Windows, macOS, Linux)

    I bought and have been using Aseprite to draw almost all of my pixel art. I'm not the best sketch artist out there, by any means, but Aseprite has plenty of tools you don't find in software like Photoshop or Affinity Photo. The best thing, is that you can generate spritesheets and tag your animations in Aseprite and Phaser already has a createFromAseprite function which automatically maps the animations in your spritesheet. One thing I've learned the hard way is that if you have two animations with the same name from different sprites, you will have conflicts. You have multiple examples on Phaser's website on how to export and load a spritesheet from Aseprite.

  • PhysicsExamples2D

    Examples of various Unity 2D Physics components and features.

    So I'm still decided to learn Unity and do a project with it. However, my C# knowledge is close to nil 😛. I've known about Phaser for a few years now, and stayed away from it for multiple reasons, the main one being that there really isn't a big community, compared to other engines like Unity or Godot. But currently, it's almost fully compatible with Typescript, which in my head, is acting like a stepping stone to C#. So I went it it.

  • Phaser

    Discontinued Phaser is a fun, free and fast 2D game framework for making HTML5 games for desktop and mobile web browsers, supporting Canvas and WebGL rendering. [Moved to: https://github.com/phaserjs/phaser] (by photonstorm)

    So I'm still decided to learn Unity and do a project with it. However, my C# knowledge is close to nil 😛. I've known about Phaser for a few years now, and stayed away from it for multiple reasons, the main one being that there really isn't a big community, compared to other engines like Unity or Godot. But currently, it's almost fully compatible with Typescript, which in my head, is acting like a stepping stone to C#. So I went it it.

  • howler.js

    Javascript audio library for the modern web.

    Phaser has its caveats, but it has a lot of tutorials. In fact, most stuff I've implemented, I used their tutorial examples as a template. Their API documentation is a bit fuzzy and not everything will be on the first page you hit. After dwelling through GitHub, I forked a nice Cordova Phaser Template with Typescript which has some cool feature out of the box, mainly a BGM player (with Howler.js), Firebase integration and mobile platform support with Cordova on top of a webpack config with a dev server, and of course, Typescript support.

  • Godot

    Godot Engine – Multi-platform 2D and 3D game engine

    So I'm still decided to learn Unity and do a project with it. However, my C# knowledge is close to nil 😛. I've known about Phaser for a few years now, and stayed away from it for multiple reasons, the main one being that there really isn't a big community, compared to other engines like Unity or Godot. But currently, it's almost fully compatible with Typescript, which in my head, is acting like a stepping stone to C#. So I went it it.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

  • Apache Cordova

    Apache Cordova Android

    Phaser has its caveats, but it has a lot of tutorials. In fact, most stuff I've implemented, I used their tutorial examples as a template. Their API documentation is a bit fuzzy and not everything will be on the first page you hit. After dwelling through GitHub, I forked a nice Cordova Phaser Template with Typescript which has some cool feature out of the box, mainly a BGM player (with Howler.js), Firebase integration and mobile platform support with Cordova on top of a webpack config with a dev server, and of course, Typescript support.

  • Visual Studio Code

    Visual Studio Code

    Despite the fact that I'm going solo on this one, I've also been using Gitkraken with WSLg as a Git GUI to help me visualize what changes I did in the codebase. For example, I can easily find a specific commit which introduced a bug in the codebase and can easily revert it with the built-in code editor. It's one of the products I definitely recommend you get for everything you do that involves a git repository. As per usual, I'm using Visual Studio Code which goes on steroids when using Typescript. It's been a really smooth experience. I've installed some TS extensions, and I was ready to go. You can check my last post to find which extensions I'm currently using.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts