Viir

[WIP] DRTS - Distilled Real-Time Strategy

Recommended Posts

I am working on a multiplayer real-time strategy game.

This game focuses on the core of real-time strategy, forgoing resource gathering, base building and unit types.

The game client was originally implemented as windows application and is now being ported to HTML5 and JavaScript.

You can play the HTML5 version on https://distilledgames.itch.io/distilled-rts

The current version contains an interactive tutorial and an option to play with bots.

Note that the camera controls are not yet explained in the tutorial. Here is how to control the camera:
Camera panning: Hold down right mouse button and drag to move the camera
Camera Zoom: Use the mouse wheel to zoom.

2017-11-24.DRTS.at-6ce22a41-tutorial-stage-split-complete.png

2017-12-07.DRTS.at-b448f71d-tutorial-complete.png

Share this post


Link to post
Share on other sites

Hello @Skeptron, thank you for the feedback. I will post here when I release the next version.

On 8/12/2017 at 5:56 PM, Skeptron said:

Btw what tech do you use?

About the tech: For the client side, the tech is mostly elm. Elm is very useful here as it helps me with modeling the core game mechanics and also with rendering to HTML, JavaScript, and SVG. (In contrast, the original game client from 2016 was a windows application rendering visuals over WPF) On the server side, this project also (in addition to elm) builds on asp.net core, C#, and SQL Server. What seems most interesting now about the tech is reuse of the game mechanics modeled in elm on the server side.

Share this post


Link to post
Share on other sites
4 hours ago, Skeptron said:

That's very interesting, but I wonder how relevant your post is on this forum, considering it's an HTML5 forum. Nice job though.

Thank you, that is an interesting perspective. Reading this made me wonder whether there is a better term to signify the combination of HTML5 + SVG + Javascript. So far, I had used the term "web-based" for this, without giving it much thought. Maybe there is a better way to communicate this.

I edited my post for the distinction between HTML5, JavaScript, and SVG.

Share this post


Link to post
Share on other sites

Plan for the next release of DRTS

After last weeks release of the Distilled RTS web app, I am now figuring out what to implement next.

So far, the web app only contains the tutorial, and even that is not complete yet.
When looking at that release, many things to improve stand out to me immediately. Examples are adding UI for camera control, edge scrolling, sound effects and a control scheme for touchscreens.

But I want to get a better idea of the big picture first and work on parts which are more likely to hold surprises.
Eventually, the web app will replace the windows app and therefore contain all the game modes. This also means the user can create maps, play against AI, or compete with other players for ranks on the leaderboard in server-based multiplayer.

Implementing a simplified version of the multiplayer mode in the web app seems easy enough for a next release. But to obtain useful feedback on a multiplayer mode, we need to find people willing to spend time on meeting online for tests.
I am wary of betting we could gather enough people for these tests at the moment.
This leaves me with adding singleplayer content to the web app as the objective for the next release.

The minimum viable singleplayer mode could be offering 1 vs 1 against a basic AI. The player also should be able to start a new game or switch back to the tutorial anytime using in-app controls, that is, without having to resort to browser controls like reloading the page. Therefore some UI for navigation is needed too.
My impression now is that this scope is enough to warrant an individual release, so that is the plan for the next release.

Share this post


Link to post
Share on other sites

New release of DRTS HTML5 port - play with bots

Following the plan from last week, I expanded the web port of the DRTS game.

You can play this new version at https://distilledgames.itch.io/distilled-rts

In the upper right corner of the screen, you will now find a button to access the main navigation, and from there, you can start new games.
Besides the tutorial, you can also play on a larger map with a bot.
To make this a bit more of a challenge, I spent a few hours on building a basic behavior for the bot.
It will spread out, conquer more and more area on the map and eventually overrun you if you don’t act.

I also started implementation of the map generator, which is used to generate random maps, and the new map you see is coming from this generator.
A good part of the map generation functions are already implemented, but it needs some more work, most importantly to enable symmetrical maps.
Symmetrical maps will come with a future release, as well as a user interface to customize the map generation process.

The screenshot below shows a game with the new bot and map.

2017-12-18.DRTS.play-with-bot.png

Share this post


Link to post
Share on other sites

DRTS Update - Improving tutorial and playing with bots

Today I released a new version of DRTS. You can play it now at https://distilledgames.itch.io/distilled-rts

The changes made since the last release are primarily about the tutorial and playing with bots.

Tutorial

Hugo Blanco recently helped me test the game. He patiently worked through the tutorial and so I learned about stumbling blocks in there. Based on these observations, I compiled a list of planned changes to improve the tutorial and UI

Selecting The Split Ratio

When testing the tutorial, we found a problem in the stage which instructs the player to split his unit. In the step to select the split ratio, there was insufficient guidance on how to proceed. I implemented several changes to improve this and also make the UI for this easier to use in general:

  • In the tutorial step, visually point out a location the player can click on to complete the step. This is done by displaying an arrow pointing to the slider control.
  • Make the slider control react to moving the mouse over it, to help understand that we can interact with this thing.
  • Make the slider control work the same way with all mouse buttons.

The video below shows how this part of the tutorial looks like now: 2017-12-28.DRTS.select-split-ratio.gif

Some other improvements made in the tutorial:

  • Enable the player to complete the tutorial without relying on external instructions about camera controls: In the tutorial, the camera automatically follows the action to make sure the player can always see everything of interest.
  • The visuals to draw attention to objects to interact with now also indicate if the player should use a specific mouse button.

Playing with Bots

There are now more maps to play on. You will find a new map each time you start a game. I expanded the map generation function to create symmetric maps. With this release, you will automatically get a symmetric map when starting a game.

Since the last release, several bugs have been fixed:

  • Fix a distracting visual glitch discovered by Hugo: Avoid splitting a unit when the resulting units are going to be merged in the next progress step anyway.
  • Game World Movement: Opponents units block each others movement on opposite edges.
  • Game World Movement: Opponents unit blocks movement from node to edge.
  • Game World Combat: Make unit attack the unit blocking its movement with the highest priority.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Recently Browsing   0 members

    No registered users viewing this page.