1XCONQ RELEASE NOTES 2 3*** 7.5.0 4 5This has not been released yet. 6Current estimates put it at 1Q of 2005 sometime. 7There are lots and lots of bugfixes and new features. 8 9*** 7.4.1 10 11The Windows port has not been built, and probably won't build without 12some work, because of networking changes in shared Windows/Unix code. 13 14Made cconq build again. 15 16*** 7.4.0 17 18Hans Ronne contributed a new Tolkien-inspired game "Lord of the Rings" 19(lord-rings.g), and its supporting modules 3rd-age.g and t-midearth.g. 20 21Keir Novik's "Carrier Battles" (tailhook.g), a detailed game of WWII 22naval combat, and "Coral Sea", a Coral Sea scenario for it, are now 23part of the game library. 24 25Erik Sigra and Michael Burschik contributed better random name 26generators, for Swedish and German place names respectively. 27 28Standard flags now include 16-pixel-wide versions, and the 8-pixel 29version use more colors. 30 31The program tracks views of units using individual objects, which 32enables more accurate display of multiple enemy units stacked at a 33single location. 34 35Networked games can be started from a mix of interactive and 36command-line invocations. The game module will not be downloaded 37through the network connection, which makes startup faster. 38 39Some unused and un-useful GDL constructs are gone, such as extension 40properties, program-version, and image palettes. 41 42The program supplies more feedback on why actions and tasks fail. 43 44There is a "new" AI type named oplayer, which is just the previous 45version of the AI. This is mainly for testing that the AI is actually 46getting smarter rather than dumber. 47 48There is now more control available for the behavior of independent 49units, for instance, you can set whether they will research and build 50other units. 51 52Sides now get colors instead of numbers if they have no emblems. 53 54Games can use unit images that fill an entire hex, where previously 55they were limited to a smaller bounding box within the hex. This 56is controlled by a new GDL variable "bigicons". 57 58The tcl/tk interface now has a working isometric display mode. 59 60The tcl/tk interface now lists only finished games by default, 61and includes a button to list all games. 62 63The Mac interface has many display improvements, from terrain 64transitions to more floating windows. 65 66The old Xt/Xaw interface has been removed, since it was no longer 67being maintained. 68 69There have been a host of minor improvements throughout the programs 70and game libraries. 71 72*** 7.3.3 73 74Fix pathnames to tcl/tk libraries. 75 76Fix Mac bugs: 1-bit images, loading of emblems from saved games, large 77map handling, removed variants. 78 79Add better solid colors in advterr.g. 80 81*** 7.3.2 82 83Fix crash with no-indepside games on Unix. 84 85Add terrain images for advances.g. 86 87*** 7.3.1 88 89In Unix/Windows player setup, make separate buttons to add/remove 90indepside AI and to configure indepside behavior. 91 92Add --enable-alternate-scoresdir configure option. 93 94Update config.guess and config.sub. 95 96*** 7.3.0 97 98This release accumulates over two years of changes throughout the 99program. In general, the emphasis has been on improving the program's 100usability, making the AI smarter, improving existing games, and 101extending to Civ-type games, rather than adding random new games to 102the library. 103 104The Unix user interface has been rewritten to use tcl/tk. It includes 105a full set of menus, resizeable panes in the map windows, buttons for 106common operations, a mouseover display, and many additional map 107display options. There is also a full set of dialogs for setting up a 108game, plus a chat window to facilitate setting up networked games. 109 110There is now a port to Windows, using the tcl/tk-based interface, 111which means no more requirement to run an X server. The Windows port 112still has bugs though. 113 114The Mac interface now has floating windows for most auxiliary windows, 115city and research dialogs, and more display controls, including 116player controls over most colors and imagery used. Selected units 117can now blink rather than being surrounded with a box. 118 119Unix networking support now allows for more than two players in a 120game, and the game setup dialogs are synchronized, so for instance 121clicking on a variant checkbox causes all players' checkboxes to 122change. 123 124Hans Ronne added the game "Ancient Near East" (anc-near-east.g), 125similar to Civilization but with more detail, such as different kinds 126of wheat to discover. The included map of the Near East is 127spectacularly large and detailed. 128 129A Civilization II emulation (civ2.g) has been added. The game works, 130but happiness is not implemented, most of the city improvements have 131no effect, nor do the Wonders. 132 133Linn Stanton added an extended version of the standard game (lhs.g) 134that includes radar, artillery, aaa, engineers, mines, and minefields. 135 136Many new graphic images are available, particularly for terrain. 137Xconq can load images directly from image files in standard formats 138(although only GIF is available at present). 139 140Players in the standard game get towns with names appropriate to 141their chosen nationalities. 142 143It is now possible to play independent units as if they were a regular 144side, and (more usefully), it's possible to have an AI run the 145independent units. Watch out for the marauding barbarians! 146 147A second AI type, the "iplayer", is available. It is a minimal 148AI that does basic tactical planning for individual units, but 149does not attempt to coordinate them. 150 151A set of commands, agreement-draft etc, are available for setting 152up agreements. (Agreement support is still incomplete though.) 153 154New commands: 155 "c-rate" sets conversion rates for materials (division of 156 trade into science/shields/luxuries in Civ, for instance). 157 "collect" sets up a task to collect materials from terrain. 158 "research" sets per-side research into advances. 159 160There is a new GDL type "advance", to represent scientific or 161technological advances. Game designers can lay out a whole technology 162tree, and either units or whole sides may do research to achieve 163advances. 164 165To allow "research" to apply to advances, the existing research 166activity to develop tech levels has been renamed to "development". 167Its characteristics remain the same however. 168 169The "extract" action is available for units to get materials 170directly from terrain. 171 172A game design can include "advanced" units that are like Civ 173cities; they are variable-sized, and can collect materials from 174the surrounding terrain. 175 176GDL includes many more variables, type properties, and tables. 177Some of the more notable additions include: 178 global "combat-model", to choose algorithm for combat resolution 179 global "indepside-has-ai", to control indepside use of AI. 180 global "country-border-color" etc, to control colors used by 181 interfaces 182 side property "treasury", tables "gives-to-treasury" and 183 "takes-from-treasury", to accumulate materials for the 184 side as a whole 185 table "advance-needed-to-build", to define how the technology 186 tree enables the construction of unit types 187 table "terrain-density", to add random variation to synthesized 188 terrain 189 tables "unit-consumption-to-grow", "size-limit-without-advance", 190 and "side-limit-without-occupant", to regulate the 191 growth of advanced units (cities) 192 table "cellwide-protection-for", that controls protection for 193 all units in a cell 194 unit type properties "attack" and "defend", to define generic 195 attack/defense strengths 196 unit type property "advanced", to define advanced units 197 unit type properties "advanced-auto-construct" and 198 "advanced-auto-research", to automate the activities 199 of advanced units 200 unit type property "ai-tactical-range", to control the area 201 of awareness for a unit's tactical decisions 202 203Sami Perttu contributed a supply system model; see doc/README.supply 204for more detail on how to use in game designs. 205 206The tcl/tk port includes experimental support for isometric display, 207but this needs more work, and so is turned off by default. (See the 208top of tcltk/tkconq.tcl to see how to enable.) 209 210The Unix port uses autoconf for configuration. Xconq now conforms 211better to FHS; library files reside in /usr/local/share/xconq, while 212score files live in /var/lib/xconq/scores. 213 214Many many bug fixes and smaller cleanups. 215 216*** 7.2.1 217 218All image scaling and default image generation now happens in 219generic code, which gives X11 interface the ability to draw 220unit images that are shrunken or magnified to fit properly. 221 222If a game design does not specify a side library, Xconq will assign 223side names A, B, C, etc, in order, instead of choosing random letters. 224(While technically this is a GDL change, this does not affect 225compatibility with base 7.2.) 226 227Now builds under cygwin32! See INSTALL for instructions. 228 229Bug fixes for crashing commands, Mac edge cases, name reporting, 230Solaris builds, and networked game reliability, among others. 231 232*** 7.2 233 234Standard commands now include "doctrine" to set unit doctrine, 'I' 235("idle") to sleep only for a limited time specified by the prefix 236argument, '^P' ("repair") to do repair actions, "submit" and "release" 237to change side control. 238 239Xconq now includes basic support for networked games. Use the 240"Connect" button on the Mac startup screen, and the -host/-join 241options in Unix (use host:port syntax, -host thera.com:1234 for the 242first player, -join thera.com:1234 to join in). 243 244Unix Xconq has updated configury for new versions of Unix, and it now 245installs as a setuid program so that the scorefile may be shared by 246multiple users. Saved games go into the directory ~/.xconq . 247 248The Mac interface to Xconq now includes offscreen drawing for smoother 249and faster scrolling, more player control over color usage, more 250preference settings, and other goodies, all thanks to Hans Ronne. 251 252New games added to the library: 253 "metz-1944", the siege of Metz during WWII 254 "gazala", a North African battle in 1942 255 "ww2-pac-41", the Pacific theater in WWII using advanced WWII units 256 "ww2s-pac-41", the Pacific theater using standard units 257 "africa-1850", exploration of Africa in the 19th century 258 "space", exploration and conquest of outer space 259 260The large maps "earth-1deg" and "earth-50km", and associated unit lists, 261"u-e1-1998" and "u-e50-1998", are more accurate and up-to-date, as is 262the list of nationalities "nat-names.g" 263 264Many images now have full-color versions. 265 266Most library games have been enhanced to use new features, or have had 267serious bugs fixed. 268 269Due to copyright issues, the tolkien and starwars games are no longer 270part of the distributed library. 271 272The manual's chapters on game design have been split into a separate 273manual. 274 275Maze generation now guarantees a completely connected maze. 276 277Image colors are now handled as 1x1 tiles. 278 279Games may now include a per-cell control layer that is like the people 280layer, but is for temporary control that reverts if people revolt. 281 282Predefined sides may specify preferred units, and predefined units may 283specify preferred sides. 284 285Scorekeepers may now allow a group of allied sides to win, by using 286the last-alliance-wins test. 287 288New GDL variables include action-movies, action-narratives, 289action-notices, event-movies, event-narratives, and event-notices, for 290customization of text output; create-units-from-specs, for use in 291controlling unit creation when including modules in each other. The 292variable random-events is no longer defined, while 293temperature-year-cycle is now a property of areas. 294 295The material type property "description-format" is gone. The terrain 296type properties "color" and "description-format" are gone. 297 298New unit type properties include acp-morale-effect, courage-min, 299courage-max (currently unused), cp-attrition, fire-angle-max, 300generic-char, hp-to-recover, lost-revolt-chance, lost-vanish-chance, 301lost-wreck-chance, morale-max, morale-recovery, opinion-min, 302opinion-max, revolt-at-opinion-min, see-terrain-if-captured. 303 304New GDL tables include body-height, capacity-negation, 305consumption-per-add-terrain, consumption-per-fire, control-range, 306keep-control-range, looks-like, lose-track-chance, 307lose-surrender-chance, material-per-remove-terrain, 308material-to-add-terrain, material-to-attack, material-to-fire, 309material-to-remove-terrain, material-to-research, morale-hit, 310morale-hit-by, morale-on-creation, morale-terrain-effect, 311mp-to-enter-own, productivity-adjacent, see-material-always, 312see-mistake-chance, see-others-if-captured, speed-occupant-effect, 313spy-track-chance, tp-damage, track-chance, weapon-height. 314 315Innumerable bug fixes. 316 317*** 7.1 318 319"Long-name" commands (those entered via 'o') may now accept arguments. 320 321Standing orders are now available, and are more general than those in 3225.x. The long-name command has the form "if <condition> <task>", so 323for instance to move all infantry at a given location to Berlin, use 324the command "if infantry at 32,25 move-to Berlin". The X11 interface 325includes a dialog to set up standing orders; the long-name command 326"orders" gets to it. 327 328View coverage changes are now calculated and displayed incrementally. 329This means that for games such as "panzer" with both line-of-sight 330and varying elevations, displayed coverage will update correctly 331as units move around. 332 333New players may be added to a game while it is in progress. 334 335Nearly all of the defined commands have been implemented for each 336interface. The new command "disembark" (^E) causes occupants to leave 337the transport but remain in the same cell. 338 339Scores are now recorded and read back from a scorefile. 340 341The X11 interface includes commands "side" and "unit" that display 342closeups of sides and units, respectively, the command line allows 343multiple -L locations to look for modules 344 345The Mac interface now displays elevations using contour lines, the 346command dialog is longer modal, and closeup info about the selected 347unit appears at the top of each map window. 348 349The mplayer AI is smarter in various ways. 350 351The library now includes "time", a game of technological development 352a la Civilization; and "omaha", the Omaha Beach landings in Normandy, 353using the ww2-bn module. 354 355In the standard game, aircraft now have no stacking limits, all unit 356types get 1 free movement point, damaged ships move more slowly, towns 357near roads get their own spur roads connecting. 358 359Many of the library games have been improved. 360 361GDL now includes the following new constructs (see the manual for details 362of how they work): 363Tables: counterattack, countercapture, fire-hit-chance, fire-damage, 364fire-attack-terrain-effect, fire-defend-terrain-effect 365Global variables: edge-road-density, initial-date-max, initial-date-min. 366Unit type properties: road-to-edge-change, spur-chance, spur-range. 367Side properties: material-view, temperature-view, etc. 368Image/image family properties: notes. 369 370GDL's "print" form works in all interfaces now. 371 372Many many bug fixes and minor enhancements. 373 374*** 7.0.1 375 376The Mac interface now includes a preference for whether to dump the 377game statistics into a file. 378 379Keyboard direction commands for the Mac and X11 interfaces now work for 380attack as well as for movement. 381 382The library now include Chris Christensen's "insects" game. It's kind of 383silly, and still needs some design work to use more version 7 features, 384but is worth trying out. 385 386The "starwars" game now has various improvements and fixes, including 387the ability of Death Stars to detonate planets, and its associated 388"planets" module is larger, with many small planets. 389 390Several bugs noted in 7.0.0 have been fixed. 391 392*** 7.0 393 394Xconq 7.0 is a comprehensive rewrite and expansion of Xconq 5.5. 395Nearly every part of the program and its game library has been changed 396in some way. 397 398Xconq now includes a Mac interface. This is a full-featured interface 399that works on nearly any Mac, both b/w and color, large screen and small. 400 401The X11 interface now uses Xaw/Xt to provide more interface 402functionality, such as buttons for common operations, popups for view 403controls, designing, and printing, and a panner to get to a particular 404part of the world more quickly. Each player may now have multiple map 405windows. Maps zoom in and out, from 1x1 to 128x128 pixels per hex. 406The interface can display color images for terrain, units, and sides. 407 408The curses interface now includes status lines and adjustable panes. 409 410There is now support for printing maps using PostScript(tm). 411 412The numbers of unit, terrain, and material (used to be "resource") 413types may now range up to 126. The number of sides may be up to 30. 414 415Terrain may now be "borders" (such as rivers), "connections" (such as 416roads), and "coatings" (such as snow). 417 418The world may now be a hexagon as well as a cylinder. It may include 419elevations, temperatures, wind, clouds, named geographical features, 420people, and materials for each hex (now called "cell"). 421 422Units may now get combat experience, they can be incomplete (meaning 423that construction may start on a unit, halt, then resume later where 424it left off), they can have an altitude, they have tooling (affects 425startup time for construction), and they can be of varying size. 426 427Multiple units may stack in a single cell. 428 429Unit abilities are now defined by the "actions" that they can perform. 430Previously, the actions were to move, build, disband, and attack; 7.0 431also includes adding and removing terrain, research, change of unit 432type, material production and transfer, detaching and merging 433multi-part units, ranged fire, and detonation as actions. 434 435The combat model is more sophisticated, now including the possibility 436for stack and occupants to protect a defender, for retreat, and for 437variable damage from a single hit. 438 439Units now have plans that include multiple goals and a task agenda. 440Tasks track successes and failures of actions, choosing actions as 441needed to complete successfully. 442 443Sides may have a "tech level" that governs usage and construction of 444unit types, they may be in "classes" that restrict which types of 445units they can own, may control other sides, and have an emblem to be 446used for display. 447 448Games may include a day/night cycle and associated effects. 449 450Games may include a seasonal cycle and associated effects. 451 452Random game synthesis methods now include maze generation, country 453expansion, river and road generation, and grammar-based unit and 454feature name synthesis. 455 456Games may now have variants that are chosen at game setup time. 457 458The AI machinery now supports any number of different types of AIs. 459 460The generic AI "mplayer" has been rewritten; it now uses an explicit 461strategy based on division of the world into theaters, and relies on the 462new plan and task mechanisms to improve individual unit behavior. 463 464The game library now has many new games, including a tactical-level 465panzer game, detailed battalion-, division-, and strategic-level WWII 466games, Tolkien-inspired fantasy games, a Russian Revolution game, a 467Roman Empire game, and an Age of Discovery game with a Magellan scenario. 468 469The period/map/scenario file structure is gone, replaced by a Game 470Design Language (GDL). GDL looks like Lisp, but is still a 471declarative language oriented towards for defining the types, tables, 472and other objects in a game. Lisp syntax supplies power, flexibility, 473and a degree of standardization, while the declarative nature of the 474language means that the game designer can still concentrate on 475defining properties rather than writing code. Also, since all files 476are in the same language and modules can include each other, game 477designers can build designs by including an existing game and 478modifying it, rather than by defining a totally new game. 479 480There are now over 160 tables available to the game designer, over 100 481unit type properties and over 60 global variables as well. The designer 482now has control over nearly every detail of a game. 483 484Memory allocation is almost entirely on an as-needed basis, so Xconq's 485memory usage starts at around 100K and goes up only with the size and 486complexity of the game. 487 488The source code is more portable, both to Unix and non-Unix systems. 489It is also fully prototyped and ANSI-compatible. 490