[Freeciv-Dev] more complex terrain advantages and disadvantages patch
[Top] [All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
Hi again,
as I posted recently, I admit that a lot of features in PG system are
not very apropriate in freeciv. But more complex terrain advantages and
disadvantages are very probably a Good Thing also for freeciv. And as
far as I have seen, the replies on this feature were mostly very
positive. So I made this patch today.
The basic idea here is, that some units should have a terrain bonus, but
some should have rather a "terrain antibonus" (or disadvantage). I have
divided units to two groups according to this basic idea.
The units in the first group are marked with flag Infantry_Type. They
are:
alpine troopes
archers
barbabarian leader
diplomat
engineers
explorer
fanatics
legion
marines
musketeers
paratroopers
partisans
phalanx
pikemen
riflemen
settlers
spy
warriors
The second units are marked as Armor_Type (well, it may sounds strange
that both Knights and Armors are Armor_Type unit, but they both sure
should have similar defense disadvantage in forrests, hills or
mountains):
armor
artillery
cannon
caravan
catapult
cavalry
chariot
crusaders
dragoons
elephants
freight
horsemen
howitzer
knights
mech. inf.
I hope you agree with these groups. If you have any doubts, just imagine
how would for example catapults or howitzers or horsemen cope with deep
bushy forrests or rough rocky mountains (kazachstan style would be the
best ;)
The defense bonus for Inf_Type units remains the same: they get *1.0 on
plain, grass, etc, *3/2 in forrests, *2.0 on hills and *3.0 in
mountains.
The defense bonus for Arm_Type units is inverted: they get *1.0 on
plain, grass, etc, *2/3 in forrests, *1/2 on hills and *1/3 in
mountains.
The second idea is, that all unit types should get disadvantage on river
squares and not advantage - I hope you agree with this. I definitly
think it's more logical and realistic - just imagine a group of
riflemen, who are just crossing the wild, bad river ;) and they are
being attacked (let's say) by another group of riflemen. Which units
should have the advantage - the first ones, who are just swimming and
hardly surviving in the water, or the second ones, who are quitely
picknicking on the bank and from time to time comfortably shooting ;) ?
(According to this image, I also think units should not have move bonus
on river, but rather move disadvantage - but this patch does not take
care about that).
River defense disadvantage is implemented very simply - I just reverted
+50% terrain river bonus to -50% terrain river bonus.
Here is the list of changed files and functions:
server/unitfunc.c:
get_simple_defense_power();
get_virtual_defense_power();
server/unittools.c:
get_defense_power();
enemies_at();
server/settlers.c:
city_desirability();
ai/aiunit.c:
find_beachhead();
data/default/units.ruleset (added F_ARM_TYPE and F_INF_TYPE flags)
common/unittype.c (added Armor_Type and Infantry_Type
names of flags)
common/unittype.h (added F_ARM_TYPE and F_INF_TYPE flags)
I have made some brief testing, and all seemed to work fine for me in 2
(human) players game: some catapults survived attacks of warriors and
phalanx on grass terrain, but were terribly smashed on hills and
mountains.
I think this require longer and deeper testing (are here any
volunteers?). We also have to check, if the game balance was not changed
too much. But I think it's right if Armors are wiped by Rifflemen in
hills or mountains, etc.
I think this feature is definitly positive. It force players to use more
unit types and so makes game more variable.
Note: This patch should also include a new server option, which would
turn this advanced feature on/off and it should also change some help
entries. I decided not to spend time with these changes untill this
terrain feature is fully accepted and tested.
terrain_bonus.gz
Description: GNU Zip compressed data
- [Freeciv-Dev] more complex terrain advantages and disadvantages patch,
peter jurcovic <=
|
|