Skip to main content

Posts

Showing posts from February, 2015

Unreal Engine 4 Dev Update #14: Real Time Grid Generation & Unit Attribute Effects

Hi, I'm back with another update. The project went through a major design change with this iteration. As I had mentioned many times before, the design of my game was heavily inspired by XCOM: Enemy Unknown since the beginning. Maybe it was because of the fact that I was playing it in my iPad right around the time I started messing with Unreal Engine 4. The fact that it was one of the few mobile games that I really liked might have contributed to it as well. Anyways, anyone who has been following my blog would have already noticed that my design and gameplay decisions were mainly based on the iOS version. Recently, I tried out the PC version of XCOM. I really like it, some parts better than the iOS version, while some not so much. Playing the iOS version first probably  was the culprit, but I saw certain design elements that just felt right in that version. Like how there was a command prompt before issuing movement commands, instead of the real time movement command in the PC vers…

Unreal Engine Experiment #1: Gravity Gun

A few weeks back, on one fine saturday, I decided to take some time off from my main project and do a small side project. I decided to do something using Blueprints that I could wrap up within a few hours. The plan was to then put the source in GitHub so that anyone else interested in it could build on top of it. Since I've been watching some of the 'Spoiler Warning' Half Life 2 episodes around that time, I was kind of all excited about the game once again. Probably because of that, there was only one thing that I wanted to make: a Gravity Gun. But I knew that it needed physics, and I haven't done shit with physics in UE4. So I did some R&D on the basics, and came upon a tutorial by Epic's T.J. Ballard in the Unreal Wiki, for lifting objects and such. Here's the link for the tutorial:

Unreal Wiki: Pick Up Physics Object Tutorial

Most of the building blocks that I needed for the project, were already laid down in this tutorial. I went through it, studied what …

Unreal Engine 4 Dev Update #13: Added Movement Action Points & Automated Turn End Logic

In my last update, I had talked about my implementation of path distance based grid mapping. Following in it's wake, I started working on implementing action points for unit movement. I'm working on a system similar to what's done in XCOM: Enemy Unknown. For those of you who haven't played that game, it means that the nearby grids have a movement cost of 1, while the long distance accessible grids cost 2 movement points. All units get 2 movement points by default at the start of a new turn.
So getting back to my implementation, I started off with adding an action point attribute for all units. Every unit will have 2 movement points at the start of the game and it will be refilled at the start of every new turn. The fire command is also supposed to draw from the same pool of points for it's execution. However, at the moment, the fire commands are free of cost. Only the movement is restricted to the availability of action points. Based on my grid mapping logic and the…

Unreal Engine 4 Dev Update #12: Path Distance Based Grid Mapping, Inheritance & Unit Attributes

Welcome back for another update in a series of steady barrage of dev logs, where I'm trying to catch up with the actual development process of my game. We've got one major update for grid mapping and a couple of other minor updates. So let's get to the important one first:
Path Distance Based Grid Mapping
Well tackling this one has been in my peripheral vision since the beginning. Now that I've got some of the other systems implemented, it made sense to jump right into this. As you may have seen in some of my videos, pathing had only a single rule until now: grid based movement. It didn't differentiate between short distance movement and long distance movement. And now, the grids change color according to the distance. At an aesthetic functionality level, it's very similar to the mobile implementation of pathing display in XCOM: Enemy Unknown. When a player clicks anywhere on the navigable space, it calculates the distance and spawns grids in that region based on…

Unreal Engine 4 Dev Update #11: New Character Models, Unit Highlights, Mouse Based Unit Selection & Context based HUD system

Finally, for once, I've managed to put a development update within the deadline mentioned from my previous post. Alright, we're having a cluster of small changes for this one. So let's get right down to it.

New Character Models

I had started off this project from the Top Down Template. So I've been using the default Unreal Engine character until now. A while back, I had bought the 'Prototype Characters' pack by Ying Pei Games from the marketplace. Since they fit the theme of my game better than the blue guy, I decided to use them for my units. Blue for the good guys, and red for the bad guys. If you've been following my posts, you might have come across the fact that I'm already using Epic's Animation Starter Pack in my project. I had some of the basic animations running already, so I did not have much work with adding the new models after re-targeting the skeletons. Here's an in-game screenshot:


And here's one up-close:



Unit Highlights and Hea…

Unreal Engine Dev Update #10: Meet my new Player Character - The Camera

As usual, it's been a while since I put up a development update. In my previous update, I had mentioned that I made some major changes to my project. Oh and btw, since this is basically a learning project for stretching my understanding of game design, I'm just calling it Project Horizon. Current plans are that I'll be releasing it for free. This is kind of an experimental game project for me. So I'm just gonna through around some stuff at it and see if they work. Alright let's get back to the changes. First of all, I'll just note down the two major changes here:
I've set the RTS Camera in my game as the default player character.     2.  A new AI Controller to control the player units.
So I'll get to the first one in detail now. For starters, I've been using my player units as the default characters in the game. And that would seem like the sensible thing to do. Accessing the active player units are also a lot easier that way. And as mentioned in my p…