Meet the world's tiniest 8bit MMORPG
Tags: deno, gamedev, rpg, typescript
Published: 2021-08-24 13:38:38

---
title: Meet the world's tiniest 8bit MMORPG
published: true
description: The first Online RPG made in Deno is already here, and it's really cute
tags: deno, gamedev, rpg, typescript
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ctcl91btqt4kwu4q42rr.png
---

That's right, it may not be the super heavy lifting with beautiful graphics online RPG you may be used to, like WoW, or even the newest one on the block, Amazon's New World.  
It's a tiny 8bit online RPG made using **Deno** and **HTML 5 canvas** only!  
But hold on, we might be going too fast. You may not even be familiar with Deno. Let's start there

## Deno?
Deno is a runtime for js/ts that uses V8 and is built in Rust. It was created by the same dude who created Node, Ryan Dahl, not as a "better Node" as some people think, but rather a "different" Node, with different aspects that may suit some cases better, and some cases worst than Node. You can see Ryan giving some insights of why he started Deno, in his talk [10 Things I Regret About Node.js](https://www.youtube.com/watch?v=M3BM9TB-8yA).  
Deno is nonetheless an amazing runtime that also allows you to code in Typescript by default! It has a lot of security out of the box and you don't need "node_modules" in your projects anymore, things can be imported directly from URLs!  
 If you didn't know Deno by now, I highly sugest you go look out for more information. But this post is about what have been done already with Deno, now that it's [first major release (1.0)](https://deno.com/blog/v1) is a little more than just 1 year old.

## Tiny Land
What we really want to talk about here is what has been done already with this awesome shiny new runtime, specifically this tiny online RPG called **Tiny Land**.  
![game map](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nyuywoduwq0kio3gqf99.png)

Tiny Land is a project that started as a Node + Socket.io [POC](https://en.wikipedia.org/wiki/Proof_of_concept), but was quickly migrated to run on Deno as soon as v1 was comming out.  
It's a tiny online 8bit RPG, that relies on [WebSockets](https://developer.mozilla.org/pt-BR/docs/Web/API/WebSockets_API) provided by [Deno's STD library](https://deno.land/std@0.106.0/ws/README.md). And the best of all, Tiny Land is **Open Source** and you can check the code [here](https://github.com/tiny-devs/tiny-dungeon-online)  

The game consists of basic top down movement. There's rooms, filled with NPC's (agressive or not), and there's 10x10 rooms in the world. Combat happens by simply touching an enemy, the same touching mechanic works for talking with NPC's. And that's basically it!

It's super tiny and don't even has a database, your character's info is stored locally on your browser.  

Well, if you're curious about how it looks, or feels, you can check it out [**here**](https://diguifi.itch.io/tiny-land).

## Closure
I really hope you enjoy Tiny Land, and if you consider helping the project that would be just awesome. If you're not into code, just leaving a star on the repo helps a lot spreading the word and it's very welcome!  

Thank you very much for taking some time to read this article about this tiny game and I really hope you liked it!