After playing PySol... i found inspiration to make a nice version of Tripeaks.
Several of the games also have new Help menus. They use code (from Mike's Hearts) which i made a little more elegant and portable.
Wish 8.5.0 has been released... It looks like a nice release and the fonts are beautiful, though there are still some minor issues with tkgames. (Specifically, there are math precision issues which are affecting canvas co-ordinates).
Welcome to my SourceForge Tk Games page.
This page is a compiler free zone. All you'll need to hack my programs is a text editor!
The last few years I've learnt the powerful Tcl/Tk programming language. In the process I've adopted several abandoned projects, refined a couple from the Tk Game Wiki and coded a few widgets of my own.
I've also included links to other cool Tcl/Tk projects on the web, including the great TkDiff utility.
Tcl/Tk is a powerful computer language - available on Windows, Linux and Macs - which was popular on early Unix systems, especially in commercial and scientific fields.
It's first part is Tcl - an elegant scripting language whose only data structure is a string(!) and uses lists extensively. This allows for very readable and deeply nested code. It is also reminiscent of functional computer languages (as opposed to procedural languages like C and Bourne Shell) and, as such, can be hard for beginners to understand.
Tk is the powerful graphics library that the user sees on the computer screen. It has a slightly unpolished look and feel - which may be the reason it never gained more popularity - but allows for very rapid and correct application development. A simple Tcl/Tk application takes a single line:
#!/usr/bin/wish
pack [button .b -text Finish -command {destroy .} -activeforeground RoyalBlue]
Another feature of Tcl is that it is designed to interface with other languages such as C and Perl, allowing best use to made of (for example) C's speed and Tk's easy to build interface.
You can download the games as a single tarball or visit the file archive at the project page for the latest releases.
Linux and FreeBSD should have Tcl/Tk installed by default.
To verify this, look for a command named wish or wish8.4. Users needing to install Tcl should visit Tcl.Tk for the source code, or try RpmFind or Active State for binary packages.
Sometimes the symbolic link "wish" is not created. To do this, type: cd /usr/bin (or /usr/local/bin) and ln -s wish8.4 wish.
Building from source is fairly easy, with parallel installation of different versions no problem. For example, if "wish8.4" is in "/usr/bin", you can install wish8.5 in "/usr/local/bin". After downloading and uncompressing the tcl-8.5.2 and tk-8.5.2 source code:
cd tcl8.5.2/unix && ./configure --prefix=/usr/local && make install
cd tk8.5.2/unix && ./configure --prefix=/usr/local && make install
To run on Windows boxes, install Tcl/Tk, and rename each program with a ".tcl" extension (eg. rename tksol tksol.tcl). I recommend using Active State Tcl.
Mac users can install a standard version of Tcl/Tk from either Aqua Tcl/Tk or Active State, or try the Batteries-Included version.
The standard OSX installations of Tcl do not allow programs to be launched from the Finder. They must be run from the command line by typing
cd {directory where program is}
wish {program name}
Alternatively, you can install the
Mac Tcl/Tk Launcher, which is also included with the
"batteries-included" version.
These programs require Tcl/Tk 8.4, but may work with earlier versions. For more info see the installation section.
Based on a tesselation puzzle named Beat the Computer, this is my first "original" Tk program. Over the last couple of years, I've implemented most of the different puzzles. Download. Version 1.8.1 has attractive Help, Changelog and About widgets.
You can find photos of the original puzzles and some mathematical background at Pascal's web page.
Mike Griffiths coded this great Hearts clone. My latest version is 0.90 which includes a few changes.
I had a look at resizing this game, but doing so breaks up the nice clean look of the face-up cards in the player's hand... Instead i have added an auto-raise feature. It helps a little, and looks cool too.
This thoughtful game of solitaire is played with the equivalent of two packs of
cards. I recently removed the poor quality sound support till
Snack
is working better. On the plus side , at
http://www.fotosearch.com
i found some great art work and made a few nice card-backs. (One of which is
also in TkTk and Hearts).
Download
Tk Time Killer is a geat little solitaire written by Greg Bacon. Unfortunately, I really hate Perl. And while Greg's version used Tk, it espoused Tcl for Larry Wall's bride-of-frankenstein creation.
Anyway, it wasn't much effort to re-use plenty of TkSpider and code this game. Features include full undo, configurable decorations, a modest tally box and a few fancy mouse bindings.
More thanks to Greg for letting me borrow the name TkTk.
Tk TriPeaks is an easier variation of TkTk.
This is another program I found at
tcl.tk which was mostly complete but
had playability issues. I've made a few changes, including the
addition of high-score and help widgets, and redesigning the buttons and
menus. Thanks to the original author,
Kevin Kenny.
Download.
Bao Trinh originally coded tksol for FreeBSD, and it had't been updated in 8 or 9 years. Over several point releases I've fixed quite a few bugs, added some features and really got my hands dirty learning Tcl. Recently some new artwork has been contributed, and the game is looking nice. Download
My first Tcl/Tk program - A half-working and abandoned hangman program I adopted from Ibiblio.org, and eventually rewrote. Download.
package require Iwidgets 3.0
with
package require Iwidgets
namespace import -force itcl::*
and then type wish patience.tcl to start the game.
Linux midi support is such a mess. Very recently I gave the Tk interface an overhaul - see the readme in the tarball for details - fixing as few little bugs and giving the widget a QA overhaul. Hopefully someone will find this useful.
This is a nice front-end for an old verion (0.36) of the M.a.M.E arcade emulator. Unfortunately it won't work with any recent version of M.a.M.E. Their command line options seem to change quite a bit... but with a little work it ~could~ be brought up-todate.
TkDiff -- A graphical front-end to diff for Unix and Windows by AccuRev Inc. and John M. Klassa. I love it.
Dorothy is a computing professional who shares with me a fondness of Macs, Fvwm, Tk and music :->. She is also the maintainer of TkCVS, a front-end for the revision-control software, CVS.
Yes, the GNU "info" files suck bigtime. This front-end makes the pain more bearable.
Miminalist volume and screen brightness widgets. Tkvol requires the aumix program, and Tkgamma uses Xorg's xgamma command.
Download Tkvol
Download Tkgamma
# Steven.a's first tk script # Modelled on beos' Alert # No , I don't really know what I'm doing ;-> # 13/5/02 : patched up a bit.....
A dialog widget modelled on the "alert" command from BeOS.
[I started using linux around 1999, with slackware 3.4, and from the comments it looks like I started learning Tcl in 2001.]
Usage: alert [-g] message response(s)..
Small Tcl/Tk command launcher.
TkGames Project Page.
Steven A. is a uni graduate in math and computer science, who programs as a hobby in tcl/tk, bash and C. I live and work in rural australia, and enjoy beating up Lachlan at squash.