I'd like to announce, or more correctly, re-announce my port of LaserTank to wxWidgets. I say re-announce because I actually started this in 2002 and was in touch with Jim at the time. I got the GUI running but had some remaining work to do with game play when work, career changes and life got in the way. It's been languishing on SourceForge ever since. A few months ago, on the basis of better late than never, I decided that I should finally finish it.
The first question you may ask is why? I fell in love with the game back then and thought that making it available on other platforms would be a great thing, which would also allow me to learn more about wxWidgets and enjoy myself in the process. wxWidgets is a cross-platform framework for application development in C++ and a range of other languages, that is, applications written using it can be compiled and run on a range of platforms. This gives the advantages mentioned above and also means that the application is now also written in C++, since that's what I used. The current list of platforms that wxWidgets runs on is:
* Windows 95/98/ME, NT, 2000, XP, and Vista.
* Linux and other Unix platforms with GTK+.
* Unix with Motif or the free Motif clone Lesstif.
* Mac OS X 10.3 and above (10.2 with the older 2.6 versions).
* Embedded platforms:
X11
DirectFB
GTK+
Nano-X
Microwindows
MGL
Windows CE
Palm OS
* An OS/2 port is in progress, and you can also compile wxWidgets for GTK+ or Motif on OS/2.
You can learn more about wxWidgets at http://www.wxwidgets.org/about/ if you're interested.
I have now almost finished a release version. I have all features fully working and just need to do a little tidying up and re-checking before I release it for testing. The first version is only for Windows and the English language. I will need volunteers who are willing to play with it and see what breaks, and in the future, others who would be prepared to compile versions on operating systems that I don't have access to, to fully realise its potential. I plan to add localization in the next version and look at compiling versions for Linux or similar OSs next.
I started converting LT when it was at V4.02. This release is hybrid based on 4.02 (because most of the work was done using that) but it includes some changes that have occurred since such as using wav sound files, the newer mask bitmap and some code changes. I decided that it was better to avoid having to change those things again shortly, and implemented them the first time. It's also Unicode-aware so it's ready for the localization process.
I have made efforts to ensure that the port remains completely compatible with the original, so that files are interchangeable i.e. you can move your level and graphics files to another platform and resume where you left off, and take them back some time later and do the same. In time, I hope to be able to build versions for as many OSs as possible. There is no particular advantage to using the Windows version of this port over the original version but since that's what I use, that's where the work has been done. The main aim is to have LaserTank available to folks who don't use Windows.
Future plans include:
-support other languages. wx uses the GNU standard gettext tools so the format will be different to the current method but we will gain an integrated system and tools for conversion.
-write a tool to convert the current language files to the wx version.
-bring it up to date with changes and bug fixes since 4.02.
-get it compiling on other platforms.
-convert some of the additional tools available on the web site.
The SourceForge site is at
http://sourceforge.net/projects/wxlasertank/.
I will be updating it progressively as things change so you might like to keep track of progress there. I hope it will be useful to some of you. Thanks in advance for your interest and any assistance you can provide.
Cheers,
Gary.