Development Blog

Things that are and aren't happening

Current state:

Early development

Very few features are in the game yet. This is basically a limited preview of what Gridwoods might be like in the future.

Features implemented

  • Moving around
  • Basic terrain
  • Combat
  • NPCs
  • Items
  • Building structures

Technologies used

Client (Frontend)

  • JavaScript (latest ES6 features)
  • ThreeJS (latest version)
  • NPM + Gulp setup
  • Static site generation for the website

Server (Backend)

  • Dart VM 2.2
  • Ubuntu Linux

Slow progress


Unfortunately, not much has happened since the last update. I was too sick to work most of the time. The rest of the time the work was more about thinking and planning than doing.

Anywhay, this is what happend:

  • Added a character screen

    It's pretty useless right now, but this is where you'll be able to find all the info on your character, like dealt damage and defense values.

  • Made the trees a bit smaller / cleaner

    The trees now don't overlap as much. This looks better in my opinion, but I'm still not really happy with them.

Next I wanted to implement an inventory system, but I'll skip that for now. An elaborate item system won't make this a game. Something to do does. So I'm working on NPCs next.

Combat arrived


Hitting Space now throws a punch!

This took a few days, mostly because I had to implement a foundation for the skill system. But also because I involunteraly took two days off for the first time since the beginning of the project. Unfortunately, there is no attack animation yet.

There is also an energy bar below your character now. It's only visible if the energy level gets below 100%, the same as health.

A new energy bar

Energy and health

Energy (abbreviated EN) will be the equivalent of the blue Mana stuff you see in most other games. Most actions will consume energy, but it regenerates rather quickly. Unlike health (HP). HP will not regenerate by itself. You will have to warm up by the bonfire or eat something. Or maybe get healed by another player.

I also added a jump, which you can currently activate with the 2 key. It moves you forward two spaces and it doesn't care what kind of obstacles are in between you and the landing area. This will probably change though.

Movement lock key


Hitting Shift while walking in a specific direction now locks your key so you don't have to keep pushing it.

Funnily enough, this was a bug before it became a feature. A player noticed that you can lock your movement if you switch tabs while holding down an arrow key. It was pretty handy to navigate through slow areas. If people started using this bug, they would have an advantage over those not using it. So I decided to officially add it to the game for everybody.

Damage mechanics


Today I laid the foundation for combat. The characters have health points now. You can refill them by warming up by the bonfire. But don't jump inside of it or you'll get hurt. Also the fire looks more like actual fire now.

Gridwoods new campfire

I think there's gonna be some PVP action soon!

Name and basic terrain


After searching for many hours, I finally found a name for the game that seems appropriate and which had a free .com domain name: Gridwoods

The terrain generation took a few days to get to a level that kinda works. It's far from done, but it is finally able to create landscapes that feel natural.

Terrain generation island

This was done using the Simplex algorithm from the Dart library fast_noise and some help of this article.

Day 5


The rendering engine is now ThreeJS. This offers better performance and also more features, such as proper lighting. Took me pretty long, but check out that campfire!

I also added some NPCs that don't do anything but look creepy. Also you can't kill them since there isn't any combat yet.

I think I'll skip combat for now and work on some scenery / landscape next. I wonder how cozy this can get.



Basic collision-detection is finished. I also added a gray spot that's position zero (0/0) on the map for better orientation.

What's next:

  • Probably some kind of combat and NPCs

Basic Networking


This took me longer than I anticipated, but basic networking is finally done. You can now walk around and see others do the same – provided there's someone else online.

I also added a forum. Feel free to register.

What's next:

  • Collision-detection, so you can't walk through objects.

Day 2: Website


Instead of actually working on the game / prototype all I really did today was making this website.

I'm settling on PixiJS for the graphics for now and Dart VM for the backend. Let's see how this turns out.

Things that require immediate attention are:

  • Finding a name & nice available domain
  • Getting networking to work so it feels like I'm making actual progress
  • Figuring out what the game is actually supposed to be about

Hello world!


  • Implemented PixiJS v5 rendering engine
  • First upload. You can move around with the arrow keys. That's it.