Some air units related oddities

What would you like to see in Freeciv? Do you have a good idea what should be improved or how?
Ignatus
Elite
Posts: 490
Joined: Mon Nov 06, 2017 12:05 pm
Location: St.Petersburg, Russia
Contact:

Some air units related oddities

Postby Ignatus » Wed Oct 03, 2018 8:35 pm

It looks to me that the aviation in Freeciv behaves sometimes too implausible even for the game's level of abstraction.
  1. Landing missiles. This was addressed number of times, e.g. here. We should be able to transport missiles from city to city using ships and roads (we can make missile conversible to and from a land unit "missile-transporting vehicle").
  2. Bombers from carriers. RL carriers, until thermonucler power becomes a common thing, can launch only small planes. On the contrary, any transporter big enough can transport a plane, just not launch it. Maybe we could separate fuelling and transporting - in non-fuelling transporter a fueled unit can be loaded only without fuel, it will live but won't move.
  3. You can protect your city from nuclear rocket by placing 12 or 16 Diplomates in a circle around. Air units can't fly over them! This will require rewriting much of code, but unreachable units should be able to coexist with non-allied units or cities on a single tile (note, real bombers usually throw bombs from upside down). The same goal can be achieved more clumsily but less revolutionary by giving to a unit the ability to goto/attack remote targets if all the path to them is occupied by unreaching but not allied units and is passable otherwise; since most planes have vision range shorter than moving range, a weird way to do it will be to move by the path a "quantum ghost" of the plane alongside with its vision range while its "body" will hang in the darkness on the start location until the moment a liveable point is reached (or somebody destroys it).

nef
Hardened
Posts: 246
Joined: Mon Jun 25, 2018 5:01 pm

Re: Some air units related oddities

Postby nef » Sun Oct 07, 2018 1:26 pm

Ignatus wrote:2. Bombers from carriers. RL carriers, until thermonucler power becomes a common thing, can launch only small planes. On the contrary, any transporter big enough can transport a plane, just not launch it. Maybe we could separate fuelling and transporting - in non-fuelling transporter a fueled unit can be loaded only without fuel, it will live but won't move.


A solution to this is to use convert. Define a companion type unit which can be loaded onto ordinary transports. Convert from/to bombers in any city. I tried this feature in fc2.4 and it worked (mostly). IRL you would need cities - you could not just dump a plane on any old coastal tile (or load from one). This is the same as for missiles.

3. You can protect your city from nuclear rocket by placing 12 or 16 Diplomates in a circle around. Air units can't fly over them!

Use a fighter?

Ignatus
Elite
Posts: 490
Joined: Mon Nov 06, 2017 12:05 pm
Location: St.Petersburg, Russia
Contact:

Re: Some air units related oddities

Postby Ignatus » Mon Dec 10, 2018 11:02 pm

nef wrote:A solution to this is to use convert. Define a companion type unit which can be loaded onto ordinary transports. Convert from/to bombers in any city. I tried this feature in fc2.4 and it worked (mostly). IRL you would need cities - you could not just dump a plane on any old coastal tile (or load from one). This is the same as for missiles.

Well, it's a possible solution.
3. You can protect your city from nuclear rocket by placing 12 or 16 Diplomates in a circle around. Air units can't fly over them!

Use a fighter?

I still don't think that clearing a way for a missile with fighters or anything among land forces that can't reach it is plausible, from realism or gaming scope either. The ways commercial games deal with it:
  • CivIII - flying units perform ranged missions (analogous to a very distant bombardment, or paradropping their cargo, or airlifting themselves to another base in a limited range, with some map revealed in process) instead of movement. Henceforth an air unit may be intercepted in the way by mobile SAM batteries, and other fighters set to Air Superiority mission (if the bomber is not lucky to evade quietly and the best interceptor is lucky to not miss the bomber, the bombing inside their radius does not occur and the bomber may be damaged or struck down, as well as the fighter, but not the SAM); and fighters can be dedicated to airsweep in their range to prevent enemy's interception (it is an attack without a specific target that steals counter-attack points with less damage to you). Helicopters are non-attacking investigators and transporters.
  • CivIV - basically the same.
  • CivV - air units are again engaged in normal combat, suffering damage from the attacked ground units. They are tied to either a city or a carrier, in a turn they can either operate in the range or re-base (in also limited range). On the bases they neither attack nor defend. Unlike other units in this game (stackable only by one of each class per tile, that are Military, Civilain and Sea (mil.) vessel, but with an ability to jump over each other if no ZoC, see target tile and have enough MP), airplanes can be stacked on a base in limited quantities. Helicopters are not effectively air units, just IgTer, they can ramble outside as long as they want, and even need to embark at water tiles (but are still weak to fighters). A strange limitation: Guided Missile requires seeing the target.
  • CivVI - again air units mostly fight bombard-like. Fighters intercept if they are set to patrol (there are airstripes for increasing their range). Helicopters are upgraded Light Chivalry, just cross anything with 1mp/tile and are not prone to special anti-air weapons. Nuclear bombs are nation-range objects carried by a plane.

My own ideas, alternative to making aircrafts based operation forces, were (A) allow them to jump over other units; (B) introduce "Level" system: each terrain type has several levels which may contain separate unit stacks with special mutual visibility and ZoC rules, so plane on "High Air", helicopter on "Low Air", footsoldier on "Land" and worker in a tunnel on "Underground" of the same tile may be mutual enemies. A unit changes its level due to terrain effects, as side result of its actions, and/or as a voluntary movement. E.g. you can't move missile back to the "Land" level where its city/base is if it is not in full mp, and it is not allowed to embark on other levels; and other aircrafts are forced to "Land" level on native city tiles which bring negative combat bonuses up to -100% (maybe give them some chance to rise up if ambushed?)

nef
Hardened
Posts: 246
Joined: Mon Jun 25, 2018 5:01 pm

Re: Some air units related oddities

Postby nef » Tue Dec 18, 2018 12:43 pm

I still don't think that clearing a way for a missile with fighters or anything among land forces that can't reach it is plausible, from realism or gaming scope either.
I had in mind a quick fix gaming technique - mostly because of slow development time in mainstream fc. As for something more permanent anything that adds Civ I, II, & III features would be good. But in the meantime I would note that there is already some code there in the form of paradrop. One just needs to tweak it a bit for missiles. Having said that I do like the idea of layering but I'm not so keen on making it overly complex. Simple clean layers - sub surface, surface, low alt, high alt. Maybe add orbital. Action enablers to decide who can attack whom from one layer to another. Also of course, coexistence at different layers. Some elements of this already exist for commercial games other than Civ I - 'non-mil' units do not displace tile workers for example. Another case for sub surface is obviously the submarine.

Ignatus
Elite
Posts: 490
Joined: Mon Nov 06, 2017 12:05 pm
Location: St.Petersburg, Russia
Contact:

Re: Some air units related oddities

Postby Ignatus » Tue Dec 18, 2018 3:45 pm

In fact, paratroopers always dying if met hostile units (and the scalp goes to nobody) is yet another oddity; these folks should be more tough. Maybe they should fight all the units on the tile in sequence starting from the strongest/in random order with negative attack bonus that will be set to (-100%) in existing rulesets (that currently means mutual killing with a Diplomate though), maybe with a chance to flee for weak fast units.

Ignatus
Elite
Posts: 490
Joined: Mon Nov 06, 2017 12:05 pm
Location: St.Petersburg, Russia
Contact:

Re: Some air units related oddities

Postby Ignatus » Sun Nov 29, 2020 11:39 pm

Another catches from LT54, that are likely to be solved in v.3.1 or 3.2:
1. Alpine Troops protecting Bomber from missiles. In CivIII, stealth fighters are said to be able to do a "sniper attack" on arbitrary units (though that likely does not work there).
2. Any units can attack from carriers if they are over native terrain, even if they can't disembark the carrier. (For that reason, in LT54 cargo planes are limited to non-military classes). Bombardment and diplo actions can be restricted for a transported unit but not attack.

Likely, the single "Unreachable" flag was too a big restriction from the beginning.

Lexxie
Veteran
Posts: 93
Joined: Fri Jun 23, 2017 4:18 pm

Re: Some air units related oddities

Postby Lexxie » Tue Feb 16, 2021 7:20 am

Well, just like there are vision layers, why not EXISTENCE layers? I know it sounds terribly complex but it might not be, if you limit a few narrow things. For example, it you can't stay on any such tile, it is only part of orders packet that would complete its task and not stay on an illegal tile.
Thus, co-existence on enemy unit tile doesn't "really" happen, but only as a temporarily-entered-and-exited server state to perform to either get to an unoccupied tile or to attack a city or occupied tile. Then it's not a big project to do this, except for handling the exceptional problems:

Like what if the bomber has 1 move left but no unoccupied tile to go stay on? If someone can think of how we handle this case, I could make this feature.

Lexxie
Veteran
Posts: 93
Joined: Fri Jun 23, 2017 4:18 pm

Re: Some air units related oddities

Postby Lexxie » Tue Feb 16, 2021 7:26 am

Ignatus wrote:Another catches from LT54, that are likely to be solved in v.3.1 or 3.2:
1. Alpine Troops protecting Bomber from missiles. In CivIII, stealth fighters are said to be able to do a "sniper attack" on arbitrary units (though that likely does not work there).

Likely, the single "Unreachable" flag was too a big restriction from the beginning.


At FCW server, a combination of Unreachable, NeverProtects, and NeverBlocked flags, means this has not been a problem, and hasn't been a problem for YEARS. Don't you have these flags yet?

Ignatus wrote:2. Any units can attack from carriers if they are over native terrain, even if they can't disembark the carrier. (For that reason, in LT54 cargo planes are limited to non-military classes). Bombardment and diplo actions can be restricted for a transported unit but not attack.


I don't understand. Did you put in the actionenabler requirements for "Attack", to regulate this? On our server version we can put requirements for Attack also, I am not sure what version would have this problem, or is it some kind of bug you found?

Ignatus
Elite
Posts: 490
Joined: Mon Nov 06, 2017 12:05 pm
Location: St.Petersburg, Russia
Contact:

Re: Some air units related oddities

Postby Ignatus » Tue Feb 16, 2021 8:49 am

Lexxie wrote:
Ignatus wrote:2. Any units can attack from carriers if they are over native terrain, even if they can't disembark the carrier. (For that reason, in LT54 cargo planes are limited to non-military classes). Bombardment and diplo actions can be restricted for a transported unit but not attack.


I don't understand. Did you put in the actionenabler requirements for "Attack", to regulate this? On our server version we can put requirements for Attack also, I am not sure what version would have this problem, or is it some kind of bug you found?

LT54 was a 2.6 game, since 3.0 attack is an enabler-controlled action. But still it has some flaws and traps, e.g. how to make a Marine able to attack from Trireme but not Helicopter, and a Paratrooper from Plane but not from one on a Barge. I know FCW has a lot of patches to fix things but I am not much familiar woth them, I've considered the native client branch here.