Releases: longturn/freeciv21
v3.0-beta.4
The v3.0-Beta.4 release is another game polish release. A great number of enhancements and bugs have been closed since Beta.3. The team has worked to add LongTurn game features into the game so we can start hosting multiplayer games in Freeciv21 in the near future.
Game
New Features / Enhancements
- Improve the layout of the "load game" page #1166
- Scroll the messages window per pixel to better support touchpads and screens #1182
- Port the LongTurn Demographics into Freeciv21 #1187
- Send the Hit Points to the message widget when a sentried unit wakes up #1192
- Port LongTurn specific game mechanics into Freeciv21 #1194
- Improve the handling of Units in the City Dialog #1201
- Add the city size and citizen happiness next to other city stats in the City Dialog #1204
- Expand the text for empire size unhappiness in the City Dialog #1206
- Expand the City Dialog text for luxury spending #1208
- Expand the City Dialog text for building happiness #1209
- Expand the City Dialog text for nationality #1210
- Expand the City Dialog text for military happiness #1213
- Expand the City Dialog text for wonders #1214
- Shrink a city only after complete removal of the defender #1231
- Remove redundant pick nation button on start to new game #1259
- Add separators to the Multiplayer Menu #1261
- Hide Research and Economy View Buttons when globally observing #1262
- Chat Widget fixes #1265 #1319
- Add commands to better support turn timeout #1272
- Remove useless Civ Status widget #1275
- Bump top bar icons to 22px #1282
- Update database script to load external lua modules #1298
- List small wonders in the client, but hide them by default #1305
- Restore goto into the unknown #1312 #1317
- Classic theme: Make selected tabs more visible #1322
- Change the "Overview" options tab to "Minimap" #1323
Bug Fixes
- Fix typo in
savecompat.cpp
that caused a use-after-free bug #1147 - Fix a bug in the client that loads the last used tileset instead of the default one defined in options #1167
- Fix new Coverity warnings #1175
- Prevent an assertion crash when observing #1202
- Don't use nonexistent tileset option names causing an assertion crash #1215
- Don't list Improvements twice in the Help menu #1216
- Fix a bug that causes the unit combat widget to screw up the image sprites #1217
- Fix a crash when Ctrl+clicking on the map in City Dialog #1223
- Fix showing horizontal borders on hex tiles #1258
- Fix the city screen present units list from disappearing #1277
- Fix loading the Nuclear Winter and Global Warming sprites #1278
- Don't use the capital for the tool tip of the city top bar icon #1280
- Don't default to huge fonts of HiDpi systems #1281
- Fix crash when non-player changes
ai_manual_turn_done
#1291 - Switch to the network page when autoconnecting to an auth-enabled server #1307
- Fix deadlocks in the main menu #1308
- Fix cancelling goto with ESC #1309
- Fix sending help texts with multibyte characters #1313
- Fix slanted lines in the minimap view rectangle #1324
- Forbid toggling the minimap from the city view #1325
Rulesets
- List small wonders in the client, but hide them by default #1305
Nations
- Nothing for this release
Spec File Support
- List small wonders in the client, but hide them by default #1305
Utility / Tools / Code Refactoring / Other
Utility
Code Refactoring
- Get rid of
fileinfo()
andfileinfo_list()
(UseQFileInfo()
andQFileInfoList()
instead) #1165 - Remove static calls to
units_reports()
(Use Qt Signals instead) #1168 - Preliminary cleanup of
mapview_common()
#1169 - Collection of small code refactors #1170
- Introduce a map renderer class #1171
- Resize the canvas a bit less often in
map_canvas_resized()
#1172 - Refactor how map updates are propagated to widgets #1174
- Use
std::vector
for the list of focused units #1188 - Set
server.rgb
tonullptr
in thenationtype
constructor #1190 - Initialize
ai.better
tonullptr
ingovernment
constructor #1193 - Proper
erase-remove
incontrol_unit_killed()
#1199 - Remove useless clutter around delayed orders #1218
- Implement map centering with Qt animations and move map updates to the renderer #1227
- Remove the two
mapview
iterators #1229 - Fix a double free of the attributes block #1244
- Update the translation files with
gettext
#1255 #1257 - Initialize
city_dialog::pcity
#1267 - Set a baseline palette for all themes except System #1287
Tools
- Update
./scripts/eval-pr
#1181 #1226 - Update the Windows package to no longer place the files in a version specific directory #1197
- Fix an issue with Doxygen #1228
- Documentation: Create a brand new Client Manual #1211 #1248
- Various Documentation Updates #1260 #1263 #1284 #1285 #1288 #1295 #1303 #1304 #1311 #1314
Build Tools
- Fix build with NLS enabled #1164
- Add support for stable releases #1286
- Remove
libclient
and rewrite the clientCMakeLists.txt
#1320
NOTE: Community members wishing to download the source code. You will notice that there are two sets of source code in the assets section below. One set will have a label of "Source Code (zip)" and "Source Code (tar.gz)" and the other set will be a tar.gz and zip file with the name of the tagged release and a file size shown. Please download and use the files with the name of the tagged release and file size shown. The other two will not compile properly.
v3.0-beta.3
Client / Server
- Bounce units to tiles where they can just exist if it cant "survive" in any of the available tiles #932
- Check that the trade partner is known #1061
- Lock the mini-map to the lower right corner #1066
- The messages widget in top right corner can now be resized from left, bottom-left and bottom edges. #1081 (NOTE: this is not 100% percent. A few polish issues have been opened to get this working better in a future release. We purposely pushed this in now so at least a player can resize the widget. On bottom and left side, place mouse at the exact center to get the mouse to change or use the lower-left corner.)
- Rework how the map is drawn in layers #1083
- Fix an issue in the client when the widget placement moves around when going into and out of full screen mode #1102
- Fix and issue with showing and hiding the mini-map #1103
- Fix and issue in the tech tree when moving over various tool tips to get information from game help #1104
- Fix line alignment in the tech tree #1105
- Complete re-write of how the client manages keyboard shortcuts #1117
- Fix a crash in the city screen #1130
- Fix the end turn stats #1134
- Stop showing IP address in server logs. Needed for GPDR in Europe, but good to do anyway. #1135
- Fix loading of scenario list on Linux #1139
Rulesets
- Nothing for this release
Nations
- Nothing for this release
Spec File Support
- Tilesets can now specify a set of colors that will be replaced by the player color when drawing units and cities. This is enabled by setting
replaced_hue
to the hue of the colors to be replaced. Typically you'll draw some pixels in a shade of magenta, and setreplaced_hue = 300
in the tileset. #429 #1095 #1101
Utility / Tools / Code Refactoring / Other
- @pranavtifr cleaned up many unused functions and a lot of dead code #1067 #1072 #1078 #1079 #1082 #1109 #1112 #1113 #1114 #1115 #1132 #1142
- Collection of code cleanup and improvements #957 #995 #1061 #1062 #1129 #1137
- Parts of the map drawing code related to units and cities was cleaned up #1083 #1095
- Fix a compiler warning for
class-memaccess
#1057 - Fix some Coverity issues #1136
Build Tools
- Fix the WASM CI #1041
- AutoRevision now pushes a PR for eval as part of release process #1046
- We now build a Freeciv21 package for 32 bits Windows #1080
- We are building CI on Ubuntu 22.04 LTS again #1140
NOTE: Community members wishing to download the source code. You will notice that there are two sets of source code in the assets section below. One set will have a label of "Source Code (zip)" and "Source Code (tar.gz)" and the other set will be a tar.gz and zip file with the name of the tagged release and a file size shown. Please download and use the files with the name of the tagged release and file size shown. The other two will not compile properly.
v3.0-beta.2
Client / Server
- Freeciv21 got a shiny new logo (#986)! The icon used for the server on Windows was updated to match:
- Moved the sidebar to the top #940
- The Messages widget is now hidden by default and can be expanded from the top bar #1001 #1026. You get a notification when there's a new message
- Improved the information shown by the gold indicator. Now you can't miss if you're going bankrupt! #983 #1000
- Moved the Turn Done button to the bottom right, and anchored the minimap above #1002 #1037 #1042
- Replaced FCW citizen icons with higher-quality ones from RoundSquare: #979 #1040
- Fixed a bug where outdated tileset data would be used after changing the ruleset #974 #1027
- Fixed a bug where the client wouldn't terminate the server properly #1023
Rulesets
- Nothing yet
Nations
- Nothing yet
Spec File Support
- The
Unit_Vision_Radius_Sq
andCity_Vision_Radius_Sq
effects have gained support for vision layers other thanMain
: it is now possible to use them with submarines (Subsurface
vision layer) or stealth fighters (Stealth
VL). This is achieved by adding aVision_Layer
requirement to the effects. The+Vision_Layer
capability is required for this to work. This feature is experimental and might change in future versions. #924 - Fixed the behavior of out-of-fuel units in the process of being converted #1032
- Fixed a crash triggered by some rulesets #1011
- Removed the old city dialog icon, as it was unused #985
Utility / Tools / Code Refactoring / Other
- Memory handling improvements driven by AddressSanitizer #961
- Many more memory handling fixes #1005 #1019
- We no longer use the C function
realloc
, and switched to C++std::vector
instead #966 - Unified the client code in a single directory #1021
- Greatly improved "header hygiene" #1053
- Major rewrite of the FAQ. Thanks to @daavko for compiling the questions and answers in a separate file. #1038
Build Tools
- Thanks to amazing work by @NIKEA-SOFT and @jwrober, we now support Visual Studio! See the documentation. #971 #999 #1005 #1008 #1013 #1017 #1031
- We now have a small script to help evaluate pull requests #1007
- We also have CMake presets to build with ASan and CCache, and a
serv
file to run autogames #996 #997 - Ubuntu packages are now built with optimizations enabled and without debug symbols #975
- We started building on Ubuntu 22.04 on a regular basis, awaiting a switch to using it as our base environment #1018
NOTE: Community members wishing to download the source code. You will notice that there are two sets of source code in the assets section below. One set will have a label of "Source Code (zip)" and "Source Code (tar.gz)" and the other set will be a tar.gz and zip file with the name of the tagged release and a file size shown. Please download and use the files with the name of the tagged release and file size shown. The other two will not compile properly.
v3.0-beta.1
This release introduces Qt SVG as a new mandatory dependency for the client.
Client / Server
- Fix an erroneous "guillaumette" in a string #855
- Fix performing actions from the city screen #862
- Improve zoom #870
- New WASM Client #871
- Don't generate assertion failures when opening the help dialog #872
- Support SVG icons/graphics #873 #884
- Remove the minimap thread. #886
- Make the sidebar look smooth on scaled displays #891
- Allow switching city when in city mode #899
- Sort units in the city dialog #900
- Fix a client crash when Enter Marketplace is possible #904
- Add theme colors for palette and chatline #906
- Fix
stdin
handling on Windows #907 - Split chat and events widgets #919
- Restore
--bind
functionality #930 #938 - Support performing ruleset-defined "custom" actions #937
- Fix starting the server from the client #938
- Fix selecting city worked tiles #949
Rulesets
- Remove the web-compatible capability from rulesets #896
- Fix capability-driven ruleset migrations #902
Nations
Spec File Support
- Bombard limit effect #867
- Remove broken empty reqs vectors #868
- Add
EFT_BOMBARD_LIMIT_PCT
to switch ineffect_type_unit_text()
#878 - More flexible trade revenue bonus #880
- Make the hex2t grid match the tile shape #898
- Hex corner terrain sprite type #920
Utility / Tools / Code Refactoring / Other
- Fix Clang error on
MoveEvent()
#847 - Add an online code browser #854
- Various documentation updates #857 #883 #921 #922
- Rewrite
cm.{h,cpp}
for more memory safety #865 - Fix dead code in
script_fcdb_do_string()
#866 - Remove some
qtg_ indirection()
functions #908 #911 - Move
helpdata.{cpp,h}
tocommon
#926 - Various code improvements #945
- Fix assertion in
api_methods_enemy_tile()
#950
Build Tools
- Fix
coverity.yaml
syntax error #846 - Fix a build system error found at Alpha.10 release #851
- Create a MacOS Package at release #858
- Collection of CI changes #859
- Do more error checking in
AutoRevision.cmake
#876 - Fix build in debug mode #877
- Update the run-vcpkg action to the latest version #881
- Conditionally write
fc_version.h
andfc_version
#885
NOTE 1: The documentation website now produces a PDF, which can be downloaded for offline viewing from here -- https://readthedocs.org/projects/longturn/downloads/
NOTE 2: Community members wishing to download the source code. You will notice that there are two sets of source code in the assets section below. One set will have a label of "Source Code (zip)" and "Source Code (tar.gz)" and the other set will be a tar.gz and zip file with the name of the tagged release and a file size shown. Please download and use the files with the name of the tagged release and file size shown. The other two will not compile properly.
v3.0-alpha.10
Client / Server
- Disallow drag-and-drop in the city dialog lists #726
- Use the scaled Tileset when computing city screen dimensions #727
- Fix sending the CMA to the server and it getting forgotten #733
- Change the default tech tree font #736
- Don't allow editing server output in pregame #749
- Prevent moving panels out of sight #752
- Fix the nation flag changing size while zooming in and out #753
- Fix the System Theme on Windows and Linux to support both light and dark modes #756 #763
- Fixed the in game help to appropriately show a difference between the cultivate and irrigation activity #721 #765
- Fix integer overflow leading to division by zero and server crash #770
- Fix an infinite loop causing high CPU utilization #789
- Fix layout issues in the city screen right panel #791
- Fix bugs in the UWT panel (F2) #800
- Fix sol2 code and interoperability with tolua #812
- Fix Help > Effects when the first req is negated #813
- Fix a memory leak on zoom #817
Rulesets
- Fix loading the WWI Scenario #748
- Added new Royale ruleset based on the Longturn Traditional (LTT) ruleset. #804 #814 #818 #836
- Added a new and updated tutorial scenario #834
Nations
Spec File Support
Utility / Other
- Various documentation updates #717 #722 #723 #732 #755 #758 #771 #795 #799 #801 #842
- The documentation is now converted to a PDF for offline reading #801 -- https://readthedocs.org/projects/longturn/downloads/
- Add support for Zstandard compression #742
- Add the data folder location(s) to the in-game help #773
- Add Emscripten Webassembly build (support WASM based thin-client) #775
- Port from tolua to sol2 #516
Build Tools
- Change MacOS CI build to vcpkg #776
- Build MacOS .app bundle and .dmg (release assets for download) #779
- Fixed an issue in the build system for MSys2 #797
- Add support to auto-increment the client/server version at release time #838
- Add support for building a Debian based Linux package #802
- Add support for CPack Debian Linux Package to be built in CI #841 #845
NOTE: Community members wishing to download the source code. You will notice that there are two sets of source code in the assets section below. One set will have a label of "Source Code (zip) and Source Code (tar.gz)" and the other set will be a tar.gz and zip file with the name of the tagged release and a file size shown. Please download and use the files with the name of the tagged release and file size shown. The other two will not compile properly.
v3.0-alpha.9
Client / Server
- Fixed a crash when loading the list of available scenarios #683
- Clicking on HUD widgets (controls in the city screen, unit action buttons, minimap, ...) no longer triggers actions on the map #687
- The help dialog is now at least 1280*800px in size, which should be large enough in most cases #692 #563
- It is now possible to zoom in and out while keeping the city bar at the same size #686
- A path finding fix for airplanes and other fueled units was imported from Freeciv #693
- Collection of bugs found while upgrading SIM3.0 ruleset and Scenario #684 #688
- Fix a bug where you could pick the wrong screen element when things are overlapped #689
- Fixed code that was preventing compiling on Msys2 with GCC 11.2 #701
- Fix a duplicate entry in the client help menu #702
- Fix a memory leak #710
Tools
- The modpack installer no longer creates a strange directory structure with two
3.0
folders within each other #694. The fix has the side-effect that the installer will "forget" the currently installed versions of the modpacks. It is possible to recover them by moving the.control
folder. On Linux:mv ~/.local/share/freeciv21/3.0/3.0/.control ~/.local/share/freeciv21/3.0/
. The innermost3.0
folder can be safely deleted.
Nations
Ruleset Support
Utility / Other
v3.0-alpha.8
v3.0-alpha.7
Client / Server
-
A rewrite of the way the client draws the map was started #450. This has some visible consequences:
- It's no longer possible to hide the terrain: #449
- Support for
is_reversed
in[tile_*]
sections was dropped. It was not used in shipped tilesets.
Apart from the two changes described above, this change should be fully transparent.
-
A tileset debugger was added #633. See here for its documentation!
-
Autogames are working again #649
Tools
Nations
Ruleset Support
Utility / Other
- The base help file was completely overhauled #658
v3.0-alpha.6
v3.0-alpha5
Client/Server
- Server now announces itself as Freeciv21 #610
- Added Freeciv21 Menu Music for a more immersive experience #614
- Fixed a bug that caused slow connection to games #616
- Fixed a crash in the network page when the metaserver is down #637
Tools
- No change
Nations
- No change
Ruleset Support
- No change
Utility/Other
- The Installer now installs
metainfo
anddesktop
files #613