Game Tick

So I was messing around in Unreal Engine 4 and I managed to create the basis for my game tick through the Blueprint visual scripting system. For those of you unfamiliar with the concept, the tick (not confused with the constant tick for every frame in 3D rendering) is when the major game logic happens. The tick is when a player regenerates… when damage effects are applied… when regularly decremented values are assessed. Basically the tick is the master of all.

It actually wasn’t too bad in Blueprints. I am actually fairly proud that I managed to get the skeleton working the first time through without a bunch of trial and error. ^_^ Here is the Blueprint as it stands right now:
UE4-GameTick

This is all implemented in the Game Mode Blueprint that is supposed to contain the rules for the game. It should be fairly straightforward to implement. If you have any problems with it, let me know.

Unreal and the death of Unity

Among other things that I’ve been doing recently (changing hosting providers, playing with site design, working my way through titillating finance classes…), I’ve completely changed my game engine of choice. Make no mistake, the decision was not easy or flippant. Over the past couple of years I invested quite a bit of time learning the Unity engine and money to acquire extended capabilities (visual finite state machines, dialogue management, etc) and assets.

Bear with me a moment and I will explain my reasoning (or excuse). When I was first getting serious about game development I tried as many different engines as I could get my hands on. Some were free or low-cost, while others started in the tens of thousands to even start licensing for use. I tested Torque 2D/3D, Game Maker, Unigine, Unity, UDK3 and quite a few others.

I eventually settled on Unity because they had the polish that tools such as Torque lacked along with an active and supportive community. Their licensing was also fairly straightforward: Indie license for desktop platforms was free, Pro license and mobile platforms had a cost. Shortly after I started using Unity, they also released mobile platforms under the Indie license for free.

“That’s awesome!”, you say.
“Aye, I agree!”, I concede nonchalantly.

But that’s not the whole story. Certain functionality, such as calling a web service was restricted to pro license only. I found that out during a hackathon where my team created a game in Unity to delete spam mail. When I tried to build it for mobile, it failed because we had made a call-out to an external web service. >.< >.< >.< <---- those are all of my angry faces because I didn't realize it earlier.Along with some of the other limitations of not having pro, there were several plugins that would be quite useful, but absolutely wouldn't work without a pro license. Okay, so mark those off for now.Even with all of the limitations, I was still plugging along with Unity because they were still the best option available. Sure, I would probably need to shell out $4500 ($1500 for pro, $1500 for android, $1500 for iOS) if I ever wanted to release anything worth releasing. But that is a fixed cost, right? Sure, if you never want to get any major version upgrades. Those licenses cost another $600-$750 for each platform. Don't worry, the cost will all make more sense in just a moment.Cue a post a couple of months ago from Epic Games, creators of Unreal Engine... they are releasing a brand new engine, Unreal Engine 4, with a brand new licensing agreement. To be honest, If UDK3 hadn't had a Windows-only-and-25%-of-all-profits-over-$50,000 type of license, I might have considered it! Tentatively I continued reading the information... $20/month subscription (can cancel anytime and still use the engine), FULL SOURCE CODE ACCESS <-- can you tell I'm calling that out?, and 5% of gross sales paid back to Epic.Bomb. Dropped.To put it in perspective, I would need to sell somewhere around $90,000 with Unreal to equal the cost of the Unity pro license. By that time, I wouldn't care much what engine it was created in... I would just be enjoying a successful release.Considering my loss was only about $20 if I didn't like the product, I signed up the moment I had a chance. It didn't work at first on my Macbook, which is my normal development device. No worries. They promised support on Windows, Mac, and Linux. It worked perfectly fine on my Windows desktop. Within the next month they had released a huge boatload of updates, including one that made the editor work perfectly on my Macbook. The last release included hundreds of Epic + community updates. They are moving toward real-time updates for people with an active subscription (because they provide Github access).Needless to say, I haven't found a reason to stop the subscription yet. I have been devouring their videos (all professionally done), and working on porting my existing work over to their platform.Let's go back to the source code thing. That one is important. Everything is in C++ (low-level and fast). If I don't like something about the engine, I can get rid of it. I can completely replace any part of the engine because I have full access to the source code. Do you know how ridiculous that is? Several companies in the game industry charge fees starting in the hundreds of thousands to access that type of information.

Beyond the benefits I’ve already stated, I noticed another big thing. Everything I need to create a game is already right in front of me. This is an engine created for game developers, by game developers, with the intention of providing the entire workflow. This is a system they would use to actually create a game from start to finish. I don’t need to spend a bunch of money acquiring basic extensions to functionality to help with visual scripting or lines in the editor to help place things…. all of this stuff comes standard.

I don’t foresee Unity actually dying. They are a solid company and a lot of community support. But they died in my small universe. Going forward, I have focused all of my efforts on Unreal Engine 4 development. I will take what I can along with me (assets may be about it), but I will need to recreate many things. However, this is a necessary evil to which I am looking forward.