glGo Changelog -------------- 2006-02-16 - Version 1.4 * Implemented tabbed mode for IGS interface. Tabs can be torn-off by double-clicking or via popup. Move tabs via drag&drop or popup. The old multiple-windows mode is still available, see option in Preferences. There are two variations of the tear-off available: One reparenting the window, one recreating it. The behaviour can be changed with a line "UseReparent=0|1" in the [IGS] section of glGo.rc. Default is 1 on Windows and Mac, 0 on Linux. The overall interface redesign is work in progress. * Added room selection dropdown box to the toolbar in tabbed mode. * Display MOTD in HTML news tab. The used HTML browser is either Internet Explorer (Windows only) or a simplified built-in viewer. On Windows this can be changed in Preferences. * Removed the "Close" buttons from various windows. They make no sense in tabs, and when running as standalone window just close it via the "X" in the titlebar. * Removed the "Font" buttons from various windows and moved all of them into a new tab in the Preferences dialog. * Added "Synchronize" button to the edit board, opened from observed games. This will update the scratch board to the current position of the live game. The "Edit" button in the observed game board will reuse an existing scratch window instead opening subsequent ones for each click. * Rewrote the update check and made a new dialog. Translations (except English) can now be downloaded and installed, to make life for translators a bit easier as they don't need to have the translation ready at release date. * Fixed a bug in the players table when players outside of the selected rank range would still be displayed. * Added option (see IGS preferences) to reuse the player rank range for games, too. * Flash tell window in taskbar on incoming tell (Windows only). * Territory estimator now works on Linux with Wine. See manual for instructions how to enable this. * Bugfix: Bozo check was missing for incoming nmatch requests. * Added "Swap variations" and "Make main branch" to SGF editor. * Selecting "Observe" in the player popup menu will now also observe the currently observed game, though it will look for a played game first (as before). * Added a single instance check to reuse an already running glGo when dragging SGF files over the glGo desktop icon (tested with Windows and Gnome/Nautilus). * Added "Lock position" to View menu of the board window. Checking it on will save the current window position and reuse it for all new boards. * Added "F7" keyboard shortcut to focus the IGS terminal input line. * More reliable login check: Until login has completed, sending commands using the GUI will be blocked, to avoid accidently guest logins. * Bugfix: Freehand painting in the SGF editor on the 2D board only worked when cursor was enabled. * No statusbar text when loading temp SGF files (scorer, GNU Go etc.) * The "Save" menu/button in ongoing own games now sends the "save" command to IGS instead saving a SGF file. * Print "Disconnect from IGS" message to Shouts display. * Turn off sound in observed games when starting an own. * Added encodings to pythonlib.zip for Windows 9x compatibility. * Added a third sound engine: Using system default sound provided by wxWidgets. This uses simple Win32 API for .wav files on Windows, Quicktime on Mac and OSS on Linux. While Quicktime has good quality, the quality on Windows and Linux is poor. But this should work on all and every computer and is now the new default. OpenAL and SDL Mixer will stay available. * Updated wxWidgets to 2.6.2 * When sorting games by rank, do a secondary sort on white name to avoid randomizing the list. * When closing a GNU Go window, wait until GNU Go terminated itself. * Support for new undo system. * Added bozo check for comments in review games. 2005-08-22 - Version 1.3.1 * Added Czech translation, thanks to Chejnik. * Fixed bug in nmatch dialogs: Preselected handicap was not correct when matching a player with a "+" rank. Also 5k? vs. 5k should be nigiri, not black. * Support for nmatch disputes. * Handicap in nmatch games on non-19x19 board works now. * Added the "?" stats button and the game history display to the nmatch dialog. * Changed nmatch dialog "Cancel" button to "Decline" for incoming requests and disputes. * Rewrote the way the territory estimator is called, which should hopefully help against possible crashes. * Fixed disappearing marks from territory estimator when resizing or moving the window. * Fixed a miscalculation in the territory estimator. Dead stones would only count as one point (capture), but not as territory. Obviously wrong. * Territory estimator now correctly handles handicap games. * Play system sound when you are "beep"ed. * Disable connect/disconnect menu depending on the connection state. * Fixed possible crash when calling the GNU Go score estimation under Windows 98 (Windows 2000 and XP were not affected). * Added possibility to select custom background image in the "Display options" dialog. This should make it easier to use the great background images provided by ChiyoDad. * Support for Komi changes in own games. Also, hopefully all the komi issues with various languages using "," instead of "." for the decimal point are now fixed. * Support for 5-minutes disconnect rule. Display some dialogs to inform the user what is going on and why. * Fixed bug with kibitz from "+" accounts. Missed that in the newrating change. * Added -debug commandline option. Will write all communication with server to debug log. Disabled by default. Start with "glGo -debug" to enable this feature. * Added -noport commandline option, replacing the previous option in the preferences dialog. This prevents glGo listening on localhost:9998 for connections used by the open_sgf.exe/py program, which is meant to open SGF files in an already running glGo without starting a new instance. The whole mechanism should be rewritten. * Never display those SYSTEM messages in a tell window, even if they are not handled. Just print to terminal instead. * Linux only: GLGO_SHARED_PATH environment variable now also accepts a list of paths in the form of: /usr/share/glGo/:/home/peter/.local/share/glGo/. Required for the new autopackage installer, as the environment variable could contain more than one directory if glGo was installed both local and system-wide. Added the missing python scripts (players_gui.py, open_sgf.py etc.) to the autopackage. * Update window titlebar on next played move, when the title of a broadcasted game was changed after observing already started. * Redesigned the gameinfo dialog a bit. No changed functionality, just moved the textareas around so the Date and Place fields get more space. * Bugfix: Bozo check in shouts only killed the output in the shouts window, but not in the terminal. * Display own shouts when typed as "shout foobar" in the terminal. IGS gives no feedback on own shouts, so we need to fake some output. * After own games finished, use "tell" instead of "say" when chatting in the sidebar. * Added ability to double-click on a player in the glGo Playermanagement window. Will send "stats " to IGS and then open the playerinfo dialog once the stats feedback came back. * Mac only: Changed the keyboard shortcut for Playermanagement in the IGS mainwindow from Apple-M to Command-M, as Apple-M is by default attached to Minimize window. Windows and Linux shortcuts are still Control-M as before. * Prevent the logfile from growing infinitely: Check size of $HOME/.glGo/glGo.log. If > 500 KB, rename to glGo.log.old and delete previous glGo.log.old if it existed. * Removed the "Delete move" toolbar icon (the trashcan). Function is still available through the Edit menu and Control-D keyboard shortcut. * Fixed the toolbar buttons which were not properly disabled for certain board types. * Fixed the occasionally wired scrolling behaviour on Windows, when the complete text would scroll up with only the last line visible on the top. * Adjust komi according to handicap when starting a GTP game. * Linux: Better compatibility with Gnome themes. * Added possibility to configure some aspects of the marks in the 2D board, as requested by frankiii who created a glGo skin: Create a directory share/data and move share/config.ini to share/data/config.ini. Edit share/data/config.ini. * Fixed some possible crashes when opening a playerinfo dialog and closing the parent window quickly. * Keep menubar when switching board to fullscreen. * Linux only: Append ".sgf" to the default filename when saving a game. * Support for "addtime" command: Time is now added to clocks before a move was made, info message is displayed in the game window instead the terminal and saved to SGF. Added right-click popup menu to the opponents clock in own games. * Send "channels" when opening the Channel window, it is empty and you are currently not in a channel. * Check for tell buffer limit and notify user if exceeded. 2005-07-18 - Version 1.3 * Support for new "seek" command on IGS. * Fixed bug with review games and new rating: Observing reviews using an account with a "+" rank didn't work properly. * Create adjourn messageboxes as subwindow of calling game window, no global dialog. * Bugfix: SGF parser got confused by whitespaces within property values, like "AB[aa] [bb]". * Merged the formerly two connect/disconnect buttons into a single button. * Games and player windows now automatically refresh themselves when being opened. * Linux only: "Open glGo webpage" from the Help menu now uses BROWSER environment variable as fallback if the html mimetype wasn't found. 2005-07-10 - Version 1.2 * Support for new rating system. * Bugfix: Nmatch dialog might wrongly display the byoyomi style. * Added option to toggle the ghost stones displaying variations in the offline editor. * SGF parser bugfix: Old FF[3] "L" labels textmarks were not properly read. * Strip whitespaces from player names when adding/removing friends/bozos. * Added "freehand painting" in the offline editor: Keep the mousebutton pressed to keep adding or removing stones or marks. * No "Do you want to save?" confirmation for games which had been adjourned. * Adjusted Rooms dialog to use new IGS protocol to display free game rooms. * Updated wxWidgets, Python, SDL and Plib libraries to recent versions. * Redesigned gameinfo dialog. Added validation to the Time field, accepting time only as number (time in seconds) or formatted as mm:ss to prevent invalid SGF time values. * Changed the behaviour when IGS games finish. Instead of instantly switching to offline editor mode, keep the frame as it is and change the buttons in the sidebar to "Review" and "Edit", allowing to quickly open a new review window or just switch the existing board into edit mode. I found the automatic sidebar switching from ver 1.1 annoying, and it's mostly unnecessary. * Bugfix: Resizing the tell window when there are some lines of text in the output area made the buttons vanish. * Bugfix: Territory markers over dead stones might display the wrong color. It was correctly counted, but the color for drawing the mark could have been wrong. * Added territory estimator, found in menu Edit - Estimate territory. Windows only. Sorry, there is currently no way for a Linux/Mac port. The feature is using an external library, and I only have a Windows version of it. Apologies to all Linux and Mac users. Please see the manual for details when the estimator is available. * Removed autohide and tray icon options on Windows. Confused too many people who thought glGo doesn't quit properly, but enabled that option without understanding what it means, didn't figure out what that tray icon does and finally complained glGo is buggy. Instead you can now hide the start frame by clicking the "X" button in the window bar. As long as other windows are still open, glGo won't quit. If the last window closes, glGo quits. The behavior is now identical on Windows and Linux. Mac behavior was not changed. If you "X"'ed the start window away, you can get it back with a new menuitem "Show start window" in menu "Windows" of the IGS mainwindow. You can also toggle it off there, that's exactly the same as clicking the "X". * Bugfix: Negative komi didn't display properly in games table. * The "Display Info dialogs" option in the IGS preferences now also defines if the feedback for outgoing match requests is displayed as messagebox or only in the terminal. Some users considered the additional messageboxes annoying, so feel free to turn this option off. * Removed those items from the playerlist popup menu which would only show in the terminal. Too confusing. * Fixed wrongly mirrored marks when loading UGF files with Japanese coordinate system. * Added a new tab "My account" to the Playerinfo dialog of your _own_ account with easy access to the toggles and password/email changing (a common topic of confusion). When changing password, the new password will automatically be updated in the glGo config; this also works when typing "password " in the terminal, not only from the dialog. When changing email, there is a wizard which guides through the procedure of re-registering, getting the new password via email and copy&paste it from email to glGo. * Bugfix: Room ids with 3 digits were not properly handled. * Changed client id to include operating system: glGo--- * Remove possible dead stone marks when playing a move or passing. Those marks only vanished before when navigating away from a scored node, not when playing a new move. * Added a new standalone tool to the installation: sgfsplit - This allows to split a SGF file containing a game collection into a batch of single files with one game each. Simply drag&drop a SGF collection file on splitsgf.exe or run "splitsgf.exe|py ". * Found a way to speed up opening the playerinfo dialog. * Added search-move-by-position: Alt-leftclick or Control-leftclick on the board and if there is a move played at this point -within the main branch- it will go to this node. Maybe implement searching inside current branch for a future version. * Linux-only bugfix: Fixed possible crash when using the Tree window. * Bugfix: Save own "say" lines to SGF * Removed the "Defaults" section from the playerinfo dialog. Useless information now with the new nmatch conditions. * Fixed a possible (rare) crash when observing review games. * Added "Invite to review" to the popup in the player table (only appears when reviewing). * Minor fixes to review control and access system. * Mac only: Start window can now be minimized and closed. It could not previously due to a bug in wxMac which has been fixed in the latest version, so no need for a workaround anymore. * Fixed automatic move numbers which would add several numbers on the same spot when a Ko occurs. * Fixed a possible crash when closing a GNU Go game window. * Block the Refresh button in the players and games lists when an update is already in progress. * Had to redo the layout of the players and games windows due to changes in latest wxWidgets release. Some ugly workaround was required: When resizing the window, the progressbar will appear. This is no bug, this is required else the Refresh and Close buttons snap all to the left. * Replaced the popup on the player name textlabel with a small "?" button right of the name due to another change (bug?) in latest wxWidgets release: Textlabels don't fire mouse events anymore on Windows. Not so pretty, if I can change it back to the old version somewhen again I will do so. If this button annoys you, turn it off: Open the glGo config file ($HOME/.glGo/glGo.rc, find section [IGS] and add a line: NoStatsButton=1. 2005-01-12 - Version 1.1 * Implemented support for nmatch command. * Added Spanish translation by Alberto Hernando. * Replaced all textarea classes, removed the previous Scintilla textarea with wxWidgets textareas, as Scintilla fails to display Asian fonts properly. * Don't print those wired login characters to the terminal, which caused a crash on some Linux systems. * Added "Goto move" menuitem to the editor window. This navigates to a move given by move number in the main branch (maybe using current branch instead is better?) * Fixed the subwindow/parent mechanism of the Playerinfo dialog so it doesn't always open as child of the terminal window, even if it was called from the player table. * Make sure incoming match dialogs are always shown on top of the window stack, previously they were hidden below for example an observed game window. Stack match dialogs so they are easier to find. * Changed the buttons of the start window to use system theme color (looks better on WinXP). * Fixed the bug when glGo wouldn't shutdown completely after playing a GNU Go game. * Added a check so the saved sidebar width won't exceed 1000 pixels. * When disconnecting, distribute a message to all open boards. * Mac: Fixed a possible crash when exiting glGo with the IGS window still open. * Expand the tree list root item after loading a SGF. * Keep treelist off by default (irrelevant when updating glGo and a config file already exists). * Workaround for the not properly adjusting scrollbars in the players and games table (currently broken in wxWidgets) * SGF compatibility fixes: Always write a komi like "6.5" even if the current locale would use "6,5" (German for example). Convert time format like "1:30" into "90". * Workaround for the Windows Save-As overwrite prompt: If the user types the filename without .sgf extension, the dialog would not prompt if the file with extension already exists. Disadvantage: The overwrite confirmation happens after the filedialog is closed, but this is better than losing a file. * Don't prompt "Do you want to save..." in GTP games. Annoying and useless. * Support for GTP resign command (implemented in GNU Go 3.6) * Better scoring mode for GTP games. After two passes, the "Pass" button will change to "Score" so manual scoring mode can be enabled like in the SGF editor. * Changed minimum boardsize from 9 to 2. No reason not to allow tiny boards, though I doubt it makes much sense. * Added a confirmation dialog when removing an IGS account after I accidently clicked "Remove" instead "Add". :) * Updated to wxWidgets 2.5.3 * Print wxWidgets version to logfile * Display own shouts in the terminal when typed in the shouts window (own shouts are not echoed by IGS, so we have to simulate them) * Bugfix: Games table didn't display >= 1000 observers properly * Deiconify IGS windows (players, games etc.) when necessary. Makes no sense if a window is brought to front but still minimized. * Windows only: Changed the tray icon. Recreated the glGo desktop icon with IconSushi. * Added a popup menu to the games table. Hopefully more obvious how to start observing now. * Removed some bogus warnings (system bell) which occasionally occured when observing a review. * Play system bell when playing an invalid move in a review (occupied spot, zero-liberties). * Replaced Ogg with Wav format sound files on all platforms. Ogg doesn't work well on Mac and some (most?) Linux distros ship OpenAL without ogg support. * Made SDL Mixer the default sound system on Linux. * Fixed SGF reading errors: - Empty nodes (like ;;B[aa]) messed up variations (both the old and new parser) - Nodes with only Node name property (like ;N[Foo]) messed up variations (new parser only) - Root node with comments created a dummy pass (new parser only) - Smileys like ";)" in comments could confuse the parser (old parser only) * Centre and stack Playerinfo dialogs on screen, not on the parent window. This looks odd when opening from the player or games table. * Don't show the flags checkboxes in the Playerinfo dialog when there is no active flag. * Fixed the annoying behaviour when the board got the focus after moving the mouse from the tree window back over the board. * Removed the "GTP" menu from board windows, it will only occur in GNU Go boards now. Moved the "Guess score" item into "Edit" menu. * Show notification in sidebar when observed games adjourn. * Opening the glGo webpage from Help menu now uses the configured default browser on Windows instead of always IE. * Sort friends/bozos alphabetically in the glGo built-in Player management dialog. * 2D board: Number/text marks now check if a transparent stone is underlaying and adjust color and transparency. * Bugfix: "Trail" in the player popup menu wasn't disabled properly when the player disconnects. Also, once one player was trailed, the popup showed all players trailed. * Added option "Force scroll" to IGS preferences. If enabled (default), all textareas will ensure the last appended line is visible. Disable this if scrolling causes problems for you. * Client id now includes the used locale: "glGo-EN 1.1", "glGo-DE 1.1" etc. * Fixed "Clock does not start" bug when observing games with zero moves. * Stop clocks when adjourning own games. * Added a popup menu to the player names above the clocks in the sidebar. Right-click on the name to get a popup menu for quick-access to Stats and Tell. * Switch board to offline editor mode after an IGS game has finished. * Added a button to easily start a review after an IGS game has finished. The "Pass" button in the sidebar will switch to "Review" for this. Clicking this will create a review from the last played game and send an invitation to the opponent to join the review. * Parse review add/delplayer message and display current review players when clicking the "Observers" button in the sidebar. * Formatted the observers output in the kibitz textarea. Only one name per line is shown, so this should be more readable now. Observers output is not anymore saved to the SGF file. This needs some more work, like sorting by rank. TODO for next version. 2004-06-10 - Version 1.0 * Mac only: Disabled the localserver mechanism, use AppleEvents instead. Much better. Works with the "Open game in glGo" feature in Playermanager now if glGo is not yet running. * Mac only: Disabled the Fullscreen menuitem in the board window, does not work. * Mac only: Enabled the new SGF parser. But it has some trouble with Kogo on Mac, most other SGF files I tried worked fine. I don't know what's going on yet, the same code runs without problems on Linux and Windows. So on Mac the new parser is disabled by default (unlike Windows/Linux). * Mac only: Append ".sgf" when saving. Windows and Linux file selectors do that automatically. * Mac only: Don't manage last used load/save directories, OS X does that automatically * Mac only: Added build for Jaguar. Unsupported, I don't run Jaguar myself. * Added a Home icon to the toolbar of IGS game boards, allowing to raise and focus the IGS terminal window quickly. * Fixed a possible corruption of the friends/bozo list. When a corrupted database is loaded with this version, it is automatically fixed and corrupted entries removed. * Changed the shortcut for Delete-move back from Del to Ctrl-D (see changes in 0.1.1), because when using Del to delete text in the comment editor it would also delete the current move. Argh! * Bugfix: In teaching games typing in the kibitz input textarea would send "say" instead "kibitz". * Show game ID in titlebar of teaching or replay games. * Review changes: - Fixed reviewing 13x13 and 9x9 from SGF files - Display player names, ranks and result in reviews from SGF files - Autosave observed reviews in observed games directory, not own - Added a dialog to configure open-observe and open-kibitz. You find it in the toolbar and Settings menu of the review game window. - No ghost cursor when observing. - Fixed the tree list which showed some "@0" garbage for empty nodes. - Change "Pass" button in sidebar to "Edit" in observed reviews, so you can easily open a local editor to look through the game. - Enabled "Control" button, the review owner can now temporary give control to an observer. Clicking on the button again will take control back to the owner. - Right-click on the "Control" button in the sidebar of own review games opens a popup with a couple of actions: Invite user, configure access, kick user - Together with latest update to IGS, the server will now determine the move color automatically, which fixes the clicked-too-fast problem when stones were played with the same color. * Updated to wxWidgets 2.5.2. Linux note: The new wxWidgets using GTK-2 has trouble with Unicode, so the GTK-2 build is currently non-unicode. This means Japanese characters are not displayed on Linux properly now. I hope to fix this for the next release. * Support for Windows XP themes. * Windows/Linux: Updated SDL and Plib to latest version (SDL 1.2.7, Plib 1.8.3) * Added sorting by Play, Observe and Idle in the players table. * In games table display observed games in blue, own games in red, observed reviews in green. * Add number of guests to the Total display in player table when "Skip guests" is enabled. * Slightly changed the commandline history (cursor up/down): When you type a command but did not sent it yet, then scroll up and down, the unsent command will appear again. Was too annoying to lose long lines of tell by accidently hitting cursor-up. * Enabled the teach item of the SGF games popup in the player dialog, added review item. * Implemented support for look, enabled look in the popup of the stored games list. Typing "look foo-bar" in the terminal will open a new board window showing the position. * Remove games from the stored list in the player dialog after resigning. * Automatically add autosaved games to Playermanager game index. * A couple of updates to the manual. * Added the missing items to the player popup menu. Identical to gGo now except automatch which is not implemented in glGo yet. * Added save buttons to Shouts, Channels and Tell windows. * Implemented support for trail. * Display game id for IGS games in titlebar of various information dialogs. * Bugfix: Pro ranks were ignored when parsing the toggle-quite-false messages. * Fixed a bug when a dummy board would open when doing undo in move 0 in teaching games. * Open a tell window when sending a "tell" manually from the terminal. * Cut trailing "*" from player name when calling stats from the player table (replay games). * Disable unused navigation buttons in the toolbar, depending on the type of the game. * Allow usage of backward/forward toolbar buttons in teaching games. * Don't confirm when closing a local board which was opened via Edit button in observed games. * Remove the ghost cursor from last spot when the mouse moves over an occupied position. * Changed the time warning treshold max from 60 to 999 seconds. * Bugfix: Update gameinfo handicap value in IGS games. * Bugfix: Fixed custom flag selection in the player table, see Playermanager ChangeLog. * Only show messagebox for adjourned observed games if the "Show info dialogs" option is set. * Just write "Failed to load OpenAL/SDL sound system" to log instead of showing a messagebox. * Bugfix: After "Back to main branch" action forward navigation still went into the variation while it should go into the main branch. * Mac: Use "Help" key instead of "Insert" for "Back to main branch" action as the Apple keyboard has a Help key where PC keyboards have Insert. * Mac and Windows 95/98: Playing GNU Go works now without crashing glGo * Rearranged the buttons in the Channels window, so the less important buttons are on the left side which vanishes first when making the window smaller. * Redesigned the button bar of the players window a bit, so the window can be properly resized. * Instead sending "ayt" send alternating "user" and "games" commands every 5 minutes to prevent disconnection and silently update the players and games data (same behaviour as in gGo now). * Add a line "Running on " to the logfile. * Fixed the "mini-window" bug on Windows XP which occured when you closed some window while it was minimized. * Added an option to let the user confirm deleting nodes in the offline editor and review games. See preferences dialog, first tab. Default: Disabled * Added support for vote (new IGS feature) * Bugfix: When clicking on a child of the current move, don't add a stone to the tree list and play no sound. * Fixed the "Game 0" bug in observed games when observing at move zero. * Underlay text and number marks with a raw kaya image (no grid and starpoints) to make the marks easier to read. 2D board only currently. 2004-04-05 - Version 0.1.1 * Fixed captures bug in review games. * Show shadow stones for variations in review games. * Don't reset the player and games table column sizes when refreshing. * Changed the "Windows" menu of the IGS terminal frame. Instead of toggling the subwindows on or off, it will show and raise the selected window. The toggle buttons of the toolbar still toggle, though. This behaviour is closer to gGo and makes somewhat more sense. * Replaced gGo icon with a new glGo icon. * Reworked the menus in the IGS terminal window to make them more similar to the gGo menus. Added a menu item "Create review" to start a review or teaching game. * Added "Observers" button to the review sidebar (teacher only for now until next server update). * Enabled Control check for review games. There is no sophisticated GUI for this yet. TODO. But it works when typing the commands in the terminal. * Added sorting of the games table by game type. Sorting is not alphabetically because of translations, but by some internal type representation (rated=0, free=1 etc.) * Fixed a possible crash when unobserving a review game. * Autosave reviews (like other games) * When the owner quits a review (after the confirmation), the window is closed. So one doesn't need to click the close button twice. Autosave should take care of "Oops, forgot to save it". * Removed the beep sound, use system error bell instead, so it is more obvious the sound indicates an error. * Changed the red background of the SGF editor "Edit" buttons in the sidebar. The old version did not show a red background on Mac at all, and on Linux and Windows XP with some themes. * Reviews now support boardsizes different than 19. Review komi is propely read. Review handicap will switch the first turn to white. * Bugfix: When navigating with the tree, handicap stones got lost. * Use Delete key instead Ctrl-D as shortcut for delete move. * Double-click play now only applies to IGS games and GTP games, not the SGF editor. * Don't ask twice when exiting with more than one modified board. * Properly reset "Score" button when creating a new game in the editor. * Some fixes to clocks. They should now display byo-period transition properly and be properly set when reloading a game. * Changed "Byo-yomi" to "Time" in the sidebar Info tab, format time values given in seconds (by SGF standard) into something like 10:00. This is more meaningful than "600". 2004-03-31 - Version 0.1 * glGo is now available for Mac OS X. There are a couple of issues still to be solved for Mac, see the Readme-Mac file which comes with the glGo/Mac distribution. * Implemented support for client time as netlag compensation. * Support for IGS reviews. Work in progress, this needs some beta-testing. * Added conversion from long to short SGF notation and handling of territory marks (TW/TB) to the new SGF parser. Fixed parsing of SGF files with DOS linebreaks which were not properly read. The new native parser now has the same functionality as the Python version. I will keep the Python parser available for a bit. If the new has any problems, the old version is a reliable fallback. See notes for rc3. * Bugfix: Don't add passes as variations when navigating through earlier moves in observed games. * Added automatic, periodic updates of the games list using the "toggle-quiet-false" messages, quite the same behaviour as in gGo. The update frequency can be set in the preferences dialog. Default: 130 seconds (not 120, so it won't overlap with the 60 seconds player table update) Set to 0 (zero) to disable updating. The terminal window must be reopened for this to take effect. * The Linux fix to the manual TOC in rc3 broke the Windows manual... Hopefully both work now. * glGo won't crash anymore on Linux if the gnugo binary was not found when starting a GTP game. This fixes the Linux gnugo problem mentioned in the manual and Readme file. * Fix: The mirrored F7 shortcut in the tree window did not work on Windows. * Centered the font in the tree window on Windows. Obviously fontsize calculation works different on Windows than on Linux, as on the latter the fonts were properly centered. * Better scaling for OpenGL text marks. Not yet perfect, for example "1" is not exactly centered. * Fixed IGS games list which failed to display tournament games properly. * Removed the "Connection lost" messagebox. You see the disconnection notice in the terminal window, and the modal messagebox was sometimes opening in the background and blocking the GUI. * SGF parser does not crash anymore (endless loop) when loading some certain invalid SGF files. * Another change to the 2D board circle marker. * Don't draw the last move marker if there is already a SGF mark on the position (looks annoying with the SGF circle mark from CGoban2 files). * Added option to select single or double click to play moves. This only applies to normal play mode, not to adding marks or when scoring. * Changed the right+mouse motion for rotating and moving the board to control/shift + mouse motion as right button + mouse overlaps with the mousewheel navigation. That brings the old problem back that people don't "find out" how rotating the board works (reading the manual helps). But I suppose navigation is more important that board rotation, so navigation gets the mouse without the keyboard modifiers. 2004-02-22 - Version 0.1-rc3 * Ported Python SGF parser to native code. This is much faster (loads Kogo in ~2 seconds). As the new parser probably needs a bit testing, I kept the old Python code available. You can switch between both in the preferences dialog, where "old parser" means the slower but more stable and mature Python code. You won't see much performance difference when loading normal games, but it's significant on large files like Kogo. The time needed to load a file is written to stdout, if you are curious. Default: New parser - else I will never get any bugreports. * Added "All game formats" filter to the file-open dialog. This shows SGF, UGF, XML, MGT and Ishi formats. Much less annoying than switching for every file to the right type if you want to open several non-SGF files. The new filter is now the default. * Fixed broken Komi when using German or Dutch locale. When loading a file with "6.5" it will be properly transformed to "6,5". However, even if using German or Dutch, glGo will always save the form of "6.5" to avoid confusing other SGF editors. This fix also adjusts the wrong "6.0" komi values in the IGS games table. When using English locale, none of the above is relevant. * Don't escape ":" in comments when writing SGF. * Changed IGS ayt timer delay from 5 to 10 minutes. Sufficient to keep you online. * Added new tab "GTP" to the preferences dialog where you can change the GTP engine and arguments. For GNU Go the arguments must include "--mode gtp" else things won't work. * Fixed the "Do you want to resign?" dialogs which were assuming "Yes" if you just closed the dialog using that 'X' button in the titlebar (thanks, Ed!) * Mirrored the "F7" shortcut in the tree window for convinience to avoid the need to focus the board window first when hiding the tree window via F7. * Bugfix: Properly initialize the small tree nodes size if "Show nothing" is selected. * Fixed the segfault on Linux when loading a XML game (worked on Windows, oddly) * A couple of fixes to the XML parser, handles multiple branched variations properly now. Don't omit an element if "at" or "number" attributes are missing. glGo does not (yet?) support some of the XML features supported by Jago, like multiple games in one file. * Fixed the HTML manual on Linux which didn't link the pages from the TOC properly anymore since last release. 2004-02-09 - Version 0.1-rc2 * Fixed kibitz saving in observed IGS games. It got messed up while navigating through the game. * Added option to set sidebar comment/kibitz textarea font. See menu Settings in the board window. * Updated dutch translation, many thanks to Maarten Derksen. * Windows: Fixed the glGoUpdate.exe tool which failed to connect to the right webpage (typo, argh). * Implemented mousewheel navigation support. Roll wheel for next/previous move, roll wheel & hold right button for next/previous variation. Mousewheel doesn't seem to work on Linux, the wheel events in GTK (actually button-4/5 press events) are never called. I have no idea why. * Use Shift & mousewheel to zoom the 3D board. Use Ctrl & mousewheel to change the fovy angle. * Added more keyboard navigation controls: 'PageUp'/'PageDown' moves to start of branch / next branch. 'Insert' moves back to the main branch. This is basically the same behaviour as in gGo. * Linux: Changed the new tree selection from hilite to another stone image with circle, like the Windows build of the last version already worked. * Changed the shortcut for coordinates from Ctrl-C to Alt-C as Ctrl-C interfers with the shortcut for Copy text in the sidebar. * Fixed broken coordinates in the 3D board if the boardsize was smaller than 19x19. * Added popup menus to the stored and SGF games lists in the playerinfo dialog. Not yet implemented are "Look" and "Teach", these actions are currently disabled. "Load" and "Resign" are only available for your own dialog. 2004-01-31 - Version 0.1-rc1 * Fixed possible crash when disconnecting from IGS. * Bugfix: Don't save a pass as first move to SGF. This bug was new in 0.0.8.2. * Some improvements and fixes to the tree display: Properly calculate y-offset according to branch length. You can toggle this using the "Sloppy tree" option. Added an option to display move number, move position or nothing, in last case the stones will be drawn much smaller. See popup menu in the tree window to configure these options. Fixed navigating to root node. * Added another tree display variant: A windows-explorer-style list embedded in the sidebar. This is meant as additional feature, not as replacement, to the tree introduced in last release. This is still somewhat experimental. * Removed OpenGL scissor test. Did not work well and caused too many complications. * Added a third OpenGL stone quality setting: High, Low, Very low. If you have serious performance trouble, try Very low setting. Doesn't look too bad if you don't zoom in much and is significantly faster. Default: High * Fixed the text scrolling in the sidebar, shouts and tell frames. When a line was wrapped the scrolling was wrong. This was most noticable in the sidebar with many kibitzes. * Added support for SGF extension SR (star). Only displayed in the 2D board, 3D board shows it as cross. * Added support for node names to the SGF parser. You can edit them in the new tree list by clicking on the text of a tree item. Node names are now also written to SGF files. * Ignore duplicate SGF game headers (workaround for broken WinMGT files). * Bugfix: New SGF parser in 0.0.8.2 showed all marks as textmarks. Argh! * Remove escape chars when reading SGF comments. * Replaced the IGS terminal toolbar buttons with toggle buttons like in gGo. * Enabled the Number editing tool in the sidebar. Added support for number marks (basically same as text marks, but it's quite convinient to have two editing options). * Disable "Ok" button in the gameinfo dialog when it is read-only (IGS/GTP games) to avoid confusion. If you want to edit some IGS game, clone it with the Edit button and then edit the clone. There are simply too many things to break when editing data like komi or handicap in an ongoing IGS game. * Added a small Update utility to the Windows distribution, strongly inspired by Java Webstart and the NSIS update tool. It can connect to the glGo webpage, check for a new release or patches and download and install them. This is completely optional, you can check the webpage and download the installer manually and get the same thing. Somewhat experimental at the moment. The update tool will only connect to the glGo webpage if you run it, glGo will never establish a net connection without the user telling it to do so. I hate software which calls home without asking. 2004-01-24 - Version 0.0.8.2 * Rewrote the SGF parser in Python. The new parser is faster and hopefully more robust. It supports loading Kogos Joseki Dictionary. glGo does not aim to be a SGF syntax lawyer. It will accept a couple of invalid SGF properties, otherwise loading Kogo (which has a lot of) would never work. The new parser supports the old long SGF format which is still used by some editors. If you load Kogo, it will take some seconds. glGo won't react meanwhile. However, Kogo is loading, glGo did not crash. Loading Kogo takes 8-10 seconds on my old PII 330 MHz box, this is acceptable. * Added tree display. It supports branch folding, see the manual for details. The tree window can be opened from the View menu in the board window. Note on Kogo: While the new parser can properly load it, the new tree has trouble displaying this huge file. I recommend to close the tree window before loading Kogo and navigate it without the tree. The tree works fine on GTL reviews and similar files, though I am not yet pleased with the folding behaviour. Work in progress. * When playing a move which already exists as son of the current move, don't add it as new variation but instead navigate to the existing move. This is the behaviour in gGo which makes more sense to me. (Thanks Michael) However, sometimes you might want to force the creation of a new branch even if the new move already exists: Use shift-click to play this stone to force a branch. * Bugfix: Bozo kibitzes were not filtered. * Yells from bozos are now filtered. * Fixed small memory leak in player table. * Confirm closing the board or exiting glGo while playing a GNU Go game. * Fixed a possible crash when closing a GNU Go window. * Linux only: Fixed broken GTP scorer (Unicode problem) * When saving a GNU Go game, use "GNUGo" instead of "GNU Go" for the default filename, else resuming that game won't work because of the space. * Bugfix to UGF importer and converter: Marks appeared mirrored on the y-axis * Bundled the Playermanager into the Windows glGo installer as optional install package, redid the Installer a bit. OpenAL installation can now be omitted. Windows executables for ugf2sgf, ishi2sgf, ggo2pm are also included. These have no GUI, but you can simply drag&drop .ugf or .go files or whole directories on the executables. Or create a desktop link and drag&drop files there. * Linux only: Disabled the UTF-8 SGF writing for now, doesn't work properly. SGF files will be saved using the users current encoding, which is ISO-8859-1 (the SGF default) for english. * Fixed a possible crash with certain SGF files (pass encoded as 20/20, then trying to draw a stone outside the board). * Removed the progress dialog when loading a SGF file. Too annoying and the game is usually loaded faster than this dialog needs to be created. Maybe a check for file size and if it's large show the dialog. Not urgent, do later. * Fixed the annoying behaviour when modal dialogs blocked the IGS connection. * Automatically select colours in outgoing match requests depending on the rank (if the rank is known to glGo, "toggle quiet false" should help). If ranks are even, you take black. 2004-01-10 - Version 0.0.8.1 * Fixed the comment saving again. Now it always saves comments, regardless of you navigate or type return or not. (Thanks Jarkko) * OpenGL "Render to Texture" option got removed, caused too much trouble. "Blur" option is also removed, as it relies on render to texture. * Added background image to OpenGL board. If you want to use another image, see the manual how to do that (chapter "Usage"). * Fixed OpenGL shadow depth artifacts. * Fixed some wired OpenGL bug: When opening a new board sometimes the last scene of a previously opened board was still somewhere in the OpenGL cache. No OpenGL problem, certainly a problem in my code. I hope this is solved now. * Changed the OpenGL default rotation, so the initial board is slightly rotated. Backspace key still resets to a top-down view as before. It will still save the last rotation data, so this change only applies if you install glGo from scratch or delete you config file. * Fixed Ishi converter: When there was a mark in a move, some other properties were ignored. * Fixed the IGS broadcasts which were not displayed in the terminal window anymore. * Bugfix (Linux only): Don't crash when opening a game with open_sgf.py or from the player- manager games list. (Unicode problem) * A couple of minor GUI layout fixes for GTK 2. * Fixed broken clock layout when the hour was greater than 1 hour. * Added game history to the match and playerinfo dialogs. The data is taken from the SGF file index in the playermanager. Obviously you need some SGF game collection for this feature to work properly and create an index from it. You need Playermanager 0.0.6 for this feature. See playermanager documentation. (Thanks Jarkko) * Linux only: Changed the sometimes broken CP-932 conversion, see changelog of 0.0.8. It is still occasionally behaving wired, but at least it doesn't crash anymore. * Do not periodically update the player table when the window is closed - it's somewhat costly with "9p-NR" set and 1800 users online. * Some manual updates - does anyone read it? :*) * Windows only: Fixed crash when trying to play GNU Go or calling a GTP score process but gnugo.exe was not found. A wizard will ask for the path of gnugo.exe and then try to repeat the operation. The best solution is to drop gnugo.exe into the glGo installation folder. The whole gnugo process starting is still messed on Linux. But if you have gnugo in your PATH, things will work fine. 2004-01-02 - Version 0.0.8 * Linux only: glGo now uses GTK 2 instead GTK 1.2. It integrates nicely with GTK2 or Gnome themes. * Linux only: Added support for Unicode. glGo can now handle and display the Japanese characters you see on IGS, provided you have the proper fonts installed. Please note this is pretty experimental at the moment. The IGS telnet stream is converted from CP-932 encoding into Unicode. However, _sometimes_ this conversion fails and glGo crashes on the first Japanese character. You will notice the conversion fails when you get lots of wired characters in the terminal (you will always get one wired character right after login, this is no problem). If this happens, just connect again, in most cases this fixes the issue. I need to verify this with the IGS developers. Why not on Windows? The wxWindows regex library used by glGo is not yet Unicode aware on Windows. The next wxWindows release will support this. I will wait until this is available, I don't want to use unstable wxWindows CVS builds. * Linux only: Save SGF files in UTF-8 and set the CA SGF property. The encoding to write SGF files should be customizable, this is on my TODO list. At the moment it will just always use UTF-8. As glGo on Windows doesn't support Unicode yet, using encodings for the SGF makes no sense. * There is a new "Language" setting: "System default" (you might need to set it to german or dutch again if you used this). The difference is, with "System default" it will use your default locale, so the texts provided by wxWindows and GTK 2 will be in your language. For example, your system default is french, then it will use a french locale and show french GTK 2 texts, but not show french glGo texts (at least not until a french translation is provided). If your system default is english/german/dutch, then setting language to "System default" or "English/German/Dutch" makes no difference. * Added support for loading Ishi format games (usually .go suffix). A standalone ishi2sgf converter is also available. Unlike the UGF and XML parsers, which really parse and directly load the game from UGF/XML, the Ishi format is silently converted into SGF and then the SGF loaded. The Ishi converter is written in Python. Saving games in Ishi format is not and will not be supported. * Replaced the IGS terminal output textarea with a styled textcontrol. * Bugfix: Added/removed stones (SGF AB/AW/AE tags) were not updated when switching through variations. * The clocks got a larger and bold font. * Bugfix: Don't switch "Pass" button to "Handicap" when the game was resumed. * Removed the "Cannot find player" messagebox, too annoying. * Stupid bugfix: When typing a comment in the SGF editor, it was never saved. Argh! The behaviour is slightly different to gGo. gGo stores the text only when you navigate to another move (I should fix this). glGo will save the text whenever you hit 'return' or navigate to another move. Saving after every character input would be somewhat overkill. To make this clear: If you type "foo" and then save, the comment is not saved. If you play another move or navigate forward/backward, it is saved. If you type 'foo' the comment is saved without navigating. * Changed webpage from http://panda-igs.joyjoy.net/English/glgo/ to http://www.pandanet.co.jp/English/glgo/. The pages are identical, the second is a mirror of the first, but the second URL is on a faster server. * Bugfix: Don't open an empty board after a replayed game ended. * Fixed automatic SGF date, using SGF conform ISO 8601 format YYYY-MM-DD instead of locale dependent formats like YYYY/MM/DD or DD.MM.YYYY. * Automatically add date when creating a new game or opening an empty board. * Bugfix: Don't mark the game as modified right after loading. 2003-12-24 - Version 0.0.7.1 * Fixed STUPID bug with passing (support for non-19x19 boards broke that) * Changed rooms list, only show available rooms. Show entering and leaving players in players list. * Fixed Friends filter in player list, would not refresh properly if the "Ignore rank limits" option was set and the rank limits either 9p or NR. * Small change to the match dialog layout. * Added two Python libraries to Windows release which are required for the Jago XML parser if no Python is installed on the system. Updated all bundled Python libraries to latest Python release 2.3.3 * Added Exit to IGS terminal menu. * Bugfix: The channel window sent "yell \" not "yell \-1" when trying to leave a channel. * Show rank in the shouts printed in the IGS terminal (only showed them in the shouts frame). * Prepend move number to kibitzes. The won't appear in the SGF file. * Changed the focus behaviour of the tell window: When a tell is received, the tell frame will not anylonger grab the focus. This was too annoying when working in another window and the focus jumped to the tell window and especially annoying when chatting with more than one players on IGS. On the other hand, if you receive a tell and do want to answer, you probably need to select the focus manually first. * Don't show incoming tells in the terminal anymore. I mainly kept this temporary to see if the tell frame works properly. It obviously does. * Display "[Zotan is now offline]" etc. in the tell window like in gGo. This requires "toggle quite false" set on the server. * Replaced the output textareas in the sidebar, tell and shouts window with a class that supports rich text display, style player names in shouts, tells, kibitz and say bold. This has more potential, any message could be nicely formatted with colors, fonts, style etc. The new output textareas use Scintilla (http://www.scintilla.org) * Adjusted the circle markers of the 2D board. * Changed title of the IGS terminal to "XXX on IGS". * Fixed autosave, don't overwrite existing files anymore. A counter is appended to a filename if it already exists. Example: foo3d-bla2d.sgf -> foo3d-bla2d_1.sgf -> foo3d-bla2d_2.sgf etc. This is the same behavior as in gGo, so autosaving into the same directories from gGo and glGo will work properly. * A couple of minor fixes to new room support. * Bugfix: Don't crash when loading empty SGF files. * Added "Import SGF" option (see File menu in the board window) to import a SGF game from text. This is the same behaviour as in gGo, and I find it quite useful for loading games I received via IGS "mail me" command by copy&paste from the mail program into the import dialog. In most cases you can leave the mail headers in the text, the SGF parser should be smart enough to find the start of the SGF game. * Fixed the images in the start window, they lacked the alpha channel. * Added SGF list to the games tab in the playerinfo dialog. No popup menus for the three game lists yet, on TODO list. Split the games in Stored list into one game a line. * Added a filter to the player list which uses the customized flags from Playermanager. You need to reopen the IGS terminal window if the flags were (de)activated or renamed. * Fix: Don't overwrite the custom flags again when glGo quits if the flags were edited in the Playermanager while glGo is running. * Fixed SGF reader to accept passes from CGoban2 (CGoban2 uses valid SGF, but my parser read W[] and B[] as empty move, not a pass, because it appears this way in Kogo. However, Kogo is invalid SGF and CGoban2-files are valid SGF, so I rather comply to the SGF standard.) * Fix: Don't show a last-move-marker at 20/20 (which is a valid SGF move for Pass). * The "Remove marks" menuitem now also removes the marked-as-dead status of stones, so you can use this to fully a score process in a move. * Fixed window-opens-again-right-after-unobserve bug. * Fix: Played and observed games were not displayed in the playerinfo dialog. 2003-12-13 - Version 0.0.7 * Added support for IGS teaching games. * Implemented parser for Jago XML files. Read-only currently. Like the UGF parser this is written in Python. * Bugfix to the UGF parser: Coordinate system type property was ignored. Now also supports reading non-19x19 files (did not work due to another bug). * The 2D board now also grabs the focus when the mouse moves over the board. * Bugfix: Players with over 1000 wins/losses confused the IGS parser. * Bugfix: Don't change the sorted column in player/games table if sorting the clicked column is not supported * Implemented a timer to let the player table update itself periodically from the "toggle-quite-false" messages. The update frequency can be configured in the preferences dialog. Default: 60 seconds. Set to zero to disable updating. The IGS terminal windows needs to be reopened to change the frequency. * Added "Observe" to playertable popup menu. * Reduced the delay for the queue of sent commands from 1000 to 500 milliseconds. * Added a tab "Games" to the playerinfo dialog to display games from "results" and "stored". A list for "sgf" games probably won't be implemented as the short time these games are actually present makes it quite useless (thanks to the idiots who abused this). * Implemented support for other boardsizes than 19x19 on IGS. * Added a toolbar to the IGS terminal window. You can toggle it in the View menu. * Implemented a new account setup. You can now configure several accounts, like in gGo. It is also now possible to modify host and port of the server, if you need to use the IP or connect through a firewall. * The "Pass" button changes to "Handicap" in own IGS games if you play black for the first move. It changes back to "Pass" again after the next white move. * Added dutch translation. Thanks to Maarten Derksen. * Added standalone ugf2sgf converter to glGo distribution. This requires Python installed. If you are on Windows and don't have Python, there is a standalone ugf2sgf.exe application available for download at http://panda-igs.joyjoy.net/English/glgo/ugf2sgf/ * Did some internal changes to the player database. Unfortunately the old database format is incompatible to the new. The Playermanager installation offer a tool convert_db.exe to convert the old to the new format, so your database files won't be lost. * When observing a game, clicking on the board will add the coordinates to the kibitz input. * Bugfix: Occasionally incoming lines from IGS were read twice * Do not send "decline" when closing the incoming match dialog with the window frame "X" * Added support for rooms on IGS - new IGS feature, so don't wonder. :) * Added support for channels on IGS. * Changed the licence. If it disturbs you, please uninstall this software. * You can now rotate the 3D board with the mouse. Hold right button and move the mouse to rotate, hold both buttons and move to shift the board. Common feature request. :) * Removed some of the annoying "This board is modified..." messages for IGS game windows. * Reworked some parts of the manual, added FAQ to manual. * Bugfix to SGF parser: Variation end was sometimes ignored. Still doesn't load Kogo properly yet, though. * Fixed the terminal scrolling on login on Windows. 2003-11-24 - Version 0.0.6 * Playerinfo dialogs shows the new customized flags from playermanager. * Player comments can now be edited in the playerinfo dialog. * Improved "user" parsing, playertable should load a bit faster now. * Fixed board frame title, the "*" mark for modifications was missing if the game had a title (Like "Kogos Joseki Dictionary" instead "White vs. Black"). * Bugfix: Territory marks for IGS games showed always white territory. * Fixed Python playerdb module import on some Windows systems. * Added an option "Ignore rank limit for friends" in the IGS preferences. If enabled, the player list will show all your friends, even those outside the currently selected rank limit (this is the gGo/Java behaviour). If disabled, the rank selection will also limit the friends display (this is the old glGo behaviour). When disabled, it is much faster as it doesn't need to reread the "user" list. Use what you prefer. Default: Disabled * Implemented autosave for own and observed IGS games. You can select a target directory for each own and observed games in the preferences dialog. This feature is meant for interaction with the playermanager, which can scan directories for SGF files to build a simple game database (or use Kombilo instead/additionally). Default: Disabled * Updated SDL_gfx library to latest release 2.0.9 * Implemented localserver mechanism like in gGo. A socket listening for incoming filenames can be used to tell a running glGo instance to open a SGF file. This is used from Player- manager to display its SGF files and from the open_sgf.py script. This script can be configured as SGF default viewer in a webbrowser or filemanager so clicking on a SGF file will not start a new glGo but reuse a running one (or start one if none is running). On Linux use the open_sgf.py Python script; glGo requires Python anyways, so there is no standalone. On Windows there is a standalone open_sgf.exe binary available. A note on security: On Linux the localserver uses Unix domain sockets which is a secure mechanism unless you messed up your umask (but then you got more serious problems anyways). The target file is /tmp/glGo_socket (TODO: Somehow check if tmp is located elsewhere). As the name suggest, Unix domain sockets are not available on Windows, so on Windows an Internet domain socket is used, which is naturally insecure (ask Microsoft why they cannot implement a secure local IPC mechanism in their great OS). The socket is running on port 9998 (most likely unused, gGo uses 9999). If you have a firewall, you should be secure against malicious attacks. If you run Windows without a firewall, then glGo can indeed be a security risk (as is gGo), but then you have much more serious threats to worry about than someone hacking your Go client, I suppose. The localserver can be disabled in the preferences dialog (requires to restart glGo). * Added a menuitem "Toggle sound" and a button to the board toolbar. This allows you to disable sound for this board only, quite useful when observing multiple games on IGS. Of course, if you disabled sound globally, this option does nothing. * Added "Dutch" to the language selection, but the translation is not available yet (if you select it you get english). But the dutch translator needs this to get going. * Implemented Undo parsing in observed games. Did only work for own games until now. * Implemented UGF parser. Seems to work, I tried it on a couple of UGF files. However, expect problems and please send me those files which failed to load properly, I did not test this overly much due to the lack of UGF files in my game collection. The parser is written in Python and loaded as "plugin". Python rocks. :) Oh, and Michael Redmonds grinning face is not available. I know you will miss it. :*) 2003-11-12 - Version 0.0.5.5 * Implemented friends/bozo list and a player database plugin using Python. There is some extensive information about this in the manual and the README, please have a look there. The most important information is: If you use Linux, you need Python 2.3 runtime library installed. The Python dll is already included in the Windows installer. There is a new dialog in the IGS window to add/remove friends/bozos, and the popup menu and radiobox in the players table and infodialog are now enabled. There is a Python GUI and commandline tool to edit the playerdatabase, which is rather a prototype than useful at the moment. You find it in the 'pm' directory in the glGo installation. If you don't have Python and wxPython installed (what you probably do not have if you are on Windows and not a Python programmer), get the standalone installer available as separate download. * Bugfix: Wrong clock started when observing. Doh. * Bugfix: When observing and looking at earlier moves, captures in the recent move would be displayed in the current move instead. * Fixed automatch. Accepting an automatch would not open a board window previously. Automatch is now supported, though it won't open the match dialog yet, you will only see the request in the terminal (on TODO list). But if you accept an automatch request using the terminal commandline, things should work. * Fixed the bug when observed games with zero moves would not open a window (rare, but happened when observing the just started Oza game). * Fixed a bug when undo'ing the first move. 2003-11-04 - Version 0.0.5.4 * Implemented scoring. The score process in the SGF editor is similar to gGo. To score, switch to score mode by hitting the "Score" button in the sidebar, then mark stones dead (left-click) or alive in seki (right-click). While marking stones the territory is display. When finished with marking, hit "Done" in the sidebar to get the final result and leave score mode. * Implemented scoring for own and observed IGS games (well, not much to do when observing) Scoring own games works like in gGo. After passing mark stones as dead by clicking on the stone. While scoring is in progress, the current territory is displayed (this is calculated with the built-in scorer and could be wrong). After the IGS "done" command the score as given from IGS is displayed, so this version is definately correct (or IGS made a mistake). * Implemented reading and saving of SGF territory marks (TW, TB) and automatic display of dead stones in a scored move. * Transfer the result of IGS games to the game info dialog and save them to the SGF. * Replaced the ugly scaled fonts in the SDL board with nice looking truetype fonts. This requires a new library: SDL_ttf. It is included in the Windows installer, Windows users don't need to bother. Linux users need to install SDL_ttf and FreeType (which is used by SDL_ttf) from their distribution if it is not already installed. The scaled font looks very nice, this should be the final state for the 2D fonts. You can still switch between fixed and scaled fonts. Fixed fonts are much faster, but of lower quality. Default: Scaled fonts ==> Note: Fixed font was default in earlier versions, so if you upgrade you might want to switch to scaled fonts in the SDL display options manually. <== * Improved the cursor update speed on the SDL board. * Bugfix: Couldn't play white against GNU Go. The color settings in the GTP setup dialog were simply ignored and always the default (human black) used. * Some cosmetics to the SDL board (better mark and stone alignment, smaller starpoints) * Made the 2D SDL board the default. Too many users could not get the 3D board working and never found the switch to select the 2D board instead ("What? There is a 2D board?"). Why do I write documentation? * Updated Win32 OpenAL library to the latest release version. OpenAL is now not anymore distributed as embedded own installer, I just added the two dll files (OpenAL32.dll and wrap_oal.dll) to the glGo installer. Those are now placed into the glGo directory, while the old OpenAL installer put them into WINNT\system32. ==> You might want to uninstall the Creative OpenAL redistributable of former glGo versions manually, use the usual Windows "Add/Remove Software" way. <== * Added basic parsing of the "toggle-quiet-false" messages (or whatever they are called), keeping track of all known players in a database. This does currently not do very much (gGo/Java uses it for a lot of stuff) except providing the rank for shout, match and tell displays. But this is the basic code for adding more features later. 2003-10-23 - Version 0.0.5.3 * Fixed a bad memory leak in the new SDL code. Resizing did not free the images properly. * Implemented the ghost cursor for both the 3D and 2D board, quite similar to Java version. The cursor can be enabled or disabled in the board View menu. Default: Enabled * Implemented ghost display for variations in the SDL board. OpenGL board already had this. * Implemented scissor testing in the OpenGL board, this boosts performance greatly if only one stone is played at the cost of display quality. This is optional and can be enabled in the OpenGL settings dialog. Try it if you need it, on my old computer it helps. The manual has some more details on this. Default: Disabled * Made the player info dialog a real frame. Being a dialog results in annoying parent-window and focus problems on Windows. * Parse number of stored games and display it in the player info dialog. * Implemented the "Available" button in the player list. * Implemented undo for GTP games * Implemented input textfields which remember the command history which can be scrolled using the cursor-up/down keys, as known from gGo. Buffer size is 20 lines. * Removed BFont library and use optionally wxWindows text drawing for scaled text in the SDL board. However, the scaling is not very good. There is the possibility of using true type fonts what would make the font very pretty, but there are patent issues with true type rendering which I want to investigate carefully first. The "Fixed font" option in the SDL dialog changed to "Scaled font". Default: Fixed font * Added new "Country" line from stats (server-side change) to the player info dialog. * Implemented match dialog for both incoming and outgoing match requests. Not yet supported is automatch, a match "dispute" style like in gGo/Java and automatic color assignment depending on rank (if you send a match request, you are always white at the moment). * Enabled the "Play" button in the player table and added an "Info" button which does the same as double-clicking on a row of the table. Enabled "Match" button in playerinfo dialog. * Implemented popup menu in the player table. Right-click on a player opens the popup. The "Status" submenu is not yet implemented. * Fixed handicap in own IGS games. * Show "Cannot find recipient." error message in the appropriate tell frame. * Added "Info" and "Match" buttons to the tell frame. * Added low-time warning. Clocks will blink and the tic-tac sound played. Configure this in the preferences dialog, same behaviour as in gGo. * More fixes to clocks in IGS games. I had much pain with this in gGo, too. * Fixed crash on Windows when changing the sound system during glGo runtime. * Added the green table background to the SDL board. Enable or disable in the SDL display options. If disabled, you can configure the background color. If enabled, the background color is ignored. Default: Enabled * Replaced the mondrian with the gGo icon * Added option to disable tooltips. They can get annoying. 2003-10-16 - Version 0.0.5.2 * Fixed captures check. When loading SGF files sometimes captures would count double. (Fixed this again after the 0.0.5.1a patch. Idiotic bug.) * Fixed memory leak in captures check. * Added a beep sound as replacement for the PC speaker or Windows beep for some effects. * Fixed clocks, they did not start properly in own games. * Implemented parsing for "undo" in own games and added an undo button to the sidebar. * Bugfix: Don't crash when hitting "Connect" again while already trying to connect. * Added observers column to the games table. No idea why I forgot that. * Updated to wxWindows 2.4.2 * Added "Delete move" to the SGF editor. It deletes the current move and all children of this move. - Same behavious as in gGo/Java. * Added "Show move numbers", "Show brothers" and "Show sons" to the SGF editor, see "Edit" menu. Quite different to gGo/Java, these are toggles instead of a one-time marking. Also different to gGo, these marks will not be saved to the SGF file and when toggling the feature off, the marks will be gone from the current game (sounds complex? - just try it) Autonumbering 250 moves on the OpenGL board can result in a significant performance drop. * Fixed the player list parsing, which could be interrupted by another intercepting IGS command, after which the rest of the list would go into the terminal, not the table. * Display player ranks in shouts if the player table knows them. * Replaced the "Help" button with "Preferences" in the start window. Probably more useful. * Don't remember the temp filename when opening a game with the "Edit" button from observed IGS games (the IGS game is saved and then loaded, glGo "remembered" the filename then). * Fixed the IGS teaching games title, it displayed in other games, too, once a teaching game was observed. * Fixed the IGS teaching games clocks. They should just stay at 0:00. * Show IGS announcements in the shouts window. * Added Playerinfo dialog. Double-click on a row in the playertable to open it. If you type "stats" in the terminal, the dialog will not open (I suppose if one types it, then one wants the output in the terminal, too). The playerinfo dialog is not yet fully implemented, only the first page of the gGo dialog is so far done. * Added "Clear text" menuitem to the board View menu to clear the comment/kibitz textarea. * Added "My stats" and "User stats" menuitems to the IGS window - same behaviour as in gGo. * Managed to overcome the One-SDL-Board only restriction. Removed the simple wx 2D board. Possible board types are now OpenGL (3D) and SDL (2D), both can be opened without limitation. Hooray! This is a big improvement. Thanks to the helpful guys on the SDL developers mailing list. On Windows the SDL board now uses DirectX instead of the previous Win GDI driver. This probably means one should have a somewhat recent DirectX installed. I am not going to reinstall my Windows to test this. * Updated the SDL font. You can select a small fixed font or a larger font created from an image file in the SDL options dialog. It is still not optimal, though, the underlaying grid disturbs the font display. It looks good if there is a stone on the spot. * Added a manual chapter about SDL. A couple of minor manual updates. * Windows: Added new MinGW runtime library 2003-10-08 - Version 0.0.5.1 * Implemented the first steps for playing own games on IGS. "match" must be used from the terminal, there are no dialogs yet. The board opens and playing basically works. Adjourn and reload is supported. Scoring the game is not yet implemented. Basically playing works, but I cannot recommend using it for normal IGS operation due to lack of scoring. * Implemented support for clocks and time parsing on IGS. SGF time tags, when loading files, is not yet supported (not so important, I think). Time in GNU Go games is also not yet implemented (as well not too urgent). * Added display and parsing of captures. * Implemented "ayt" timer so IGS doesn't kick you off so soon. It won't grant you infinite idling, though (same as in gGo/Java). The timer can be disabled in the preferences. * Remember maximized state of the board window (Windows only). * Save and restore the OpenGL rotation, zoom and fovy values. You can always restore the default view with the Backspace key. * Improved Linux automake/autoconf scripts. Most required headers should now be checked. * Added patch contributed by Steffen Dettmer to fix a g++ compile problem. * Added the resource directory to the source distribution which is required for debug builds. Thanks to Steffen Dettmer for bughunting! If the resource files cannot be loaded, glGo will now exit with an error message instead of segfaulting. This only applies to the source distribution, not the binary releases. * Bugfix: Properly handle empty rank limits in the player table * Static link the Linux release binary to SDL_gfx, this dependency caused some problems on Debian and other distros. Now the required dependencies for SDLare pretty standard. SDL and SDL_image can be expected to be already available or installed from a distribution. Thanks to Kivilcim Hindistan for the report. Windows release binary is still dynamically linked to SDL_gfx. * Bugfix: Don't crash when observing, disconnecting, reconnecting and reobserving the same game in the same window. Auto-reobserve like in gGo is not yet implemented, that's on my TODO list. Observing again will for now open a new window, until auto-reobserve is implemented (not nice, but better than crashing). * Changed the update checker dialog a little. * Implemented commandline parser. It can take an optional parameter as sgf file. Try "glGo --help" for other options. This allows to use glGo as SGF viewer from a browser, filemanager or Windows explorer and to associate .sgf files with it. * The commandline option "-s" or "--shared" allows to relocate the shared data directory if you installed glGo in a non-standard location - not very interesting if you use the binary installer and mostly irrelevant on Windows. Another way to relocate the shared directory is to use the "GLGO_SHARED_PATH" environment variable. The "-s" switch has highest priority, then the environment is checked, and if neither is given the defaults are used. Like above, this is mostly irrelevant on Windows. * There are new commandline options to disable global sound (if you have trouble with esd or artsd on Linux) and to select the sound system (if you have trouble doing that in the preferences menu at runtime). Both options will overwrite the saved configuration. * Bugfix: SDL board background color upgrade went wrong (swapped green/blue values) * A couple of updates to the manual. * Removed the .wav soundfiles. Only .ogg format is used. 2003-10-03 - Version 0.0.5 * Changed homepage and update URL to http://ggo.sourceforge.net/ Changed licence to GPL. * Implemented different sidebars for the editor, observed and GNU Go games. The observed sidebar got an "Observers" and "Edit" button, both working. The observers list needs some formatting. The observed sidebar also got a textfield to enter kibitz texts. * Changed the IGS disconnect code, do a clean disconnect by sending "exit" and waiting for the server to disconnect instead of simply cutting the connection. * Fixed a stupid bug in the "space-detection" code of GNU Go resume. It reported a space in the filename in all cases... Doh! * Bugfix: When sound could not be properly loaded, the About dialog would crash the application (trying to get info from the non-existant sound dll). Doh! * Used a new font for the SDL board SGF textmarkers * Added the other 7 white stone images from gGo to the SDL board, to have the same random white stone usage as known from gGo. SDL board only at the moment, the white OpenGL texture quality doesn't convince me yet and needs some work first. * The Windows SDL_Mixer.dll had a bug, the .ogg soundfiles were not properly read. This was a bug in the SDL_Mixer code as confirmed from the SDL developers. The new DLL should fix this issue. * Added a background color selection in the display options dialogs. The colors are saved independant for each of the board types. * Updated some manual chapters. * Don't save settings in the registry, instead write to a config file on Windows, too. The config file is C:\Documents and Settings\\glGo\glGo.rc Now the only stuff which still is written into the registry is installer-based and has nothing to do with glGo itself. (Note: Manual is outdated on this topic now.) 2003-09-30 - Version 0.0.4.8 * Implemented coordinates and fonts for the OpenGL board based on the PLIB font renderer. * Implemented text markers in the SGF editor. * Implemented SGF loading and saving of textmark properties ("LB" and the old "L" tags) * Put the various image files into one data file to save some space and make updates easier. You can still use your own images, see the manual and Readme how to do that. 2003-09-25 - Version 0.0.4.7 * Fixed a nasty bug in the SGF parser which went into an endless loop on certain occasions. * Fixed SGF writer which did not escape special chars properly. * Fixed IGS tell window. It now shows what you type there instead of the terminal. * Implemented GNU Go score estimation, you find it in the "GTP" menu of a board. * Added coordinates for the 2D boards (Not yet in OpenGL, that's a bit tricky) * Implemented navigation in observed games. Use cursor keys or the toolbar buttons to move around in the game. Variations in teaching games might work, but I would not bet on it. * Added a "Select board type" entry to the tray icon popup menu. * Teaching games are now properly displayed in the games list and can be observed. It crashed formerly on that. * Handicap games are now properly observed. * Bugfix: When starting to observe a game in late state, sometimes glGo did not notice we are reading a batch of moves and played 200 times the stone sound. That was pretty annoying. :) * Implemented parsing and displaying of kibitz in observed games. * Parse, display and save the game title in observed games (Tournament broadcasts). * To sum it up, observing should be fully functional with this release except for the fact that the sidebar of the different boards is not completely implemented (like different buttons or a kibitz-enter textline for observed games), but the interface stuff is secondary now. * Note: The "sdltest" program won't close if you hit the windows 'X' icon (this is intentional and part of the "embed SDL in wxWindows" hack. Hit Escape to close the window. The sdltest window is now resizable. * Made a big change to the sound system. There are now two sound systems available: OpenAL (same as before) and SDL Mixer. Sound is now loaded dynamically during runtime, what relieves the Linux build from a lot of dependencies. The sound system can be selected in the preferences, OpenAL is the default. Switching during runtime might or might not work, it is a good idea to restart glGo after changing sound. On Windows OpenAL should be the better choice, on Linux is depends on your hardware. On my system with a vanilla Soundblaster SDL mixer gives better quality on Linux, OpenAL on Windows. You have the choice, try it out with the "soundtest" program. Run "soundtest 0" (OpenAL) or "soundtest 1" (SDL) from a xterm or DOS shell for an easy comparison without the trouble of switching during runtime. If one system does not work for you, don't worry and use the other. SDL_mixer.dll is included in the Windows installer, on Linux you need to install it from your distribution. * Small change to the Linux behaviour of the starter window. When clicking the Close button of the window titlebar, it will behave like using the "Exit" button. Otherwise you could close all windows but glGo would be still running. 2003-09-23 - Version 0.0.4.6 * Added a "sdltest" program which will open the SDL board only using the SDL libraries. If this works, it should work within glGo, too. Hit the Space key to toggle through 19x19, 13x13 and 9x9 boards. * Bugfix: Don't crash when the IGS shout window is closed and reopened. * Enabled the simple 2D board again. There can definately only be one SDL 2D board opened at the same time. So if you have "2D" boards enabled in the preferences and already one SDL board open, the next boards will use the simple wxWindows 2D display, which is quite ugly. The OpenGL 3D boards are not affected by this, those can be opened without limitation. * All of the three board types got an own display options dialog. In the simple 2D board you can enable/disable images. The SDL board currently has no options. * SDL board can now handle non-19x19 boards. * When sorting the player table by rank, a second-level sort by name is done (like in gGo). Added sort-by-country. * When opening player and games tables the first time, it is automatically refreshed. Currently the tables don't refresh any further, so you need to do it manually if you want an update (parsing the "toggle quiet" automessages is not yet implemented). * Bugfix: Captures algorithm had an error when loading from SGF * Added "soundtest" program which will play three sounds to test OpenAL. Hint for Linux: You can tell OpenAL to use esd or alsa, see the documentation of OpenAL about ~/.openalrc 2003-09-22 - Version 0.0.4.5 * Added a new 2D board display based on the SDL graphics system. The Windows installer contains the required libraries, you don't require anything additional. On Linux you need libsdl, libsdl_image and libsdl_gfx. They are all available in the common Linux distributions. In doubt try "ldd glGo" to check the dependencies. The libpng dependency is back, but this time it is the new and standard libpng12. The 2D SDL board looks pretty good, very similar to gGo/Java, and should be an interesting alternative if the 3D board is too slow for you or you have no use for a 3D display. You can select which board type to use in the preferences dialog. All newly opened boards will use this set type (the current board won't change if you access the dialog from a board). The 2D display speed has much room for improvement, it is currently not yet optimized - I'm glad it works, though. :*) There is one limitation with the SDL board: You can only have one at the same time open. I need to figure out how to change that, it is a bit tricky. It is possible to have the one SDL plus multiple OpenGL boards open at the same time, though. * Bugfix: glGo crashed when an observed game window was closed after disconnecting from IGS. * Bugfix: Sorting by rank did not work properly. * Implemented player table. Added new options "Skip guests" in the preferences dialog. 2003-09-14 - Version 0.0.4.4 * Fixed a bug in the captures algorithm. * Game info is now parsed and passed to the Board when observing an IGS game. * Properly parse the captures sent from IGS instead of calculating them in the application. * Disable New/Open in menus and toolbar in IGS/GTP games. * Implemented the "Load game" button of the starterframe. * Added "Show shouts in terminal" to preferences dialog (this is in a menu in gGo, but same functionality). * A couple of GUI updates to the IGS interface. I am trying to keep it similar to gGo. * Added games table. Double-left click on a row starts observing. Clicking on the column headers will sort the table. Left click sorts ascending, right click descending. * Save/restore size/position of the IGS windows * Create the GTP console when GTP games start but keep it hidden, so it gets the GTP command output. A bit silly to get the output only after opening it manually. * Won't crash anymore when starting a GNU Go game with not 19x19 size from the starter window. * Save and restore GTP settings (not komi, there is a locale problem to solve) * Added an option "Minimize starter to tray", so one can switch this off. * Still trying to figure how to get a good update (with _small_ downloads!) mechnism going. I have been an idiot, compressing the executable with UPX and then wondering why the "patch" replaces the whole file.... So now the exe file is larger but can be patched properly - the size doesn't matter so much, the downloaded files are still compressed. And I doubt 1 MB more or less on the user harddisk makes any difference. So this release will install a uncompressed binary and the further updates will be really small downloads. * Changed the initialization of OpenGL multitextures, it should now better detected if that extension is unavailable in the driver. * Changed the Linux installer. It now has a GUI setup and installs into /opt/glGo/ following the conventions for binary-only releases. A symlink /usr/local/bin/glGo is created. Uninstall scripts are created as /opt/glGo/uninstall. The rpm/deb packages are gone for now, there were too many Linux versions on the webpage. They will be back once the update frequency drops to a reasonable rate. Run the installer with "sh glGo-0.0.4.4.sh" as root, try "-help" to see available commandline parameters. * Switched from Borland C++ Compiler to MinGW on Windows. GCC is a very good compiler which is actively developed. There is a new DLL in the glGo installation directory which is the MinGW runtime library. * Major plans for next version: - With the code for the games table in place, the similar player table should be available in the next release. - Start with support for own games. 2003-09-11 - Version 0.0.4.3 * This is a big update, but probably quite unstable. It contains a lot of new code which I did not text extensively yet. However, if you look for stable programs, you should not download prototype software anyways. :) * Implemented first draft of the IGS client code. This is very much work in progress and cannot do much useful. Currently working is observing games (start manually with "observe 123" command) and forwarding of shouts to the shouter frame and tells to a tell frame. This is not much, but most of the work went into writing the framework to parse and handle the IGS commands. I am trying to avoid some mistakes I did with this code in gGo/Java. :) * Added the start frame with the well-known images. The board window is not any longer the main application window, so you can now open multiple boards, which already works properly for observing games. The start frame can be minimized to the system try. Just hit the Close icon of the window. When in tray, you can right-click on it to get a popup menu. This was a feature request I got for gGo once and liked it very much, but it was not possible with Java. However, now it is. :) Minimizing the frame will still minimize it. Clicking the "Exit" button will definately exit glGo. You can enable "Autohide" in the preferences, then the frame goes to the tray automatically and is out of the way. On Linux the system tray is not available. Autohide will simply minimize it. * Bundled GNU Go into the windows installer to avoid trouble for the inexperienced users who did not understand they had to download GNU Go seperately and tell gGo where it is ("Your program does not work!") ... * The Windows installer size is getting big, close to 3 MB now. To offer a smaller download I will publish smaller updates from each version to the next, so you can avoid downloading the full installer (which will rather grow further than shrink and stuff that won't change much) over and over. * For Linux there are now rpm and deb packages as addition to the selfextracting script, all created by the EPM packaging system - quite nifty tool. 2003-09-04 - Version 0.0.4.2 * Implemented SGF saving. Text marks and some game headers are not yet supported. * Added a toolbar * Added menuitems to toggle toolbar and statusbar (On Linux, toggling the toolbar creates some artifacts; resize the window manually a little. Don't know why this happens, it's ok on Windows.) * Added "fullscreen" mode. It is not a real fullscreen display like known from games, but it's sufficient to get a maximized board. And it wont switch the monitor display. * By default the multitexture OpenGL options is disabled. If the graphiccard does not support it, glGo would fail to start (bad!). So we start without this feature, and if the user tries to enable it but it is not supported, it will notify and abort enabling. * Save and restore sidebar width * On Windows there is a directory C:\Documents and Settings\\glGo which is unused. You can manually delete this folder, the installer won't remove it. * Added a preferences dialog. It is really empty for now. :*) I am sure it will be filled by time. The language selection menu is gone and in this dialog now. The OpenGL options are intentionally in a seperate dialog. * Last language setting is reloaded on startup. * Some debugging output is sent into $HOME/glGo/glGo.log (Windows) or $HOME/.glGo/glGo.log (Linux) - quite similar to the known .ggo.log output. Unlike gGo the file is _appended_, not overwritten. So in theory this could become very large. Delete it manually occasionally. I should probably add some filesize check and then delete it. 2003-09-02 - Version 0.0.4.1 * Improved SGF loading performance by omitting some checks while loading. Those checks like captures calculations are done later "on demand" when navigating through the game. Fixed a couple of bugs in the SGF parser. * Properly handle SGF comment linebreaks. * Implemented parsing and displaying of these SGF marks: CR, SQ, TR, MA * Save last directory on Linux when loading SGF files. Windows already does that automatically. * Implemented variation display via transparent ghost stones. They look cool :*) Variations of empty or passed moves are displayed on the bottom right outside the board, if you wonder where that stone comes from. Thanks to Lisa for bringing up this idea 2 years ago :*) * Improved the layout of the sidebar, the upper part does not resize vertical anymore. Added a third tab with the edit tools. * Implemented basic SGF editing. Add/Remove stones and edit marks * Implemented resuming GTP games from a SGF file, like gGo does it * Fixed the shadow projection. It worked by accident but stopped working when using another boardsize than 19x19 * Added pass sound 2003-08-30 - Version 0.0.4 * Implemented OpenAL sound system. For Windows the OpenAL installer is included into the glGo installer and should work without problem. For Linux the OpenAL runtime libraries must be installed, even for the static glGo build. * Fixed a stupid bug with the saved window position (saved x/y position but loaded x/x). * Added a prettier About dialog, which also shows some info about OpenAL status. * Implemented variation support. Navigation is done with Cursor Up/Down. There is no "ghost" stone yet to show where variations are (will come), also the extented gGo key support with PageUp/Down/Insert is still missing. * Added support for edited stones. Editing is not yet done, but SGF file parsing can add additional stones via the AW/AB/AE tags. * Implemented SGF parser. Reading only at the moment (fortunately reading is the much tougher part compared to writing). It can read moves, variations, comments and edited stones, no marks yet. Also most of the SGF header is ignored. The parser is not yet very stable. It worked on a couple of GTL files, what looks good. It does not work well on Kogos joseki dictionary. Some files might crash it, so don't be surprised (but mail me the sgf!). Unlike to the other "logic code" the parser code was not copy&pasted from gGo but rewritten from scratch, as the gGo sgf parsing code is not very good. * Added another OpenGL option: Stone quality. This defines from how many triangle fragments the stone sphere wireframe is built. More obviously looks better and is slower. High means 512 triangles, low 128. Any values above 512 don't improve the look anymore but get very slow (maybe add a medium value of 256? But it doesn't make much difference to 128). * Handicap is properly supported now, sizes from 2 to 9 on 9x9, 13x13 and 19x19. 2003-08-26 - Version 0.0.3.2 * Updated the last-move marker. The animation is (for now) disabled, instead a nifty red cross shows. On startup the OpenGL multitexture extension is checked, if found the new marker is enabled and the simple markers disabled, else vice versa. You can still change it in the OpenGL options. Hint: If you want to change the image files, hit 'r' to reload the textures instead of restarting glGo. * Added menuitem for shadows. Keeping light but disabling shadows on software mode is a good idea, so seperating shadows and light option makes some sense. * Updated manual. * Moved most items of the View menu into an OpenGL configuration dialog. * Added a first configuration implementation. The OpenGL settings, window position and size and a couple of other settings are now saved and restored on startup. On Linux the config file is written in $HOME/.glGo/glGo.rc On Windows the configuration is written into the registry - for now, I don't know yet if I prefer registry or a simple file. See Readme.txt for some thoughts. * Added a setup wizard if GNU Go was not found, to guide the user through the process of finding the gnugo.exe executable (experience from gGo, this is a major problem for novice users). Note: This does not work on Linux. If gnugo is not found, glGo will crash. See Readme for details. This only happens on Linux. 2003-08-23 - Version 0.0.3.1 * Added two sort of last move markers: - The old known circle mark. Looks ok with antialiasing, ugly without. - A fancy multitexture effect. The effect itself is *stupid*, but I was trying what's possible with overlaying multiple textures. This seems the way to get a good effect. This is only available in hardware mode and a card which supports the GL_ARB_multitexture extension (most cards should, even my ancient TNT1 does). If in doubt, get the glview tool: http://www.realtech-vr.com/glview/ * Enable GL_ARB_multisample extension if supported, this gives a good antialias effect. Only available in hardware mode with a recent graphiccard. It will be enabled automatically if available. There is no menu switch. * Couple of small fixes to GTP support. * Fixed Windows installer (hopefully) to show the license page. * Changed Windows textfiles from UNIX to DOS linebreaks. * Added the stone play sound known from gGo. 2003-08-19 - Version 0.0.3 * Added GTP support. Playing with GNU Go basically works. No undo and resume yet. GNU Go is not included in the installation, get it from the gGo webpage, see GNU Go link on the left. Drop gnugo into the glGo installation directory, there is no possibility yet to tell glGo where the GNU Go binary is located. * Implemented handicap in the setup. Only internal fixed values, dynamic handicap not yet done. * Added translation support, I'm doing a german version while writing the program. Contributions for other languages will be welcome, but it is too early to start yet, there are too many changes at the moment. * A couple of OpenGL adjustments. If you toggle most 3D enhancements off (see View menu), it should run properly in software mode. However, better install a proper driver. * The manual is not yet updated with the new features. Next time. :) 2003-08-11 - Version 0.0.2 * Improved the OpenGL display. Added antialias support, blurring, render to texture. * Implemented a simple 2D board. This is very simple and ugly. Start with "glGo simple". * Implemented HTML Help system, using the standard HTML Help system on Windows and a wxWindows provided HTML Help display on Linux. * Lots more I forgot. :) 2003-07-24 - Version 0.0.1 * Initial release