Author Topic: From the dev: Notes on where I'm at on fleets, techs, and "1.0" now (7/29).  (Read 3361 times)

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
I still see people making really giant suggestions about things like fleets, or techs, or whatever, but I can't really do much about that stuff.  Maybe post-1.0, and maybe there are a few things here and there in the meantime, but by and large it is what it is. 

About Techs - Where I'm Inflexible
There is occasional confusion about things like the tech system being a "temporary stand-in" or something like that, but that's really not the case at all.  It's working completely as I intended, and it's simplified for a lot of good reasons.  One of which was the fact that there were so many bloody unlocks in the first game that most people didn't use most of the things.  And the sequel has a ton of variants of things that you can stumble upon, so they need to share techs since it would otherwise be impossible to really tech-up those little things you only get a few of in some obscure fleet, for instance.

About Techs - Where The System Is Very Flexible
If people feel like there need to be more techs, or fewer techs, or they need to have their costs adjusted, then those are more of a data-driven xml thing and you can make your own proof of concepts easily.  But the core of the system the way that it currently exists is solid and flexible enough that you could have a tech for most ship types if you REALLY wanted to (I don't think that's wise at all), or frankly so that everything techs up at once based on a single tech (wow that's the other extreme, also bad).

It's also flexible enough that you can have individual ship lines ONLY ever subscribe to a single tech line, not multiple like they do now, and the tech lines could go all the way to 7 if you wanted.  More ship types could be blocked off from the EXP upgrades from fleets, or granted the ability to upgrade from fleets, etc.  All of this is just data.  It's set up to be super duper flexible.  It's also set up to be user-modifiable or moddable.  I set up some initial versions of techs that I felt like made sense, and then Puffin has been working on getting those balanced cost-wise, but there's nothing to say those are the final word.  Anyone can go in there and make their own version of things pretty easily and let us know what their suggestion is.

If enough people like it, I'm fine switching over to some other form of data there.  We've already done that a few times, such as no longer making Arks something that you upgrade directly since those are a lot more minor now. For a while those were the big dump for science, after all.

The bottom line is that there's a robust and flexible system there at the moment, and if people don't like the data that I laid the baseline for... feel free to change it!  I'd certainly welcome more contributors.

About Fleets
There's also definite grumbling about ways in which the current system is less flexible than the old one, and I do hear that.  It's less flexible... except where it's more flexible.  It's different.  Most of the differences seem welcome at this point, but there are also a lot of things that people want that are just counter to the ethos of the game.

One of the big themes is people who want to do a lot of fleet design, by hand in whatever fashion.  To me, that's just a really big "ugh."  The first game eventually drifted more and more that direction, based on what techs you could choose to unlock for things like turrets and starships for instance, but that was more Keith's doing than mine, and something I deeply disagree with.  If you want to know the time period I kind of idealize for the first game, it would be the 2010 period, 3.x, before we made the switch to Unity.  That was probably the most complete version of my original vision for that game, and then I increasingly gave of the reins and it went in other directions.

Early on in the very first game's life -- prior to it even being public at all, actually -- there were no ARSes.  You didn't capture new ship lines at all, and you didn't start with just one ship line.  You started with ALL the ship lines, of which there were something like 12 or 16 at the time, and could upgrade them as you wanted to.  What I observed in myself and my play group was that we just kind of were overloaded by that amount of info and would just say "eh, build everything."  Or we'd find some favorite that was above-average in the bulk of situations, and just lean on those.  Snipers, before there were gravity well sizes that were finite.  Laser gatlings, after that.  Parasites, at times.

The kind of key insight that I had that led into the original AI War's 1.0 period that everyone first saw was that it was much more interesting to have restrictions and to be forced to use more things.  Hence the per-ship-type unit caps, rather than one global cap.  I was observing that if I could just throw everything into laser gatlings, I never used the other things.  Hence the ARSes and the starting units, which encouraged experimentation and "playing it as it lies."

The problem is that there's a certain amount of EMPIRE designing that we all definitely enjoy.  We want to choose what kind of turrets we have, we want to choose an interesting bonus ship type, we want to decide where our choke points are.  And I'm all for that.  It's a balancing act.  That's what the current design of fleets, in the sequel, are all about: you can see what's in them, and they're more plentiful in general, and so you can choose what you want and then use them how you want.  They have the limited ship caps PER TYPE like the first game, but also PER FLEET so that you're having really different things in different parts of your empire.

The worst thing that can happen to an RTS game, in my opinion, is for its players to fall into repeated patterns where they feel like they "need" X ship type in order to win.  It's the sort of thing that class-based FPS games or MOBAs have to deal with in advanced play as the "meta" evolves for those games.  It leads to constant balancing and nerfs and buffs to keep everything interesting.

The solution that I found with the original AI War (pre-4.0 or so), and which is alive and well again here in the form of fleets, was to go a little bit roguelike-ish.  There can't be a coherent universal meta if there's no consistent set of units between campaigns.  For a while I was going to do some procedural ships, but that turned out to be a bad idea for a variety of reasons, really just making everything more generic.  So instead we have procedurally-designed fleets, with hand-designed ships, and a variety of rarities for some of the hand-designed ships that are intentionally more unusually powerful or weak.

In the main I'm super duper happy with how this works out, because it's causing us all to use our gray matter more in terms of figuring out "okay, here's what I have, now what can I do with it?"  I really enjoy the sort of late-game chess scenarios that you find in a lot of chess books, where you have certain pieces in certain positions and you have to figure out how there's mate in 7.  This kind of follows the same pattern.

BUT this isn't all about my personal tastes, and there are some definite drawbacks to the current approach that limit certain playstyles.  You can't make an effective monochrome fleet since there's NO hand-designing of fleets that you can do yourself.  So the ability to swap ship lines between fleets is coming, since that will allow you to take what you find and add SOME customization without getting away from the core of "you're using what you're finding."  It's sort of a middle-ground compromise, and I think it will solve most problems people will have with the system, although certainly not all of them.

Other problems sometimes arise around units that just don't play well with others, like the Raiders.  What is their purpose, if they can't strike deep and far and fast -- if everything else in their fleet is too slow?  As a player, trying to find a bunch of other units to make a sensible fleet out of them would be plain un-fun (and often not possible depending on the RNG in your campaign), so I went a different route with them: they have a new ability that speed buffs all the other units in their fleet to make them raider-speed.

That does double-duty in an exciting way for me, because it kind of makes "procedural ships" in a way that I had not thought about.  Essentially you might have super-speed TANKS in a fleet with raiders, thanks to that fleet-level ability.  That's super cool to me.  It makes raiders immediately interesting and exciting in any fleet, because suddenly all the other ships in that fleet are swift like raiders themselves.

Fleet Suggestions I Can Use
Anyone with elegantly simple small additions is welcome to share those, as I'd love to make the system work well for people as widely as possible.  But yet more suggestions for ways I can completely overhaul things are just completely out of scope.  So largely we're talking about incremental improvements, or xml-driven things that other people can configure while I work on the framework, etc.

To me, these mostly consist of looking at the existing framework, understanding that we're at a time of polish, and working within it to solve the problems you might personally be facing, rather than trying to reinvent everything:

1. First of all, avoiding something like a bunch of extra customization, or "free slots" that you can put anything into are things that would require a lot of programming time and fly directly in the face of my design goals in general.  They're the sorts of things that would just drive you to using your favorite units, again and again.  I give you a free slot, and really that just means you'll use the same ship over and over again and get bored of the game.  I would do it, too, so it's not some judgement against anyone in particular; it's human nature.

2. But things that are interface tweaks to make management of the fleets easier -- without changing their nature in general -- are certainly welcome.  I only have but so much time for those, but it's worth focusing on the ones that would make life easier for a lot of folks.  I think I hit all the really major things already (like all the automation that factories do), but I'm sure there are more things I haven't thought of.

3. There are also likely still "problem units" that need special cases for them.  I'm not going to redesign fleets to accommodate these, and I also don't want to redesign these units so much that they lose their uniqueness, either: the latter is the curse of the MOBA meta, where everything becomes genericized in the long haul if you aren't careful.  I want some units to be unusually expensive, or slow, or fast, or valuable, or unfairly good or bad.  Everything doesn't have to be equally balanced, because you don't have full freedom to choose anything at any time.  That in itself is one big argument against "free slots" where you get to pick anything you want; the known-most-valuable ships, which normally could be set to seed more rarely so that they are an exciting bonus here and there, would instead become "required" for advanced play.  That's no fun at all!

3.a. So, regarding problem units, if they cause economic problems by existing or require you to micromanage when you turn them on and off from building because they are so expensive... well, maybe we need new mechanics that just inherently build these more slowly, thus draining less of your economy despite them costing more.  They thus take longer to build, but that becomes part of their design.  I'm not inclined to make this something you can customize (during gameplay, I mean) beyond where you assign engineers.  Because then we're into SimCity-like dials for things like the equivalent of tax rates, and that's just distracting you from the actual business of getting on with the war.  So anyway, the point is that if there's something that is continually a problem, then I'd like to adjust its design, if that means adding features or otherwise, so that it doesn't have that problem anymore.

3.b. So, again on problem units, there's those ones that "do not play well with others."  I'd like to take the raider-style approach and make it so that they buff the rest of the units in their fleet in some way so that the entire fleet becomes more unique and interesting because of them.  I find this infinitely more interesting than trying to either de-uniqueify the problem unit, or give you tools to isolate the problem unit from your other fleets, etc.

4. And then there may be other classes of problem that I haven't even thought of, or that I think are already fixed but aren't fully.  Types of units that you need more ready access to in order to do assaults or defenses effectively, and which you find yourself searching for and restarting a campaign if you can't find them.  These sorts of things are a lot more challenging, and there are a variety of kinds of solutions within the existing fleet model, but first I have to know what the problems are.  Maybe it means that more units of a certain sort need to be available.  Maybe some sort of fleet-specific perks or buffs of some sort.  In the abstract, it's hard to say.  But usually these have fairly self-contained solutions in a design sense, rather than being things where we need to start thinking up entirely new models of fleets, or trying to shoehorn in sub-fleets, or adding in the sort of customization that is so broad that you just remake the same thing every time you play, etc.

Financial Background
I figure it's only fair to say this at this point.  I need to get this game to a point of being 1.0-ready by mid to late September at the VERY latest.  The game is already massively financially in the hole, and it doesn't pay for my time on it.  I'm not only out of savings, I'm massively in debt.  Out of pocket, I've probably spent about $200k on making this game, and all the kickstarter money went to other folks.  The very early days of Early Access started earning that back a bit, but that just got plowed right back into making the game, and the money tapered off fast thanks to all the stuff going on with Steam: https://kotaku.com/this-years-steam-summer-sale-was-a-mess-game-developer-1836215859

2018 was an awful year for income until AI War 2 hit EA in general, but then come January 2019 the revenue for that month was only half of what it was in the year prior, and that's WITH AI War 2.  Will this end up being the end of my career as a truly independent developer?  I don't know.  I know that I can finish what I started, what the kickstarter promised, but beyond that I don't have any clue as to my future.  That's really scary, and having people trying to convince me to take on another half-year of rework on completely new models for the gameplay doesn't really help.  But I get that folks are coming without context when they make those mega posts with lots of suggestions that would take me months to implement, so... here's the context.

What's the plan for 1.0, then?
Well, I'm sure that plenty of bugs as well as plenty of other ideas for refinement of the current system will come up that are not on my radar right now.  But beyond that:

1. It needs polish and bugfixing that I already have on my lists.
2. And a victory screen.
3. Tutorials (https://forums.arcengames.com/ai-war-ii/from-the-dev-notes-on-where-i'm-at-regarding-tutorials-right-now-(729)/)
4. And achievements.
5. And the last of the ship models.
6. And some UI improvements.
7. And the other last things to give midrange goals for players (four horsemen, two dragons, etc).

Beyond that it is what it is, for now, I think.  Lots of refinement aside.  Multiplayer I'll address separately.
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline BadgerBadger

  • Arcen Volunteer
  • Hero Member Mark III
  • *****
  • Posts: 1,229
  • BadgerBadgerBadgerBadger
A bunch of achievements are done, they just need a UI to let the player see which one's they've earned. At the moment there are about 100 achievements in the game. Once the UI is in there will need to be some testing, but I think most of them should be working.
« Last Edit: July 29, 2019, 02:14:20 pm by BadgerBadger »

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
A bunch of achievements are done, they just need a UI to let the player see which one's they've earned. At the moment there are about 100 achievements in the game. Once the UI is in there will need to be some testing, but I think most of them should be working.

Good point -- and thanks for implementing all those.  Though I suppose I should also clarify, then, that I need to get the Steamworks integration working properly on linux and osx again, for those to be able to be logged to steam.  Since the upgrade to the new version of unity and the new version of facepunch, we haven't had proper integration where we can send achievement status to steam or check it from steam on those two platforms.

I have a feeling that simply upgrading to the latest version of the facepunch framework will fix the issue, since it has been a few months and whatever the problems were are probably fixed now.  I don't think they were problems in our own code.  But that's just another thing on the list, sigh.
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline Draco18s

  • Resident Velociraptor
  • Core Member Mark V
  • *****
  • Posts: 4,251
I will note that I can help out a smidge here and there (such as doing the data entry for achievements on Steam's backend) and the like. I've got a few free hours each week I'm trying to spend doing my own projects and don't mind taking some of that and applying it back to Arcen.

I don't know if I'd be able to integrate Steamworks, but I did do it in one of my own projects using Starward Rogue as a working example (but never tested it).

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
Thanks!  I definitely appreciate that.  That will be helpful for sure.
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline PokerChen

  • Hero Member Mark III
  • *****
  • Posts: 1,088
    Ok, I have played through a full game (on easy to check out how the controls and game progression works now). I do prefer the new system overall at this level of play, since it's fairly simple to drive things around and redeploy ships as needed. The factory reinforcements are excellent for how I play. There are a couple of minor suggestions with this, which if present I haven't noticed a clear informative panel telling me how to do X:
    • Need some quick ability to switch off construction for a fleet selection. E.g., press "1" then press "K" to toggle off construction. This saves stragglers from spawning as you move around systems. Alternatively, when the fleet leader is in load mode, build ships directly into the leader without spawning.
    • Autobuild N factories in the same way as autobuild engineers.
    • I kinda miss the selection filters in AIWC. E.g. I would like a way to select only fleet leaders on a planet aside from clicking their icons on the local tab, when the strikecraft is deployed. This lets you move the reinforce point around the map without interfering with the rest of the fleet. If there is time and after ship-type swapping is in, it would be nice to have this subselection expand to other ships.*
    • Alt+Z to show only enemy weapon ranges?
    • Ctrl+# to set the group selection.
    If any of the above is in already, then please ignore it. That would just be a documentation issue.

    * Say, pressing "1" then "Q" selects all fleet leaders in group 1. "1"->"W" selects the first ship slots, "1"->"E" selects the second ship slots, etc. A player can then sort out the attack groups they need, if they wanted to send the Eyepods one way or to prioritise targets for just snipers.

    The techs are also fine as they are. I foresee potential issues where I might be upgrading the default command stations defenses every game and this factor  influencing the fleet leaders I choose to rescue. The root cause of this being that all command stations have the same defenses (let alone all military commands, which I use a lot of). It may be worth testing out a more diverse selection:
    • Keep turrets shared for now as there are many GCAs to customise player turret strategy.
    • Military command: Assault Frigates/Fusion Bombers for anti-heavy role
    • Logistics Command: Concussion Corvettes/V-wings to emphasise its lighter defense and delay-for-reinforcements strategy.
    • Economics Command: Default minefields to guard this backwater from stray foes.

Offline Draco18s

  • Resident Velociraptor
  • Core Member Mark V
  • *****
  • Posts: 4,251
Thanks!  I definitely appreciate that.  That will be helpful for sure.

Ping me (email works best) any time.