Developers Iteration III of 2023
-
Advanced map shaders
One of my original goals as Game
CouncilorLead was to improve the graphics of the game. With thanks to @Blackyps the past two years we've made several improvements and significant improvements are coming our way still. With this developers iteration we finally have a workable version of the new, advanced terrain shaders. They range from small changes that fixes various bugs to more advanced changes such as being able to bake in properties into the terrain.With this developers iteration we introduce three new terrain shaders:
Terrain001
Re-interprets the upper albedo as map-wide normals (red channel is x-direction, green channel is z-direction) and map-wide shadows (blue channel)Terrain002
Similar to Terrain001, except that it also fixes the inconsistency of the mask usage for normals and albedo stratum texturesTerrain003
Similar to Terrain002, except that it also provides map-wide albedo and map-wide specular properties
With that last shader the following in-game (without Fog of War) screenshots are taken:
You can view the new shaders yourself by downloading the map:
And then hosting a game on the FAF Develop gametype:
We'll document how to make the changes to your map so that you can apply these new techniques too. These techniques heavily rely on procedural software such as Gaea or World Machine. Luckily, with thanks to @IndexLibrorum the mapping section has been improved significantly and there's a whole section with Gaea related tutorials to help you get started.
-
Other features
- #5321 Pausing engineers will also pause their reclaim progress on props
- #5300 Score graph now uses square root scaling to make it easier to view the first few minutes
- #5326 Better use of CPU resources to reduce frame stuttering for CPUs with 6 or more logical units
In practice a lot of CPUs have 6 or more logical units. If we detect your CPU has sufficient cores we change the affinity of the process to ignore the first compute core. The first compute core is often used by processes, including the OS. When the game ignores the first compute core the render thread (that is otherwise locked to the first compute core) has more room to navigate and is less influenced by other processes and the OS. As a result you have less stutters and overall better frametimes.
- 9e73421 On average 5% performance improvement (sim and ui) across the board
A free Cybran Cookie for the individual that can explain how it works without asking the assembly magicians
- 120d32 Add a new hotkey to load all units of your selection into the transports of your selection
- #5333 Add tread crushing damage to the Fatboy
- #5367 Add the standard Cybran build effect to the Megalith
- #5362 Add links to the Wiki to explain hotkeys in the key bindings menu
- #5360 Speed up the death animations of a wide range of structures
Bug fixes
- #5317 Bombers with multiple projectiles are now less likely to miss their target when micro'ing them
- #5294 Gifted structures now properly copy the orientation
- #5335 Fix a bug that occurs with the navigational mesh for non-square maps
- #5329 Disable intel and maintenance costs of units inside a carrier
- #5374 Fix upgrading structures losing their control groups
- #5371 Fix invulnerable props being removed when building on top of them
- #5371 Fix light particles when building structures being visible through the fog of war
- #5343 Fix a bug that could cause the simulation to freeze
-
# Game version 3767 (17th of September, 2023) Please refer to the notes of versions 3765 and 3766 for the full patch notes. With gratitude to all those who took the time to report issues, Jip ## Features - (#5427) Introduce a basic visualizer of the performance metrics that we gather as players play the game. - (#5448) Generate additional metadata when generating markers for AIs. - (#5422) Introduce a resource deposit grid for the AI. This grid allows for computationally efficient lookups for the AI to scan the environment for resource deposits. ## Bug fixes ### Beams that miss We examined all tech 1 and tech 2 naval units and found that some had the ability to reliably evade beam weapons, with one particular submarine even doing so without moving. The Seraphim destroyer should now be able to reliably hit all tech 1 and tech 2 naval units with its beam weaponry. Additionally, the Galactic Colossus can no longer evade the beams and should now be hit reliably, especially by the Spiderbot. ### Other bug fixes - (#5437) Fixed units being able to miss the Galactic Colossus while it is being constructed. - (0883d0c) Fixed errors when an AI would be defeated. - (0fecc7d) Fixed tree groups breaking when building structures. - (#5412) Quickly fixed an issue where coop had trouble understanding the mobile factories. - (#5441) Fixed the AI misinterpreting blank markers. ## Contributors With thanks to the following individuals who contributed through coding: - Relent0r - Jip - Eddie - Clyfordv (Slicknixon) - Dhomie (Grandpa Sawyer) With thanks to the following individuals who contributed through model, texture, and effect changes: - MadMax - Jip And last but certainly not least, with thanks to those who took part in constructive discussions: - A-Army - Yolo-
# Game version 3766 (9th of September, 2023) See the patch notes of 3766 for the full patch notes. With thanks to all those that took the time to report issues, Jip ## Features ### Capping of a structure In the previous patch, we reduced the ability to cap structures by assisting a structure. Thanks to an assembly patch by 4z0t, the technical reasons for this reduction have been fixed. As a result, we are now reintroducing the feature with improvements. The feature now sorts the build orders by the distance to the nearest engineer relative to the structure they are assisting. This helps reduce pathfinding issues. Additionally, the feature now applies a single build order to all engineers, which reduces the framerate impact that players previously experienced. Upon release, players can enable the following assist-to-cap behaviors through the game options: - Cap an extractor with mass storages - Cap an extractor with 4 or 8 mass fabricators - Cap a radar or tech 2 artillery with tech 1 power generators - Cap tech 3 or experimental artillery with tech 3 power generators ### Other features - (#5398) Introduces a hotkey to issue an upgrade to the structure currently under the mouse cursor - (#5394) Introduces a hotkey to cap the structure currently under the mouse cursor - (#5397) Introduces a hotkey to select all units consuming resources - (#5407) Introduces the generation of Naval Area markers for AIs The average AI is now more likely to construct naval factories. - (#5405) Improvements to the Mods Manager No more text bleeding, and the URL dialog is temporarily removed when you open links in the lobby. ## Bug fixes - Exclude external factory unit from the unit restrictions menu - Fix Solace dropping the torpedo salvo way behind the target - Fix a bug where the build preview of templates would reset every few seconds This was a mistake on our end. With this fix, the game is more compatible with UI mods such as Eco Manager and UI Party again - (#5405) Fix the bleeding of water ramps on sharp cliffs ## Contributors With thanks to the following people who contributed through coding: - Gordenwunderlich / Nex37 - Jip - Hussar - BlackYps With thanks to the following people who contributed through binary patches: - 4z0t - Strogo - KionX - RTD And, last but certainly not least - with thanks to those that took part in constructive discussions: - Babel - Valigo - MostLostNoob - LoliNekoTrap
# Game version 3765 (2nd of September, 2023) The third developer's iteration contains more new features than any release in the past two years. It opens up new ways for players to approach the game. However, some features are being left behind. One of the most notable changes is the removal of the feature that allowed players to hover over a deposit to initiate the build mode for extractors or hydrocarbon plants. This feature was computationally expensive and is no longer part of the standard FAForever experience. However, it is still available as a UI mod for those willing to accept the performance penalty. You can find the 'Hover to Build' UI mod in the vault. Another feature with reduced functionality is the ringing feature. You can now only ring extractors with storages, while all other options are integrated into the new Context-Based Templates feature. You can read more about this in the features section. This change was made because the old ringing feature was computationally expensive and could cause stutters and frame drops for players. Therefore, it has been limited to its most commonly used functionality: the ability to ring extractors with storages. Lastly, any functionality that relied on the old spread attack implementation will no longer be operational. The previous implementation was susceptible to abuse and could even crash the game. We hope that the new implementation will better serve your needs as a player. With appreciation towards all the contributors that made this iteration possible, Best regards, Jip ## Features ### Mobile Factories A long-standing functional myth has now become a part of the FAForever experience! All Tech 3 Aircraft Carriers, plus the Tempest, the Atlantis, and the Fatboy, can now build using a separate build module attached to the unit. The build module is located at the back of the unit. Clicking just over the back (on land/water) will select the build module. All factory hotkeys interact with these build modules. We're open to ideas from players on how we can further improve this feature, especially in terms of user interactions. The Megalith remains unchanged, while the CZAR temporarily loses its ability to build. We were unable to finalize it, but we hope to include it in a future patch. ### Advanced orders We're enhancing existing advanced orders and introducing new ones. The most notable change is the complete reimplementation of the Spread Attack feature from the ground up. This wouldn't have been possible without the dedicated work of Strogo, RTD, and KionX. All of the mentioned orders are linked to hotkeys. In the key bindings menu, you'll find new world-wide-web icons next to hotkeys. If the world-wide-web icon is present, you can click on it to learn more about the hotkey on the FAForever wiki. We highly recommend checking out the Wiki; it even includes short videos that can explain concepts better than a thousand words ever could. The following hotkeys have been improved or added: - Distribute orders (formerly Spread Attack) - Distribute orders (for the unit your mouse is hovering over) - Copy orders (for the unit your mouse is hovering over) - Load into transports - Filter engineers - Cycle templates (see below: Context-based templates) ### Advanced map shaders We're excited to announce the introduction of advanced map shaders that map authors can now apply to their new maps. Existing maps will remain unchanged. These new shaders enable you to incorporate properties such as shadows, ambient occlusion, normals, and albedo textures directly into the terrain. This integration makes them an integral part of the rendering pipeline, rather than applying them on top of the terrain, as decals typically do. ### Context based templates An alternative use of the build templates system! With this new feature, you can cycle through build templates that adapt to the context of your selection and your mouse location. FAForever includes a set of default templates for this feature. The functionality is fully customizable, allowing you to remove existing templates or add your own to cycle through via UI mods. You can find the hotkey by searching for 'Context.' It defaults to 'Tab' for new players or those who have reset their keybindings. ### Other features - (#5321) Pausing engineers will also pause reclaiming props. - (#5300) The score graph now uses square root scaling to make it easier to view the first few minutes. - (#5326) We've improved CPU resource utilization to reduce frame stuttering for CPUs with 6 or more logical cores. In practice, many CPUs have 6 or more logical cores. If we detect that your CPU has sufficient cores, we change the process affinity to ignore the first compute core. The first compute core is often used by processes, including the OS. When the game ignores the first compute core, the render thread (which is otherwise locked to the first compute core) has more room to operate and is less influenced by other processes and the OS. As a result, you'll experience fewer stutters and overall better frame times. - [9e73421](https://github.com/FAForever/FA-Binary-Patches/commit/9e734211cbec22e9ce4696cf3c9343bdda54fdf5) On average, there is a 5% performance improvement (both in simulation and UI) across the board. A free Cybran Cookie for anyone who can explain how it works without asking the assembly magicians. - [120d32](https://github.com/FAForever/fa/commit/120d329af238ef93d2c054b444a2f704febb6155) Added a new hotkey to load all units of your selection into the transports of your selection. - (#5333) Added tread crushing damage to the Fatboy. - (#5367) Added the standard Cybran build effect to the Megalith. - (#5362) Added links to the Wiki to explain hotkeys in the key bindings menu. - (#5360) Sped up the death animations of a wide range of structures. ## Bug fixes - (#5317) Bombers with multiple projectiles are now less likely to miss their target when micromanaging them. - (#5294) Gifted structures now properly copy the orientation. - (#5335) Fixed a bug that occurred with the navigational mesh for non-square maps. - (#5329) Disabled intel and maintenance costs of units inside a carrier. - (#5374) Fixed upgrading structures losing their control groups. - (#5371) Fixed invulnerable props being removed when building on top of them. - (#5371) Fixed light particles when building structures being visible through the fog of war. - (#5343) Fixed a bug that could cause the simulation to freeze. ## Contributors Unlike previous changelogs we no longer list the commits of each individual contributor. With thanks to the following people who contributed through coding: - RabidPope - Gordenwunderlich / Nex37 - Hussar - BlackYps - Basilisk3 - speed2 - Grandpa Sawyer - Hdt80bro - Maudlin27 - Relent0r - Jip - Deribus With thanks to the following people who contributed through binary patches: - 4z0t - Strogo - KionX - RTD With thanks to the following people who contributed through model, texture and effect changes: - MadMax - Deribus - Jip And, last but certainly not least - with thanks to those that took part in constructive discussions: - CheeseBerry - Tomma - Nex37 - MostLostNoob - FemtoZetta - Sheikah - ComradeStryker - Resistance - Maudlin27 - MadMax - IndexLibrorum - Derp - Deribus - Magge
-
-
-
Reserved to give gg's
-
Added a section about the distribute orders feature.
-
@jip said in Developers Iteration III of 2023:
Distribute orders
You can now distribute (or: spread) any order type! With thanks to @Strogo,
KionX
andRTD
who made an engine patch to make this possible. This new implementation intends to improve upon the old spread attack implementation. We're looking forward to hear your feedback on how it works....
Apologies if I'm being dumb but I've tried using this and don't understand why it's not working - perhaps someone can put me straight
My assumption is I can select a bunch of units, issue a sequence of orders to all of them as a group, then press this key and it should change the order into a separate order for each of the selected units to do part of the task (e.g. as shown in the screenshot, a long wall will be broken into short sections, each one done by a different engineer).
The same as how Split Attack works.I select a group of engineers, give a series of orders, then press the key I have assigned (which is ` [backtick], if that matters)
It just cancels the original series of orders and all the engies immediately go idle...
I've tried holding down Shift after giving the orders and whilst pressing the hotkey, doesn't make any difference.
How is the hotkey supposed to be used? Can someone spell it out....Thanks
-
@guy Do you have the logs of that game and maybe the replay id?
Did you have any mods active?
If so, can you reproduce this in a sandbox game without any mods? -
@guy You're playing on the wrong game type:
The hotkey shows up but is not functional on the
FAF
game type. It is functional through theFAF Develop
game type, you can change the game type as you host a game:The feature becomes functional on the
FAF
game type after the release on the 26th of August -
@jip said in Developers Iteration III of 2023:
@guy You're playing on the wrong game type:
The hotkey shows up but is not functional on the
FAF
game type. It is functional through theFAF Develop
game type, you can change the game type as you host a game:The feature becomes functional on the
FAF
game type after the release on the 26th of AugustOh, didn't realise, makes sense, thanks
-
Just to make sure, I should disable UI Party if I host a develop lobby?
-
No, you should disable it if you want to make use of context-based templates. It is not compatible with that. Do note that the old spread attack implementation is no longer available on FAF Develop, you'll need to remap the hotkey
-
Does the new spread move also deprecate the Disperse Move mod?
-
@snaggs
@jip said in Developers Iteration III of 2023:Deprecations
This will remove the old spread attack key binding and the functionality of it. All (UI) mods that relied on that functionality will no longer function. This includes but is not limited to the Disperse move UI mod.
yes -
My bad, missed that somehow.
-
"#5321 Pausing engineers will also pause their reclaim progress"
Can we please not do that? I often want my engies reclaiming regardless of if they are paused or not. For example, you are in emergency, you want to build something asap, you select all engie on map, you pause, then unpause those engies which are building what you want. With this change you would also need to unpause all reclaiming engies. Also there is a feature where placing order to build something on reclaim pile would cause engies to reclaim it at high speed, which is useful on like desert arena, but i think it would cause problem on other maps too, imagine placing fac on some trees, and then pausing engies, they wouldnt even reclaim trees so when you unpause them, they gonna reclaim first which will cause some pathing issue etc. which is annoying.
If you overflow mass reclaiming its just skill issue and you should have planned accordingly, so now you have to waste mass or redo your queue. -
@tomma said in Developers Iteration III of 2023:
you select all engie on map, you pause, then unpause those engies which are building what you want.
I'd argue that this is not the best approach
@tomma said in Developers Iteration III of 2023:
but i think it would cause problem on other maps too, imagine placing fac on some trees, and then pausing engies, they wouldnt even reclaim trees so when you unpause them, they gonna reclaim first which will cause some pathing issue etc.
This sounds hypothetical. The feature is live on FAF Develop, give me a replay id where you experience unusual pathing issues
I understand that this is a change in behavior that people may get used to. But pausing an engineer should pause it. It is what players expect that aren't familiar with the quirks of FAForever. There's not just downsides, also upsides. It enables you new interactions, like being able to preserve your attack move commands by pausing individual engineers when you're about to fill your storage. Or being able to preserve the queue by being able to pause the engineer instead of hitting stop
-
Could the engi 'dont reclaim when paused' behaviour be made an optional setting so people could opt out of the behaviour? I make use of the pause option similar to Tomma where if I'm e.g. power-stalling I'll want to quickly select engineers on-screen and pause them, so may occasionally pause ones that are reclaiming.
Alternatively could there be a new pause hotkey that pauses every unit except engineers with a reclaim order? I'm not sure if this would be feasible though - i.e. you could have it not affect engineers currently reclaiming, but I don't know if it's possible to analyse the command queue to identify cases where an engineer has a move order followed by a reclaim order, or has a reclaim order on a target outside its build range
-
@maudlin27 said in Developers Iteration III of 2023:
Could the engi 'dont reclaim when paused' behaviour be made an optional setting so people could opt out of the behaviour?
It is an assembly patch. Those are difficult if not impossible to make optional on a per-user basis.
We can make a hotkey to select all engineers that are currently consuming resources, that would qualify for engineers that are building things (at that moment)
-
So about UI party not working, are there any other mods to set your factories to repeat on construction?
-
@chenbro101 Is there a reason to not use the built-in option?
Or did you mean something else?