forked from freeciv/freeciv
-
Notifications
You must be signed in to change notification settings - Fork 0
/
NEWS
4455 lines (4148 loc) · 233 KB
/
NEWS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
======================
Welcome to Freeciv x.x
======================
The most important changes between major releases are shown below.
Not all changes are shown here. Those who are interested in seeing
the detailed changes should check the ChangeLog file.
MAJOR CHANGES FROM 3.2.x to 3.3.0
---------------------------------
[TODO]
MAJOR CHANGES FROM 3.1.x to 3.2.0
---------------------------------
[TODO]
MAJOR CHANGES FROM 3.0.x to 3.1.0
---------------------------------
(from <https://www.freeciv.org/wiki/NEWS-3.1.0>, 2023-03-11)
The major changes in Freeciv 3.1 are new Qt6- and gtk4-clients,
improved balance for civ2ci3 ruleset, experimental meson based
build system, and a whole lot of extra flexibility to create
custom rulesets.
As is usual for major releases, 3.1 clients cannot interoperate with
pre-3.1 servers, and vice versa. Most pre-3.1 savegames can however
be loaded into 3.1, and in most cases, the supplied rulesets have not
changed so much as to make it difficult to complete a game started
with 3.0.x's rules.
Server / General
* Qt6 versions of the Qt-client, Qt Modpack Installer, and Ruledit
are supported, and even the default in most cases HRM#892817
* Player authentication is supported by default GNAPATCH#7379
* Max number of regular players (not counting barbarians) is now 500.
HRM#654973 HRM#677144
* Rally Points can be set for the cities HRM#838543
* Previously silent generic actions now have event message types,
so can show up chat/messages/popup HRM#848791
* There has been many changes to what actions each keyboard key does,
as required by changes in the actions themselves.
See Controls in Help for updated info.
+ Especially; Paradrop now has a key distinct from
Pollution cleaning OSDN#45958
* Adding local nation definitions now works properly OSDN#44590
Changes affecting players (supplied rulesets)
* Experimental ruleset is no longer part of the main
freeciv distribution. It's still available with modpack installer
GNAPATCH#7625
* Submarines are now in the new Subsurface vision layer HRM#682506
* Huts on most rulesets (any ruleset that uses default huts behavior)
can now result on reveal of the surrounding terrain OSDN#42974
* By default, bombardment rate now gets reduced if the bombarding
unit is damaged. This is relevant only for rulesets with such
bombarding units, and ruleset might still use the old behavior
instead of the new default HRM#821129
* The issue of Ships attacking Helicopters counting as land bombardment,
when attack initiated from a city on land has been resolved
OSDN#43255
* Extraneous StartUnit roles cleared from supplied rulesets OSDN#45878
* Rulesets except civ1, civ2, alien, and stub have new
Eliminate Spy action, that is just diplomatic battle with no
further actions OSDN#46173
* nations
+ Esperant nation city list updated OSDN#45762
+ Palau nation added HRM#697041
+ Texan nation city list updated OSDN#46114
+ Liege nation added OSDN#46553
+ Floridian nation added OSDN#46657
+ Game prefers not to select Chadian and Kanem-Bornu
to the same game (i.e., they have been set to conflict)
OSDN#42135
* civ2civ3
+ Ecclesiastical Palace is real secondary capital now HRM#872572
+ Establishing trade routes give one-time bonus in Gold
(used to give Nothing) OSDN#42319
+ Effects of Culture have been reworked OSDN#42712
* The culture accumulated by each city increases its
resistance in diplomatic fights against enemy agents
(up to +50%)
* The culture accumulated by your nation increases the cost
to bribe your units or incite your cities (up to +500%)
* Governments no longer get immunity against bribe or
incite actions. Cities with a Courthouse or a Palace
are now immune to incite actions
* Increased the amount of culture granted by achievements
(from 100 to 1000 in most cases), and the lead relative
to second best player needed for victory (from 33 to 100%)
+ Fortress and Airbase build requirements rearranged OSDN#42709
* All military infantry units can build fortresses.
All worker units can build airbases.
+ The working time required to build a base is 2 times
the movement cost of the terrain.
+ Attacks against helpless defender never grant veterancy
OSDN#43101
+ The chance to gain veterancy from combat depends on how
challenging it was OSDN#43203
+ Reworked which of the naval units count as military ones,
causing unhappiness OSDN#45225
+ Homeless diplomats may home themselves, to gain ability
to bribe units OSDN#45070
* civ1
+ Alliance clauses are no longer available HRM#768396
+ Move costs on entering and leaving transports corrected
HRM#850669
+ Both units' hitpoints and firepower have been increased
to 10 in all situations. Single hit still kill them,
but AI understand this math a bit better OSDN#43042
+ Fortifying bonuses closer to civ2 HRM#871628
* Unfortified units in cities do not get the bonus
* Bonus is not cumulative with City Walls or Fortress
* civ2
+ Alliance clauses are no longer available HRM#768396
+ Move costs on entering and leaving transports corrected
HRM#850668
+ Fighters have real scramble bonuses HRM#923193
+ Fortifying bonuses closer to civ2 HRM#871628
* Unfortified units in cities do not get the bonus
* Bonus is not cumulative with City Walls or Fortress
* multiplayer
+ Unit move rates doubled HRM#654404
+ The chance to gain veterancy from combat depends on how
challenging it was OSDN#43203
* alien
+ Burrowing units do not make it impossible to attack other
units in the same tile, even if general unreachableprotects
setting is enabled HRM#824810
+ The chance to gain veterancy from combat depends on how
challenging it was OSDN#43203
* experimental
+ Ruleset has been made ready to migrate under name goldkeep
in freeciv-3.2 HRM#820950
* sandbox
+ Various messages shown in the beginning of specific turn numbers
HRM#732561
+ Both parties need to know Writing before they can trade techs
HRM#768209
+ ICMB can hit anywhere in the world, from anywhere HRM#854014
+ New Disrupt Supply Lines action to take move points from target
HRM#852114
+ Spies can simply (not as part of another action) eliminate
enemy spies and diplomats HRM#859809
+ Pillaging gives the victim Casus Belli HRM#874199
+ Spies can Release Plague HRM#859160
+ Spies can do Suitcase Nuke action OSDN#41809
+ Ecclesiastical Palace is real secondary capital now HRM#899242
+ New Chichen Itza wonder allows city to build units that
usually have population cost without the city shrinking
HRM#900032
+ Fortress can be expanded to a Castle OSDN#41433
+ Some Castles are placed on the map when it's generated OSDN#41434
+ Teleportation is possible via Ancient Transport Hub's
randomly placed on map OSDN#41557
+ Living units of the Amêzârâkian Mysteries owner can heal
other living units OSDN#41671
+ Nuclear attacks are now targeted against tiles, not cities
OSDN#41688
+ Added Nuclear Submarine that can launch one tactical nuke
each turn OSDN#41689
+ Added Treuga Dei Wonder that prevents all violent actions
while it's active OSDN#41677
+ New Altar of The Divine Ruler wonder allows making units homeless
OSDN#41836
+ New Mechanic unit can repair machine units, restoring 50%
of their health OSDN#41845
+ Poison City actions may fail, as dictated by diplchance
server setting HRM#924521
+ Establishing trade routes give one-time bonus in Gold
(used to give both Gold and Science) OSDN#42319
+ Added Space Elevator small wonder and Space Elevator Tether
City Improvement OSDN#43128
+ Attacks against helpless defender never grant veterancy
OSDN#43101
+ The chance to gain veterancy from combat depends on how
challenging it was OSDN#43203
+ Reworked which of the naval units count as military ones,
causing unhappiness OSDN#45225
+ Homeless diplomats may home themselves, to gain ability
to bribe units OSDN#45070
Changes affecting other rulesets / modders
* Scenarios can now ship ruleset specific datafile luadata.txt,
and ruleset can ship parser.lua script to use that data any way
it wants HRM#661635
* There is now two separate visibility layers able to hide a unit;
Stealth and Subsurface HRM#679427
* Bridge rule options are now available for all extras, and are
generally more flexible HRM#704288
* Multipliers can now have requirements that player needs to meet
in order to give it nondefault value HRM#732522
* Ruleset can now limit how often a multiplier can be changed by
new minimum_turns property HRM#908582
* New effects controlling build costs of specific targets
+ Building_Build_Cost_Pct HRM#767451
+ Unit_Build_Cost_Pct HRM#768130
* Added user-defined effects "User_Effect_1" ... "User_Effect_4"
that do nothing by default. Ruleset is expected to make them
usable by lua scripting. OSDN#41745
* Ruleset has control over which clauses are available for treaties
+ Whether it's enabled at all in the ruleset HRM#765945
+ When requirement vectors for giver and receiver enable it
HRM#768208
* Maximum number of Techs a ruleset can define has been increased to 250
HRM#776787
* Maximum number of Unit Types a ruleset can define has been increased
to 250 HRM#778026
* New ruleset settings nuke_pop_loss and nuke_defender_survival_chance_pct
to control destructiveness of nukes HRM#801780
* Mechanism for a ruleset to migrate under a new name over freeciv versions
HRM#820924
* Ruleset now has control over city happiness' effect on civil war chance
HRM#769075
* New DefenseMultiplierPct and DefenseDividerPct combat bonuses
provide more granular alternative for existing equivalent integer bonuses
HRM#809470
* New concept of Infrapoints that can be used to just place infrastructure
instead of building it with units HRM#821956
* Improvements for higher granularity rulesets
+ New output_granularity ruleset setting to support higher
granularity with outputs (food/shield/tax/gold/science/luxury)
HRM#822932
+ Increased max values many ruleset settings can take HRM#825215
* Terrain transforming modes of Irrigate and Mine activities have
been split to new Cultivate and Plant activities HRM#824074
* New NeverProtects unit type flag to override global
unreachableprotects setting HRM#809471
* New extra removal cause Enter to provide better semantics for
hut -kind extras HRM#802768
* New history_intereset_pml ruleset setting allows older (longer existed)
history to count towards culture more than recent HRM#823245
* New AI trait Builder to adjust how much AI wants buildings
(instead, e.g., units) HRM#825086
* Maximum number of ruleset author defined flags increased
+ Unit class flags to 12 HRM#846122
+ Terrain flags to 10 HRM#877497
* Some unit class flags have been unhardcoded, and removed
+ CanPillage HRM#846557
* Move points taken after successful actions can be controlled by
new effects
+ Action_Success_Actor_Move_Cost HRM#846773
+ Action_Success_Target_Move_Cost HRM#848435
+ New effect Illegal_Action_HP_Cost to control HP loss
after failed action HRM#879103
* New effect Popcost_Free to forgive population cost of built units
HRM#659540
* How many tiles action Steal Maps reveals can be controlled by new
Maps_Stolen_Pct effect, and steal_maps_reveals_all_cities
ruleset setting HRM#873390
* Improved support for more detailed auto-attack rules HRM#850300
* New UnitState values available to be used in requirements
+ InNativeExtra HRM#854185
+ MovedThisTurn HRM#875439
* Maximum number of requirements in a requirement vector increased to 40
OSDN#41661
* New requirement types
+ CityStatus, currently only for checking if the city is
controlled by its original owner (OwnedByOriginal) HRM#858238
+ MinForeignPct that depends on number of foreigners in the city
HRM#857904
+ Activity that depends on unit's current activity HRM#870905
+ DiplRelTile that depends on ones diplomatic relation to
the owner of the tile (e.g. the tile target unit is on)
OSDN#42515
+ DiplRelTileOther that depends on diplomatic relation between
the owner of the tile and other player (e.g. the target unit owner)
OSDN#42522
+ DiplRelUnitAny that depends on ones diplomatic relation with
owners of units on tile OSDN#42562
+ DiplRelUnitAnyOther that depends on diplomatic relation between
owners of units on tile and other player (e.g. tile owner)
OSDN#42563
* Defense bonuses from unit being fortified unhardcoded by
new Fortify_Defense_Bonus effect HRM#867744
* NoFortify terrain flag unhardcoded HRM#877498
* CanFortify and Cant_Fortify unit flags unhardcoded HRM#877577
* slow_invasions ruleset setting has been retired as the same rule
can be implemented via Action_Success_Actor_Move_Cost effect
HRM#848684
* Amount of shields received from unit doing Help Wonder or
Disband Unit Recover action can be controlled by a new
Unit_Shield_Value_Pct effect HRM#874806
* Which cities are capitals is now declared for a turn - it can't
change mid-turn. This also adds concept of secondary capitals
HRM#871681
* Last remaining Base Flag, NoAggressive, has been turned to
an extra flag to make it available for all extras HRM#897492
* The CityTile requirement can check if extras on tile are owned
by the new Extras Owned value HRM#918819
* OneAttack unit type flag retired. Ruleset can implement it via
an Action_Success_Actor_Move_Cost effect that takes all the movement
HRM#847256
* Removed hardcoded rule that attack costs single move - ruleset can
define move costs via effects OSDN#41646
* New Heal_Unit_Pct effect to control how much Heal Unit actions heal
OSDN#41789
* Whether server setting telling that city has unlimited airlift also
enables airlift when there's no capacity at all is now controlled
by new airlift_from_always_enabled and airlift_to_always_enabled
ruleset settings HRM#874937
* Introduced new combat bonus type CityDefensePct that overrides
Defend_Bonus effect HRM#865084
* Success probability of Suitcase Nuke actions now shown HRM#920121
* It's possible to make Poison City subject to diplchance HRM#869738
* Whether opponents know about all Small Wonders player owns is
now controlled by a new ruleset setting wonder_visibility.small_wonders
HRM#924859
* Improvements to when unit gains veterancy from combat
+ New ruleset setting only_real_fight_makes_veteran to prevent
one from gaining veterancy from safe attacks
(ones against helpless defender) OSDN#43009
+ New ruleset setting combat_odds_scaled_veterancy to make
chance of gaining veterancy scale to the difficulty of the combat
HRM#804347
* Rules that set firepower to 1 unhardcoded can now have the value
suitable for the ruleset OSDN#43041
* By the new tp_defense unit type setting, unit can be blocked
from defending while it's inside a transport HRM#848689
* New min_trade_route_val ruleset setting, mainly to control if
trade output can round down to zero, or is it always at least 1
OSDN#43011
* Recycle Unit action has been renamed as Disband Unit Recover OSDN#42959
* Unhardcoded unit regeneration special cases
+ New Min_HP_Pct effect, to unhardcode minimum HP unit gets
when in a city OSDN#42699
+ New Min_HP_Regen_2 effect, to unhardcode base healing,
and healing bonus for fortified units OSDN#44201
* Existence of at least one City_Vision_Radius_Sq effect in the ruleset
is now mandatory, as city without any vision wouldn't work OSDN#43647
* actions
* Completely new actions
+ Spread Plague HRM#859148
+ Spy Attack HRM#859163
* More Action Enabler controlled actions
+ Pillage HRM#741274
+ Fortify HRM#742419
+ Build Road HRM#742986
+ Convert Unit HRM#747765
+ Build Base HRM#750400
+ Clean Pollution and Clean Fallout HRM#850507
+ Surgical Strike Building HRM#848643
+ Surgical Strike Production HRM#864578
+ Conquer Extras HRM#850508
+ Enter Hut and Frighten Hut HRM#919139
+ Unit Move HRM#919970
+ Unit Make Homeless OSDN#41622
* ..._Possible -effects replaced with action enablers
+ Transform_Possible replaced by Transform_Terrain HRM#732503
+ Irrig_TF_Possible and Mining_TF_Possible replaced
by Cultivate and Plant HRM#735703
+ Mining_Possible replaced by Build Mine HRM#753716
+ Irrig_Possible replaced by Build Irrigation HRM#754873
* Transport loading/unloading is now controlled by revamped actions
+ Transport Alight - Unload to the same tile with the transport,
cargo acting HRM#848430
+ Transport Unload - Unload to the same tile with the transport,
transport acting HRM#848492
+ Transport Disembark - Unload to adjacent tile, cargo acting
HRM#848682
+ Transport Board - Load to the transport at the same tile,
cargo acting HRM#848637
+ Transport Embark - Load to the transport on adjacent tile,
cargo acting HRM#850022
* Suicide Attack is now separate action from Attack, allowing it to
be configured more freely HRM#783336
* Some actions are duplicated, tripled, or even quadrupled so that
the ruleset can define essentially same action to behave differently
in different situations
+ Transport Disembark HRM#850550
+ Conquer City HRM#850551
+ Bombard HRM#851451
+ Conquer Extras OSDN#41513
+ Heal Unit OSDN#41602
+ Unit move actions HRM#920420
* Explode Nuclear, Nuke City, and Nuke Units are now three
separate actions, so their rules can be controlled separately
HRM#850219
* Actions formerly targeting both building and current production
split to actions that target some building, and actions that target
current production HRM#852132
* More actions have maximum ranges, from the actor, that they can target to
+ Explode Nuclear HRM#854013
+ Airlift Unit (now it's possible to have a limited range)
HRM#854978
+ Nuke City and Nuke Units HRM#859845
+ Help Wonder and Disband Unit Recover HRM#875249
+ Paradrop Unit range migrated from the unit definition HRM#879114
* Number of actions with different side effects split from the former
Paradrop Unit that is now free of those hardcoded side effects
OSDN#41565
* Some actions have minimum ranges, from the actor, that they can target to
+ Nuclear attacks OSDN#41701
* Added user-defined actions "User Action 1" ... "User Action 4" that
do nothing by default. Ruleset is expected to make them usable
by lua scripting HRM#852112
* More actions supported by Casus_Belli_Success
+ Pillage HRM#874197
+ Move actions OSDN#41627
+ Paradrop Unit actions HRM#921213
* New Casus_Belli_Complete effect, supporting just Pillage action
HRM#875465
* Actor unit properties can be used as Casus Belli requirements
HRM#921209
* For some actions it's now possible to give a list of other actions
that block them. This replaces old force_* entries
+ Blocking regular move action HRM#919110
+ Blocking actions that formerly had partial implementation
via force_* entries HRM#919172
* For some actions it's now possible to give a list of other actions
that are automatically attempted after it OSDN#41524
* Ruleset now controls what actions unit tries in an attempt to escape
the tile in some situations
+ When city gets destroyed, and unit can't survive on tile
any more HRM#920149
+ When escaping stack death HRM#920951
* For some actions, ruleset has the control over their target kind
+ Whether Pillage actions consider Tile or the specific Extra
their target. This makes a difference, e.g., for any
requirements referring to the "other" player - whether it's
the tile owner, or the extra owner HRM#919305
+ Unit Explode Nuclear'' and ''Unit Nuke City'' actions have
been merged, with ruleset selecting between the old behaviors
by defining the target kind OSDN#41552
* Whether an diplomat action is subject to diplchance server setting
is now controlled by new diplchance_initial_odds ruleset setting.
This is still supported for a limited set of actions HRM#849492
* Home City action enablers can be set to allow rehoming also
NoHome units. The unit flag now only means that unit is initially
built homeless OSDN#41621
* Nuclear attack units can be set not to get consumed in the attack.
Makes sense when it's actually ranged attack launcher unit OSDN#41681
* Found City can be set not to consume unit HRM#931180
Changes affecting lua scripting
* Lua engine has been updated to version 5.4 HRM#743677
* Luasql files have been updated to match version 2.6.0 HRM#890257
* owner property added for lua's tile data HRM#874440
* government property added for lua's player data OSDN#43294
* Direction variables are now properly included to savegames HRM#880895
* Unit upgrade / transform APIs OSDN#42666
+ Unit:veteran
+ Unit_Type:obsoleted_by
+ Player:can_upgrade()
+ Player:can_build_direct(.. Building_Type)
+ Player:can_build_direct(.. Unit_Type)
+ Unit:can_upgrade()
+ Unit:transform_problem()
+ Unit:upgrade()
+ Unit:transform()
* Other new methods
+ city:is_primary_capital() HRM#904702
+ action:target_kind() tells what the action was targeted at
OSDN#41446
+ tile:extra_owner() returns owner of an extra on tile OSDN#41445
+ find.action() to get an action OSDN#41519
+ edit.perform_action() and Unit:perform_action() to force
unit to perform an action OSDN#41520
+ effects.unit_bonus() to get value of the effect for the unit
(unit matches requirements) OSDN#41746
+ effects.unit_vs_tile_bonus() to get value of the effect for
the unit on tile OSDN#41749
+ Tile:show() and Tile:hide() OSDN#42973
+ City:create_building() and City:remove_building() HRM#695117
+ Player:give_bulbs() OSDN#42502
+ City:link_text(), City:tile_link_text(), Unit:link_text(),
Unit:tile_link_text(), and Tile:link_text() OSDN#43343
+ find.achievement() and find.disaster() OSDN#43594
+ find.player(name) OSDN#43705
+ City:remove() OSDN#44229
* Extended methods
+ edit.unit_move(), edit.unit.unit_teleport(), Unit:move(),
and Unit:teleport() can take additional parameters dictating
potential side effects of the move (e.g. if there's transport
or a hut in the target) OSDN#41730
+ create_unit_full() can place unit inside a transport it
would not board at the place OSDN#44834
* New signals
+ Family of action_finished_... signals emitted after the action
HRM#817749
+ player_phase_begin, player_phase_end, player_alive_phase_end
OSDN#42663
* default.lua now constructs the "out of fuel" message OSDN#43341
Changes affecting server operators
* Bzip2 savegame compression is deprecated. Use another compresstype
GNAPATCH#7112
* Support for loading games saved by freeciv versions older
than 2.3 dropped GNAPATCH#5591
* Freeciv build can now support both the raw and json network protocols,
not just either one HRM#664002 HRM#745596
* Hack -level users can run lua -commands in a new permissive context
with unsafe-cmd and unsafe-file commands HRM#692001
* New odbc backend for player authentication database HRM#769096
* New server settings
+ incite_gold_loss_chance and incite_gold_capt_chance control
loss of money reserved for inciting revolt when it fails
HRM#797697
* New server command playernation for setting nation and leader name
HRM#768292
* Custom database.lua location is now supported OSDN#41880
* /reset game now works correctly in respect to setting provenance
HRM#692373
* zstd compressed savegames are now supported (compresstype value zstd)
HRM#852626
* New iphide server setting to not send IPs of players to each other
OSDN#43683
* /metamessage server command has been deprecated. Use metamessage setting,
available since freeciv-3.0, instead OSDN#44107
General
* New log level "warning" GNAPATCH#7373
AI
* Extended higher resolution AI want tracking introduced
in freeciv-3.0 to more cases OSDN#45700
* Tex AI module has been generally improved GNAPATCH#8067
+ Run military advisor in the second
(not the server's main) thread OSDN#697715
+ Workers dying while tex is looking task for them no
longer cause problems HRM#824565
+ Tex module is built in by default HRM#827157
* AI has some rudimentary support for handling Ocean Workers HRM#664183
* It depends on exact action commited against AI how much love is lost
HRM#875910
* AI difficulty level Handicapped renamed as Restricted HRM#872165
* AI difficulty levels that are supposed not to see through Fog of War
now respect that also when examining potential Paradrop targets
OSDN#41722
* AI remembers its current Wonder building plans over game save/load cycle,
so it as easily abandon Wonder building on savegame load HRM#857459
* Hard level AI is no longer allowed to set tax rates freely,
but max rates rules apply to it OSDN#42333
* AI's want for various things is not as easily clipped as before
(max want is now ten times bigger), so it can distinguish between
high and extremely high want OSDN#45277
* Autosettlers improvements (affect also human players)
+ Considers building also other kind (cause) extras as
dependency of the wanted extra. Previously considered, e.g.,
building only Roads as dependency of other Roads OSDN#42492
Clients
* gtk2-client and modpack installers have been dropped GNAPATCH#7019
* gtk3-client considered unmaintained. Use gtk3.22-client instead
OSDN#42981
* sdl1.2-mixer support dropped GNAPATCH#6246
* New gtk4-client added HRM#637945
* City dialog shows if a tech has ever been stolen from the city
HRM#657146
* Improved the way untergeted action gets listed in the target
selection dialogs HRM#862482
* City Governor can be asked to maximize city growth speed
(NOTE: No client supports this at the moment) HRM#839704
* New Pop up actions last move to allied client option HRM#875939
* Audio volume control added HRM#885685
* Fast auto attack support added OSDN#42719
* Most clients have support of drawing number of units in the stack
instead of just sign that there's more than the visible one HRM#911906
* Number of new columns added to the nations reports OSDN#42309
* Single-step goto handled like a (single-step) move from the keyboard,
e.g., opening action selection dialogs, and not similarly to
long range goto OSDN#44496
* New Connect Maglev connection building type added OSDN#41990
* Qt
+ Client-side Rally Point retired, and replaced by
server side rally points usage HRM#840514
+ Fonts settings rearranged HRM#772029
+ "Go to and ..." now allows sub target
(e.g. exact extra to build) selection HRM#877098
+ Added trade related columns to goto dialog HRM#903720
+ Qt-client's special settings file is now versioned,
so that different freeciv versions with different file content
do not interfere each other OSDN#44838
+ Options dialogs remember their geometry OSDN#44391
+ Sidebar fonts refreshed on the session
(not requiring client restart) they are changed in the options
OSDN#44907
Tools
Modpack Installer
* Information about installed modpacks is now kept in a sqlite database
GNAPATCH#7956
* Having "/" in the end of baseURL is no longer an error.
It still doesn't do anything, but is tolerated OSDN#44309
Ruleup
* Unused action enablers can be dropped OSDN#41614
Ruledit
* Effects editing added HRM#658566
* Multipliers editing added HRM#735247
* Improvements to ruledit's suggestions to ruleset syntax improvements
+ Suggestions to remove action enablers that would never be enabled
OSDN#41616
+ Suggestions to remove duplicate requirements OSDN#41633
+ Detection of contradicting requirements in a requirement vector
OSDN#42100
* Stub ruleset is now part of main freeciv distribution OSDN#43618
Manual Generator
* Output format (html or wiki) can now be selected runtime,
by commandline options HRM#657117
* Less "false positive" actions get listed as possible for terrain
when they actually are available under no circumstances OSDN#42106
Tilesets, Art, etc
* Extra animal unit sprites added to Amplio2 and to tilesets
inheriting its units HRM#721407
* Extra unit sprites added to ''cimpletoon'' and to tilesets
inheriting its units OSDN#44853
Help / Documentation
* Documentation about the source code generated with Doxygen can be
found from https://files.freeciv.org/nightly/weekly/ HRM#699770
Translations
* Updated translations: Esperanto, Finnish, French, Polish, Russian,
Simplified Chinese
Build/portability
* New Meson based build system introduced, to live in parallel with
the existing autotools system for now. Autotools is still
the official one in freeciv-3.1 HRM#779742
+ With meson, sdl2-client can be built using SDL2_gfx files
supplied with freeciv, without SDL2_gfx in the system OSDN#46320
* Windows installer types available for freeciv-3.1
+ At least Windows 8.1 needed for any freeciv-3.1 installer
OSDN#44286
+ win-10 installers, requiring at least Windows 10 OSDN#44789
+ Windows sdl2-client now comes with gtk4 modpack installer
OSDN#43193
+ Msys2 environment updated to snapshot from 230220
(20th of Feb 2023) OSDN#46673
* Initial support for meson + crosser based Windows build.
No installers come out from this, one have to get the build artifacts
to the target by some other means. HRM#853475
* Minimum Qt5 requirement, for Qt5 using components, is now 5.11
HRM#849444
* It's possible to make an emscripten build of server and sdl2-client
HRM#869747
* C++11 mode selected for the C++ compiler by default, as it's
requirement even for the minimum Qt version we now support HRM#880321
* Project file can define the default network port that the server
will listen OSDN#42030
* Appdata files renamed as metainfo files OSDN#43688
* Support scripts added for building appbundle for macOS, using homebrew
OSDN#44549
* For native builds, default is not to use improved tolua version
coming with freeciv, instead of system one OSDN#46199
See doc/README.packaging for more information.
MAJOR CHANGES FROM 2.6.x to 3.0.0
---------------------------------
(from <http://www.freeciv.org/wiki/NEWS-3.0.0>, 2022-01-26)
The major changes in Freeciv 3.0 are civ2civ3 being the default ruleset,
addition of the alien ruleset, hex maps as the default topology on
new installations, and a whole lot of extra flexibility to
create custom rulesets.
As is usual for major releases, 3.0 clients cannot interoperate with
pre-3.0 servers, and vice versa. Most pre-3.0 savegames can however
be loaded into 3.0, and in most cases, the supplied rulesets have not
changed so much as to make it difficult to complete a game started
with 2.6.x's rules.
Server / General
Changes affecting players (supplied rulesets)
* civ2civ3 is now the default ruleset GNAPATCH#4739
* Alien ruleset, and related Alio tileset, are included in
Freeciv distribution.
They have been separately available already for earlier versions.
* Hex topology is the default in new installations.
Old installations may have saved preferences that make them
still to use iso topology. GNAPATCH#7915
Miscellaneous rule changes affecting all or most rulesets:
* Number of the first turn is now T1. T0 refers only to pre-game.
GNAPATCH#6599
* Attempt to steal a tech causes incident also if it fails
because of lost diplomatic battle. In earlier versions there
was no incident if diplomat died already in the battle.
GNAPATCH#6101
* First default team name is "Team 1", no longer "Team 0"
GNAPATCH#7506
* Attack and following automatic move when occupychance is
above zero no longer have double move cost GNA#20945
* Caravans can no longer help build Palace in supplied rulesets
HRM#705580
* Map is revealed to a team when all members have died
and REVEAL_MAP_DEAD is set. Old behavior was never to reveal map
for a teams with multiple members. HRM#658081
* Possibility to set game start year in editor has been removed.
It always was a broken feature HRM#767130
* One now gets to know culture value of another player,
if there's an embassy HRM#820730
* Supplied scenarios can now be played with any compatible ruleset,
not only with the default one HRM#821962
* Editor has rudimentary support for owned extras HRM#851220
* There's no longer move cost for an attempt to do an illegal action
when it was clear beforehand that it's illegal, i.e.,
when user request an action by accident HRM#879104
* Intelligence gained from an embassy is shared between team members
HRM#878898
* Ransom is given for each barbarian leader when there's more than
one in the same tile (but no other units to defend them).
The old behavior was not to give ransom at all as they were
considered to be defending each other. osdn#42020
* Bombarding is disallowed when target tile is known not to
contain any units that would be affected HRM#848555
* New / Changed game settings
+ There's a new fracture map generator GNAPATCH#6882
+ New caravan_bonus_style and trade_revenue_style
server settings HRM#765978
+ Tech leakage rate can be controlled by new techleak
server setting HRM#764944
+ New multiresearch server setting can be used to enable mode
where switching research target does not move bulbs to
new research, but they will be there when researching that
original tech again HRM#769897
+ Global Warming and Nuclear Winter accumulation rates can be
adjused by new globalwarming_percent and
nuclearwinter_percent server settings HRM#770804
+ Spaceship Travel Time can be adjusted with the
new spaceship_travel_time server setting HRM#800950
Rule changes to specific rulesets:
* civ2civ3 ruleset
+ Agents investigating cities survive the mission HRM#683542
+ Future techs cost less as a result of ruleset now using
Linear tech cost HRM#731498
+ Culture victory values tweaked. You now need only
33% more culture points than second best player,
but a minimum of 20000 points, to win by culture victory.
Culture victory is not enabled by default. HRM#830181
+ Ships with zero attack power no longer cause unhappiness,
fighters with fuel over one turn do osdn#42078
* All of classic / multiplayer / experimental rulesets
+ Fighters' defense has been doubled against bombers HRM#922015
* multiplayer ruleset
+ Buy cost of Small Wonders doubled, like they were
in freeciv-2.5. The difference to freeciv-2.5 is that
Palace is handled like regular building, not a wonder
HRM#767397
* experimental ruleset
+ Marco Polo grants embassies to met players only GNAPATCH#5889
* civ1 / civ2 rulesets
+ There is only one barbarian type that attacks both from
land and sea in new games started with 3.0 GNAPATCH#5522
+ (civ2) Added Plant Nuclear Device diplomat action GNAPATCH#5627
+ Triremes may leave coast temporarily, but will sink if not at
coast on turn change GNAPATCH#7350
+ (civ2) Airbase hides units inside from non-allied players
GNAPATCH#7983
+ Units cannot be upgraded HRM#741525 osdn#43404
+ (civ2) Fighters have defense bonuses against Bombers to
mimic civ2 scramble mechanics HRM#865085
+ Savepalace server setting is disabled by default osdn#42266
* sandbox
+ Barbarians have been enabled. There is one barbarian type that
attacks both from land and sea GNAPATCH#6532
+ Battleships and Carriers are disbandable under some
governments only GNAPATCH#6596
+ Nukes for which upkeep is not met, explode GNAPATCH#6637
+ Learning Electricity will give vision everywhere within
ones borders when the borders setting does not give it from
the beginning of the game GNAPATCH#6782
+ Spies can Steal Maps GNAPATCH#6783
+ Green Paratroopers cannot land on Forest or Jungle tiles.
More experiences one still can. GNAPATCH#6982
+ Airlifting heavier units requires more advanced technology
GNAPATCH#7045
+ Infantry and mounted units can expel foreign civilian units
within ones borders GNAPATCH#7117
+ Leader unit can Destroy own cities GNAPATCH#7204
+ There's extra Hermit's Place appearing spontaneously during
early game, and can give tech when entered GNAPATCH#6616
+ There's several Goods that traderoutes can carry.
Some of them are chained so that a city can export
certain good only if it imports something else. GNAPATCH#7687
+ Republic corruption increase by the distance from capital
depends on total map size GNAPATCH#7597
+ Fortress and Airbase hide units inside from non-allied players
GNAPATCH#7984
+ Buoys are visible only to players who know Radio HRM#658922
+ City conquest is no longer guaranteed to give a tech.
After University is known, techs are not got from conquest.
Before that the chance is 50% HRM#732488
+ 25% of the citizens of the conquered city are immediately
converted to the nationality of the conqueror HRM#733781
+ Combat lasts 15 rounds at max, even if neither party dies in
that time HRM#735849
+ Chance of gaining veterancy levels from combat reduced
HRM#804128
+ Caravel needs to visit some safe coast at least every
third turn to get supplies, or to be lost HRM#732562
+ Bulbs are not carried from a research to another when
changing it, but are kept towards the original until one
switches back to it HRM#820915
+ Chance of Plague from trade route has been doubled HRM#877397
+ Fortresses can be updated by building Castle as their
administrative center, to claim terrain osdn#41433
+ A Spy can Steal Gold after Banking is discovered osdn#41609
+ Culture victory values tweaked. You now need only 33% more
culture points than second best player, but a minimum of
20000 points, to win by culture victory.
Culture victory is not enabled by default. HRM#830181
+ Paradropping to a transport is made possible osdn#41740
+ Added Mechanic unit that can fix certain other units osdn#41845
* british isles scenario
+ Scenario now uses nationset all, so the correct nations from
the isles are available and get placed, instead of completely
random nations from the core nationset osdn#42939
Changes affecting other rulesets / modders
* Maximum number of achievements defined in a ruleset has been
increased to 40 GNAPATCH#7097
* New barbarian type LandAndSea makes it possible to define just
one barbarian nation in a ruleset instead of separate Land and
Sea barbarians. GNAPATCH#5521
* Have_Embassies effect has been split to two; new Have_Contacts
provides contact with all the nations, reworked Have_Embassies
provides embassies only with those nations the owner has
had contact with. GNAPATCH#5832
* Techs can have requirements for them to become available
for research. Only such requirements that are not switching
during the game are supported; such as player's nation.
GNAPATCH#5944
* What actions provide Casus Belli is now more under ruleset control,
with new Casus_Belli_Caught and Casus_Belli_Success effects.
GNAPATCH#6099 GNAPATCH#6107
* For a number of actions, ruleset can now control success odds with
new Action_Odds_Pct effect. GNAPATCH#5642
* Buildings can be made immune to disaster effects with
a new DisasterProof flag GNAPATCH#5819
* Some actions can require any buildings of a given genus instead of
specific building as a target by new BuildingGenus requirement type
GNAPATCH#6341
* New requirement type MinTechs can be used to track how far player
or world has proceeded in the tech tree GNAPATCH#6460
* New requirement type MinCalFrag can be used to change things
depending on current calendar fragment, such as seasonal changes
GNAPATCH#7751
* With a new BeachLander unit type flag some units can be made
immune to slow_invasions setting. GNAPATCH#6212
* Extras can be defined to appear or disappear with a random chance
GNAPATCH#5730 GNAPATCH#5888 GNAPATCH#5941 GNAPATCH#6243
* Tile Resources are now extras, having all the
configurability of extras GNAPATCH#6624
* Extras default to "buildable = TRUE" only if they have a build cause,
"buildable = FALSE" otherwise GNAPATCH#6770
* Extras can be defined to be invisible to player until s/he has
required tech GNAPATCH#4392
* New Unit State properties for requirement vectors to rely on
+ OnDomesticTile to check if unit is within owner's borders.
GNAPATCH#6323
+ Transporting to check if the unit has cargo GNAPATCH#6975
+ HasHomeCity to check if the unit has a homecity assigned
GNAPATCH#7062
+ OnNativeTile to check if unit is on Native Tile GNAPATCH#7267
* New Border_Vison effect can be used to enable vision of all
tiles within ones border when borders setting is enabled
GNAPATCH#6331
* More ruleset control over immediate unit wiping on unmet upkeep
GNAPATCH#6632 GNAPATCH#6633
* Some units can be given ability to escape stack death.
This is controlled by CanEscape and CanKillEscaping unit type flags
GNAPATCH#6104
* User defined ruleset flags are supported for unit classes too
GNAPATCH#6957
* User defined ruleset flags are supported for extras GNAPATCH#7055
* Requirement for sea units to visit coast regularly can be created by
new Coast unit type flag and setting fuel for the unit GNAPATCH#6979
* Techs can belong to ruleset defined tech classes GNAPATCH#7354
+ Class can define cost percent adjustment for the techs
belonging to it GNAPATCH#7497
* With the new Stealings_Ignore effect one can adjust the number of
techs diplomats can steal from a city before it becomes impossible,
and how difficult it is for Spies GNAPATCH#4787
* For the ruleset to better adjust to different map sizes,
some things can now be controlled relative to map size
+ New Output_Waste_By_Rel_Distance effect defines waste by
distance relative to map size GNAPATCH#7566
+ New tradeworldrelpct server setting tells how much map size
affects trade between cities GNAPATCH#6884
* Cities can have limited unit slots for acting as a homecity with
the new Unit_Slots effect. Ruleset defines how many slots each
unit type takes GNAPATCH#1936
* New Attack_Bonus effect. It differs from a negative Defend_Bonus in
that requirements are about attacking unit and player GNAPATCH#7894
* Extras can be defined to hide units inside them from
non-allied players GNAPATCH#4101
* Ruleset can depend on boolean server settings with the
new ServerSetting requirement type HRM#648804
* Ruleset can control how likely city conqueror is to get tech from
the victim by new Conquest_Tech_Pct effect HRM#699156
* Added new Linear tech_cost_style HRM#695972
* Ruleset can define certain percentage of the inhabitants to
convert to conqueror's nationality when city is conquered HRM#657145
* New ruleset effect Combat_Rounds can define maximum number of
rounds combat lasts, even if that means that neither party dies
HRM#729194
* Granularity of Output_Waste_By_Distance has been increased
100 fold HRM#733815
* Buy costs can be adjusted by new effects, especially useful in
defining Wonder (Small and Great) buy cost rules
+ Building_Buy_Cost_Pct HRM#756718
+ Unit_Buy_Cost_Pct HRM#767932
* Caravans can now be allowed to help any production,
not just Great Wonders GNAPATCH#6362
* Effects of some of the former base flags have been
made configurable, and thus the base flags have been removed.
One can still reimplemtent them as user base flags
+ DiplomatDefense GNAPATCH#7081
* NoStackDeath base flag has been reimplemented as extra flags,
making it available for any extra type GNAPATCH#7209
* Ruleset can make Poison City actions to empty food stock
via poison_empties_food_stock setting GNAPATCH#7241
* New unit flag Provoking makes unit target to autoattack even
when autoattack would not otherwise be executed. Supplied rulesets
use this for diplomats, transports, and GameLoss units.
GNAPATCH#7943
* Action_Odds_Pct effect can now control also chances of
Tech Stealing actions HRM#764943
* Extras have new generated property. It can be used to prevent
map generator for generating extras that have a cause like
Resource or Hut to get other properties of that cause HRM#775424
Action Enablers
* Many more actions are now action enablers controlled:
+ Capture Unit GNAPATCH#5604
+ Found City, Join to City GNAPATCH#5606
+ Bombard GNAPATCH#5610
+ Explode Nuclear GNAPATCH#6139
+ Disband Unit GNAPATCH#6573
+ Home City GNAPATCH#6801
+ Upgrade Unit GNAPATCH#6830
+ Paradrop Unit GNAPATCH#6949
+ Airlift Unit GNAPATCH#7008
+ Attack GNAPATCH#7260
+ Conquer City GNAPATCH#7261
* New actions added:
+ Steal Maps GNAPATCH#6120
+ Steal Maps Escape HRM#662943
+ Suitcase Nuke GNAPATCH#5536
+ Suitcase Nuke Escape HRM#661654
+ Destroy City GNAPATCH#6248
+ Expel Unit GNAPATCH#5306
+ Recycle Unit GNAPATCH#6389
+ Heal Unit' GNAPATCH#7774
* Unhardcoded actor consuming rules of some diplomat and spy actions
by splitting them to consuming and non-consuming actions
+ Investigate City Spend Unit split from Investigate City