Development Status #50

Tank Squad

Tank Squad is a tactical-combat action game. Take part in big tank battles during World War II. Play single-player or coop (4 players). Repair your tanks, replenish supplies, manage the crew and get back to the action!

[img]{STEAM_CLAN_IMAGE}/39404519/10a317931e9f667c323aa85e5da7cf87b4a673c1.png[/img] [h2]Dear Tankers,[/h2] Welcome to our [b]50th[/b] Development Status. You can see what we were working on in two weeks! [h3]Infantry Squads[/h3] [img]{STEAM_CLAN_IMAGE}/39404519/77d847411f61219aaf2169059e098801a281fbe6.png[/img] We have changed the way units are spawned in scenarios from the prefab system to files that have a reference to a prefab or several prefabs. Up to now, it was the case that on a mission, opponents spread out on the map - their spawners had a direct reference to a specific prefab of a given unit or vehicle e.g. KV-1 or Soviet Infantry Rifleman. [img]{STEAM_CLAN_IMAGE}/39404519/39b14e504293d328a806a8d748394555b53230f2.png[/img] [h3]Unit Data[/h3] This change considerably simplifies and facilitates the further configuration of the spawners. From now on every spawner has a reference to a Unit Data or Squad Data file. In Unit Data we define basic information about the unit, such as equipment, i.e. what the unit will be equipped with, e.g. Mosin or MP 40, and references to a prefab or several prefabs, e.g. a rifleman. During the spawning process, a unit can be randomly spawned at a specific location, which makes the gameplay more interesting and varied. [img]{STEAM_CLAN_IMAGE}/39404519/7d593e7409dd9cbaf777324ae5ef53fd27f15a62.png[/img] [h3]Squad Data[/h3] The Unit Data configuration files are part of the Squad Data files. This is nothing more than the ability to spawn a group of Unit Data in one place. For example, we want a group of infantry with specific combat characteristics or a group of medium tanks to appear at a specific location. [img]{STEAM_CLAN_IMAGE}/39404519/90bcd231c9f78a1ded2a220cd53d72f632ae76dd.png[/img] [h3]AI Improvements[/h3] A well-balanced AI is a very important feature in Tank Squad because it can provide an immersive gaming experience. Last week we took another step toward achieving that goal. We created an implementation of a visual-based artificial intelligence (AI) system that detects the player from their point of view, using a camera rendering. This technique has more accuracy than traditional raycasting, because it also works with objects with no collisions, like dense grass or particles. The main concept behind this system is to use multiple cameras, each assigned to an enemy in the game. These cameras are then used to capture the game scene into textures and check whether the player is visible or not. The visibility percentage of the player is then calculated using a compute shader and stored in an array. It does this by loading the depth values, pixel by pixel, from two render textures and comparing them. If the condition is met, the counter buffer (that stores the number of visible pixels) is incremented. Division of counter value by a total number of pixels from input render texture gives us information on how much the player is visible in the current AI camera. It simulates a similar process, just like humans see objects with their eyes. [h3]Tutorial Repair Scene [Environment][/h3] Here’s the repair scene from the tutorial, where you’ll discover how to repair and prepare your tank for battle. Our Environment artists have managed to create the map with the utmost care to ensure that the tutorial flows smoothly for the player. While progressing through the tutorial, the player can enjoy additional views. [img]{STEAM_CLAN_IMAGE}/39404519/50957b3d5fe8292d70f73ea4dc60696f8562b722.jpg[/img] [img]{STEAM_CLAN_IMAGE}/39404519/1ca0b4eed0ccc42dee820e174798f5c95369f628.jpg[/img] [img]{STEAM_CLAN_IMAGE}/39404519/ed4541216b0fa24c77fc03393c777f219dd69ff7.jpg[/img] [img]{STEAM_CLAN_IMAGE}/39404519/e62105e739959e450bfba0e20d1f94fc803be76d.jpg[/img] [h3]Vehicle hierarchy/inheritance system[/h3] We are implementing a standardization of how our vehicle work in the game. Previously each vehicle was its entity, without connection to other vehicles/tanks and their implementation. We are changing that so the most common features are implemented in “base“ vehicles, with each new feature presented in the following hierarchy: [list] [*]**** Base Vehicle - with an engine, fuel tanks, and ability to get in but no wheels yet [*]--- Base Tracked Vehicle - all above + tracks and wheels that allow it to move [*]++ Base Tracked with 1 Turret Vehicle - all above + a turret that can rotate [*]> PzKpfw VI Tiger Ausf. H1 [*]> PzKpfw III Ausf. M [*]> PzKpfw IV Ausf. G/H [*]> T-34/76 [*]> KV-1 [*]++ Base Half track [*]--- Base Wheeled Vehicle [*]++ Base Motorcycle (2 wheels) [*]++ Base Car (4 wheels) [/list] All of this allows the implementation of further vehicles much faster and easier. Expect in the next dev status some results from this work with real tanks. [h3]Core new features[/h3] As we are approaching the demo festival in June we’ve decided to pause adding new features. Instead, based on intense internal playtesting, we add or enhance stuff that is the core of the gameplay, for instance: [list] [*] Vehicle aiming be as smooth and easy as it can get (with some options to customize) [*] Vehicle driving and physics be as smooth and easy as it can get (as well, with some options to customize) [*] AI reacting to various situations and not be idle/static [*] Optimization [/list] All this effort is to get a better core gameplay instead of adding new features endlessly. First get basic gameplay right, then extend it. Thank you and have a good one! [i]DeGenerals[/i] [img]{STEAM_CLAN_IMAGE}/39404519/ef5d3a6d6ff6538074686b68ff0998db3db3744b.jpg[/img] [url=https://discord.gg/vNQdBgrdRx][img]{STEAM_CLAN_IMAGE}/39404519/c3bdf5f1cdabcd495fb0a8166cee22818ef1129f.png[/img][/url] [url=https://www.facebook.com/TankSquadGame][img]{STEAM_CLAN_IMAGE}/39404519/f669dfaac50572abe510828b1ac67d3bcbcedf72.png[/img][/url]