Version log Lux 5.5 (September 16, 2006) - Redesigned the new game window, adding map preview and other controls. - Improved support for games with very large armies (added 5k, 10k, 50k tokens and wider bubbles for large army display). - The Join Game window will now display the number of active human players (those that are not in guest only mode) as well as the total. - Improved hosting stability. - Added a Portuguese from Portugal translation, and updated the Croatian, Slovenian, Swedish translations. - Fixed a bug that caused negative continents to increase faster then they should. - Added an option to not output to the system log (console on OSX). Use "/set blockConsoleOutput" in the chat area to set it. - Warn the user when a plugin requires a newer version of Java. - The Map Editor can move shapes with more then 1 polygon properly. - Enabled anti-aliased drawing in the Map Editor. - When playing maps in folders, the folder name is now left off in the Join window. - Chat auto-completion works following a backtick (use the escape key to auto-complete). - Disallow games with more then 1 person controlled by the local host from counting in the online rankings. - Allow the headless server version to set the port it runs on. - When a guest host times out 2 turns in a row they will get demoted from the guest host spots. - Updated somecountry names in the default maps. - Increased the rate of the 'Speed up when all humans are dead' setting. - Random bugfixes. Lux 5.41 (July 25, 2006) - When the 'There are new plugins' dialog pops up it will actually take you to the New Releases section now. - Fixed a bug in 5.4 that would crash a network game with more then 6 players. Lux 5.4 (July 25, 2006) - Divided the Plugin Manager into sections. - Improved selected country and placed army starts for networked games with a turn time limit. - Added an Info button on the map window that displays the Player Info window. - Removed the 'Vote for next button' from network games. - Fixed an issue with saving games. - Theme files can now be uppercase or lowercase without problem. - Updated the maps that come with Lux. - New 20 game trial period for everyone in the demo. - Added support for more retail keys. - Added experimental 'shuffle with winner stays' option. - Added contextual menu with Paste to the enter code text fields. Lux 5.31 (May 28th, 2006) - Fixed bugs with moving around the player info area when inside the map window. - The Map Editor can now read/write a default location for the player info area to be (when inside the map window). Lux uses this as a default location for the PI area, players can still drag it around to change the location. - The prefs window closes faster when applying changes. - Added the /map command which can be used to switch the map from within a network game (host only). Example: "/map Classic Part Deux". Use the escape key to auto-complete long map names. - /maplock defaults to ON now. - Includes a beta version of a headless server. Lux 5.3 Internet Release (March 30th, 2006) - Added a Save Game and Open Saved Game functions. - Display the quality score of hosts in the Join window by coloring their names. - Translated documentation and map editor into German (care of Merscom). - Improved window sizing after resizing the map. - The Macintosh zoom button now sizes the game window correctly. - Tightened up some error messages. - Fixed a bug that would sometimes break the turn timer. - Updated the directional arrow graphic. - Added an option to automatically grow maps to fit the screen (under the Board menu). - Added Board.getTurnSecondsLeft(), Board.getTurnCount(), and CountryCluster.getList() to the API for agents. - The plugin manager can handle installing files inside a folder hierarchy. - Added support for retail CD keys. - The /desc command by itself will print out the current description. - Guest hosts cannot use the /ban command. - Fixed the sound volume control. - Added the ability to click and drag to select multiple army tokens while placing. - Use tokens for 500 and 1000 armies when needed. - Maps can specify a starting position for the player info area to be, when it is inside the map window. - The networked /c command will print out the current round number. - Tables remember their sorting status across runs. - Added a 'Get More AIs...' option to the AI selection boxes. - Prevent users from joining with very long names. - Force the user to cash with 5 cards, even if they let the time run out. - Added a Date colum to the plugin manager. - Re-organized the where user preference data gets saved. - Optimized some code paths. - Bugfixes. Lux 5.2c (December 2nd, 2005) - Added Vietnam War map to the demo. - Show the proper feedback name when boot or ban is used by a client host. - Cleaned out some useless data from the preferences backing store. - Eliminated some null pointer conditions from BoardHelper. - Added a Romanian translation. - Tournament master version does not allow guest only status. - Improved drawing of continent bonus flashes. - Fixed the Map Editor for non-english locales. Lux 5.2 (November 22, 2005) GRAPHICS: - Display arrows pointing at the possible countries when in attack mode. - The bottom-left text (including turn timer) will now adjust its location to always be visible when the map area is inside scrollbars. - Continents flash for a second after they are conquered (along with a preference to turn it off. - Added more information in Country tool tips. - Dead players and joiners can now look at an empty card screen, instead of getting beeped at. - Improved map resize behaviour. - Cards with long country names look better. NETWORKING: - Added an /i (or /info) command to open a users ranking page. - Altered auto-host games so that the first playing client can use the server commands (/start, /desc, etc). - Added name-completion in the chat-area. Type the start of someone's name (or a / command) and hit the escape key to complete it. - Altered the sorting of games in the Join Game window so that sorting on the Continent Increase, Turn Time, or Number of Players columns sort as they should. - The /users command will now accurately disply the 'guest only' status of players in the current game. - Improved translation of messages that pass over the network. - The Up-Arrow key will bring back the last command in the chat area if there is no text in it currently. - The new description is printed out for all to see when using the /desc command. - Enhanced the /boot command to be able to boot any non-players and added a /ban command. - The 'vote for next map' button will not change the map when maplock is on. - Eliminated a bug where the host could send incorrect game options to clients when the network checkboxes were changed while playing. - Eliminated a bug where a rejoined player wouldn't get updated continent bonus values until the end of the next round. - The map of the week is bolded in the Join Game window. OTHER: - Added a keyboard shortcut to place 50 armies at a time by holding both option/alt and control/command while placing. - Added a 'Type' column to the plugin manager to distinguish AIs better. - Added a link to the plugin manager from the map selection box. - The map selection combo-box will be sorted alphabetically, regardless of OS. - Fixed the card selection routine so that it doesn't use wildcards where possible (for real this time). - The log file will never grow to more then 1MB. - Added a menubar (and thus command-W shortcut) for the color chooser window on MacOS. - Eliminated an incorrect fortify from EvilPixie that resulted in a log warning. - Eliminated reliance on ImageMagick for creating screenshot thumbnails. - Changed some of the default preferences. - Lowered the minimum time limit to be 8 seconds. - Added Turkish, Croatian and Swedish translations, and updated some other languages. - Improved the continent labels in the map editor so they match the in-game look, and are easier to move around. - Added the option of turning off the helper text in the map editor. - Maps can tell Lux to use compact continent labels by including a <shortContinentLabels>true</shortContinentLabels> tag in the map file, and the map editor can read/write this setting. - Added a 3,6,9... card sequence. - Improved serial number verification when users leave out part of the code. - Released a new version of the LuxAgent SDK with a variety of enhancements. Lux 5.1.2 (September 26, 2005) - Added short forms for network commands. Use /c for /cards, /u for /users, /g for /guest, etc. - The /c command also displays the continent percentage increase if there is one. - Added the /maplock command for hosts to easily lock the map for Autoplay games. - Game preferences are now displayed in the title of the game window. - Continents made up of only 1 country will display their bonus value in the tool-tip. - Added a Slovenian translation. - Fixed the link to BarStar radio. - The card deck is properly randomized so the order is different each game. - Eliminated a crash in SmartAgentBase that affected Boscoe when placing a large number of armies. - The 'Join A Game' window remembers its size across runs when resized. - Implemented a basic racism cleaner in the chat. - Fixed the helper text in the map editor so they show up again. - Better behaviour when a user deletes all the themes. - The pre-selected card set try to not use wildcards when possible. Lux 5.1.1 (August 5, 2005) - Fixed Killbot. - Restored the 'Save Resized Board' menu option. Lux 5.1 (August 5, 2005) - Each registration account is now only allowed 1 nickname in the multiplayer rankings. - Improved handling of non-ASCII characters in the online ranking system and in map files. All data is treated as UTF-8 encoded now. Some maps may need to be adjusted slightly because of this. - The chat area won't scroll to the bottom when you are looking at an older section of text (most of the time). - The block of color that shows beside players names in the network chat is now solid on Windows. - Fixed a bug where a few sounds would still be played when a player had turned sounds off. - Fixed a bug where the map editor would sometimes shift the position of extra lines around. - Classes in the Agents folder will only show up in the player selector if they implement the LuxAgent interface. - Added a link to the host feedback page when a host quits on purpose. - Made bot muting case insensitive. - Improved internet browser launching under Windows ME and Linux. - Corrected the direction of the arrows showing one-way connections in the map editor. - Fixed a tracker display bug when hosting with selected/random start. - New randomly generated maps will specify a theme. - Improved stability on computers with no sound card or broken sound. Lux 5.02 (May 25, 2005) - Fixed a bug with increasing continent values for some players in network games. - Display the increasing continent value (when used) in the Bonus screen and in the network games results. - Fixed a drawing problem on MacOS 10.4.1. - Fixed some AI issues on boards with only 1 continent or with one-way connections. - Fixed a bug where emotes from muted players would still be shown when the player's name contained a space. Lux 5.01 (May 11th, 2005) - Fixed a bug that prevented increasing continent values from working in network games. Lux 5.0 (May 11th, 2005) - Added support for maps that include starting scenarios in them. - Added army graphics. - Hosts can use /boot to disconnect players who have been inactive for 2 rounds. - You can use /guest to switch to guest-only mode in network games. - Added more sounds with volume control and a Sound tab in the preferences window. - Added support for a transparent 'overground' image in themes. - Added an option to automatically resize maps to fit on the screen (on by default). - Added an option to display the Player Info inside the map window. - Added a language selection box to the preferences, along with some more language translations (including Japanese!). - Added support for Map of the Week. Bonus points provided to ranked games using the map of the week. - Added the option to play public internet games that are not ranked. - Added a game option to have continent values increase as the game goes on. - You can click on armies to be placed to select them, in order to place better (just like in the early versions). - The /start command will only work when used without any other words - to prevent accidental usage. - Added a 'Superfast Mode' to aid bot-testing. - The computer AI players should no longer get stuck in stalemates that never end. - Fixed a bug that could cause cards to be given to the wrong player when a player was eliminated at the end of the turn timer. - Fixed a bug that prevented you from turning off the 'Use Cards' option. - Fixed a bug in the Windows version that would always say non-map plugins (like Nefarious) were available, even when the current version was installed. - Made some fixes to better handle maps with countries that have no exits. - Added a 'Bonuses' button to the cards-bar that shows the continent bonuses. - Reorganized the Help menu. - Improved the ColorWells on the main game window and in the Map Editor. - The '(dedicated host)' tag will disappear if the host enters the game again. - Long winning messages will have line wraps added. - Moved the armies in flux so they are never over top of the player width bar. This also meant re-organizing where some buttons go. - Added a flash to the armies in flux. - Players get a block of color before their name in the chat-area. - The chat-area can now display hyperlinked URLs. - The chat-area will pass though return/enter keys to activate the default button (if there is one). - The plugin manager now sorts in a non case-sensative manner. - Made the # New Plugins dialog non-modal, so it wouldn't get hidden and block the app. - Fixed a bug in the Map Editor that could lead to maps not loading. - Added a mode to the Map Editor to move whole shapes around. - Added the ability to specify starting scenarios in the Map Editor. Lux 4.6 (January 28, 2005) - Enhanced the /transfer command so that it can now be used to transfer control of a computer AI to a human who is not playing. Use the syntax '/transfer [AI name]', e.g. '/transfer Ritz'. - The plugin data is now cached, so that it will only get downloaded again if there is new stuff (it is getting to be quite big). - Fixed the bug that prevented players with spaces in their names from using the /me command. - Altered the timing for choosing random countries so that it doesn't take as long for big maps. - Prevented countries from connecting to themselves, even if the board file specifies it. - Fixed a bug in BoardHelper.easyCostCountryWithOwner(). - Fixed a bug in BoardHelper.getPlayerArmiesAdjoiningContinent() that would count some countries multiple times. - Added an /easycost command to print out the results of a BoardHelper.easyCostCountryWithOwner() call. - The game will no longer stall if an agent doesn't place his initial armies. - Added translations into Danish, Finnish, Estonian, and Netherlands Dutch. - Improved the layout of the main window for some (non-english) languages on mac os x. - Added the ability to display URL links in the Plugin Manager. Map Editor - You can remove connections between countries by control-clicking on the displayed line (right-click also works). - Fixed a bug that would allow a map to be outputted with countries containing bogus shapes or with missing IDs. Lux 4.52 (January 7th, 2005) - The Hard computer AIs will not always wait till they have 5 cards before cashing. - Updated the German translation. - Fixed a bug that caused the Shaft bot to not work properly. - Warn the user when they set all the players to computer AIs. - Fixed a bug that would sometimes cause armies to switch owners when attacking when time ran out. Lux 4.51 (December 20th, 2004) - Fixed a bug that would cause some guests to still see the 'Winner is...' message after the next game was started. - Fixed a bug that would cause remote clients to lose any armies they had in flux when they ran out of turn time. Lux 4.5 (December 19th, 2004) - Improved the network game security model. - Multi-line winning messages can now be used. Use '\n' for a line break. - Fixed a mistake in the BoardHelper.getContinentBordersBeyond() method in the LuxAgentSDK. - Fixed a mistake in the BoardHelper.easyCostBetweenCountries() method in the LuxAgentSDK. - Fixed a mistake in the CountryStack.size() method in the LuxAgentSDK. - Added some methods to the LuxAgent SDK Board class to allow for saving and retrieving information to persistent storage that will carry over between runs of Lux. - Downloading a new map will no longer load its theme into the current board, unless the current board uses that theme. - Added a Spanish translation (Thanks to James Babin). - Fixed a bug where the Rules and some other help files would not open correctly when Lux was renamed to have a space in the name. Map Editor - New continent colors will be saved properly. - Countries will not connect to themselves. - Country and continent names will always be saved (even if the Next button is not clicked). - The Set Info panel can now set the theme. - New continents can be created and countries can be assigned to continents now. - Extra lines can be created now. - It is now possible to create an entire map in the Map Editor, without delving into the text file. Lux 4.4 (December 1, 2004) - Increased the amount of information available about current network games in the Join Game window. You can now see the amount of time the current game has been playing, who is playing there, and a description of the game set by the host. - The event thread is no longer blocked at the beginning of each game when the background composite is being created. - The cards mode background composite is created in the background, hopefully before the user looks at his cards. - The Autoplay Mode (for dedicated servers) was changed to have a delay of 20 seconds, and to print out a countdown. - When hosting in dedicated server mode the system user name is no longer used. Instead the fist player name is used with '(dedicated host)' appended to it. - Eliminated a case where the player selection boxes were getting reset to Easy on some Plugin Manager actions. - Further improved the Player Info window positioning. - Fixed a misspelling of 'separate' in a menu. - The LuxTracker error will not repeat itself. - Improved the sizing behaviour of the board-window and chat area. - A player will always have a minimum income of 3, properly dealing with negative continents. - The separate chat window remembers its state and location. - Added some methods available in the Board class available to the agent SDK: 'String getContinentName(int contCode)', 'int getNextCardSetValue()', 'boolean transferCards()', and 'boolean immediateCash()'. - If there is a failure to send in the post-game rankings then Lux will retry up to 5 times. - The amount of network traffic is throttled down during attack-till-death battles with more then 150 armies. - If a player joins with the same name and IP address as an existing player then the server will close the old connection and accept the new one. Sometimes clients with wireless connections will be lost without the server registering it. This should solve that problem. - Translations will now show up for all regions of a given language. - Added an Italian translation (by Severino Delaurenti of MultiMedia Soft). - Added a Portughese translation (by Mateus "Marte" Begossi). - Internet Public games will not be added to the rankings if any remote player was not controlling themselves for their first turn. - The chatterbox will no longer move to the bottom when it is being dragged and text appears. - Textfields in Mac OS X now support the expected up/down/shift-up/shift-down/option-delete/option-forward-delete keyboard shortcuts. Map Editor Notes - Put a 'Load Background' command into the Map Editor. - Added the ability to make connections between countries, name countries and set names/bonus/colors of continents in the Map Editor. - Added a Set Info panel to enter the top level map meta-data. - Added the ability to Undo while drawing and connecting shapes. Lux 4.3 (October 18, 2004) - /mute will work on AIs (use syntax '/mute Nefarious'). - If there are active games when you Quit you will be prompted to make sure you want to exit them. This is mot useful when hosts do a Quit when there are still clients playing in a game. - Includes a BETA of the map editor. - Fixed a bug that caused custom winning messages to not be used. - Killed off a bug that would sometimes effect the player info window when the number of players in the game was changed on the fly. - Fixed a bug that prevented a host from starting the turn timer on the fly. - Added a rudimentary Edit menu. - Killed a bug where a user would get stuck in cards-mode if they were eliminated while in it. - Country name tool-tips will show up on generated maps. - Explosions get now get drawn while in continent and card mode. - /me was changed to use differentiating characters that do not look like system messages. - Fixed up chat-area focusing glitches when moving chat into a separate window. - Fixed the inverted-Y issue that was happening with continent labellocation's. Lux 4.21 (September 24, 2004) - Smoothed the corners of shapes. - Improved the shine displayed on the bottom-bar-boxes. - Eliminated a bug that caused the map to become 'squished' sometimes. - Shortened the initial loading time (offloaded it to the first time you view cards on a board). - Improved the selection of the default button based on the game situation. - Stopped the chat sound from getting played twice. - The explosion levels are now used correctly (few to nuke 'em) and the refresh rate was sped up. - The border size preference is properly respected. - The positioning of the army boxes is better. - All text is now properly encoded and decoded as UTF-8. This should allow accented characters to work properly in the chat. Lux 4.2 (September 21, 2004) - The Mac OS X version now uses java swing windowing, instead of cocoa-java windowing. This change was made for stability reasons. Added support for the mac-style menubar in swing. Lux now uses MRJAdapter to help integrate into OSX. - Added tooltips that display the names of countries on the game board. - Improved the layout of the new game, join game, and plugin manager windows. - Many improvements in the swing interface. - The OSX dmg is now internet-enabled and only contains the application. This means that when downloaded the dmg will get automatically extracted. - Improved card handling in network games, eliminating the 'all-wildcard' bug that happened in long games as well as the rejoin refresh effect. - Optimized the drawing code. - A dialog will tell clients if the host quits an active game on purpose. - Improved the /emote command, and changed it to be the /me command. - The Player Info window gets sized better. - The chat area can be moved into a separate window. - Added support for the ctrl key to toggle attack-till-death, since using the alt key as a mod-key works out badly on Windows because it is used as the menu accelerator. - Added Autoplay, to automatically start the next map when a game ends. (You can control what maps get used by putting them into a folder and starting one). - Added a window to subscribe to the Sillysoft Newsletter. - Internet Public games verify nicknames against user accounts to avoid impersonation. - Added the ability to take screenshots of the board (in the Board menu). Lux 4.11 (Mac OS X only) (August 25, 2004) - Improved stability on Mac OS X. - The Autoplay feature should no longer have weird effects every second time. Lux 4.1 (August 20, 2004) - The /mute command gives the proper error message when invoked with no username. - Added an /emote command. - Fixed a bug that would break the Plugin Manager if a user had a saved board that was missing the title or version tag. - The Board window is now resizable on macintosh. - The 'Replay Map' button is shown at the beginning of single player games. - A notice is printed out to the chat area whenever a player is eliminated in a network game. - Added some code to try and track down a rare bug that would occasionally cause the winning player to be placed last in the post-game rankings results. - Client IP addresses get recorded in the server's log file. - Empty tags in map files are ignored. - Fixed a bug with the 'Replay Map' button in network games when using a map generator. - When a prompt opens the Plugin Manager the first plugin is properly highlighted. - Improved the French translation. - Improved stability under Mac OS 10.3.5. Lux 4.0 (July 22, 2004) - Added the Plugin Manager. - Notify the user when new plugins are available. - The window will not size itself larger then the visible area. Scrollbars will appear when needed. - Fixed a bug that would cause the Help docs to not open on Windows. - Fixed a bug where the host would be asked what to do when the winner of a game exited after he had won. - Added the /transfer command to give away control of lost players to guests at any point in the game. - Added the /mute command to shield yourself from nasty players. - Fixed some bugs with transferring control of a player. - Give a better notice to unregistered players when there is already an unregistered player in a game they try to join. - Updated the LuxAgent AI interface to include version information. - Added LuxMapGenerator interface support. It is now possible to code your own map generators and have Lux recognize and load them to produce maps. - The Agents and MapGenerators folders are created in the Support folder on startup if they do not exist. - Implemented a work-around to avoid a crash that occasionally occurs in a call to Apple's NSColor.redComponent(). - Optimized the unix install and added a Lux.sh launcher script. - Fixed the 'No Translation Available' in the card sequence popup in the prefs. - A more robust method of finding the Support folder. - 'Open Saved Boards Folder' has better platform independence. - Registration should now work on Linux and other systems. - The java installer's 'Run Lux Now' command will now work on non windows systems. - Some windows-integration files are no longer installed on non-windows systems. - Don't add clients to the list of playing players after all the available spots have been filled. - Changed the hosting update ping to once every 3 minutes, instead of 10. This will lessen the time that crashed out hosts appear in the join list. - Fixed a bug in BoardHelper.easyCostFromCountryToContinent(). - Updated the LuxAgent SDK. - Released the LuxMapGenerator SDK (and made it work). - The windows version will make sure that windows are not opened on top of the start menu or taskbar no matter where the user has them located. - Maps that are too wide or too high for a user's screen (but not both) are handled better. - Scrolling is faster on the Windows version. - Removed the /turnfix command. - Removed a non-sensical error message from the native launcher Windows installer. - Dialogs now have the Lux icon in Windows. - The chat-are is automatically opened in a separate window when the screen isn't big enough to fit it in a drawer (os x). - Removed the setBoardSize() call from MapLoader (part of the LuxMapGenerator SDK). - Added a 'Hosting' menu item in the Help menu that gives the details of hosting. - A better map upload form that allows for updating existing maps. - Adopted some better serialization techniques. - Hosting was made registered only. - Include translations for French, German, and Dutch. - A new version of BoardHelper (thanks to rip). Lux 3.98 (June 1, 2004) - Fixed a bug in the engine that would allow the user to maintain control of a country when there was 1 army. - Fixed a bug that would cause a rejoined player to not get armies. - When a player gets taken over it gets printed to the chat area. - Fixed a bug where the 'Show Continents' and some other menus wouldn't work when the chat-area was in the drawer. Lux 3.97 - Cross-platform (June 1, 2004) - The cross-platform version of Lux was released. Going forward all versions will use the same changelog (this one). Lux 3.97 (May 21, 2004) - The current card set value is properly transferred across the network. - Laid some groundwork to allow for translation into other languages. - Shuffled around some threading for the Join game window, hopefully will eliminate the reported occasional crash. - A proper XML declaration is added to board files. - All whitespace gets trimmed off the registration name and number when entered. - The Enter Code window uses the same terminology as the registration email, and gives a much smarter error message. - The control key changed from place all armies to place 5 armies. Lux 3.96 (April 25, 2004) - Polished the changes that were made in 3.95. - Cards and continent labels are allowed to overlap each other (a little bit) now. - Added the Octagon map to the default maps. Thanks to Eric Nusbaum for creating it. Lux 3.95 (April 21, 2004) - More accurate network messages. - Fixed a bug where the client would think that his armies were auto-placed on a turn time-out, but they weren't getting auto-placed on the server. - The chat window remembers its state and position. - All the menu items work properly when the chatterbox window has the focus. - Block end turns when the game is over. - Fixed a bug where the 'Move chat into a drawer/window' command wouldn't always work the first time. - Eliminated some duplicated data. - Tried another work-around for the player-info window crash/hang. - I think that the skipping turns/only one army to place/no buttons bugs have been killed off. - Give a title before the /players command. Lux 3.94 (April 6, 2004) - The winning message will now come from the proper player. - The initial shareware nag screen will only start to open when the user has played more then 2 games. - More robust shareware checking. - Players who disconnect and then rejoin will get their cards back. - The /users command shows who is hosting. - Turn ordering has been improved to totally avoid dead players. - Game information gets printed out at the start of all networked games. - Fixed a out-of-sync bug that occurred when a remote player is going to get a card for this turn but then his time runs out (and there are 3 or more players). - Added a /players command to list the current game's players with their income and card values. Lux 3.93 (March 25, 2004) - Fixes a bug that would prevent a game window from closing when in single player mode. Lux 3.92 (March 22, 2004) - Players who leave a game while controlling a player gain back control if they come back. - Added support for custom maps that have countries with single-direction borders. - Give a more stringent warning to hosts who are ending games. - Let the clients know in the chat box when a host has closed the game on purpose. - Added a preference to turn off the animated card movement. - Added the /turnfix command, for the server to get the clients back in sync. - Made some improvements to the 'Update is available' window, making it only ever appear once, and fixing a bug that prevented it from displaying the full version number if it was long. - Changed the sizing in the Join Game window. - Changed the default AI names. - Added a new method in Board for custom AIs to use to get the number of cards that a player has: public int getPlayerCards(int player) - Cleaned up the amount of stuff that gets printed to the log file. - Fixed a small graphics glitch where he box around the helper text would be fully redrawn. - Fixed bugs with respect to players exiting and timing out. - Added the custom maps Krynn, Shark, and Cube to the built-in set. Also added was the Cube theme. Thanks to Gus Lindquist, Sammi, and Flex(Cameron) - Moved around the ordering of some menu items in the Board menu. - Reset the trial period. Lux 3.91 (March 4, 2004) - Improved the player-info window stability when starting a new game. - Fixed a bug that prevented custom AIs from loading. - Fixed the Join Network Game window so that it will animate the progress-bar thing every time it gets the game list. - Refactored the GameController object, moving all cross-platform code into an abstract superclass. - Fixed a bug caused when a network player left when it was his turn and the host took over. - Made some improvements for the 'Give to a guest' option - Broke up the release notes into a Read-Me and a Changelog Lux 3.9 (February 29, 2004) - Prevents two people with the same registration account from playing in the same game - Some bonus hacking prevention code - Network play now uses KeepAlive sockets. This should maintain connections over long periods of inactivity - Fixed the 'Give player to guest' feature when a player disconnects - You can look at your cards during enemy turns (only in networked version) - Cards move so they don't overlap each other - Continent labels move so they don't overlap each other - Added some more funk to country and continent names - Board menu commands (like 'Show Continents') will now work when the chat is in a separate window and is in front - Themes can now specify foreground images to be shown beneath the countries - Map files can now specify the location of continent labels - Made the minimum shape size for random maps smaller - Changed the Cards shortcut to be command-D, and Copy is now back to command-C - When a map file fails to load information about what caused the failed is displayed - You get knocked out of cards mode when a game is over - The focus stays in the chat-entry field when you start and when you muck about with it - The chat-entry area gained the following commands: /cards, /debug, /log - Added a note for guests to the /users command - Fixed the bug that caused stuff to get printed in the middle of the chat output area if the user had clicked in it somewhere - Changed the update check to once a day from once a week - Wrapped up sound playing in a platform independent way - Lux now sets the User-Agent parameter whenever making a server request Lux 3.84 (February 3, 2004) - fixes the bug where the chat-entry box would highlight itself whenever a network chat was received Lux 3.83 (February 1, 2004) - 'Show Continents' now works both when the focus is in the chat entry box and when not - The Join Game screen will now display the name of the map when playing on a custom map - Made the 'Board' column in the join window resizable - Increased the possible length of the 'Board' column to 120 characters - Merged the cocoa and cross-platform development environments so that they can both be built off of a common source tree - Changed the LuxTracker update time from 25 minutes to 10 minutes - fixed a bug that would reset the border width to the default (but not the slider value) when the preference window was opened - fixed the same bug as above with the computer player speed Lux 3.82 (January 8, 2004) - fixes the bug that caused the chat-entry area's contents to be highlighted (and usually overwritten) on country clicks - fixed the bug that would resave boards into the root Saved directory when they were loaded out of a subfolder - cleaned up the log output Lux 3.81 (January 3, 2004) - you hear the chat-Sound when you send a chat or enter a command - all printing to the chat window is done from the event thread - when a country is clicked the focus is put into the chat-field so you can type without clicking there - more playing around with the back-end of the player-info window - fixed a bug that sometimes reset the players when a new guest joined, because this bug is present in the client-side of the network code version 3.81 will not accept any older version clients - beeps three times when someone is about to run out of time - a message is printed to the chat window when someone runs out of time - all sounds are played on the event thread - apple-E works to end a turn under panther Lux 3.8 (December 22, 2003) - the Preferences have been split up into 2 tabs - added the ability to put a limit on how long people may take for their turns - added the ability to cycle through the boards saved in particular folders - fixed a bug that wouldn't live update the country border width - the initial setting of Allow Network Players is now false for new installs Lux 3.72 (December 17, 2003) - Makes some changes to the code surrounding the Player Info window to try and kill off some crashes that come from there Lux 3.71 (December 2, 2003) - 'Toggle chat drawer' and 'Move chat into a window' are ignored in non-network games - Fixed a bug that would prevent 'Show Continents' and other items from working when the focus was in the chat-area - every client will play a sound when another player joins a game they are playing in - ensured that everything from the playerInfo window that gets sent anywhere near the cocoa bridge has a reference saved on the java side - killed off a bug that would prevent the host from changing a game to add more players Lux 3.7 (November 23, 2003) - added a check to make sure that opened files have the '.luxb' extension before treating them as custom board files - moved Lux's development environment onto panther - added 3 more textures for country foregrounds - the foreground texture now changes for every new game - ranking info is added for players even if they quit before the game finishes - added an option to enable the full animation explosions, and made it the default. previously they would always skip some frames. - added some more card options - the Join game window now displays Card and Turn Time info for each game - Games hosted using this version will not allow older versions to connect Lux 3.6 (November 2, 2003) - added a Refresh button to the join game window - make sure that colors are in RGB color space before extracting the individual RGB components. This should provide better grayscale color support - the armylocation box it now centered regardless of the number of digits - when your prefs are set to 'Attack till X' and you hold down the command key it will now switch to attack once instead of attack till death - after a game's results are added to the internet record book everyone gets a print-out in the chat window with the results Lux 3.5 (October 10, 2003) - continent colors set by custom maps will now have a little bit of transparency, just like the normal randomly colored ones - all error messages for the last time you ran Lux are now stored in the file ~/Library/Application Support/Lux/log.txt - optimized the location of randomly placed army boxes towards one digit boxes - the user can now store messages to say when they win a game - properly handle the case where a user who has been fully killed off exits from a network game - fixed a bug with the no-human speedup - sends the version number when sending off ranking info - show the number of cards in player info window - killed off some bugs caused when the game was set to random country/army selection but the user clicked while they were being assigned - killed off a pervasive bug condition where user clicks could be processed when it was not a user's turn - the board window doesn't jump around as much - rejiggered the quit handler a bit Lux 3.42 (October 3, 2003) - the host is no longer prompted when a player who has been killed off exits - fixed a bug with rankings reporting that was introduced in version 3.41 - added some error-correction for a currently unsolved bug condition where a user is forced to place unlimited armies sometimes - better error reporting in LuxWorld after it has been killed Lux 3.41 (October 3, 2003) - empty messages should no longer be printed into the chat box - killed off a bug where network users would be given double the cards of the players that they conquered - fixed a bug where the game would hang when cashing cards under certain conditions - fixed a bug that would prevent adding to the record book when there was more then one human playing on the server computer Lux 3.4 (October 1, 2003) - Added an option 'Attack till X deaths' per click - Fixed a bug that caused separate hosting/joining entries in the ranking system under certain conditions - the Join Game window should now correctly display the number of hosts in words - the Join Game window now displays the version of the running application - removed a warning condition from Shaft - made it possible to turn off the sound that gets played when it is your turn. type 'defaults write com.sillysoft.lux playYourTurnSound false' into the Terminal application to do so - made it possible to move the chat from the drawer into a separate window - better catching of the exception thrown when someone cashes cards when we are just a guest Lux 3.32 (September 23, 2003) - Fixed a bug that caused Unregistered versions to be labeled as Old versions in the rankings Lux 3.31 (September 23, 2003) - Fixed a bug that caused games that had older versions of Lux participating to not get added to the online rankings Lux 3.3 (September 23, 2003) - Added a record book and ranking system for internet games. View the current ranking at sillysoft.net/rankings/ - eliminated a bug affecting the record book during network games with more then one human - eliminated the bug where one country could completely overlap another - changed to autoplay wait to 2 seconds (from 3) - killed a bug where the 'Vote for next map' and 'Play next map' buttons would overlap each other - added an Online menu and moved some things into it - rejiggered the About box a little Lux 3.2 (September 11, 2003) - Redid the player info window based upon the version from Lux 2.4 to eliminate the persistent crashes - Changed the foreground clipping to work properly under panther - the full board gets redrawn upon a 'Replay Map' click - The 'No Human Delay' is properly reset after a 'Replay Map' click - Fixed the bug where things would go wonky if a theme had 0 filler images - Changed the default for 'Cycle saved boards' to off - the Your-Turn sound will now play for choosing countries and placing initial armies - eliminated a java-bridge memory leak - the excess wildcards that are created when playing with lots of players on a small board are destroyed when they are readded to the deck - added the Europe theme and the Battle of Europe map (thanks to Odd Ketil Saebo) - moved the 800x600 res version of Classic Risk into the bundle - made it so that the saved boards inside the bundle are only copied into userland once Lux 3.1 (September 5, 2003) - the player-info window can be miniaturized - changed the map notes to correctly list 'webpage' as the tag for a contact URL - eliminated the bug that caused random boards to be used repeatedly - added a 'Save Resized Board' menu item - removed the 'Email Sillysoft' menu item and replaced it with 'Bug Report' and 'Feature Request' items that point to the online forum Lux 3.0 (August 22, 2003) - Lux can now load saved board files - saved board files are not deleted after use - Lux gracefully shows an error dialog instead of quitting if there is an error loading a board file - added the controls to choose saved boards to the main window - added a 'Show Network Games' button to the main window - switched the board file format to XML - the board generation code now only uses pure java geometry objects - fixed a bug caused by putting explosions inside of very small shapes - ensured that 100% of all the drawing code is executed on the cocoa event thread. This should kill the begin all white and reveal rect by rect bugs, as well as increase general stability - removed the 'Quick Screen Updates' mode, cuz it didn't jibe with thread-safe drawing - eliminated some unnecessary drawing that had been put in as a workaround for the rect by rect bug - fixed a bug where you couldn't place the armies from a forced card cash under some circumstances - improved drawing so that country borders don't get clipped off - killed off the negative shareware-count hack - added a little extra shareware magic - removed the close window conformation sheet in the case where the game hasn't started to be played yet - single continent boards are no longer allowed to be cached - added white as a possible continent border color - the LuxTracker will now ensure that hosts are reachable on port 6619 before listing them - better LuxTracker error reporting - saved boards can be double clicked or dropped onto Lux's icon. The file will then be moved to ~/Library/Application Support/Lux/Boards/Saved/ and added to Lux's saved board menu - the Join Game window now shows the initial country and army settings for games - added a 'Save Board' menu item to save the current board into the list of saved boards - ensured that player order is randomized on every 'Next Map' button click - network client players will maintain the same color from game to game - Lux registers itself as the owner of .luxb files (which is the extension for saved board files) - fixed BoardHelper.anyPlayerOwnsContinent() to give correct return value - added average number of rounds survived and average place (from 1 to 6) to the record book - eliminated most of the conditions that caused AI warnings to be printed - Lux will now show the New Game window when it is activated and no windows are open - added a new Hard AI: EvilPixie - you can now use Poofs on while Explosions are off - board files have a Lux Document icon associated onto them - added a compass rose to the Ocean theme - added two more explosion animations - shows a message when the user requests an update check and there is an error - either the New Game window or the Join Game window will pop up whenever the last window is closed - eliminated a situation where a game would remain listed in the Join game window after it had stopped hosting - added 'The Rules of Lux' to the help menu - added explanations of all the preferences - improved the Themes Notes page - fixed a bug in Yakool and Boscoe where once they tried to take out a guy's continents they would always attack that guy, even if he was weak - added some instructions for successfully opening port 6619, and a link to them when the tracker can't verify them - give a warning in the chat-box when a client with a newer network protocol connects - updated the shareware nags, added one when they quit Lux - disabled some options in the shareware version - made Dustin and Neale clickable in the about box - made a small optimization to some Country methods - if Lux chokes on a cached random boardFile then it will delete the offending file - the player-info window no longer makes itself the key or main window - the player-info window's NSTableView will only get sent reloadData from the event thread - redid the preferences window - added a selectable level of explosions - random boards are only moved into the Boards/Random directory once they are fully finished being saved to disk - added a second land texture - changed the trial period back to 20 games Lux 2.4 (July 17, 2003) - network clients now stay in sync with the proper card-set values - eliminated player's cards are now transferred across the network properly - NOTE: the above two changes mean that the network protocol has changed. Therefore Lux 2.4 will not play network games with earlier versions. - the computer players don't get forced into cashing cards if the game is over - added a sound whenever it is your turn - added the username to the title of the Chatterbox window - eliminated the possibility of cashing cards when not in your cards phase with 5 or more cards and 'Force cash' turned off. - it is now impossible to host with a blank name - added a progress indicator and some text to the Join screen - you can now join a game by double-clicking an entry in the join screen - Lux will now use the 1.4 JVM when it is present - guests will now be told the correct current player - the board-size is now shown in the join screen - If an unknown network message is received the error message is now printed to stdout rather than the chat-area. - killed a bug where sneaky users could cash other player's cards - A message is printed to stdout when Lux starts with some config information, to help in console.app reports - made the explosion drawing lazier - cleaned up the code around network connection negotiation Lux 2.32 (July 9, 2003) - fixed the problem with skipping network players turns during initial country and army selection (i think) - added a Version field to the join game screen Lux 2.31 (July 9, 2003) - fixes a bug in the Join Game screen so that caused maximum one game to be displayed. Lux 2.3 (July 8, 2003) - fixed a bug that would sometimes cause the game to be restarted when the desired number of players was changed - made sure that as soon as the PlayerInfo window is opened it updates to the most recent data - added sound effects - players can no longer have duplicate or empty names - got rid of the 'Host Game' window and integrated hosting into the 'New Game' window - fixed a cocoa-bridge memory leak when retrieving the list of active network games - added the option to force immediate card cashing whenever a player has 5 or more cards - removed the 'message' field from the join screen and added 'number of players' - Online Lux Wednesdays Lux 2.2 (June 12, 2003) - AIs can now play in network games at a selectable difficulty level. - removed the restriction of starting a network game when only the host is present. - added a server command to change the number of players. - added a server command to end the game and return to strictly chat. - the window position doesn't get reset when Play Next Map is clicked - removed the 'Quit on main window close' preference - the player info window no longer closes/reopens when a new game is started - created a centralized Statistics object for each game that everyone uses. This should speed things up a little. - added the option to show Poofs as well as explosions. - fixed a bug where autoplay was sometimes set to true when Lux started - changed the method of loading extra nibs for better stability under MacOS 10.1 - rankings are now saved after each game, so they will not be erased by a crash Lux 2.11 (May 24, 2003) - fixed a spelling mistake (thanks to firthy) - fixed a bug where late-joining guests would be stuck in initial army placement phase - fixed a 'Replay Map' bug where cards weren't cleared - fixed a 'Replay Map' bug where countries weren't all given one army (the black-hole bug) Lux 2.1 (May 21, 2003) - added a link to the user forums in the about box and the help menu - the server beeps whenever a client joins - fixed the server bug so it now lists the correct IP address of connected clients - the playerInfoWindow behaves nicely across next-game buttons and game-overs - synchronized the action of printing stuff to the chat screen - now sends the version number when checking for updates. this means the What's New string returned by the server can be version specific - added the option to turn explosions off - added the option to display the actual number of armies, instead of one less - added options for when to show cards at the beginning of the user's turn - changed the card-sequence pref item from radio buttons to a combobox - checking the LuxTracker for active games to join is now done in a separate thread - the board-size is now changed correctly when using the '/start' command - some network bug fixes - 'give player to guest' now works Lux 2.0 (May 20, 2003) - multiplayer support over a network with a built-in chat - created a LuxTracker to advertise and join active games - Explosions!!! - mouse clicks will now interrupt the game thread, instead of waiting for it to realize it can continue. - the player-info window has been redone and turned into a panel. It now has live-updating. - moved board-change notifications into a centralized notifier object - fixed a bug where the user's defence-dice value was being used for computer players - the user is now not allowed to enter the fortify phase or end their turn while looking at their cards - the board files are now stored in the Application Support folder, rather than inside the app bundle. - changed the key-command for Preferences to apple-, - card preferences now only take effect for the next game - it's now impossible to exit the cards screen when you have 5 or more cards - upped the shareware game limit to 30 - added conformation sheets when closing a game or network Lux 1.3 (January 25, 2002) - added support for user supplied AIs - added themes - added the option to not transfer cards to the conquering player - added a record book - at the beginning of a human's turn their name is now shown - tightened up the exception handling around calls into agents - reorganized some menu items Lux 1.2 (December 26, 2002) - auto-select cards now chooses the best card set possible - only auto-select cards during cardsPhase - made command the mod key to place 5 armies - made option the mod key to place 10 armies - made command the mod key to toggle attack till death - really fixed the lots of cards with a wildcard crash - stopped the next map button from reverting to an earlier window position - better picture positioning - the shareware count is now immune to force-quits - non-modified button key equivalents now work even when the button is the default - HTML-ified the release notes - changed the 'Hide Others' key shortcut to the standard one - check for updates maximum once per week - fixed the misplaced buttons bug - fixed the turn-box drawing bug - fixed the ultrafast logo bug - sined the logo movement Lux 1.1 (November 29, 2002) - added the 'Next Map' button for quickly ditching bad boards - added non-modified key equivalents for all buttons ('c' for cards, etc) - eliminated the card-screen crash bug (yay) - fixed some bugs when using tokens for 50 or 100 armies - eliminated a possible infinite loop when cashing cards - eliminated some crashes caused when running Lux from a read-only volume - killed the wacky all-one-unconnected-continent bug - made the about box non-resizable - preferences are now saved before exiting when a fatal exception is caught - improved wildcard placement - eliminated a possible infinite loop when there is no good place to put a wildcard Lux 1.0 (November 25, 2002) - The first release of Lux