gamesmaster.dsk.zip (204.68 KB)
Games Development system similar to AMOS/STOS
Okay, this is a package to help you construct your own games. Basically, you plan the game out, and let GamesMASTER write the code for you. To try and explain.
The game is made up of a whole load of modules. The game is run by the first module, which sets things up. The rest of the modules are run on reaching certain conditions, such as you pressing the fire button. You can also have a module to run every frame (1/50th of a sec) to handle things such as a timer, or the release of nasties.
A key point of the game revolves around the sprites themselves. As well as being able to define sprites with several different frames (ie for animation), each sprite carrys with it some general information, about it’s movement, how it is affected by gravity, and should it run any modules on a certain keypress, etc.
Next, there are lots of tables which you can alter. These are used to control things such as what happens when 2 objects collide, To mark blocks over the screen, change colours, create sound effects. You can have 8 different keys defined for controls, which each key (ie Left, Fire) being a choice of 2 keys from the keyboard, or a combination of 2. You can alter the strength of ‘gravity’, and many other things.
A very basic game then, would start of by placing your spaceship on the screen, this is set up to be user controlled, and on pressing ‘0’ or space, then it calls a module that fires your lazer. This module simply places the ‘lazer’ on screen under the space ship. The lazer is set up to move upwards, kill itself on leaving the top of the screen, and on colliding with an alien, it runs the kill alien module. The kill alien module kills the alien and the lazer, and increases your score. There is a module set to run every frame, that once a second places an alien at the top of the screen. The alien moves down the screen, following a defined path at random, if it goes of the bottom of the screen then it is killed. If it touches you then it runs the ‘game over’ module.
A somewhat badly written example, but it should give some idea of how things work. It is possible with experience, to write some very good games, one of which was actually comercially released by FRED, and another has been planned, although you will need time, skill and patience to write something of this quality. However various sorts of games have appeared on FRED written using GamesMASTER, including some by myself (Starshot FRED 24b - cheap plug I know!)
To summarise, you can easily create fairly pleasing games, with little previous knowledge, and given time, some very good games. It’s worth getting to play around with.
The bulk of the program is menu driven, using the cursor keys. You need to write the modules yourself, but the language is fairly simple and consise, yet allows maximum amount of control if you wish by allowing you to edit sprite data directly. The actual programs you write can use any keys you want (I think), upto 2 different combinations of 8 keys. You can also use the mouse by reading the System VARiables. The programs produced can call BASIC, and the variables can be easily passed between them, so ie, menus and highscore tables can be written in BASIC, which is probably easier.
Long since the days when all you could program on the Coupe was “10 PRINT “HELLO”:20 GOTO 10” in programming ignorance! Long are the days when the Coupe was a puzzle game player. Now, YOU can make your own snazzy demos and games with GAMESMASTER! Ripping the name straight out of the “popular” Channel 4 series (which is in it’s last season, folks) this is the mecca of all things Coupe - a utility worth getting hold of!
Basically, Gamesmaster (or GamesMaster or Games Master in the case of all the SAM disk magazines and fanzines) is a utility which can help you program your own games without the fuss and frolic of an assembler - that’s right. Gamesmaster programs the game/demo for you in MACHINE CODE! Whoopee! You can program games quickly and easily, with little fuss. There is one big donger to the actual package which all of Dr Andy Wright’s manuals suffer from… it’s too complicated!
To be fair, the first few pages explain rather simply, how you can knock up a great animated demo of a ship in 15 minutes. The NEXT page after that really drops you into the fundamental functions of Gamesmaster. “Forget the ship” the manual screams silently, “and get a load of these groovy features”. Well, okay, not in those words. And I suppose that some programmers could well breeze through the whole manual, but for the average SAM newcomer, you’ve got it rum, chum.
The first thing that hits you once the thing has loaded and initilized is a HUGE menu grid with an incredible amount of options. To make life easier, you can load up demos or games from the menu (the manual, unfortunately, doesn’t say how you do this until you look it up in the contents!!) which, to be frank,are completely, mindblowingly brilliant. The manual comments by saying that “these are programs screaming for expansion”. The problem is that you WON’T be able to jump straight into the utility with both feet (like I thought). The next month (or so) should be concentrated with manual passages memorised and logged in your already-flummoxed brain.
This is what you are asked to do in the first bit of the manual - load up a ship sprite, animate it and move it. The great revelation comes when you can load up to 96 (!) different sprites, depending if they all fit into the utility even on 512k, or even if you don’t need 96 sprites. From a series of sub-menus, you can alter each sprite to your liking. You can make independant sprites move on pathways which you can define on-screen. Impressive stuff, eh?
The next bit of Gamesmaster is the Module section. There can be 127 different modules, all accessable. These are simply 127 pages waiting for GM Commands to be entered, which control the game area. Not surprisingly (since the guy who wrote SAM BASIC wrote this!), the language is a mixture of BASIC commands and new GM Commands. The first we are introduced to is the PLACE command - a much improved PUT command, which allows you to define the co-ordinates of the sprite to be placed (like PUT), the number of the sprite and the sprite plane. The sprite plane is not very well illustrated in the manual, and I for one am still perplexed on what a sprite plane actually is. I ‘ve read that there are six “including background” so I guess that a sprite plane is like a sheet of glass to put your sprite. Different sprite planes can mean that I could put a load of stars on one sprite plane (behind or in front of another) to give the effect of depth of a spaceship on another sprite plane. Andy in his manual assumes that we all knew - ah, well.
Hang on - I’ve found the sprite plane entry, but it is on a page further than the “easy part” of the manual. To be fair (and to drop any more mention of the manual) said manual is a little bit on the crap side in the organisation department. This won’t effect the mark (it’s the utility we’re reviewing here) but it is a bit nasty to drop innocent Coupe owners in the stum with a mad manual - the Sam Coupe manual still reigns! (Maybe not…)
To run through some more of these useful GM Commands, TEXT is a glorified PRINT command, TRANSFORM allows you to change the sprite, ANIM sets animation sequences, BFILL is a glorified FILL command, MIRROR allows you to mirror a sprite, KILL unsurprising as it may seem, kills the sprite, RANDOM is a glorified RANDOMIZE command, SOUND causes a pre-defined sound to be made when something occurs, and so forth. There is some shockingly familiar commands in there - PEN, PAUSE, RETURN, REM, BORDER, PLOT, RND and so forth. Some acting differently to what you’ll expect (like SOUND) but you get a little head start from the rest if you know your SAM BASIC. And from there on, it is just a case of loading up the programs, viewing them and changing them for the better (or worse). Among the many programs is a massive 512k demo, a breakout clone which is quite nice, a meteors game, a fish tank (in one sitting I made all the fish die and the air bubbles trap the fish, but this shows what you can do). The rest are useful demonstration programs, including a two player game, a maze game, a platform game screen, and our friendly spaceships doing the honours with collision detection and the like. From one screen alone, you can change sprite activity. You can make the edges of the screen penetratable so that sprites “wrap”. You can make sprites bounce, or make them float. The possibilities are almost endless. I say “almost” because it is a bit of a bugger trying to settle in with the utility, unlike the SCADs system with it’s easy to use pointer system. It would of been great to have such a pointer system on Gamesmaster, but I suppose that is a personal gripe.
So, to cut a long story short, hard to get used to, but once you have got used to it, you can expect a utility with a hell of a lot more power than SCADs (so I’m reliably told) and with a meriad of possibilities. A small gripes, but if you want to change the SAM scene, we suggest you get your hands on Gamesmaster. And it’s much more user friendly than it’s 16 bit counterparts, AMOS and STOS. All we could get out of THEM after a day was 253 error messages.