DRTS Game - Master The Art Of War

What I am showing here is a video game made with Elm.
It is a real-time strategy game, you can play the game with bots or with other people online:


This project is work in progress, so not polished yet.

To give an overview of the tools used:

  • So far, the client is entirely coded in Elm, there was no need for ports.
  • On the server, the Elm app (Game Mechanics) is hosted in an ASP.NET Core app which handles the interfacing (HTTP, Persistence, Auth)

I just tested the tutorial, it’s really nice!

1 Like

Thank you @mattpiz for the elm-pointer-events package. I used it in this game to implement the touch screen support.

1 Like

This is so cool!!! :heart_eyes_cat::heart_eyes_cat::heart_eyes_cat:


This game is incredible! But I can’t beat bots :scream:


Thank you for testing! Looks like I should offer some easier levels after the tutorial :thinking:


I’ve tried to play it a few times and the bot was overwhelmingly more powerful.

Thinking about the causes for my defeat, I developed this idea that the bot has a higher APM than me and it might be so high as to be impossible to beat. If the bot works like this, it might be interesting to provide the player with different levels of difficulty for the bot (different APMs).

Also I am very curious to see a youtube video of a good player beating the bot. :slight_smile:


Thank you, that is good to know. When I was working on the bot, I thought it might become boring for people too quickly as not enough of a challenge. But in light of the recent feedback, it seems boring bots are not a bottleneck at the moment.

That is interesting. I am trying to design the game so that frantic clicking is not required. If there is a case where sustained fast input is required to win, I want to change this.

The bot is not limited in this regard at the moment. I like the idea of having different levels of bot difficulty. I should try implement that :thinking:

A video of beating the bot can be seen here:


First of all… AWESOME JOB! :smiley:

Second, a couple of questions:
Did you use any particular libraries or frameworks?
Did you feel the lack of “gaming frameworks” such as Pixi?

1 Like

Amazing stuff! Very fun to play!!

1 Like

For sure, some important ones on the client side (omitting elm-lang/*):

On the server:

No. When I look at lack of frameworks, I don’t find much lack that is specific to gaming.

Looking at this and other game projects, functionality that is most likely to move to framework(s) is working with SVG (both rendering and parsing).
Also, functions to deal with the differences between web-browsers (chrome vs firefox) seem good candidates for moving them into a framework.

1 Like

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.