Wednesday, April 10, 2019

RTS_7 "New Terrain Feature & Weather"

Well well well, I said that I would work on military units or roads, but...


First of all, in my quest to continue to make the game more detailed and polished, I've added a new terrain feature: Hills.



Hills are just land ridges. I had actually intended for them to be in the ridges update but the visuals weren't rendering correctly so I had to hold it off until later.

But that's not the real meat of this update. No by far that would be the feature that no one (not even me) expected: Weather!



For balancing weather doesn't appear until turn 9 so that players have the opportunity to settle cities & start work before being affected by it. Then every 4 turns it moves so one person's storm could very well move and hit another player.



This feature will add a *TON* of new gameplay opportunity. It helps to add that bit of randomness to the game that I think will help keep players on edge. Because of the moving weather system, it also means that players (if they have sight) will have the opportunity to see weather coming in-advance and brace for it. This will help make it a bit better to know that it's coming.

Sadly, however, the weather system so far has been a bust. I'm including it in this update because I may eventually bring it back, but for now, it's too expensive on CPU & GPU to be worth adding. When the weather is generated players see generally a 50% frame decrease which is far too steep for me to be comfortable making it a core feature. So until I can solve this, it may or may not be in the final game.

That's all for this one, I'm hoping to get something bigger to you guys soon, I promise!

Sincerely,
Blake Gillman

Sunday, April 7, 2019

RTS_6 "Workers, Buildings, New Terrain Feature & UI Improvements"

First of all, I noticed in the last update that trees were floating over shores, but I'm gonna go ahead and add that to the "So minor, I need to focus on other stuff" pile next to the cracks near rivers lol.


In the last update, I added bridges & trees which looked really nice but I made a very bad mistake in doing so. You see I added both as being a 'feature' of a tile, but that was silly because a bridge isn't a feature it's something someone has to build. So I've reworked the system so they are now separated, features include things like trees or if the tile is a hill, whereas buildings are additions to the tile that has to be built.

With that distinction, I've added bridges to the game but now as a building and not a feature. And what better way to test out this new improved system than by having our newest unit be a worker?



Right now bridges are treated like any other building (given a random position in the tile), but I'll eventually change that. It'd be reasonable to ask how this worker was able to build a bridge on a hex that it's incapable of going on. Well, that's because in this game workers can build hexes on the tiles around it, not just the ones they are on. I think this will add a new interesting aspect to building in general.

I've also added a new visual for the city & reduced the size of the city bubble above it:



Now, I really want to continue to polish and add detail to the map so I've added a new feature to the map: Ridges.




Not only will this help add visual detail to the map but it will also serve a good gameplay purpose. A ridge will give defensive buffs to units on them and also cost extra movement to move on to. This is how hills will also act (but on land) when I get around to adding them.

Next, I want to work on roads and maybe even adding in a military unit, we'll see!

Sincerely,
Blake Gillman

Wednesday, April 3, 2019

RTS_5 "Forests, Bridges, Cities"

In the last update, I updated the engine to a new polished look and so I thought I'd keep that train moving! First thing I wanted to work on was trees:


You'll also notice the map is brighter! 50% brighter to be exact. I think this increased look will help reduce the melancholy feeling that the map used to give off as well as exaggerate the colors for a more cartoony look.

Next up I wanted to work on bridges:



Unlike in Sid Meier's Civilization V rivers aren't between tiles but instead take up entire tiles. This means that units can't cross rivers without a bridge. This is now also reflected in pathfinding where units will avoid rivers entirely now.



As you can see the unit will only cross where there is a bridge, and if there's no bridge the unit won't be able to cross at all. I've also slightly changed the way the unit icon renders.

That's already a lot to take in, but I'm all about rapid progress so I've got even more up my sleeve! This first unit was a settler because I wanted to be able to work right away on: Cities!



Right now cities have a visual, a UI which displays their name, health, and defense, and claim the territory around them when they are placed. They don't do anything more than that at the moment, but it's a great start!

In the next update, I want to work on creating a worker unit, so we'll see how that goes!

Sincerely,
Blake Gillman

Sunday, March 31, 2019

RTS_4 "New Graphics, Units & Rivers"

It's been a little over a week and man have I been busy!

First of all, I completely reworked the way the engine looks visually. I want to start moving it away from that plain debug / testing look and move toward a more polished one:



I think it's looking pretty good. Gameplay has also gotten some major work as I finally have added units to the game. This took awhile due to pathfinding but my first test unit is a settler. Their icon displays the primary & secondary color of the player (Which is red & white for testing):


Here you can see some of that hot pathfinding action:


So everything is looking pretty good there. I can press next turn in the editor and the unit will indeed move along that path. I've also implemented checks so 2 military units can't occupy the same tile among other things.

So all of that took freaking forever to do, but I was downstate for awhile and had nothing but my laptop so I worked on this a lot, just waking up and working until I go to sleep.

But even with all of that, I'm still not finished. Like an absolute mad lad I've logged a good 80+ hours since the last update to bring you all this, and that includes: Rivers!


This was a lot harder than I had anticipated but it was also very rewarding to finish. As you can see the rendering position of the tiles is a bit glitchy creating cracks between them but after spending this long making this I think that's a bug I can let slide for now.


That's everything for this update. As you can see I've been logging some pretty heavy hours (10+ a day) to try and get you guys these updates. I'm also spacing the updates out a bit more so that they include more features. I plan on working on more map-related stuff like generating trees so expect that in the next update!

Sincerely,
Blake Gillman

Saturday, March 23, 2019

RTS_3 Territory & Oceans

Now that the map engine has been established I've been able to focus on other features. One of which is generating oceans around the map so that I can start working on continents, islands, or whatever other generating I want to do:


(I removed beach for the now because instead of being its own tile it'll likely just render on the side of grass tiles)

Beside that though I've also been working on a territory system, which so far works pretty well:



I know I said to expect units in the next update but since the first unit I'm making is a settler unit I figured I should make a territory system for when I'm ready to work on creating cities. But hopefully, expect units in the next update probably maybe!

Sincerely,
Blake Gillman

Wednesday, March 20, 2019

RTS_2 - More map stuff

I've literally reprogrammed the map system 5 times because of various things. But it's now fully 3D and working. I've also made the tiles hex's now instead of squares:


That's a debug mode where I can see the coordinates of each hexagon. The reason this new map system took so long is that I'm now using a 3-axis system to track the position of each hexagon, which will let me perform math functions like pathfinding a lot easier.

Here's what it looks like outside of debug mode (and more zoomed out):


Because I'm using a 3D coordinate system to store the position of hex's it forms the shape of a rhombus instead of a rectangle or square. This works for now since it's better for testing the math, so making it square/rectangular is likely the last thing I'll ever do.

I had to reprogram it so many times because the 3D system was very hard to learn and adapt to but I've finally managed to pull it off. I'm working on units right now so expect that in the next update!

Sincerely,
Blake Gillman

Saturday, March 9, 2019

My next project planned for Steam

Wow has it been a while! I'm so grateful though because all that time I wasn't posting was the time I was getting paid. I'm so used to doing revenue share work that never gets published or working part-time it just feels immensely satisfying to being doing contracts now in game development programming.

So now being more financially secure than I was, I have finally been able to get back to work on some of my own games!

DEEP SPACE 2


Just kidding. I really do want to do a Deep Space 2 in the future but it's a big high-budget of a project since it would be a long first-person singleplayer story game (literally entirely different from the first game) and that sort of game takes quite a bit of development time & budget to pull off.

No, for now, I thought I'd work on something more practical. I've really been wanting to do an RTS for a while (If you look at my "What I've been doing these 5 months" post you'll see that I worked on several procedural generating projects & RTS's. Well, I'm back at it!

This project was inspired by Steel Division: Normandy 44, a war game by Paradox Interactive. I just thought that the territory system was so cool that it'd be amazing to be implemented into other genre's. I've been calling my new game RTS but it will be turn-based. The best way I can describe it is it's basically like Civ V (not 6 >:c ) mixed with Steel Division's territory system, with more focus on war than civ had. Unlike Civilization, however, the game will most likely not be about advancing through the ages and instead just upgrading the fantasy/medieval age that you're already in (Like going from a wooden sword to iron, etc.)

I've literally only just started on the project. I've taken everything I learned from the procedural generating I did those last months and applied it here. This is the single most optimized generating system I have ever designed, able to generate a 128x128 (16,384 tiles) map w/ color in 0.14 seconds.

Now, of course, that sounds impressive and all (and it is) but that number will grow exponentially when I start adding the actually intensive generating like trees, resources, etc. And not to mention when the map isn't flat and actually has hills & such that'll make rendering take a lot longer.

Overall my estimate is that my current optimized system will be capable of generating a 200x200 map in 20 seconds when everything is finished, which is still faster than Civilization V. But that's high hopes haha! I'm pretty slow at loading/saving though so that'll probably be slower than Civilization.

Anyway, with all that text here's an example of a 128x128 map that was generated in 0.14 seconds:


Again, the map is completely flat (2D) at the moment, but the actual game will be 3D so it'll take a lot longer to render in the future. But I made it 2D for now so that I could test generating without having to worry about looks.

Thanks for reading! And sincerely,
Blake Gillman