Flanking Policy

Creation, discussion, and balancing of game content such as techs, buildings, ship parts.

Moderators: Oberlus, Committer

Message
Author
User avatar
LienRag
Cosmic Dragon
Posts: 2148
Joined: Fri May 17, 2019 5:03 pm

Re: Weekly Release Notes / Up-to-date Test Snap

#1 Post by LienRag »

Ophiuchus wrote: Wed Jul 07, 2021 12:42 pm news
[*]content: added Flanking policy - if your stationary ships outnumber the enemy you do extra damage; does not take alliances in count (geoff)
Very interesting, is there a way to make it work when you attack from multiple starlanes simultaneously (maybe with a check that the flanking forces are each at least 25% or something of the defenders) ?

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13587
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: Weekly Release Notes / Up-to-date Test Snap

#2 Post by Geoff the Medio »

One could probably set up a condition based on checking a Statistic CountUnique that select ships with (ETA = 1) and (NextSystemID = TargetSystem), and if there are 2 or more, then it could apply a bonus to the ships in those fleets...

Ophiuchus
Programmer
Posts: 3433
Joined: Tue Sep 30, 2014 10:01 am
Location: Wall IV

Flanking Policy

#3 Post by Ophiuchus »

LienRag wrote: Thu Jul 08, 2021 7:36 pm
Ophiuchus wrote: Wed Jul 07, 2021 12:42 pm news
[*]content: added Flanking policy - if your stationary ships outnumber the enemy you do extra damage; does not take alliances in count (geoff)
Very interesting, is there a way to make it work when you attack from multiple starlanes simultaneously (maybe with a check that the flanking forces are each at least 25% or something of the defenders) ?
I like the idea
Geoff the Medio wrote: Thu Jul 08, 2021 9:03 pm One could probably set up a condition based on checking a Statistic CountUnique that select ships with (ETA = 1) and (NextSystemID = TargetSystem), and if there are 2 or more, then it could apply a bonus to the ships in those fleets...
I think it needs also PreviousSystemID to distinguish the starlanes.
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

Ophiuchus
Programmer
Posts: 3433
Joined: Tue Sep 30, 2014 10:01 am
Location: Wall IV

Re: Weekly Release Notes / Up-to-date Test Snap

#4 Post by Ophiuchus »

Moved discussion to own topic Flanking Policy

Can I get moderator rights for this topic (or whatever is necessary to move OT posts somewhere else).
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13587
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: Flanking Policy (LTMCTTFY)

#5 Post by Geoff the Medio »

Ophiuchus wrote: Fri Jul 09, 2021 8:58 am
Geoff the Medio wrote: Thu Jul 08, 2021 9:03 pm One could probably set up a condition based on checking a Statistic CountUnique that select ships with (ETA = 1) and (NextSystemID = TargetSystem), and if there are 2 or more, then it could apply a bonus to the ships in those fleets...
I think it needs also PreviousSystemID to distinguish the starlanes.
Yes, that would be value taken for each of the objects that are selected by the sampling condition in the Statistic.

Ophiuchus
Programmer
Posts: 3433
Joined: Tue Sep 30, 2014 10:01 am
Location: Wall IV

Re: Flanking Policy

#6 Post by Ophiuchus »

Downside is here the one turn delay.

So in order to get the bonus on arrival one would need to (micro)manage the fleets to be in flight on the direct starlanes the turn before getting the bonus.

I think it would be better to also provide that bonus for the first turn after arrival but actually we dont keep necessary information around.
(Actually we keep the arrival starlane in ship, but only if the ship gets blockaded; else it gets set to the current system).

So I am not sure what to do. I like the idea of a pincer attack bonus.
Last edited by Ophiuchus on Fri Jul 09, 2021 8:29 pm, edited 1 time in total.
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

User avatar
LienRag
Cosmic Dragon
Posts: 2148
Joined: Fri May 17, 2019 5:03 pm

Re: Weekly Release Notes / Up-to-date Test Snap

#7 Post by LienRag »

Ophiuchus wrote: Fri Jul 09, 2021 11:01 am Moved discussion to own topic Flanking Policy

Can I get moderator rights for this topic (or whatever is necessary to move OT posts somewhere else).
Sorry Ophiuchus, I thought that reacting to novelties you post was okay.

A lot of the time, just a few comments on the new items (which have not always been discussed elsewhere) are enough, so creating a new topic seems overkill.

Also, since you post once a week and usually discussions of last week's novelties are finished when you post the new release's information, what is the inconvenient of reacting directly on the "Snap release" topic ?

User avatar
LienRag
Cosmic Dragon
Posts: 2148
Joined: Fri May 17, 2019 5:03 pm

Re: Flanking Policy

#8 Post by LienRag »

Ophiuchus wrote: Fri Jul 09, 2021 6:12 pm Downside is here the one turn delay.
Indeed, that is a problem. Didn't think about that.

Ophiuchus wrote: Fri Jul 09, 2021 6:12 pm Downside is here the one turn delay.

So in order to get the bonus on arrival one would need to (micro)manage the fleets to be in flight on the direct starlanes the turn before getting the bonus.

So I think it is better to also provide that bonus for the first turn after arrival.
I'm not sure I understand, but if what you mean is that you can pre-position "flanking" forces by coming on the battlezone one turn earlier from different starlanes, it's problematic for two reasons : 1 - It breaks immersion
2 - It's not detectable by the opposed players if he can't see the maneuver (for example, if his detection ships are in transit).

User avatar
Oberlus
Cosmic Dragon
Posts: 5715
Joined: Mon Apr 10, 2017 4:25 pm

Re: Weekly Release Notes / Up-to-date Test Snap

#9 Post by Oberlus »

LienRag wrote: Fri Jul 09, 2021 7:05 pm Sorry Ophiuchus, I thought that reacting to novelties you post was okay.

A lot of the time, just a few comments on the new items (which have not always been discussed elsewhere) are enough, so creating a new topic seems overkill.

Also, since you post once a week and usually discussions of last week's novelties are finished when you post the new release's information, what is the inconvenient of reacting directly on the "Snap release" topic ?
Think of that thread as a log of game changes. Logs do not contain opinions on the changes.
If you have something to suggest, post somewhere else (a general thread like "Playtesting Government" if it's tiny, a dedicated one if you want to make a extensive discusion). If you just want to praise the changes, appreciated but no need.

Ophiuchus
Programmer
Posts: 3433
Joined: Tue Sep 30, 2014 10:01 am
Location: Wall IV

Re: Weekly Release Notes / Up-to-date Test Snap

#10 Post by Ophiuchus »

LienRag wrote: Fri Jul 09, 2021 7:05 pm
Ophiuchus wrote: Fri Jul 09, 2021 11:01 am Moved discussion to own topic Flanking Policy

Can I get moderator rights for this topic (or whatever is necessary to move OT posts somewhere else).
Sorry Ophiuchus, I thought that reacting to novelties you post was okay.
Yes, it actually is ok. But it spawns OT discussions which is not so okay (so actually geoff is the culprit ;) )

So it would be better to post your reaction in a different topic.
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

Ophiuchus
Programmer
Posts: 3433
Joined: Tue Sep 30, 2014 10:01 am
Location: Wall IV

Re: Flanking Policy

#11 Post by Ophiuchus »

LienRag wrote: Fri Jul 09, 2021 7:09 pm I'm not sure I understand, but if what you mean is that you can pre-position "flanking" forces by coming on the battlezone one turn earlier from different starlanes, it's problematic for two reasons : 1 - It breaks immersion
2 - It's not detectable by the opposed players if he can't see the maneuver (for example, if his detection ships are in transit).
I think people would get used to 1. or rather expect that to work, you are still coming from two directions at once even more suddenly than with the preview.

But yes, it is nice if the enemy can see the manoeuvre in advance (if you are not stealthed, that is).

The result will be that people employ counterintuitive workarounds (e.g. adding a slow ship to the fleet or sling-shotting in the neighborhood to get the distance right).

Anyway the bonus-one-turn-after-arrival is currently not possible without backend changes. The arrival information gets thrown away (if you are not blockaded) and effect evaluation happens after movement.

Probably something fancy could be done without backend changes so slingshotting would not be necessary.
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

Ophiuchus
Programmer
Posts: 3433
Joined: Tue Sep 30, 2014 10:01 am
Location: Wall IV

Re: Flanking Policy

#12 Post by Ophiuchus »

Opened a PR-35-25.
Ophiuchus wrote: Fri Jul 09, 2021 8:39 pm Probably something fancy could be done without backend changes so slingshotting would not be necessary.
Geoff the Medio wrote: Thu Jul 08, 2021 9:03 pm
The problem I am facing is that I cant take conditionally a different value parameter in the CountUnique and I would need to use PreviousSystemID for those fleets 1 jump away and NextSystemID for those fleets 2 jumps away (Note, both ETA 1).

What is possible: count all ships with an ETA of 1 for that final destination. That means we are not counting arrival starlanes but ships being on different starlanes. You get the bonus also if you arrive in the same starlane as long as you started the turn on a different one. That gives an edge to fast ships so it might be fine.

If we had another complex valueref differentiating the arrival starlane would be possible: PlottedArrivalFrom fleet = ID target = ID (use in Statistic CountUnique
value parameter: Statistic CountUnique value = PlottedArrivalFrom fleet = LocalCandidate.ID target = RootCandidate.Fleet.NextSystemID)

Or with data changes: store always the arrival starlane (or probably better: mark being blockaded with a flag instead of reusing m_arrival_starlane) and query that in a trivial manner.
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13587
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: Flanking Policy

#13 Post by Geoff the Medio »

Ophiuchus wrote: Sat Jul 10, 2021 10:31 amThe problem I am facing is that I cant take conditionally a different value parameter in the CountUnique and I would need to use PreviousSystemID for those fleets 1 jump away and NextSystemID for those fleets 2 jumps away (Note, both ETA 1).
I don't understand your logic here. You should use NextSystemID in the condition that selects ships for the Statistic, and PreviousSystemID in the value calculated for each of the objects matched by the condition. This will then find the ships whose next system is the target system, and then for each of those, find what its previous system was (which should include ships departing a system 1 turn away, I think). The CountUnique statistic then takes that list of previous system IDs and determines how many unique values there are for that. This will probably not work for ships that are departing a system that is 1 turn but more than 1 jump away, though... Perhaps a FinalDestinationID test could be adapted for that; not sure. Might also actually need to exclude ships whose previous system is the target system, as I think ships can have their current system as their previous in some situations.
fleets arriving in the same system from different directions as seen on map and in objects list window
fleets arriving in the same system from different directions as seen on map and in objects list window
fleets arriving from.png (633.37 KiB) Viewed 1128 times

Ophiuchus
Programmer
Posts: 3433
Joined: Tue Sep 30, 2014 10:01 am
Location: Wall IV

Re: Flanking Policy

#14 Post by Ophiuchus »

Ophiuchus wrote: Fri Jul 09, 2021 6:12 pm ...in order to get the bonus on arrival one would need to (micro)manage the fleets to be in flight on the direct starlanes the turn before getting the bonus.

I think it would be better to also provide that bonus for the first turn after arrival but actually we dont keep necessary information around.
(Actually we keep the arrival starlane in ship, but only if the ship gets blockaded; else it gets set to the current system).
Geoff the Medio wrote: Sat Jul 10, 2021 10:52 am.... This will probably not work for ships that are departing a system that is 1 turn but more than 1 jump away, though...
Yes, this is what I try to solve. Actually I wont mind it if it wouldn't incentivise ugly workarounds (slingshotting, slowing down fleet)

edit2:
Looking at the blockade code, it is too obscure for me to change it confidentially to using a flag.
Last edited by Ophiuchus on Sat Jul 10, 2021 11:19 am, edited 1 time in total.
Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

Look, ma... four combat bouts!

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13587
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: Flanking Policy

#15 Post by Geoff the Medio »

Probably could add some fleet properties like "previous system when at next turn position" and "previous system when at final destination" that would be based on the fleet's current planned travel route.

Post Reply