View Issue Details

IDProjectCategoryLast Update
0021991AI War 2Gameplay IdeaJan 29, 2021 12:45 pm
ReporterSizzle Assigned ToBadgerBadger  
Status resolvedResolutionfixed 
Product Version1.003 Sortable Objectives 
Fixed in Version2.108 Galactic War Units And The Exostrike 
Summary0021991: dynamic map response from AI when player is behind a choke point
DescriptionFrom discord : on the subject of punishing the single choke point without it feeling unfair - what would you say to an event: the AI is starting a massive project to bore a new warp-link to YYY from XXX. XXX would be defended by extra resources from the warden fleet or hunter fleet. If you can’t stop their operation, you get a two front war. If you can, well it makes the game more interesting. There’s the teensy matter of if the map structure would support such a thing though

Chris’s reply
That's a good idea in terms of boring a new warp-link in. It would potentially have trouble with things like line links on the maps overlapping unpleasantly, and some other strangeness. It would be a hefty code undertaking with a lot of bugs, I think. But I do really like the idea. Maybe for sometime during working on a second expansion, or between then, if this is still hopefully going really strong. I'd see it as a base game feature, but not one for super soon. Seems good for mantis.
TagsNo tags attached.

Activities

JonJoe

Oct 28, 2019 6:56 pm

reporter   ~0054079

From discord: Maybe just a "AI will teleport a huge fleet to this location unless stopped", one time deal

Chris's reply
That would be a far easier thing to accomplish in our current infrastructure, basically an exo wave based on you being too protected. That's kind of a Badger area historically, but I wonder if someone else (me or another volunteer) might be interested in it.

BadgerBadger

Oct 28, 2019 7:09 pm

manager   ~0054080

Last edited: Oct 28, 2019 7:11 pm

Well, Wormhole Invasions have a lot of overlap with this idea already.

The game could give you a warning message 'The AI is building a warp relay that will unleash an unstable wormhole behind your defenses', then use code like the Warping In Guard Posts on reconquest mode. If the structure finishes then the AI gets a free wormhole invasion.

This would be pretty easy.

JonJoe

Oct 28, 2019 7:31 pm

reporter   ~0054082

Sounds great, Badger!

BadgerBadger

Oct 28, 2019 7:48 pm

manager   ~0054084

Last edited: Oct 28, 2019 7:53 pm

What conditions do you have in mind for triggering this? It's easy to say "If the player is turtling, do X", but computers don't work like that.

I feel like this might need to be one of those "Gated behind AIP" things. I'm imagining a conditional like

If AIP > threshold && All player planets that the AI can attack have stationary defensive strength > 4x default wave size && it's been at least an hour since the last warp relay attack
     Start the 5 minute timer for a warp relay spawn in
    If the warp relay exists, start a wormhole invasion with the default wormhole invasion strength, then destroy the warp relay

How does this sound? Chris, looking for your feedback too.

We'd also need a suitable icon/model

Sizzle

Oct 28, 2019 10:59 pm

reporter   ~0054088

As a side note, I would still love to see something that would permanently open a second front, or present a sustained threat that must be dealt with -- rather than being a one-off event that the player has to respond to, squash, and then move on their merry way.

However, that seems to be a much longer and more fraught affair to deal with. Nevertheless, the elements that seem interesting to me are:
- some sort of large project the AI has to complete (I'm not sure how close Badger's reply to use "...code like the Warping In Guard Posts on reconquest mode..." comes to this as I'm not certain on the details of reconquest mode.
- that this project should be defended *better* than some of a capturable like data centers, ARS and others. It should be problematic to simply run in a deep strike fleet, and nuke the project easily.
- where possible the threat I think should be a longer-term one, if it is feasible to make it so -- so that the threat landscape changes, rather than the player taking a few minutes to squash it, and moving on.

Also, Badger is right that we need some more accurate conditions to trigger this, and what he suggests makes sense to me.

BadgerBadger

Oct 29, 2019 12:48 am

manager   ~0054093

Perhaps the game should have a couple "Turtle breaker" units that have effects over time. I think I could rig something up that would launch a quick, one wave wormhole invasion every 5 minutes, or an Exogalactic strikeforce every 5 minutes.

RocketAssistedPuffin

Oct 29, 2019 12:18 pm

reporter   ~0054113

An additional note on the Warp Relay icon/model: I have some stored Eye types (Translocator, Parasite, Raid, Magnifier) that might be nice to get in, but they do not have their icons or unique models.

Chthonic One

Oct 29, 2019 1:27 pm

reporter   ~0054119

Conditions are simple, game does Djikstra's algorithm from your homeworld(s) and if all possible routes from warp gates go through two or fewer strong systems, the AI responds to the choke.

For those who don't know, Djikstra's algorithm is a greedy algorithm that assumes that if we have a set of nodes that we know the shortest path to each of those nodes, we can find the shortest path to one node more by adding the out going edges to the path length of it's source node in the set. The one with the lowest value is the one we know to be the newest shortest path. This plus our set starting with our start point only, lets us find the shortest route to all nodes.

Djikstra's only needs to be run once, then you know all you need to update this. Now you keep track of who owns the nodes and what strength each node is, and periodically check to see if the shortest paths all go through one or two really strong nodes.

Chthonic One

Oct 29, 2019 1:29 pm

reporter   ~0054120

Also, personally I see this as a job of the Hunter Fleet. If the hunter fleet cannot find an avenue of attack, and is notably strong, it checks for turtling. If it finds it, and AIP is high enough, it launches a special project to break the stalemate.

Chthonic One

Oct 29, 2019 1:35 pm

reporter   ~0054122

Another note on detecting chokes: To find the actual shortest route once you know how far it is to every node, you flood fill from where you want to come from, subtracting the edge length (in this case it's always 1) as you go, and stopping once you hit 0 or you find the destination. Depth first search would be optimal for flood fill in this case.

As an alternate, if we want to prevent an arbitrary number of choke points, it can add up how much static strength it finds on each path back from any system it can get to, and if that is too high, it launches the project, assuming it has enough strength and AIP to do so.

BadgerBadger

Oct 29, 2019 1:54 pm

manager   ~0054123

If we actually want to add new wormhole routes I'd rather just implement nomad planets

BadgerBadger

Jul 26, 2020 7:27 pm

manager   ~0057859

Solutions for this have been implemented in DLC2. You'll need to wait to see what happens though!

Issue History

Date Modified Username Field Change
Oct 28, 2019 6:52 pm Sizzle New Issue
Oct 28, 2019 6:56 pm JonJoe Note Added: 0054079
Oct 28, 2019 7:09 pm BadgerBadger Note Added: 0054080
Oct 28, 2019 7:11 pm BadgerBadger Note Edited: 0054080
Oct 28, 2019 7:11 pm BadgerBadger Note Edited: 0054080
Oct 28, 2019 7:31 pm JonJoe Note Added: 0054082
Oct 28, 2019 7:48 pm BadgerBadger Note Added: 0054084
Oct 28, 2019 7:53 pm BadgerBadger Note Edited: 0054084
Oct 28, 2019 10:59 pm Sizzle Note Added: 0054088
Oct 29, 2019 12:48 am BadgerBadger Note Added: 0054093
Oct 29, 2019 12:18 pm RocketAssistedPuffin Note Added: 0054113
Oct 29, 2019 1:27 pm Chthonic One Note Added: 0054119
Oct 29, 2019 1:29 pm Chthonic One Note Added: 0054120
Oct 29, 2019 1:35 pm Chthonic One Note Added: 0054122
Oct 29, 2019 1:54 pm BadgerBadger Note Added: 0054123
Dec 18, 2019 6:16 pm BadgerBadger Assigned To => BadgerBadger
Dec 18, 2019 6:16 pm BadgerBadger Status new => feature for later
Dec 19, 2019 1:19 am BadgerBadger Assigned To BadgerBadger =>
Jul 26, 2020 7:27 pm BadgerBadger Assigned To => BadgerBadger
Jul 26, 2020 7:27 pm BadgerBadger Status feature for later => resolved
Jul 26, 2020 7:27 pm BadgerBadger Resolution open => fixed
Jul 26, 2020 7:27 pm BadgerBadger Fixed in Version => 2.108 Galactic War Units And The Exostrike
Jul 26, 2020 7:27 pm BadgerBadger Note Added: 0057859