I have not pushed much updates recently (almost a year, huh?), so here it comes!
I was working on Star Fortress and at the same time I was also helping another local studio here in South Florida to update their game The SoulKeeper VR. Also, about 6-8 months ago I have changed the direction of Star Fortress. It went from third person shooter to top-down ARPG. The main reason for such crazy switch was constantly increasing cost of having and maintaining online game servers. The whole cost (time and money) of necessary infrastructure became just too much to handle for a small team. It was hard… really hard to admit it that it is better to change the game concept to something more manageable, considering how much it was already done (the latest thing was integration of a voxel engine, absolutely awesome stuff! It totally changed the dynamics of the game). But, you know, it is better to figure that out at the beginning than get hit with that at the end. I have to admit, it was all my fault. I underestimated the server part, not from the programming point of view but from a management of it.
Anyway, long story short, I took some time to transfer the code into a new project. I was able to salvage most of old code, logic, and assets :). The new project still has a name “Star Fortress” and we really love it! Then my friends and I worked on a story and concepts. I made a brand new new inventory system, weapons, melee combat, main character locomotion, minimap, missions and objectives manager, etc. Each task on its own is big and technically very challenging. Right now there are no graphics assets to brag about as the main concentration is still technical aspects and proof of concepts. Here are the latest screenshots from our basic locomotion map:
Videos will come in the next dev update, hopefully not a year later 😉
A lot of new and exciting features in this update!
First, main and the most exciting news: we have selected the name for the game!
Please welcome: Star Fortress ™. A new website for the game was registered as well: www.StarFortressUniverse.com
My team and I are very excited working on Star Fortress! We also hosted an event in Florida Unreal Meetup demoing a current functionality. That was really awesome!!! I did not expect such reception. Everyone had tons of fun fragging each other! :)))
Now, some progress and tech news:
Energy and kinetic weapons reload
Added new locomotion states: dive and roll, roll after a high jump
Finally I was able to compile server part of the game for Linux using clang 5 and Unreal Engine 4.19 (see programming tips)
Fusion Reactor (ver. 1)
Tons of small here and there updates
Some Programmings Tips
Need to get montage played only on a part of the body? Do like this:
Also, you can make an additive montage. I use it for a weapon recoil.
To compile UE 4.19 projects for Linux on Windows using clang 5 you need to disable warning as errors: c:\Unreal \ UE-4.19 \Engine \ Source \ Programs \ UnrealBuildTool \ Platform \ Linux \ LinuxToolChain.cs – Result += ” -Wall -Werror”;
+ Result += ” -Wall”;
Sniper’s scope is completely rewritten. What was wrong with the previous one? It worked as it supposed to work, but it had around 15-20 FPS drop when used. It was mainly caused by the fact that we used a second camera to render what you see in the scope. Why we used a second camera? Well, because we did not know any other alternatives how to make a hole in the blur panel (nice visual FX). After some experimenting with UE4 materials and a lot of trials and errors, I finally came up with a new logic that completely eliminates the second camera and does not cause FPS drop while having the same visual effect! :). As a bonus, a scope can be any shape (round, rectangular, etc) and, most importantly, it will preserve its shape when a window is resized.
Weapon recoil and spray patterns. This was heavily inspired by CS:GO.
The main idea here is that every shot follows by weapon’s spray pattern. That brings more realism into the game. It makes the whole game’s experience as a skill based game. There were some technical difficulties how to track aim,and a shot direction. But everything was nicely solved at the end.
This is how a curve looks like for the blaster weapon that I use for testing. Of cause it is all adjustable 🙂
Upgrade to Unreal Engine 4.19. That was somewhat smooth until we start building for Linux (the server part of the game). A lot of errors and warnings showed up. Interesting enough, it all came out from the engine’s generated code and clang. I spent at least 2 full days trying to fix that. Still, there is no solution yet. Good stuff that we can run it all meanwhile in Windows. But I still will be looking how to make it compiled on Linux.
We switched to articy:draft to better organize files and ideas instead of Google docs. I got so many documents, tables, images, diagrams, etc, so placing it all to articy:draft gave us a nice management solution. Let’s see how that works out, we are still on a trial version (10 days left).
It was a very busy week. Mostly it was all about visual FX:
All new impact visual FX when a projectile hits its target. I significantly expanded a list of surface physical properties and integrated a new set of particle effects. It looks amazing!
A new water material with FX when you walk over it.
A new set of dynamic cross hairs per weapon.
A sniper mode. There will be multiple sniper modes and visual FX depending on a type of a weapon and attached scope you have. Currently, it is all work in progress. Here is a test image of a full screen scope:
Everything seems to be working as expected in a multiplayer mode as well. In one of the next updates I will go over how I set up a build machine and how I achieved all automated builds and deployments to the server. I used to do a lot of manual work before, now it is all automated: just one click and it is all done 🙂
Here is a video from a test map where I test the game mechanics:
There are also many more small updates, new stuff (hello, FABRIK!) here and there, so stay tuned for the next update!
I will be posting in this blog the current progress of the game we are making.
So, let me fill you in what the game is about. It will be a 3rd person shooter in SciFi universe. Your objective is to defend your base and destroy enemy’s. There will be towers to defend and to destroy. Sounds like a classic MOBA, may be Epic’s Paragon, right? We have decided to spice it up and make something unique that we always wanted to have:
Fast paced character movements! (remember in Quake 3: Arena how fast you could move and rocket jump?)
You can shoot. Not like up to 10 feet from you; when you shoot, you will be able to shoot very far.
Maps are not symmetrical for each team. Maps will feature different environments and some procedurally generated places and content.
Each map’s layout will have parts of the environment that can be used in your tactical advantage.
There will be towers to capture. Yes! There are towers that you can capture!
We are not planning to make any character progression during the match. You will be able to join any team any time when a match is in-progress.
There will be also private matches and servers. (if all stars align, we can make it into e-sport arena!)
A wide variety of weapons. Some weapons you can pick up right at your base, but some, more advanced, you can find somewhere on the map in hidden places or crates and then go ahead, kill’em’all! Let your skillz shine!
There will be large maps with multiple bases. That will allow several teams to play at the same time on the same map.
We are planning to have one of the maps to fit comfortably as much as 100 players (50 vs 50). The smallest will be 5 vs 5.
The game will be multilingual and we are targeting PC/Mac/Linux and game consoles.
No crazy card systems, lengthy skill trees, pay to win schemes, etc. It is all about your shooting skills and tactics.
Battle Royale mode
There are many more other things and details I would like to mention here, but I will do that as we go.
The game is currently in early pre-alpha stage. There is no final name yet. Internally, we call it D1M1 Arena as a working project. So… we have a concept and a very large design document to follow (it took a while to make one!). Now, we are finalizing a general core tech and game mechanics, like: movements, animations, damage, weapons, pickup/drop items, projectiles, rockets, networking, servers, and etc. We have done a lot of “background” work to get to this point.
Here are some screenshots from the test map. I’m sure a lot of things will change as soon as a designer will start working on look and feel. Right now it is all about tech and core mechanics:
Videos will be posted in the following blog posts.