AI War 2:The Pivot

From Arcen Wiki
Jump to navigation Jump to search

Known Issues

  • The interface, lobby included, is currently temporary, and undergoing a complete overhaul.
  • Beam-weapon style shot graphics don't yet display, and a couple of AOE effects don't show quite correctly yet.
  • Balance needs a lot of attention, with your help.
  • The tutorial is currently missing, as we need to redo it.
  • Multiplayer is temporarily disabled while we focus on tightening up the single-player loop.

What is this "Pivot?"

The full details are on kickstarter: Pivoting AI War 2: Bring The Fun!.

The short answer is that we're dropping back from what was considered a beta status, and instead proceeding with a revised design on our existing engine in order to make sure that this sequel fully lives up to the legacy of its predecessor.

Version 0.743

(Not yet released -- we're still working on it!)

  • The second half of the AI War 2 soundtrack is now in place! These pieces, as specified in the kickstarter, are all remixed/remastered versions of tracks from AI War Classic. In there we have the Defeat and Victory tracks from the first game, Nomad Sunrise from DoW, Intro and Midnight from the base game, Night Light from LOTS, Rising Up from VOTM, and Voyage to Zenith from TZR.
  • The game now actually plays defeat music when you lose.
  • When you win, the game first plays the For The Fallen vocal track, and then goes into the from-Classic Victory track, then goes on to play regular music from the in-game rotation.
    • When you lose, the game plays the defeat track, then also goes back to the regular in-game rotation.
    • These two changes are aimed at people who want to keep playing after a victory or loss, which are a not-insubstantial number of people.
    • We actually have not tested this bit at all, so, uh, if it doesn't work properly like this then please do let us know and give us a savegame. We're kinda busy on a lot of fronts right now! Normally we unit-test things, though.
  • We're now internally using the Asset Bundle Browser to help us find trouble spots with overlarge pieces of data in our asset bundles that we're building for the game. This helps with load speed, runtime efficiency, and asset bundle build speed.
  • Slightly improved the efficiency/size of the effects asset bundle.

Version 0.742 Hotfix

(Released May 1st, 2018)

  • Fixed a bug where the total seconds to load was only being reported in output.log, and not in the ArcenDebugLog.
  • On the main menu, it now shows how long it took to load the game, and you can hover over that to get details if you want. The "logged in as Steam user" info is right below that, and both are a bit smaller now.
  • The loading feedback on the sound effect items and graphics items are now more coarse, leading to faster overall loading times compared to the last internal versions.
  • The method for tracking how much time has passed has been adjusted to use DateTime.Now instead of the Stopwatch class, since we had some questions about accuracy.

Version 0.742 Darkly Loading Spire

(Released May 1st, 2018)

  • Rather than looking like the application is hung when it starts, the game now shows the loading progress in the form of what it's doing at the bottom. It doesn't show a loading bar, but it does show a counter of how long has elapsed, and how long specific long-running bits are taking.
    • This is useful both for us to know in terms of telling when something is overly slow to load, and it also gives players something to look at and a cue that there's not just a frozen application in front of them.
  • Surprisingly, the sound effects loading is taking twice as long as the loading of the graphical data right now (9.6s versus 4.4s on Chris's machine), so this is already an example of where we can optimize our loading speeds a bit, which saves everybody a lot of grief and saves the devs here time staring at the screen when it's time to test each item.
  • Additionally, now if the game has an error during load, it won't show a mishmash of all the gui windows all overlapping themselves in an insane and obviously-glitchy way. There is no functional difference between before and now, but it seems a lot less terrifying now if you're seeing it for the first time.
  • The loading log for how the game starts up is now more informative than ever, and on the long-running sections it actually shows a progress count rather than just hanging on those sub-parts. Sometimes those sub-parts can take 30 seconds or more on first run (though usually 4 seconds or so on subsequent runs), so having this feedback is pretty vital to this not feeling like maybe it locked up.
  • The alpha channel has been removed from a ton of images that didn't need it, letting the compression format be smaller on disk, in RAM, and in VRAM, as well as loading faster. This will definitely be kept, as it was useless data.
  • The max texture size for some of the non-diffuse texture channels for the ships are now cut way down from what they were before, to reflect the distances you typically see these from. This saves 300MB of RAM, disk space, and also lowers the VRAM requirements and makes rendering faster. It also makes loading vastly faster. This is definitely a quality/compression tradeoff, and we do still have the originals, so we may wind up making this an option or something in the future if it seems ugly to folks this new way. At a fairly casual glance by those who worked on the ship graphics, we can't really tell the difference, though; in side-by-side shots you would notice it, but that's about it unless we are mistaken.
  • The compression style for weapons effects and other sound effects has been changed to ADPCM instead of Vorbis, and these are now set to load on a background thread rather than the main thread. This makes loading vastly faster for the sound effects, although it does use something like 20MB of extra disk space. The amount of space used in RAM is identical, since we always decompress on load, anyway.
  • The voice acting clips are now set to stream in like the music does, as well as load on a background thread, rather than being preloaded or decompressed early. This actually saves quite a bit of RAM, and doesn't affect disk space, and saves an enormous amount of loading time. The downside is that it can cause a sub-second delay in playback of voice clips, but given the nature of a voice clip that is both imperceptible and irrelevant.
    • Different types of sounds have different characteristics and need different settings, and we've optimized these, in short.
  • Speaking of optimization, we're no longer doing full error-checks on load for each ship visual that is loaded in. That was time-consuming and pointless. In the ship designer windows it shows errors, and if someone commits a ship with errors that's something that is a goof on their part and not something we need every player machine checking for every time the game starts. So that saves another batch of time.
  • We're also doing another experimental thing, where with the solomesh ships we're directly using the asset bundle copies of the ships to get their meshes and materials, rather than instantiating a copy first.
    • Generally this is not advised, since it can cause a bunch of extra disk reads and other general slowness when accessing that data. However, in this particular case, since we're not actually accessing anything more than the data on these objects (we're not making copies of the object), we think it's not hitting the disk like that. We don't see any evidence of it in the profiler now, anyway, and we were in the past.
    • This speeds things up yet again, and so far so good on that front, but we may have to back this one out later.
  • Overall the loading speed of the game has more than doubled, in typical test cases thus far, and it actually is responsive while loading as well, which is an important first impression piece.
  • Fix a bug where the Nanocaust was never losing influence over a planet even after the constructor was destroyed
    • Thanks to OvalCircle for reporting
  • Change the default colour of the Risk Analyzers
  • When the Human Marauders put Marauder Outposts on a planet, give them Influence over the planet (so it will be shown on the Galaxy map)
  • Initial commit of Dark Spire. Like in AIWC, it spawns ships based on energy it gains when ships die on a planet with a Vengeance Generator (VG).
    • Energy is tracked per VG. When VG energy > threshold it either shares energy with the VG with lowest energy or it spawns ships to attack. There's a Conversion Ratio when turning energy into ships; it starts out not very efficient (maybe 50% of the energy becomes ships), but every time a VG spawns new ships it becomes more efficient.
    • AI Overlords start with a Dark Spire Ward structure on their planets which prevents Dark Spire ships from going there. If a player destroys the Ward then the Dark Spire will be able to attack the AI overlord, thus giving you a new win condition.
    • Every so often the Dark Spire will attempt to spawn a Vengeance Generator Locus. The Locus will transform into a full Vengeance Generator in 5 minutes. If you don't kill the Locus in that time period then it turns into a Vengeance Generator. Planets are eligible for a Locus to spawn if they have no Human or AI ships on them, and they are adjacent to a Vengeance Generator without any human or AI ships on it.

Version 0.741 Music Part 1 Of 2

(Released April 29th, 2018)

  • The first half of the new tracks for the AI War 2 soundtrack are now in place: Abandoned Ship, Absolute Zero, Bouncing Lights, Event Horizon, Light Year, and Supercluster.
    • All by Pablo Vega, mastered by Dio, and all fantastic.
  • Update to Human Marauders behaviour. If they destroy all your forces on a planet then they will begin to construct Marauder Outposts which will spawn Marauder new units. This will make it harder to recapture planets. Every so often a new MarauderOutpost will be added, and existing MarauderOutposts will upgrade themselves to make stronger units. Note also that when the Marauders capture a planet they get a permanent boost to their MaxBudget, making them more dangerous.
    • If you allow the Marauders to get Mark 3 outposts then they will start getting Budget faster.
    • The balance levers are in XML for ease of use
  • The default game volume is now quieter in the hope of not deafening new players
    • Thanks to Flavin for the report
  • Improved the performance of music loading at the start of the game and during the game.
  • Fixed a regression in the prior version of the game where the first time any camera loaded a "traditional skybox" type of background, it would be solid black instead.
  • Fixed an issue where the construction part of the sidebar could show some stale data when switching from a planet with a builder to one without a builder.
    • Thanks to hawk for reporting.
  • Fixed a bug that nobody had reported yet with lightning attacks being very strange-looking and not like lightning bolts anymore.
  • Fixed a bug with the various type of geometry-based explosions (flak, lightning, etc) so that they now render additively in the transparent queue rather than the overlay queue, and so that they read from the zbuffer but no longer write to it.
    • This changes the effects a fair bit so that they no longer do things like eat into one another or the ship icons around them.
    • These will need further tuning to not be over-bright in huge battles, and they're on our list for further improvements visually anyway, but for now it's a good enough start.
  • Risk Analyzers: code tidying, also track the total and net AIP generated by Risk Analyzers. Eventually this is going to turn into 'When X AIP is generated by Risk Analyzers, do something unpleasant to the player', probably an exo wave, once exo waves are added
  • Map Types: Add a new planet placement mechanism for Simple and Realistic, and tweak one of the previous placement algorithms for Simple and Realistic
  • Fix some bugs with Marauders, where outposts weren't upgrading properly.

Version 0.740 Clean Up That Nebula, Young Man!

(Released April 26th, 2018)

  • Fix some dumb bugs in the HumanMarauders faction that was preventing the marauders from correctly analyzing your planets to see which they should attack
    • Thanks to OvalCircle for reporting
  • Fixed a bug where the Vis layer was not correctly setting the Shot location when we tabbed into a planet with the shot in flight; it was assuming the shots should be at the middle of the planet, which is manifestly incorrect
    • Thanks to OvalCircle for reporting
  • Fix a bug where where if a non-Nanocaust faction killed a unit that had taken Nanocaust damage, the killing faction would get the new zombie ship instead of the Nanocaust.
    • Thanks to OvalCircle for reporting
  • A new and frightening visual look for Usurpers has been added. These will be absent for a while until we get past the "Fun point" once Keith gets his first wave in place, but then we expect these to come back pretty darn fast, so we want them to look nice and scary). (These are the AI ships that recapture planets)
  • The infrequently-changed space backgrounds, and planet graphics, have all been moved into a new internal AIW2Scenery unity project, which saves us a _ton_ of time when actually building the gui asset bundles, or ship asset bundles, for the game.
  • The sound effects and voice acting files have all been moved out of the platform-specific projects, and out of the modding and gui project in general.
    • These are now in the GlobalBundles folder, which saves some disk space if you've got multiple OSes of the game installed at once. It also saves us time when pushing new versions of the game, and has less of a footprint on the system for everybody thanks to the modding unity project now being much smaller without all those files.
    • This does make some of the sound stuff a bit harder to mod, but we'll just throw that stuff up on github or google drive or something when the time comes. It's not worth inconveniencing everyone over putting it directly in the build.
  • There were a variety of old "space boxes" that were from back in the kickstarter days that were just... underwhelming. They were nicely colorful, but had kind of gross large stars in them, and in some cases just junky colors in general. These have either had their gross big stars patched out, or they've been removed.
    • Overall these have mostly been removed except for the best couple of them (which now have color variants!).
    • This saves about 200mb of RAM for something that wasn't looking so hot in general, and makes the game load faster, too.
  • Our middle-style "nebula sphere" type of backgrounds previously had a really bad problem with distortion on the starfields. This was just embarrassing, and led to some perfectly-fine spaceboxes looking really gross depending on the angle of view, instead. These have all been fixed up with a revised shader for handling those starfields as simple tiling rather than triplanar reading.
  • Our most recent, and best-lookg style of space backgrounds, which are based on traditional skyboxes, were absolutely HUGE, taking up more than 450mb on disk, and in RAM. Each one was 12MB of VRAM to render, as well, although that's unavoidable to keep the starfields crisp using a non-tiling cubemap like that.
    • We've now split these out so that the stars themselves are in a separate cubemap which is the larger size, and then the nebula parts are able to be a quarter of the size (half the side length) without any drop in quality. This adds 3MB of VRAM usage per draw (of which there is exactly one per frame), but saves over 300mb of disk space and system RAM during runtime, as well as making the game, once again, load faster.
  • 49 new space backgrounds have been added, based on 8 source cubemaps, to replace the ones that were taken away (though this actually adds back more than were taken).
    • The new skyboxes are way higher quality than the ones that were removed, is the main point, anyhow.
  • The starfield backgrounds on the galaxy map are now much more neutral, with mostly black and a little bit of white. Easier to see foreground objects on them, now.
  • Fixed a bug where once you viewed an old-style spacebox background, it wasn't letting you view any "traditional skybox" backgrounds, which explained the over-prevalence of the former.
  • The settings option for "background style" has been removed, as that's no longer really relevant to anything.

Prior Release Notes

AI War 2: Final Pre-Beta Checks