IL-2 Sturmovik: Battle of Stalingrad - 777 Studios
Dear Friends,
Today our team presents you the first IL-2 Great Battles update in 2021, 4.506. The main feature of this update is the Fw 190 A-6 fighter/bomber developed for the Battle of Normandy. The Normandy map is in development, but you can already fly the new aircraft in Rheineland Career mode, provided you have both Battle of Normandy and Bodenplatte. You can also encounter the new A-6 as an enemy in the recent Wind of Fury campaign and anyone can set it up as an AI in quick missions.
In addition to the new arrival, there is a significant number of other changes and improvements. The updated graphical effects are included (the ones that are ready), Chiawei =Oyster_KAI= Liang continued his work on the 4K texturing of many planes cockpits and Martin =ICDP= Catney created 4K external textures for Bf 109 E-7 and corrected a number of other aircraft. There are two AI corrections, but they are significant. Among other fixes are ones for aircraft systems, player controllable tanks, including an important one for the gun aiming, and many improvements for historical campaigns.
We continue our work as always and this Spring you'll see new planes and improvements for the game world.
4.506 Main features 1. German fighter/bomber Fw 190 A-6 is now available to all Battle of Normandy owners; 2. Fw 190 A-6 added to Rheinland Career mode (to the 1st and 2nd chapters to joinable squadrons III./JG 11, I./JG 26 and II./JG 26 and to all chapters to AI squadrons III./KG 51 and NSGr. 20); 3. Bf 109 E-7 got 4K quality external textures; 4. There are new truck variations (which look exactly like the regular ones) that are loaded with ammo and explode when attacked in a spectacular way;
Aircraft improvements 5. AI pilots of fast fighters engage slow-flying targets much better; 6. AI pilots that are alone or from different groups carry out a landing approach much better - now all the AI pilots form the landing queue, not only the ones that belong to the same group; 7. MC.202 propeller rotation and twist were corrected; 8. Yak-9 and Yak-9T elevator is affected at high speeds similar to other Yak fighters; 9. On all aircraft with set throttle control positions the current position is shown in the technochat instead of the throttle percentage; 10. UBT MG gunsight scale on IL-2 mod. 1943 has been recentered; 11. A damaged Fokker D.VII won't visibly disappear at long distances; 12. Gunsight adjustment (target size and range) using buttons happens faster and their default values are set for a close dogfight against a typical enemy fighter; 13. German gyro gunsight Ez.42 damping corrected, higher frequency oscillations of the aircraft affect the calculated lead less; 14. AI pilots fire all 12 Hurricane MGs when installed instead of only 8; 15. Water vapor effect added to the damaged or overheated Hurricane radiator; 16. Oil and water drops won't visibly appear on the inside surface of the cockpit canopy on many aircraft; 17. A number of typos that appeared on Soviet planes after increasing the cockpits to 4K quality were corrected; 18. Bf 109 E-7 cockpit: a typo corrected, detail of certain controls improved, dimmer looks more historically accurate; 19. Bf 109 F-2 and F-4 wheels corrected; 20. BG-25 detail increased (Bf 109 G6/G6 Late/G14/K4); 21. Rocket control panel detail improved on Bf 109 G6 Late and G14; 22. Fw 190 A-3/A-5/A-8 ammo counters panel detail improved; 23. Hs 129 B2 cockpit: weathering and scratches on leather objects, weathering of the gunsight parts outside the cockpit, more detailed dimmer switch, revised coloring and updated lettering of gauges and parts to make them more historically correct, alpha layer adjustments; 24. MiG-3: enhanced textures of braided cables, redrawn placards, alpha layer adjustments; 25. P-39L: control stick weathering, more detailed radio equipment (MN-52H, BC-345, BC-451) and recognition light switch box, more accurate white aluminum panels and detailed text, enhanced throttle quadrant and fuel prime pump handle, improved gauges and parts lettering, alpha layer adjustments; 26. P-40E: more detailed radio equipment (BC-366, BC-451A, BC-450A), throttle quadrant and fuel prime pump handle, historically correct texture for exposed wiring (black wires and white braided cables), alpha layer adjustments; 27. P-47D22/D28: more detailed BC-765 switch box and fuel prime pump handle, upgraded textures of the white screws on the trim indicators box and flap control handle slide rail, alpha layer adjustments; 28. Fw 190 A-3 and A-5 default pilot positions and some skins of these aircraft were corrected; 29. Radio and lighting switches are now animated in Fw 190 A-3 and A-5 cockpits;
Player controllable tank improvements 30. An option added that amplifies the gun aiming response to the mouse movement. If you play without a visual mouse aim indicator or aim the gun using buttons, it is recommended to leave it at the default setting (0); 31. Player controllable tanks now correctly collide in multiplayer; 32. A wrong technochat message about turning on and off the powered turret traverse won't appear while moving across rough terrain at high speed; 33. SU-122 and SU-152 crews throw out all the accumulated spent ammo casings when the hatches are opened; 34. The initial position of the shot off Ferdinand gun mantlet corresponds to the mantlet type installed; 35. 72-K 25mm round ballistics were corrected; 36. HE rounds of 72-K, 61-K, Flak 36, Flak 38, Flakvierling 38, Sh-37, NS-37, BK-3.7, M4 and Vickers Class S now have self-destruct fuzes (HE rounds without such fuzes were not used on these guns); 37. Pz.Kpfw.III Ausf.M suspension animation corrected;
Visual effects improvements 38. New bomb ground and water impact (impact, not explosion) effects; 39. 50-100 kg bombs explosion effects have a new style (it is planned to update all the explosions in a similar way); 40. Additional explosion effects added for rounds containing more than 450 g and less than 1500 g explosives; 41. Improved gunfire effects for the detailed ground vehicles; 42. APHE explosion effects corrected accordingly to the number of explosives they contain; 43. Ground vehicles leave better-looking tracks;
Other improvements 44. The hook on port cranes is raised higher so it won't prevent larger ships to dock underneath; 45. The visual model of a destroyed 52-K AAA gun was corrected (it contained elements of an intact gun); 46. Blazing Steppe, Fortress on the Volga, Ice Ring historical campaigns: all fire effects updated, ammo trucks added, many other improvements and fixes; 47. During the Wind of Fury historical campaign you can encounter С-47 and Fw 190 A-6 while Bf 109 G-6 fighters were replaced by Bf 109 G-6 Late; 48. Fortress on the Volga historical campaign: fuel and ambulance trucks added to the transport columns, the overall number and size of the columns increased.
The RF4 team presents to your attention a new reservoir - the famous Yama River! This river originates on the spurs of the Olsky plateau and flows into the Sea of Okhotsk. It is believed that its name comes from the Koryak "v'ayam", which means "river". The river is rich in fish. A large grayling lives here. Many species of fish enter it for spawning, among which are Dolly Varden Trout, Whitespotted Char, Chum and Coho Salmon. Coming soon. Watch the news for the latest updates. Best regards, Your RF4 Team
The fishermen's village of Inel is happy to welcome you
Surrounded by sea and mountains, Inel remains spared by the torments of war. Nevertheless, this peaceful village is not a restful stop on Daryon's journey.
Taking place between Chapter 0 and Chapter I, this new open playground is the best way to apprehend the game’s core gameplay mechanics. In addition, new players will be able to go in depth with Daryon’s personality.
This new content include :
A new location with the small village of Inel
A Nekaroo Farm
Some new sidequests
New main story input
Take advantage of the current 30% discount to immerse yourself in the universe of Edge of Eternity during its Early Access.
UI
Reworked sprint bar
Cleaned up transitions between menus
Added a fade when the UI will be disabled
Fixed a bug that was creating inconsistent zoom levels on the minimap depending on the situation
World markers are now faded instead of being displayed at infinite distance (exception of quest / objectives / dynamic events markers)
Added markers to NPCs that have conversation
Cleaned up tutorial box apparition transition
Interact button will not appear if the character have no conversation with the current quest progression
Improved markers positioning with humanoids
Graphics
Fixed a bug where the ocean could clip when viewed from far away
Reworked Nexus display and added a transition with steepiness
Improved low end ambient occlusion setting
Improved sky shadows updating, it will now update in realtime instead of stuttered update
Added model clipping to followers when too close
Fixed contact shadow stuttering with low physic frequency
Fixed technobandits that were flying
Fixed a shader bug that was causing the stalker canon to have weird squares instead of distortion
Fixed Anselm vein blocking slope
Fixed flying asset in chapter 0.5
Gameplay
Fixed multiple imprecisions in Nexus Line calculations
Nerfed battle initiative damage and stun duration
Improved pursue and flee behaviors of enemies, it now use a pathfinder to prevent going back and forth
Added new monster “Dodilus”
Added an initial random delay for dots to prevent them ticking at the same time (make the battle easier to read)
Fatigue consumption of spells is now constant and not variable between spells (exception of special attacks that are still costing a major part of the fatigue)
Nerfed Conclave boss
Reworked Archelite Amplifier decor interact
Modified Mantis boss encounter
Balancing pass on stats
Balancing pass on loot tables
Fixed camera “locking” and “teleporting” when talking to a NPC while sprinting
Performances
Added DLSS auto mode
Improved volumetric fog performances
Improved openworld terrain performances
Improved game startup time
Speeded up all assets loading
Fixed a bug that was preventing resources from being released correctly from memory after unloading
Reduced memory usage of the game to ~2GB (will prevent crash on some low end platforms with 8GB of memory like Geforce Now or low end computers)
Fixed a mini stutter when changing terrain tile due to collision recalculations, now those are done in another thread to prevent stuttering
Fixed a freeze that was caused in some case by tutorial boxes
Cutscenes & Animation
Improved cutscene transitions
Fixed a few cutscene lock case
Fixed some case where the UI would stay during a cutscene
Fixed a bug where Daryon could be not present during an autocutscene if he is in the reserve party in some rare case
Fixed some characters that were still animated while supposed to be dead in the intro
Other
Fixes multiple softlock sources
Cleanup a few collider issue
Multiple bugfixes for NVIDIA Ansel
Improved multiple grounding behaviors to prevent flying NPCs in some cases
You still have time to claim all the free Guardian's Gala daily login rewards and dive into the special event sites before 11:00 UTC on 23 February!
As part of the new Reign Quadrant, you are once again invited to disrupt the annual Serpentis pirates and Angel Cartel celebrations! There are event sites in known space and wormhole space, daily login rewards, plus 90% PvP loot drops and an increase to warp speed in wormhole space.
Guardian's Gala sites in wormhole space offer greater challenges, and contain more lucrative rewards. Valuable loot up for grabs includes Serpentis and Domination faction items, ship SKINs, limited time Skill Point boosters, and Overseers' Effects which can be sold for ISK.
As well as the Guardian's Gala event sites, you can still claim all of the free gifts through the daily login event until 11:00 UTC on 23 February, including Spirit SKINs available for Serpentis ships for the first time, and thousands of Skill Points to help boost your skill training.
In addition to the rewards for pilots in Alpha Clone State, as an Omega you will get even better gifts such as a bigger haul of Skill Points and more SKINs. If you upgrade to Omega now, you can still claim all Alpha and Omega rewards retroactively as long as you log in to EVE Online for all of the remaining event days.
Check out the image below for a snapshot of potential event and login rewards:
Pre-Purchases are Live, 15% Discount for Evil Genius Owners
To celebrate the reveal of Sandbox Mode, pre-purchases are live now for Evil Genius 2.
We’re offering a 10% discount on all pre-purchases for Evil Genius 2, and that rises to 15% if you own Evil Genius on Steam. AND all pre-purchases include the Fountain of Youth and Trojan Horse in-game bonus items.
Announcing the Deluxe Edition and Season One
For the supervillain who must have everything, we’re offering the Evil Genius 2 Deluxe Edition. This includes the base game, Season Pass One, the Fountain of Youth and Trojan Horse items, and the Aurora Borealis in-game bonus item as well.
Season Pass One grants you access to all of the content from Evil Genius 2 Season One as it becomes available post-launch; this will include:
A campaign pack,
Two henchmen packs
Two minions pack
A lair item pack
We’ll be revealing more details on Evil Genius 2 Season One, which includes both paid and free content, closer to launch.
Just like the Standard Edition, you can pre-purchase the Evil Genius 2 Deluxe Edition with a 10% discount that rises to 15% if you own Evil Genius on Steam.
Six Weeks Until Doomsday
Evil Genius 2 is Rebellion’s hotly anticipated spy-fi lair-builder. Build your secret base on an exotic island, recruit and train loyal minions and powerful henchmen, defend yourself from the Forces of Justice and dominate the world stage.
Featuring four evil geniuses to play as, four unique campaigns, three island locations, and a cavalcade of new rooms, henchmen, agents, traps and lots more, Evil Genius 2 is ready and primed for World Domination when it launches March 30 on Steam, priced £34.99 / $39.99 / €39.99 (before discounts).
Interested in physical EG2 Content? Check out what we have on offer.
Build your lair without having to worry about campaign progression or unlocking things – or about how little sense your layout makes. Fill your floors with umpteen pinball bumper traps and watch enemy agents bounce around perpetually. Create the first open-plan supervillain HQ. Or make it impossible for minions to do their jobs by turning your corridors into a ridiculous maze; it’s up to you. If you want the freedom to create the villainous base of your dreams and someone else’s nightmares, Sandbox Mode is perfect for you.
Want to chat all things Evil Genius 2? What not join the official Discord
You can’t have a good game without great music, and that’s a fact. Whether it’s an oldie and/or indie chiptune or a rock’n’roll riffing on the car radio in GTA or Cyberpunk, music is a must. That’s why for The Amazing American Circus we’ve teamed up with a fantastic Polish composer: Patryk Scelina.
Despite his young age, Patryk is a media and trailer music veteran, who’s built a sizable catalogue of music for one of the biggest publishing companies, BMG Production Music. His music has been used in multiple TV and Netflix productions, as well as video games, such as My Memory of Us - a previous game by the Juggler Games, Klabater’s partner in creation of The Amazing American Circus (you can get it when you choose some of the pledges!). Patryk’s soundtrack for My Memory of Us was appreciated by the Digital Dragons jury and nominated for Best Game Soundtrack.
Check these two short samples from TAAC recording sessions:
Music-wise, The Amazing American Circus is a true challenge. Unlike many other games which need a specific type of sound or style, this one needs three:
--> circus show tunes which require more conventional, classical march music --> travelling soundtrack, inspired by traditional American folk music --> dramatic, moving, and powerful score, to accentuate the plot-related feelings and emotions of the characters
According to Patryk, that latter is his favorite part. “I wanted it to feel a bit more modern, while still keeping some obvious American folk influences. It is also not an easy task to make it work with a text-driven story.”
As he points out, in case of a movie, a composer knows exactly when something happens. In a game such as The Amazing American Circus it’s the player who decides when to continue a conversation with another character. Because of that the music for these scenes has to be powerful, but also universal, to fit any moment. Patryk called it a puzzle but bravely took up the challenge. After all, that’s what game development is all about: challenging yourself and then reaping the rewards of your hard work.
Balsa Model Flight Simulator - Irregular Corporation
Hi,
Continuing our Show-and-Tell series here, today I want to talk about the AI in the game.
This was an entirely new thing for me, because in previous projects, I hadn't done a lot with AI. KSP didn't have much in the way of autonomous behaviours, other than simple controllers for facial expressions and basic attitude control in spacecraft, so this was the first time I got to actually put together a fully-featured AI system that could control flying vehicles and actually make them do things. I thought it was pretty interesting, so read on to learn more about how that happened:
So the AI in Balsa needs to be able to pilot vehicles on its own, to make them appear like they are under intelligent control, and ultimately, they need to also be able to play against the player, as opponents. This means the AI needs to not only be able to fly, it also needs to direct them through race courses and missions routes, acquire and lock targets when in combat, then engage them and attack as well.
Add to that the fact that in Balsa, we don't even know what the vehicles actually look like, because they are made of parts, and don't have fixed performance stats, and the whole prospect seems pretty daunting.
The best way to deal with this sort of complex system though, is to just take it in steps. In the words of Adam Savage: "You don't have to know how to make the whole thing, you just need to know what the next step is."
So the way I took this on in Balsa was to split the AI into several layers. Each layer takes care of a different level of behaviour, receiving instructions from the layer(s) above and directing the layer(s) below. This way, the AI behaviour is broken down into several levels of abstraction, going from the most basic level of controlling the aircraft input state, to the most abstract levels, where the AI is just thinking in terms of tasks and mission objectives.
Each level does only one thing, and doesn't try to understand what the other layers are doing, so that makes their individual jobs much simpler, and my own job of putting all this together actually becomes doable. This wasn't done in one go either. It was gradually built up over several iterations over many months, each time adding more functionality over the things I had made previously.
I should mention also, the AI in Balsa does not 'cheat'. It doesn't move the vehicle over a vector path, and doesn't introduce any non-physical or impossible forces to the model. It is actually flying the plane, using the same input signals you use.
From a game developer's perspective, this might sound like a really convoluted way of doing things. Pretty much every game AI cheats in some way or another, and when it's tuned and balanced, it's very hard to notice that the AI is cutting some corners here and there.
But doing it this way was a lot of fun to implement, and it lets some really cool things happen without us having to explicitly code them. For instance, if you shoot the wing off an enemy NPC, it may be able to continue flying (and fighting), because it's still doing what it can to maintain level flight. Some of the stock vehicles are actually pretty good at taking damage, in fact. However, it might just be too damaged to stay in control, and without us having to code it explicitly, it would just not be able to keep flying despite its best efforts.
A simpler NPC system, maybe one in which vehicles move through a predefined path, for instance, would have to be manually programmed to do this sort of thing. Here, the NPCs are flying using the same physics you experience, so anything that can happen to you in the simulation, can also happen to them.
This is all well and good, but how does this AI actually work? Time to get technical now.
The first layer is what I called the Fly-By-Wire layer. It sits in the vehicle's input receiver pipeline, intercepting the input that is sent to the vehicle (in your own plane this comes from your transmitter, but NPC planes have a similar virtual thing as well), and modifies the commands that get sent down to the vehicle's parts (to move control surfaces, fire guns, throttle engines, etc).
In the Fly-By-Wire layer we use lots of Control Loop systems, or as they're more commonly known, PID loops. These are really cool bits of code that, when fed a 'target' signal (called the set point), a measured 'feedback' value, and some tuning parameters, will generate an output signal that tries to get the measured value to match the set point. You then tweak the tuning parameters to control how quickly the output gets there, how much it corrects for drifting error, and how much it tries to prevent overshooting and overcorrecting.
The beauty of PID loops is that they don't require you to have a complete understanding of what is actually happening inside the thing you are controlling. This makes them excellent for controlling complex things that have lots of unknowns in them, like a simulated aircraft flying around with physical forces and an unknown arrangement of parts.
We actually have multiple levels of PID loops in Balsa's Vehicle AI, and the first and most basic of these is the Autotrim system.
Autotrim isn't technically even an AI controller, because it actually runs on the player's own vehicle. It doesn't fully control it either; all it does is look at the aircraft's controls state as the input, and based on the vehicle's angular velocity (the feedback), produces an adjusted control output so that when you aren't telling it to pitch, roll or yaw, it will try to zero out any rotation on the vehicle.
If you know KSP, this might seem familiar. Back there this was called SAS, and it worked in pretty much the same way, although this time I had the advantage of actually knowing what I was doing a bit more, so I managed to make a cleaner and more reliable implementation.
Autotrim doesn't really qualify as AI, but I wanted to mention it because the first layer of the AI, called the Autopilot Layer, is based on the same principle. It reads in the vehicle's physics state, and outputs a control signal for the parts. The difference here is that, unlike Autotrim, the autopilot isn't just trying to zero out rotations, it is also trying to make sure your rotations get zeroed out with the vehicle pointing in the right direction.
The Autopilot layer is also a bit more involved than SAS was in KSP, because this is not a spacecraft in space we are trying to control, but a fixed-wing airplane in flight. That means we can't just tell it to apply full rudder if we want it to change heading. We need to teach it to do coordinated turns, using all control inputs at the same time.
This happens with a series of intermediate steps in the control routine, which ties in all three controls to work together, so that when the aircraft is told to turn to a given heading, it will bank into the turn, pull the nose up, and use the rudder to maintain a coordinated turn. I called that the roll-yaw and bank-and-yank stages of the autopilot, because that's what it actually does.
This is the very bottom layer of the vehicle AI. It receives the most basic of inputs (a target pitch, roll, yaw and airspeed value), and outputs a control signal that actually directs the vehicle's parts to move in response, just as you do as the pilot. It is very much like a real autopilot system in that sense. If you've played other flight sims, you might be familiar with heading hold, altitude hold and speed hold autopilot modes. That's sort of what we are doing here.
So ok, we have something that will steer the plane towards the direction we tell it to go, but where should it go? This is the job of the next layer of AI, called the Flight Director.
In Balsa, the Flight Director is the middle AI layer. It receives a target waypoint vector from higher AI modules, and uses that to set the autopilot's target attitude. Basically, the flight director gets told where to go, and in turn tells the autopilot how to get there.
It is also responsible for two additional things. One, It checks whether the plane has reached the given waypoint, and notifies the higher level AI about it (which usually causes it to be given a new waypoint).
Two, it also takes care of the Terrain Avoidance stage. This originally used to be a higher-level function of the AI, but I later had to move it down to the FD layer. More about that in a bit.
On top of the Flight Director layer, we have the NPC AI layer. This is what decides where the vehicle needs to go.
At this level, we really don't know and don't care about how the vehicle will get to the point we are telling it to go to. We don't care what the shape of the vehicle is, if it's flying right side up or inverted, none of that. That is the job of the lower layers, and at the NPC level all we care about is picking out a position in the world that we want to get to, and what speed we want to get there at.
The NPC layer uses targeting as well as scenery and mission nodes to orient itself, but this is assuming everything is great and going according to plan. What if there are enemies around? What if we run out of fuel and need to crash land? The NPC layer also deals with that sort of stuff.
This happens using what I called the Task Stack. It is a set of NPC-level behaviours (or states), which are prioritized, so that at any point only the most critical priority state is active, and the less important ones are on hold.
There are several different types of Tasks, which command the vehicle to do different things when given a destination (usually in the form of a Waypoint Marker) or a Target, which can be another vehicle, including yours.
So, imagine we are an NPC plane in a combat mission. Our first job is to fly the mission route. We start at a spawn position, and get given the first waypoint in a route by the NPC spawner.
Each waypoint has a link to the next waypoint on the route, so the Mission task directs the vehicle to fly to the current waypoint, and once it gets told (by the Flight Director) that it got there, it selects the next waypoint. When the route ends, it can either head to a new route, or find an exit route which ends at a despawn marker. That's the basic 'mission' of a combat NPC vehicle.
But this first job is also the least critical job. What if along the way we spot an enemy? If that happens, the combat version of the NPC AI will enable the 'offensive' behaviour, which is a higher-priority, target-seeker type task. It will direct the plane out of its mission route to attack the targeted enemy.
This offensive state actually has sub-states of its own, because to actually engage in aerial combat, we have a few different steps to go through. We aren't trying to ram the enemy, we want to shoot it with our guns, so after chasing down the target and getting close enough, we switch to an aiming sub-state, where instead of trying to reach the enemy's position, we try to match speeds and aim our weapons.
Aiming is trickier than it seems, because remember the AI isn't cheating here. It shoots with the same projectiles you do, so just like you, it needs to lead the target and compensate for bullet drop if it wants to get a hit.
Finally, when the AI sees a good aiming solution in front of it, it pulls the trigger and fires the weapons. This is yet another sub-state of the offensive behaviour, because ammo is just as finite for NPCs as it is for you, so we don't want to hold down the trigger and spend the entire ammo load on a single burst. The firing behaviour normally does short bursts, to save on ammo and make each shot count.
This took a lot of tweaking and tuning to get right, but in the end the combat NPCs in Balsa turned out quite capable of getting some hits in and scoring kills. In fact, I daresay they are slightly more accurate than the average Imperial Stormtrooper.
That's the Offensive task of the NPC AI, but there can be other more critical tasks in the stack, which take priority over all of that.
For instance, suppose that as we engage, we run out of ammo. At that point we might as well forget about engaging and just get out of the fight as fast as possible. This is called the 'return to home' task, and it can be triggered in this sort of situation.
But suppose that as you head out, we get an enemy trying to shoot you down. This would trigger the Evasive task, and when active it will steer the plane not towards the target, but away from it.
There is also the Emergency task, which is meant to be used when crash-landing is the only remaining option.
These lower priority tasks are in place, but currently they are just empty behaviour slots, as they aren't fully implemented yet.
In practice, however, combat planes do already evade attackers pretty well. As they are trying to chase down their targets and the targets do the same in return, they get into some pretty compelling dogfights, with scissoring and turn-fighting manoeuvres and all.
And lastly, the lowest level task on the NPC layer used to be the Terrain Avoidance task. Like I mentioned earlier, this worked ok at first, but as the AI developed and new gameplay situations like racing were added, it had to be moved out of the task stack to the lower FD layer.
This was because with this system of priority behaviours, whenever the AI spotted an obstacle ahead, it would entirely forget anything it was doing to just steer away from the obstacle. This was certainly effective to avoid terrain and obstacles, but it resulted in very cowardly NPC vehicles, which were so afraid of crashing into anything, they would rather fly in circles than try to race you.
The new terrain avoidance module is much smarter. Instead of taking complete control, it will gradually apply a correction command, which gets incrementally more authoritative based on how close the obstacle is. And because the avoidance system isn't a task anymore, the task directions are still coming down from the AI layer, so even as the vehicle is steering away from the terrain, it doesn't forget what it was trying to do originally.
This is called 'soft-wall' avoidance, and it results in a much smoother, less dramatic and generally more efficient way of getting around obstacles. This makes the AI a lot better at racing, as most of the time, a small correction is all it needs to find a clear path.
This more or less covers how the AI in Balsa operates. It was one of the most fun parts of the projects to do, and I can spend hours watching the AI airplanes fly around and shoot at each other, tweaking and tuning it. Of course, like everything else, there's still lots of room to expand and improve, but as it stands I think it can already create some pretty fun gameplay and put up a respectable challenge for single player and PvE missions.
For me, this was the part of the project in which I learned the most, and it was surprising to me just how much knowledge I picked up from my seemingly unrelated hobby projects and even just watching lots and lots of YouTube videos from RC, electronics and robotics makers. I definitely recommend nerding out that way. It's very educational and entertaining, and much more often than I would have imagined, you end up finding real life uses for the stuff you learn.
There is actually one last layer for the whole NPC vehicle system, which is what gets them spawning into the world in the first place. This is actually part of Balsa's Scenario Logic system, and that is going to be the topic of my next post, so stay tuned for that. 😊
For now, thanks for reading, and see you on the next one!
- Bug Editor Crash at Cup Competition - english version - Better Achievment (contract target) - Assistant coach now activated by default - sponsor pool bug fixed - private sponsors are saved correctly - better contract handling for sponsors - better contract handling for manager (own) contract - better contract options at player contract - some translation mistakes
Hi guys, we finally have a date for the start of the Indiegogo campaign! Over the past few months we have been working hard to expand the game world, enriching it with new explorable areas and features. We've added enough content and collected potential ideas to tell you that the Indiegogo campaign kicks off on Tuesday, March 16th.
Anyone who decides to sign up for the campaign before it starts on March 16th will be rewarded with an EXCLUSIVE skin package (it will not be available in any other way) to customize all 3 strays available so far. Obviously you will need a copy of the game to be able to use them, so the fundraising campaign will be a great way to support this project and to get additional benefits and discounts.
I want to know more!
Spread the word with your friends and sign up for the campaign if you haven't already. Here are the links you need to share:
As anticipated, we are working on the game on all aspects, but above all on the mechanics and on the map. We've released the game's announcement trailer: a quick rundown of what happened on the island and the arrival of the dogs parachuted from a multinational-owned cargo plane.
We are working on a mysterious cave and written a dedicated lore that will be the basis for a public, in-game, cooperative event.
In addition, we are expanding the map with a beautiful desert area, with its mysterious areas, its temple and its arena for PvP combat.
Finally we are increasing the possible actions of the dogs, all really useful and contextualized for specific purposes: in addition to barking, shaking, sitting and asking to be followed, we have added swimming and the possibility of diving, howling, digging, collecting objects to store them in a small pouch. We have also worked on a chat, functional and clear to read. Huntable animals have now increased in number and variety and include hares, ibexes, perchs and scorpions.
All very nice, but the gameplay?
Oh sure, the gameplay. A few weeks ago the talented ArchShiranui and Angelka Games tried the game exclusively. See the very early stages of development and what's new thereafter in action!
At the next howl, near the start of the indiegogo campaign on March 16, further development updates.