Staker is a 3-D artillery warfare game that was inspired by Tank Wars and Scorched Earth, BASIC games I played many years ago. This is just a beta version, so it doesn't have everything in it that I would like. For instance, there is only one type of terrain to battle on. I wanted to release this version first to get some feedback from people on the basic interface, and to see how well it works in other Matlab versions and on other machines.
This second beta version (v0.6) is the same as the first except for one thing: it can now run independently from the Image Processing Toolbox! You should be able to run it with nothing but core MATLAB functions. If those without the IPT are still having trouble, drop me a comment or email and I can go on a bug hunt sometime after the holidays.
KNOWN BUGS (these haven't changed since v0.5):
1) Button background colors don't render properly in Matlab version 7.1. I believe this has been corrected in version 7.5 and later. However, I accidently happened upon a fix recently. If you issue the command "feature('JavaFigures',0)", the button background colors will display as they should, although the formatting of other uicontrols and text will change a little too. If you don't like these other changes, undo them with "feature('JavaFigures',1)".
2) The bomb trajectories will not impact the stakers. You should aim to hit the spot on the ground that they occupy, not the stakers themselves. I've already fixed this for the next version I'm going to release.
3) If you are ever in a situation where both players have their stakers under water, then there is effectively no way to hit each other. The game has bombs for blasting out of the water and bombs for plunging below the water, but no bombs that can do both (shoot out of and then back under the water). For now, the only way to end a game in such a situation is for one player to forfeit or blow themselves up. I've already fixed this for the next version I'm going to release.
VERSION 1.0 STATUS:
In the past few months I've made quite a number of improvements to the game. Currently, there are 10 unique types of bombs, 2 types of bomb attachments/modifications, 6 battle terrains, completely retooled projectile motion physics and surface intersection algorithms, improved explosion rendering, and greatly improved GUI interfaces, particularly for managing player profiles. There are 3 major improvements left that I want to finish before I release it:
1) The addition of 2 more battle terrains.
2) The inclusion of sound effects.
3) The inclusion of AI profiles so players can play the computer (something I think people really want for the next version).
I posted a few screenshots of the newer version at:
If you have any ideas about what you would like to see in the game, don't hesitate to post a comment or shoot me an email. I'm very interested in collaboration and am open to any ideas people may have for improving the game.
That's a new one! I've never had a call to FIGURE fail like that. Had you been doing anything complicated in your MATLAB session before running Staker? I've run programs before that changed certain Java settings, which resulted in subsequent figures rendering funny. I would first try closing and restarting MATLAB.
I cannot run the program as I met the following errors.
??? Error using ==> figure
Error using ==> figure
Error using ==> figure
UIJ_AreThereWindowShowsPending - timeout waiting for window to show up
Error in ==> staker>make_figure at 3503
hObject = figure('Units','pixels','Position',position,...
Error in ==> staker>initialize_intro at 241
hFigure = make_figure([1+(SCREEN_SIZE(3:4)-[300 300])./2 300 300],...
Error in ==> staker at 213
good job!Thank you for sharing
I've submitted an updated beta version of Staker that should be available within the next day or so (v0.6). This version should run independently from the Image Processing Toolbox, so anyone who only has access to core MATLAB functions should be able to play!
As pointed out in the previous couple of comments, Staker (beta) requires the Image Processing toolbox. I have been looking into some things over the weekend and think that I will actually be able to remove this dependency for the next version. It appears that many of the functions I was using (IMFILTER, IMERODE, IMDILATE, etc.) can be easily replaced by using CONV2 to do the things I want.
So, for version 1.0 (hopefully to be completed within the next few months) you won't have to worry about needing any toolboxes; just standard MATLAB.
Most likely, you do not have the Image Processing toolbox, which is where FSPECIAL is from. I required some of the functions from the IP toolbox to do a number of things, like generate texture maps for the terrain. Unfortunately, some have found this to be a limitation, since not everyone has access to the IP toolbox. I have been considering writing my own versions of the IP functions I need, although I imagine they may not be as fast as those in the IP toolbox. I probably won't do this for the next version (v1.0) I release, but maybe for versions after that. For now, the IP toolbox is required. Sorry if this is an inconvenience.
I have an error:
??? Undefined function or method 'fspecial' for input arguments of type 'char'.
Error in ==> staker>generate_terrain at 1522
nearWater = (imfilter(double(mapHeight < 0),fspecial('disk',10),...
Do you know what could it be? I'm running Matlab v2008a in WinXP.
I bow down to thy MATLAB God.
Thanks for the support John. Incidently, if you would like to change the GUI colors for the game, I included a "Preferences" button at the bottom of the main menu that opens a GUI for customizing the display. You should be able to adjust the panel and text colors as well as the font type and size.
Incidently, if anyone is interested in seeing some of the work going into the next version (Staker v1.0), check out the GGE page for the game:
its vary vary fare
Very good. Extremely well thought out.
WOW!!! I'm very impressed!!!
I discovered another bug after I posted the game. If you are ever in a situation where both players have their stakers under water, then there is effectively no way to hit each other. The game has bombs for blasting out of the water and bombs for plunging below the water, but no bombs that can do both (shoot out of and then back under the water). For now, the only way to end a game in such a situation is for one player to forfeit or blow themselves up. I'm already working on a fix for this problem for the next version, whenever I get some time to finish it.
Added functions to make it run independently from the Image Processing Toolbox.
I've primarily updated the description to discuss bugs and bug fixes, as well as the current progress on the future release of full version 1.0. I also wanted to resubmit it so that the metrics might be reevaluated. They look a little wonky still.
Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.