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