wxLaserTank wxLaserTank

wxLaserTank Development

December 29, 2009.

I have resolved most of the display issues but there are still some lingering ones due to differences in fonts and display artifacts between platforms and desktops. I will probably need to use sizers to allow the controls to resize freely, to reach an ultimate solution. Problems running the application were due to assumptions about path selection that were carried across from Windows.

December 16, 2009.

I have made some good progress. The font issue on the main buttons was resolved by shortening the text to "Lvl". This works in most case but I still need to understand why the font in openSUSE, for example, is tiny compared to the others

The sound problem was caused by the wav files having been converted to an unsupported, unofficial variant of the WAV format which includes an additional header block that wxWidgets doesn't recognise. Converting the sounds to the official format solved that problem.

The bitmap transparency problem is now fixed. A simple adjustment to the call to blit was all that was required.

The problem with resizing took me a few days to find. There appears to be a bug in wxGTK that causes resizing to fail when you use a window that does not allow resizing. Removing the code that invokes the non-resizable border allows resizing to work but leaves me with nasty drawing artifacts when the frame is manually resized. I have resolved this for now by retaining the non-resizable border and disabling the sizing menu. You can still select any game size by changing the .ini file manually and restarting. I will report the bug and see if a later version corrects it.

The game board printing is also broken, again due to a bug in wxGTK. This bug is fixed in wx2.9 but that version also introduces changes that will require some recoding. I have worked around this by disabling the printing menu item. Since, I imagine, that this is rarely used and a screen dump will work pretty much just as well, I don't see it as a problem. Once this phase of development is complete, I will look at upgrading to 2.9 as a separate exercise and re-enable printing.

These snapshots show wxLaserTank running on Ubuntu 9.10 "Karmic Koala", Fedora 12, openSUSE 11.2 and Debian 5.03 in virtual machines on my Vista desktop. The image transparency now appears correctly.

Issues remaining:

December 8, 2009.

I am currently working on getting wxLaserTank running on Linux. The snapshot that follows shows an early version of it running on Ubuntu 9.10 "Karmic Koala" in a virtual machine on my Vista desktop.

As you can see, there are some glitches that I need to work through. The current list is as follows:

All in all, though, it runs pretty well, the game can be played and almost all facilities work. That's very good for the first run. Some features, such as animation, work really well, so I'm hoping to get a usable version ready fairly quickly. The things that need attention are just glitches and there are no major issues that I can see at this stage. The first public release of LT on Unix will be quite a landmark. :-)

Once the Linux version is working on Ubuntu, I plan to look at other distributions. I don't know yet how compatible code compiled on one distro is with other distros but I'm hopeful it will work out of the box. If not, I will compile versions for some of the other major ones and see how I go from there. That will be followed by a Mac. version and then I may look at porting some of the LT utilities that are available.