Loading a 2.4 ruleset into 2.5...

Contribute, display and discuss rulesets and modpacks for use in Freeciv here.
User avatar
Corbeau
Elite
Posts: 904
Joined: Mon Jan 13, 2014 11:13 pm

Loading a 2.4 ruleset into 2.5...

Postby Corbeau » Fri Apr 14, 2017 9:20 am

Would it work?

User avatar
Caedo
Elite
Posts: 465
Joined: Sun Feb 10, 2013 10:21 pm
Location: Stuttgart, Germany

Re: Loading a 2.4 ruleset into 2.5...

Postby Caedo » Fri Apr 14, 2017 10:00 am

You'd need to update it; info on that here.
~S.C. L.

User avatar
Corbeau
Elite
Posts: 904
Joined: Mon Jan 13, 2014 11:13 pm

Re: Loading a 2.4 ruleset into 2.5...

Postby Corbeau » Fri Apr 14, 2017 10:42 pm

Thanks.

Problems. I starrted doing it bit by bit and stuff worked fine until:

Code: Select all

Invalid requirement UnitFlag | Local |  |  | Airbase: bad type or name
"data/Corbeau/terrain.ruleset" [base_buoy] has invalid or unknown req: "UnitFlag" "Airbase".


The thing is, I actually copied terrain.ruleset from 2.5 so that in itself is not the error, the error is (probably) pulled from units.ruleset which I didn't copy from 2.5. But I have no clue what's the matter. The said error allegedly comes from this part:

Code: Select all

[base_airbase]
name           = _("Airbase")
graphic        = "base.airbase"
graphic_alt    = "-"
activity_gfx   = "unit.airbase"
act_gfx_alt    = "-"
reqs           =
    { "type", "name", "range", "negated"
      "Tech", "Radio", "Player", FALSE
      "TerrainClass", "Land", "Local", FALSE
      "UnitFlag", "Airbase", "Local", FALSE
      "CityTile", "Center", "Local", TRUE
      "Road", "River", "Local", TRUE
    }


Any ideas?

User avatar
JTN
Elite
Posts: 462
Joined: Wed Jan 30, 2013 12:15 am

Re: Loading a 2.4 ruleset into 2.5...

Postby JTN » Sat Apr 15, 2017 12:47 am

Look at this bit of 2.5's civ2civ3/units.ruleset for what you're probably missing (user-defined unit flags):

Code: Select all

[control]
; Names for custom unit type flags. There can be up to 16 of these.
; name          = rule name; In some circumstances user may see this
;                 as part of some sentences, so try to make it descriptive
;                 and sensible.
; helptxt       = displayed in the help for units with this flag (optional)
flags =
  { "name", "helptxt"
    _("Airbase")
    _("Transform")
    _("AirAttacker"), _("Very bad at attacking AEGIS.")
    _("Submarine"), _("Attack value halved when attacking Destroyer.")
  }

User avatar
Corbeau
Elite
Posts: 904
Joined: Mon Jan 13, 2014 11:13 pm

Re: Loading a 2.4 ruleset into 2.5...

Postby Corbeau » Sat Apr 15, 2017 6:40 am

Thanks, resolved.

User avatar
Corbeau
Elite
Posts: 904
Joined: Mon Jan 13, 2014 11:13 pm

Re: Loading a 2.4 ruleset into 2.5...

Postby Corbeau » Sat Apr 15, 2017 6:49 am

Ok, just checking if I got something right.

bombard_rate number is telling how many times a unit is attacking and each attack removes the firepower value of the atacker from hitpoints of the defender, correct?

Bomber has
bombard_rate = 3
firepower = 1
which means it attacks three times and, if it hits every time, it can remove at most 3 hitpoints from the defender.

Isn't that a bit too little? To remove HALF of the hitpoints from an Armor unit (30 hitpoints) you need five bomber attacks? Did I get this right?

User avatar
JTN
Elite
Posts: 462
Joined: Wed Jan 30, 2013 12:15 am

Re: Loading a 2.4 ruleset into 2.5...

Postby JTN » Sat Apr 15, 2017 8:37 am

Bear in mind though that (a) the attacker doesn't get damaged, (b) they do damage do every unit on a tile; so bombarders can be quite powerful to soften up cities/fortresses/stacks. In that situation, a bombarder that removed 50% of hit points might be overpowered.

User avatar
Corbeau
Elite
Posts: 904
Joined: Mon Jan 13, 2014 11:13 pm

Re: Loading a 2.4 ruleset into 2.5...

Postby Corbeau » Sat Apr 15, 2017 9:10 am

Fair enough. But I was looking at the possiblity that bombardment removed anywhere between 50% and 20% of defender's full HP. That is, 50% if there are not defence bonuses; if a unit is in a city, that's a different matter. I believe it is realistic; tanks on a plain are next to defenceless against artillery or aircraft and should suffer heavy losses.

But it's not a trivial issue; needs experimenting (at least *I* need it :) )

But, while we're at it, is there a way to give specific units additional terrain bonuses? For example, infantry should have a much bigger defence bonus from a city or a forest than armour. (Also, I'm new to this, are there any sections I should be looking at?

nef
Veteran
Posts: 130
Joined: Mon Jun 25, 2018 5:01 pm

Re: Loading a 2.4 ruleset into 2.5...

Postby nef » Mon Aug 13, 2018 6:49 pm

Corbeau wrote: tanks on a plain are next to defenceless against artillery or aircraft and should suffer heavy losses.


It is my understanding that HE shells are next to useless against armor. (Notable example: the US civil war ironclads retired at the end of each day to clean up the paintwork.)

Having said that there are special armaments to take out tanks. High KE solid shot, directed explosives, thermal charges etc. Its a war out there. Armor can move around - get behind ordinary guns - its very tactical.

Planes are a different kettle of fish. Bombers typically only use HE. It was the job of specialized fighters to take out tanks. Civ * and freeciv make a mess of this. Heavy bombers are not used for tactical purposes (like attacking ships). They also cannot use carriers. Fighters have a hard enough time for carriers. Freeciv is even going backward - we now have the possibility of using carriers for paratroop operations. Bizarre!!!


But, while we're at it, is there a way to give specific units additional terrain bonuses? For example, infantry should have a much bigger defence bonus from a city or a forest than armour. (Also, I'm new to this, are there any sections I should be looking at?


Is this coming with action enablers? (caz?)

While I'm on my soapbox, I can add:
a. it was good to see that veterancy was fixed (2.4 -> 2.5) but that still leaves the problem of an intelligence leak from the server to the client. That is, the human player can use a bombard attack to determine what units are in the city and how they respond to the bombard attack - perfect for planing a major attack - you immediately know how many bombarders you need AND how many regular attackers!!!
b. I have no idea of the detailed maths of Civ III bombard but in freeciv the attrition appears to be linear. That is if the average loss of HP is x% then it is x% of the max HP (e.g. Bombard power X bombard rate X success rate) for each attack (during that turn). This makes the calculation quite easy. Better would be a proportional attack based on the current HP. This would make it a little harder to reduce every defender to HP 1. With care on the integer arithmetic one could even tune the battle parameters to guarantee/not guarantee the defenders survival. No need for ad hoc rules.
Currently it's a turkey shoot, which leads me to -
c. Bombarders should have at least some skin in the game. This may not be Civ III compliant(?) but we are also talking about freeciv here.

User avatar
Corbeau
Elite
Posts: 904
Joined: Mon Jan 13, 2014 11:13 pm

Re: Loading a 2.4 ruleset into 2.5...

Postby Corbeau » Sun Aug 19, 2018 6:28 am

nef wrote:the problem of an intelligence leak from the server to the client. That is, the human player can use a bombard attack to determine what units are in the city and how they respond to the bombard attack - perfect for planing a major attack - you immediately know how many bombarders you need AND how many regular attackers!!!


Again, that is a problem only if you stick to the game mechanicsh for the purposes of sticking to the game mechanics. But if you take reality into account, it shouldn't be very difficult to figure out how many forces are in the city. That's why scouts and probing attacks are there. So there are two possibilities: either you pushed a stray bombarder unit ahead to find the strength of the defender or you have a significant amount of forces near the city. In the first case the unit will probably be destroyed which will have the effect of "sacrificing unit for information", almost the same thing as if you used a diplomat to actually get MORE information, so perfectly legit. In the second case, if there is a bunch of attacking units near or around the city, in reality, they SHOULD be able to determine what is the defending force and not being completely oblivious about whether the city is defended by a skeleton crew of hastily patched up militia or there is a whole army corps fortified inside.