CONTENTS
welcome Welcome to issue 12 developers! Many of you have awaited this release for some time now, but not to worry, because this issue has finally been delivered and quite a big issue it is. With this issue hitting the 50 pages mark, GMTM has hit another fine record. Issue 12 has some excellent articles, exclusives and reviews that you just have to read. Starting off with the first part to “Starting a Team” you will learn how to construct a solid game development team. Then we have some very interesting articles such as “Visionary Sound” where you will find how sound can do more than just be in the background. Next there is some great development articles like “Keeping Your Game Engine Flexible” and the “Getting Started with Ultimate 3D” tutorial. This issue doesn’t feature any major changes to design or content. The only main modification is that different sections of the magazine are different colours and on some feature articles we now have graphics above them. This issue we’ve brought back the ‘Free Applications’ part with another three excellent programs. If you’re looking for a game to play that doesn’t take 5 minutes to finish, I suggest you download and play ‘The Adventures of Cendah’. The Adventures of Cendah is a well put together game by KingDiz that’s not like your usual RPG. This game is not always predictable and the storyline expands. Best of all, if you play this game properly it will keep you occupied for a decent amount of time. You can find out what GMTM thought of this game on page 38 where it is reviewed. Also for this issue only you get a chance to view the new Liquisty 2: Unexplored Depths trailer thanks to Vertigo Games. For more information, check out page 32. In addition to the exclusive insight into Sploing there is 3 great wallpapers with this issue of the game. So check them out. Last but not least, if you’ve heard of a game that might be coming out soon and want to find out about it, don’t hesitate to contact us. We will contact the creator for you and any details we find as well as screenshots will be featured in the next possible issue. Well that enough from me this issue. Enjoy this massive read. Gmjab Editor
contents NEWS 03 03
WHAT’S GOING ON STAFF SAY
ARTICLES 04 06 07 08 09 09 10
STARTING A TEAM FINDING IDEAS FOR GAMES VISIONARY SOUND VIDEO GAMES, SCIENCE, POLITICS, AND ART SPEED BREAKER CHOOSING BETWEEN REAL AND FANTASY ENVIRONMENTS CHOOSING & FOLLOWING A THEME
GM DEV 12 13 14 15 17 20 20 21 21 22
RETRO GAMES: MAKING A GAME “OLD SCHOOL” KEEPING YOUR GAME ENGINE FLEXIBLE PSEUDO-RANDOM NUMBER GENERATION GETTING STARTED WITH ULTIMATE 3D TUTORIAL: 3D REAL TIME STRATEGY TUTORIAL: DRAW A DIGITAL CLOCK TUTORIAL: MINIMAP TUTORIAL: PIE CHART PIXEL ART TUTORIAL: IMPROVE YOUR PIXELING PIXEL ART TUTORIAL: RUNNING ANIMATION
EXCLUSIVES 23 25 28 29 30 31 32
EXCLUSIVE INTERVIEW: CODERCHRIS EXCLUSIVE INTERVIEW: HAWTHORNELUKE INSIGHT INTO: SPIRITS OF METROPOLIS PREVIEW: SPIRITS OF METROPOLIS INSIGHT INTO: SPLOING INSIGHT INTO: BLAZEZONE EXCLUSIVE LIQUISITY 2 TRAILER
REVIEWS 33 34 35 36 37 38
SUB TERRANEA ONLINE LEX DEEP SPACE FALLING CJ ZYMO THE ADVENTURES OF CENDAH
EXTRAS 40 43 44 45 46 48 49 50
ANCIENT CIVILISATIONS COMPETITION INTERVIEW WITH: FLASHBACK TOP GM PHYSICS GAMES GLOBAL GAMER PROFILE (GGP) FREE APPLICATIONS COMIC CHECK OUT CLOSING
2
CONTENTS
online
what’s going on
Website:............................................www.gamemakertech.info Forum:..................................www.gamemakertech.info/forum/ Wiki:............................................www.gmtechwiki.wikidot.com Email:..........................................support@gamemakertech.info
GMT: Changes to Advertising Starting from Issue 13 the free advertisements system will be closed down. Advertisments in the magazine will be now paid only. This will allow users to purchase full page or halfpage advertising for a number of months. For more information on the new system and prices either read the ‘Staff Say’ section in this issue or visit the website.
staff gamez93 Hiyukantaro GM Tech Owner ESA Rixeno gmjab tomrussell Editor Aertcz Timoi Rup13 RoboBOT Assistant Editor RedChu Researchers: GMmarine Reviewers: Writers Bendodge Christian Sciberras
Mediocre Xantheil Chriscool
Comic Artist: Bob–11500K Proofreaders: NAL eagleprof Special Thanks: Alex Hawthorneluke Mr. Chubigans Schyler CoderChris
staff say by gmjab
As you may have heard or read, the Game Maker Technology Magazine advertising system will be changing as of issue 13. These new changes include the removal of free advertising that is present in the ‘Check Out’ part in the ‘Extras’ section. This means only paid advertisement will appear in the magazine. With this new system you will be able to purchase half page and full page advertisements at a small cost. We have a several deals for you to choose from and they are listed below. Length
Full Page
Half Page
1 Issue 2 Issues 3 Issues 4 Issues
$9 $17 $26 $35
$5 $9 $14 $18
Competition 02 extension With the recent host change YoYo Games extended the competition. However now the entries have closed and we are awaiting the anoucement of the winner. Server Upgrades YoYo Games has moved to different host which will, in turn, provide an additional two servers and a greater bandwidth. YoYo Games has had to move 200GB which took a couple of days. The new servers are faster, however you may not have noticed a difference. GMC updates The GMC has received a long awaited Invision Power Board software update. Along with this update the GMC has had a reskin as well as a PM box size increase to 100 messages. Some boards have been renamed and new boards have been created. Most members are now enjoying the new look and layout of the GMC. Smarty no longer an admin Smarty has resigned from his position of admin on the GMC. The well known admin will return to a normal member but will remain in close contact to his previous fellow moderators. He announced his resignation in a topic reply in an effort to not make it big news. However KCLC made a public GMC announcement later on. GM Obfuscator There have been many failed attempts at game protection to stop the GM Decompiler and so far no one can prevent games from being decompiled. However, Schreib has created a GM Obfuscator designed to render decompiled GM6 games completely un-readable. Download the program here.
Note: All prices are in USD.
However you are not limited to just 4 issues. You can contact us at anytime to arrange a custom deal for any number of issues. Send any questions or enquires to gmtech.magazine@gmail.com.
3
ARTICLES
Starting a Team - Part 1
Excellent games have been created by teams of people. RedChu provides insight into how to setup your own team. As we all know, all of the big commercial games are made by teams of many people, each of these team members do a specific job, be it programmer, level design, etc…but these guys get paid a lot of money, as most games cost millions of dollars to make. And as we also know, people that use Game Maker tend to make their games by themselves and take full credit for the development process, they make their own graphics, sounds and music, they also program the games themselves, but not always are people multi-skilled to do so, so what do you do? It’s a fairly simple question with a fairly simple answer; start a team. I will run you through an entire process of starting your team and making the game.
The name game One of the hardest parts in starting your own team is deciding on a name for it, you may already have come up with a name, but have you ever thought it may have already been taken? One good way to check if the name you want is taken is to Google it. If it comes up, then it is already taken, if it doesn’t, then it probably hasn’t. Google has a massive database of websites, so if the name you want is that of a company, and that company has a website or has posted it on a website, then it should show up on Google. Also, you need to be sure that your name is a good one, don’t use your own name when naming your team. Chances are people won’t be willing to join a team called “Johnny’s Games” or something similar, think of a catchy name, one with a ring to it, make it sound like a professional company, also try adding “Entertainment” or “Games” to the end of it. For example; if the name of your team is ‘Ugly Monster’, it would possibly be ‘Ugly Monster Entertainment’ or ‘Ugly Monster Games’. You can use other ones to it as well, or you can leave it like it is ‘Ugly Monster’.
forum called ‘Team Requests’ where people like yourself post topics with all the necessary information about your team, such as positions open, current and/or future projects, rewards (if any) people will get for working for your team... just about anything you want can go into your advertisement as long as it follows the rules of posting for that forum, and that they impact the team in some way. Here is an example of a simple ad you could post there: Team Name: <name here> Team Needs: <available positions here> Current Project(s): <current project(s) here> Rewards: <what you’ll get in return for working here> Team Information: <information about the team here> By adding the information needed, this is all you would need for your ad, you could possibly add your e-mail address or other contact information, or if you have a website ready for your team, you could post the link. You should also know that replies in the Team Requests forum are not allowed by anyone, even if you are the author of the topic, so you can’t bump the topic yourself. But after a month has passed, you may PM a moderator and they will bump your topic back to the top of the list.
Organizing your team Once you have all the necessary team members, you can start to organize your team. What do I mean by that? well I mean figuring out which members will be doing what. For example, the artists. If a member is good at drawing characters, assign them to a character artist position, or if a member can draw amazing backgrounds or tilesets, assign them to a background artist
Also, don’t use any legal names if you don’t intend on actually paying for an incorporation for your team, meaning you can’t use ‘Ugly Monster Inc.’ as your team name. Doing this could get you into legal trouble, and is not recommended. While it may sound good with your name, always pay to get your team incorporated if you want to use Inc or Incorporation.
Getting members for your team These include artists, music composers, sound effects specialists, programmers, objectors, level designers, concept artists, help document writers, testers among others. When looking for a team, don’t randomly ask people to join. This isn’t very professional. Instead, you should post an ad on the GMC. There is a Article continued on the next page.
4
ARTICLES
Starting a Team - Part 1 (Continued) position. By organizing the team before you start any projects, it will be easier to figure out who will be doing what for the project, to avoid clash. If you aren’t sure about where you should place a person, you should ask them what they’d rather do. If it’s already taken, ask them again. It is a good practice if you re-assign the team after a project is finished. If somebody did a great job, you should leave them at their position, or promote them to a better position, but you should get their opinion on the promotion before you do it. Conversely, if somebody has complained about their work or didn’t do a good job, you should think about assigning them to another position, and if they still complain or do bad work, you may have to let them go unless you are willing to keep them as a back-up. If you do choose to let them go, you should tell them first before announcing it to the other team members.
The project After you have finally organized your team, you will probably want to start on your project. Hopefully you already know what you’re going to make and have the global idea in a document which you can send to the entire team. But along with the global idea for the game, you should send team members’ documents containing information on what they are going to be doing and what they should make. Start with the concept artists, send the character designers information on what the character will do and what he should look like, and have them draw out some artwork for the characters, and for items, send the concept artists information on what the item should look like. Then there are level artists who will draw the concept art for the levels. You’ll need to send them information containing every little detail on what they should be in the level and what the level should look like, and they’ll draw artwork of the levels.
The programmers need to be told everything that needs to be programmed and what it is going to do. Scripts should be uniquely named to avoid conflicts with other game resources. The level designers will be putting everything into the rooms, so you will need to send them all the heavily detailed information on where everything needs to go, or you can leave it up to them on where to put everything.
Demos Demos are good for many reasons. One reason is that it allows the public to test out your product and let them know what the game is and what it looks like. Another reason is that it can provide feedback from potential players of the game. Feedback like this can help you and your team make your game better. The big companies do it, so why not you? When putting together a demo, be aware people will pick holes. Don’t rush to put the demo together, take your time and complete a checklist of things to do. Here is a list of things you should do when making and releasing your demo. 1. You need to put the demo together like you would the final release. Don’t do something entirely different to the actual game. The public may not like what they see in the demo and subsequently not bother with the final release of the game, even if it is different to the demo. 2. Don’t give away too much information that could spoil the final game. Also, when using the same levels in the demo as the final release of the game, you should probably not let the player uncover all the secrets that can be found in those levels, or at least move some things around in the final release of the game to provide the player with a unique experience.
After all concept art is taken care of, you need to send the art to whoever will be drawing the sprites/models/backgrounds. They will then take the concept art and turn it into what it will be in the game. If you don’t like the way the art turns out, you can tell the artists to change the way they designed it or have the concept artists make different sketches, and then send it to the other artists to repeat the process.
3. Once your demo is put together and ready for release, you should find a reliable file host for the demo. You can use any file host you want, or you can use your own website if you have one. Another good place to host your demo is a YoYoGames, you could place it there where it can be reviewed and rated by the public. Just use a place you are comfortable with and you feel is good enough to host your demo on.
Once the art is taken care of, you should send some information to the sound effects people and music composers on what should be made, such as soft, soothing music or technical, sci-fi music, and for the SFX, send them what it should be. Hopefully everything will turn out OK and you won’t have to repeat this process, but you never know.
4. Advertise your demo. Now that the demo has been released, you need to tell people about it. People won’t go looking for your game if they haven’t heard about it.
The object creators will put together the objects, they shouldn’t need to be told what to do if the other team members have left comments for them, but if they do happen to need help, you’ll have to give it to them or tell a team member to help them.
Written by: RedChu
Read part 2 in Issue 13 of GMTech Magazine.
5
ARTICLES
Finding Ideas for Games Eventually we all run out of ideas. So what can you do to find more? When you are a game designer, at some point in your life you will run out of ideas. I have, and I’m sure most professional game designers have done it as well. Luckily, I have some solutions to help solve this .
Your Imagination This is where most games begin. You start to dream up a creative little idea and build it into a major and successful video game, and one good thing about using your imagination is that you can play your game at any time you want in your mind, and make some crucial changes that may effect your game in better ways. Your imagination is also where you can dream up a fantasy, something that isn’t possible in the real world, but possible in the game world, and anything is possible in a video game, you just have to make it possible. When exploring your mind, try to think of a good story you could use for your game. Try to think of the characters and areas that will come into play. Once you have these in your thoughts, you can start adding on to the initial idea, and from there you can start making the game. If you keep thinking of more things to add to your game, don’t hesitate to do so, but when you decide you’re done, you’re done, and you should quit adding anything else to the game unless it is absolutely necessary.
Other Games Basing games on other games is a common method for both indie developers and commercial developers. They base their game on a previous game, but add new characters, levels, music and other things, but they keep the same storyline and general idea for the game. This is called a game ‘clone’ and is a cheap but effective way to start a game. However, instead of creating a clone of another game, you can simply get ideas from many different games and form your own out of them all. One thing you need to avoid doing when creating a clone of another game is using resources from it. No music, sounds, sprites, models, levels, backgrounds or anything else should be copied. Doing so without permission from the original game creator will be breaking copyright laws. It is always good practice to create your own material for your games or find somebody that will do so for you.
Ask a friend When you still just can’t think of a good idea for a game, you can always ask somebody else, such as a friend or family member, after all, you never know what goes through the mind of others. When asking another person, it is best to ask somebody who doesn’t make their own games. That way if they have an awesome idea, they’ll tell you it rather than give you a bad idea. When asking a consumer about an idea, they’ll give you many ideas on how to make it better game. You may want to place the name of the game that inspired yours into your credits, so that if/when the inspiration game’s author plays your creation, they will know it was inspired by them.
Your surroundings Take a quick look around yourself, think of something that would enhance your surroundings and make it exciting, then try to build on that little thought and turn it into a game. This is one of the best methods around when you are running low on ideas, but it requires some patience and a good imagination. Unlike using your imagination as default for gaining an idea, you are enhancing your surroundings with your imagination and then gaining an idea. I want you to look just to the right of you, what do you see? I see a fake palm tree leaning against the wall, and a calendar hanging beside it with a picture of a covered bridge, and above the palm tree I see a poster of Link from the Legend of Zelda series. Now think about what may enhance those, I see the palm tree standing on a sunny beach and a covered bridge nearby, Link doesn’t fit into the surroundings so I just toss him aside like an old pair of socks. Now, what I want you to do is take what you see and enhance it with your imagination, change the location if you wish, it doesn’t matter, try to make it into a game in your head. It may be hard at first, but it is a very good way to find a very good and unique idea.
Conclusion I know that there are only four methods here, but that should be enough to help you find some ideas on your own. I hope that these methods help you in gaining some amazing ideas and that you will make some even more amazing games with them. Written by RedChu
6
ARTICLES
Visionary Sound
Sound can tell the player information, but how is this so? Tom Russell will explain. Gameplay is the single most important element of game design. Sure, it’s nice if you have appealing graphics and a lush, evocative musical score - but these things are superficial. It’s candycoating to make the pill go down sweeter. At the same time, these mimetic aspects of game design can and often does form an integral part of the gameplay, clearly communicating to the player the status of his game. The point of sprites in the first place is to show us where the different game elements (the player’s avatar, the terrain, the enemies, the power-ups) are spatially located in relationship to one another. Sprites and sounds often work together to impart information to the player. For example, when you’ve taken damage, the character’s sprite often flashes or glows for a short time, indicating invulnerability; generally the impact causing the damage is accompanied by an appropriate sound. This underlines the event that has taken place (i.e., that the player has taken damage); it communicates the information in two different ways to ensure the message is not lost. Generally, visual and sound elements always work together in this fashion, both methods imparting the same information. It’s a mark of good, clean, solid game design, and it is widespread for the simple reason that it works. But sound can do more than simply echo and support the visual elements. Consider the complex ways that sound and sight are combined in a number of films; often the image and the sound actively contradict each other to produce an ironic effect, or the image and sound comment in different ways on different aspects of a story or character. Now, I’m not saying that video games are akin to films; that is, in point of fact, passionately and precisely the opposite of my opinion. But I am saying that sound design can form an integral part of the gameplay without merely underlining everything we’ve learned from the sprites. And I’m not talking about rhythm vomiters like Guitar Hero. While sound does drive the gameplay, one will quickly note that everything the sound tells you is present in the spriting as well. In fact, it is possible to play Guitar Hero without the sound on. (I’m not saying it’s fun to play it that way, just that it is entirely possible.) What I’m talking about, and what I’d like to see, is sound design
that tells us something that is not immediately present in the visuals. One example I can think of, right off the top of my head, is the use of music with an accelerated tempo to indicate that the player is running out of time in platformers such as Super Mario Bros. While the timer is visible on-screen, it’s not the kind of thing one is paying attention to, especially if the sound is muted. With the sound on, though, it alerts us with stunning immediacy that we had better hurry it up. A great example of visionary sound design is to be found in Shush, a surprisingly addictive Game Maker game by Barry Atkins. Since I’ve reviewed it at length in my own magazine, I’ll be brief in my description here. Basically, the game tasks you with feeding coloured worms to correspondingly coloured and very noisy birds until they fall asleep. The size of each individual bird changes accordingly with each correct or incorrect worm, alerting you visually of its individual progress. As the birds fall asleep, they become less noisy, and so you are aurally kept abreast of your over-all progress. Combined, the two aspects (the visual and the auditory) give you a clear picture of where you are in the game, but each aspect pulls its own weight. Either one on its own can’t get the job done. I’m working on a game of my own (an overhead action-adventure game) and in one instance the player must find a kitten lost in a dungeon. My idea, and of course we’ll have to see if I can pull it off, is to have the unseen kitten’s mews become louder and more frequent as you get nearer to it, and to have the mews become fainter and less frequent when you are farther away. It’s nothing revolutionary (basically a game of Marco Polo) but it does put the emphasis squarely on sound design. There’s been a lot of technological advances in sound design and spriting, but it seems to me that, with very few exceptions, the artistic advances (those related squarely to actual gameplay) in sound and spriting has been rather stagnant. There are possibilities here that have yet to be explored - the potential for creative and daring game design, the kinds of things that make a game (amateur or otherwise) really stand out. Written by Tom Russell
Write for GMTM
Be a freelance writer for the Game Maker Technology magazine! Writing for GMTM allows you to have your work in the magazine and to gain rewards. For more information, checkout the forum.
7
ARTICLES
Video Games, Science, Politics, and Art - Part 1 Tom has quite a lot to say in this multipart series of Video Games, Science, Politics, and Art. In the eleventh issue of GMTM, an article entitled Violent Games - Why So Popular? (p. 10) appeared. Its cites “[a] study’s research by Jessica Nicoll & Kevin M. Kieffer” that “found that even playing a violent game for under 10 minutes can increase a person’s aggressiveness. It was also found that children who play these video games had more arguments with authority figures and also performed poorly at school.” The impression that this gives the reader is that Nicoll and Kieffer, with scientific rigor aplenty, conducted research that supports the claim that violence in video games (and other media) can warp the poor fragile minds of children. It’s a good story for reactionaries, and has been cited by Jack Thompson and his ilk. It’s also untrue. The paper by Nicoll and Kieffer, “Violence in Video Games: A Review of the Empirical Literature”, published in 2005, is not the record of scientific findings or actual research on the parts of Nicoll and Kieffer. It’s a literature review, which means that Nicoll and Kieffer read a bunch of studies that other people wrote over the course of the last twenty years, and plucked their findings from that. It’s not a new study, but rather a cherry-picking of studies that were complimentary to their own opinions. They did not set out to test a hypothesis per the scientific method, but rather to make a name for themselves. And as Bryan-Mitchell Young points out at http://popularculturegaming.com/archives/cat_rants.html, the paper was most likely the work of Nicoll, an undergraduate student with a bachelor’s degree. To give a student’s paper the pedigree of a professor’s and the smooth veneer of academia that pedigree implies, and to pretend that it represents any new findings at all is an insult not only to actual scientists and their actual findings, but also to the reader. Compare this case, then, with that of another literature review paper, “A meta-analytic examination of assumed properties of child sexual abuse (CSA) using college samples”, published by Bruce Rind, Phillip Tromovitch, and Robert Bauserman in 1998. That paper argued, based on 59 other studies, that child molestation does not significantly harm the victim, and that the definition (or “construct of CSA”) “is of questionable scientific validity.” As Stephanie J. Dallam argued in her 2002 critique of Rind, “A number of commentators suggested that the study is pedophile
propaganda masquerading as science. Others claimed that the authors are victims of a moralistic witch-hunt and that scientific freedom is being threatened. After a careful examination of the evidence, it is concluded that Rind et al. can best be described as an advocacy article that inappropriately uses science in an attempt to legitimize its findings.” The same can be said of Nicoll’s “Violence in Video Games”. And, given twenty years of studies to pick and choose from (remember, in 1980s it was also argued that Dungeons and Dragons initiated teenagers into witchcraft and made it impossible to distinguish fantasy from reality), of course she found studies that could support the story she wanted to tell. There is, of course, one huge difference between the two. Rind’s findings were widely discredited, and in fact the paper was condemned by the United States Congress. The stifling of free speech aside, generally everyone knows that child molestation is a terrible crime and that its victims carry scars with them for their entire lives. The findings of Nicoll, on the other hand, were not discredited, and that’s because the public (regularly whipped into a fervor by Jack Thompson, Hillary Clinton, and Joe Lieberman, among many others) believes that video games, movies, and music are responsible for school shootings and serial killers, despite vast mountains of evidence to the contrary. It’s an appeal to fear, “science” twisted for the basest of political purposes. It’s an attempt to stifle free speech and to prevent people from making up their own minds. It denies not only the basic right of human beings to think for themselves, but also the duty we all have to take responsibility for our own actions and their repercussions. It is, in short, morally wrong. It is morally wrong of Nicoll to publish a grossly selective and inaccurate paper; it is morally wrong of the media to present it as “scientific findings” when it is, at best, a very complex book report; and it is morally wrong for any human being to just nod their head and regurgitate what they’ve been told without spending ten minutes on a cursory google search. Next month, I’ll take a brief look at actual scientific studies (the positive and the negative) about the effects of art and media on human beings. Written by Tom Russell
8
ARTICLES
Speed Breaker
Speed is a common problem with GM. So what are some quick solutions?
The Problem Even before you finish your Game Maker Game you may experience Game Maker’s speed problems. With just a few object step event actions your Frame-Rate-Per Second (FPS) would hit a rock bottom, taking a lot more time to recover than it took to fall. There are many ways to speed up your game. This issue we have provided some quick solutions.
player is with-in the given region. Once the player is in the region you may step up the checking to every 2-3 steps if you wish. Remember, there can always be a better solution. - Deleting unused resources while the game is running can prevent memory from being wasted. These resources can be later reloaded from external files when needed.
Though fluctuation cannot be completely overridden, it can be made quite smooth. Some quick fixes may be:
- Another trick you can use is to use rooms quite effectively, not overburdening any of the rooms in particular. You can design the level so that it seems the next room is just the continuation of the same path.
- Use a DLL. If there is a part of your game where you have to choose between using DLL or writing complex Game Maker Language (GML) code, it would be wiser to choose DLLs as they can be written in programming languages that run faster than GML. However using a DLL for smaller actions can slow down your game because Game Maker is slow at calling DLLs. This is why using DLLs is only recommend when performing complex mathematics.
- Overshadowing things can also counter speed breaks. Say for example, a warrior cannot perform his moves rapidly. How about having rain of blood in the background with sczazzing SFX and sparks from the sword? This can successfully distract vision. While distraction could provide a solution to slow movement it will not speed up the FPS if you create effects.
Solutions
- Consider this brief situation: Enemy AI is checking whether the Player is within a given region. A new user’s solution would be to check in Step Event for player’s X & Y co-ordinates. But what would be a better solution would be to check in every 4-6 steps until the
- Last but not least, don’t feel shy to seek help on the GMC as someone may be able to help you out. Written by Xantheil
Choosing Between Real and Fantasy Environments Real or Fantasy enviroment? ESA will help with this question in this article. For some people, it may just be the case that choosing between a realistic or unrealistic background is difficult. After reading this article, I hope that you can find that it is actually something very simple. To start off, let us take a look at what game environments contain. Backgrounds and terrain are usually the first things to come to mind.
Common Elements of Fantasy Environments - Sizes of objects (ie. Trees) are not in proportion. - Saturated color palette. Realistic colors are not used very often. - The shading of the terrain, background, and objects are not pho to-realistic.
Common Elements of Realistic Environments - Everything is at least fairly realistic. That includes the shading, color choice, proportions, and tiny details. - Realistic environment physics The previous points should give you a general idea about what the different environments are about. It is hard to say that one is “better.” Some games just need a fantasy environment. Or a realistic one. The choice depends more on the developer and the game itself. If the developer feels one is more fitting in their game, then they may choose to have that certain type of environment. Another way to tackle the problem of choosing one of they types of environments would be to ask people who played the game. They would have an unbiased perspective into what fits, and what does not. The best way to choose would be to take all these steps and balance the opinions out to choose the most necessary type of environment. These only some tactics to help you choose a fitting environment, and I hope that they can aid you in your game-making. Written by ESA
9
ARTICLES
Choosing & Following a Theme Does your game have a theme? Do you follow the theme throughout the game? When it comes to making a game, it’s always good to have a theme to follow just to keep on the right track and not to make your game stray off course. Some of you may think: “Of course I chose a theme, I just simply build it while I make my game…” That’s not the correct way to do this. Rather, your theme should be planned. This small article will help you chose and follow your theme.
What is a theme? “A theme is a unifying idea that is a recurrent element in a literary or artistic work” - http://wordnet.princeton.edu/perl/ webwn?s=theme. This means that when you make a game, your ideas, the scenario, the player, and whatnot should rotate around this main theme.
Think of a Theme You’re starting a game, one of the first things you should tell yourself is what theme you want to follow. To do so, you can take a piece of paper and jot down all your ideas. Now slowly remove ideas until you have a basic overview of your game. Using this list of ideas, write down another list that joins some of these ideas together to make a general theme. This doesn’t necessarily mean that your theme should a single word like “water,” because that would be way too vague and makes your game look a little unorganized. Your theme shouldn’t be vague, but it should still have enough room for new thoughts and modifications.
For example, you’re making a game; the theme could be something like an alpaca fighting against the evil llama. It’s not too simple, like simply “alpaca”, yet it’s not too vague, like “the alpaca that went around the world using a pan and hit the llama’s head which made it fall to infinity and beyond.”
Following your Theme Great, you have a theme! What now? When you start planning out your game, you should make everything fit with the theme. It’s almost like following a thesis (which sums up your essay in a sentence), but instead of it being an essay, you’re making a game. Sticking with the theme of the alpaca, when I start creating the story and all the events, everything will have to fit in the theme like a puzzle. This means that I won’t add something random and totally out-of-concept, such as the fact that the alpaca flew all the way to Mars, found a Martian, and brought it back to Earth to help it take over the world. It’s all right to do this in certain cases if you add a small random event here-and-there just for fun, but don’t over do it. When you start adding a bunch of these events, either people start wondering why and how you thought of such a thing, or, in the case where your game follows a theme of a totally random game to make people laugh, you might succeed. Written by Rixeno
10
GM DEV
Retro Games: Making a Game “Old School” This Issue ESA provides tips on how to make your game “Old School”. Whether it’s for a contest that is retro-themed, or you just want to make a game look like it came from the 70’s, this article will give you some ideas on how to achieve this. It will deal with different aspects such as choosing the style for the graphics, music & sounds, and even gameplay.
Graphics The tell-tale sign of an old school game is usually its graphics. Big pixels and a limited color scheme is exactly what you should be aiming for. Usually, the older games use less colors, so you can use this to decide how “old” you want your game to look. Pacman and the early Super Mario Bros games are good examples of this.
Graphics Tips - When making sprites, pixel them as you normally would, then enlarge them to twice their normal size to give a retro feeling. - Consider limiting the amount of colors used with your game’s graphics. 32-bit or even 8-bit games are a testament to the older color schemes and styles that were used in retro games. - Using somewhat saturated colors gives games a really old school feeling. However, saturated graphics can be distracting and hard on the eye.
Music & Sounds Like the graphics, the choice of music and sounds tell a lot about what kind of game the player is trying. A good sound format to use would be XM, MOD, or IT. These formats are for chiptunes, which can be composed using a tracking program. MilkyTracker is a popular choice for this job (http://www.milkytracker.net). There are many tutorials to choose from on the tracker’s site, which can help you understand the program a little more. Chiptunes can be used for music, and the wave forms used in these can also be made into different sound effects as well. If you are looking to play a chiptune in your game, there is a very useful and functional DLL called GM Bassmod. It is a replacement for the older JBDFMOD DLL. Both of these DLLs were made by Smarty, an exadministrator at the GMC.
Gameplay Gameplay is another defining element of old school games. Combos are a fun and classic feature to include. Usually in much older games, there are not any pause or save/load features. This is not always the case, however. Shops or unlockable objects are commonly seen in old school games. The Castlevania series (for SN64) is a good example of this.
Gameplay Tips - Playing old school games obviously gives you a better idea of what the player will want from your game, not only expect. - Having a set time (such as the 80’s) you want to emulate in your game helps you decide what features to have, and what feature not to have.
Conclusion I hope this article can help you in any circumstance that requires you to make a game feel retro, or rather old school. There are many old school games, or emulations of classic games that have been made with Game Maker. Making an old school game does not necessarily mean copying or remaking a game like Tetris or Breakout. The term old school applies to games that come or look like they come from at least ten years ago, where 2d games were in abundance. Feel free to take these tips and ideas into consideration, when you aim to “keep the old school alive”. Written by ESA
Sound Tips - If you do not have the patience or time to make a chiptune, there are many trackers who can compose music for you (on the MilkyTracker forums). If you cannot find any, there is an abundance of old chiptunes on various sites. - When looking for retro-sounding sound effects, try experimenting with the pitch-bend in a tracking program. Wave forms with their pitch being shifted can work very nicely for any pickups or powerups in games.
12
GM DEV
Keeping Your Game Engine Flexible How can you avoid going insane when your game needs upgrading? bendodge has some tips. Almost everyone who has made a computer game has made this classic mistake: you build a great game and then go insane when you try to upgrade it. This is always due to short-sighted design. If there is any chance that you might significantly upgrade, expand or otherwise modify your game’s core in the future, you need to build your engine with flexibility in mind. A note to inexperienced readers: this requires that you write most all of your game in GML. Drag-and-drop simply won’t cut it.
3. Use a sane coding style. Yes, I realize that this involves a lot of personal preference, but some coding styles are definitely more readable than others. There have been several discussions on the GMC about this, with the general consensus being that consistency is the most important thing. Whatever style you use, you must make it readable. Try to make curly brackets visible, use enough linebreaks and spaces, and use variable names that make sense.
The key to flexibility is organization. If you’ve ever tried to clean up someone else’s messy code (or code you wrote long ago and forgot about) you know how important this is. It’s like trying to drive around Washington, D.C. or some other old place that didn’t have sane road planning. Here are some steps to making a game’s internals neat and tidy.
Besides having organized code, you need to make your scripts and resources adaptable so that you can easily modify them or add functionality.
1. Use a sprinkling of groups to keep your object, scripts and resources easy-to-navigate. I’d suggest categories like menu, players, effects, control, terrain, interface, etc. Of course, these are just generic suggestions and you can probably think of some that fit your needs much better. Use names that make sense, use only as many as you need, and use the same naming system for objects and resources (scripts will probably need to be different). 2. Use comments liberally. Keep them short and to the point, and use them liberally. I recommend putting a comment line at the top every script that states the script’s purpose and its arguments. Whenever you initialize a variable that isn’t really obvious, add a comment at the end of the line telling what it’s for. If you have any particularly cryptic code, you might want to put in a longer explanation telling what the code does, how the game gets there and where it goes after that. This is so anyone reading it later (probably you) can get the same thought process the programmer had when he first wrote it. Here is a slightly exaggerated example of commenting: //this script loads background music //if arg0 is string “prompt” it will open a file dialog, use any other string as filename //argument1 is whether or not to loop (1 = true) var music; //stores result from open dialog and from sound_add() if string(argument0) != “prompt” { if file_exists(string(argument0)) then music = string(argument0) else{show_error(“Error! Music file “ + string( argument0) +” not found.”,0); exit} //check to make sure the file exists } else { music = get_open_filename(‘Sound Files|*.mp3; *.wma;*.wav;*.mid;*.midi’,””); if music == “” then exit; //quit if user cancels } music = sound_add(music,3,1); //add the music file if argument1 == 1 then sound_loop(music) else sound_ play(music); //start the music
Sprites can be used and re-used a bit if you use blending colors. To do this, set the variable image_blend (or the appropriate argument in a drawing function) to the color you want your sprite to be. White areas in the sprite will be drawn with whatever color you choose. Areas with other colors are blended with the color you specified, but it’s difficult to guess the results, so you need to test it out. With a little forethought, scripts and code can be “recycled” and modified much more extensively than sprites. The important thing is to keep flexibility in mind when you first write the script, but that’s easier said than done. Here are some less vague, more practical tips:
1. Avoid using the drag-and-drop Execute Code. There is a proper place for it, but writing healthbar code in each object’s step event means you have a lot of work to do if you decide to revamp your health system. Use one script instead. Scripts are not only faster, but your game will end up having a lot less code to debug. 2. Use plenty of arguments. Don’t write a debris-generating script that only makes debris for one object. Give it some arguments and let several object use it. Now, you can get carried away with this, but if you use speed, size, color, direction, and perhaps a few other arguments you’ll probably be safe. 3. Do not put game control code into the player object. In general, player objects should only have movement, health, collision and draw code. Put game control code (level timers, object spawns) in one or more controller objects. If you choose to use more than one controller (such as one controller per level) use parent objects or put most of the code into scripts. Avoid redundancy at all costs. These are basic methods for keeping your game engine moldable and manageable. As you may have noticed by now, most of this centers around keeping the amount of code to a minimum. That’s really the key to a flexible engine. Written by bendodge
13
GM DEV
Pseudo-Random Number Generation Timothy Sassone shows us how we can do Pseudo-Random Number Generation. Truly random number generation is impossible with computers, and in fact, often considered completely impossible. If there is any way to generate truly random numbers, it would have to be based off something completely unpredictable.
How then do games and programs do it?
Also, x should be a co-prime to n2. Suggested numbers are: n1=16807 n2=2147483647 As for the first, n2 should be a power of 2, often 232.
Well, they use a method called “Pseudo-Random Number Generation”. Pseudo-random number generators often start with a seed and then generate a string of seemingly random numbers from it.
In my random number generator, I used:
Why is it not truly random? Because if you were to use the same seed more than once, you will always get the same results.
However, these are not the best and I will be updating soon with better numbers. For a list of good numbers see the Wikipedia page, “Linear Congruential Generator”.
How come games based on luck are predictable then?
So what should the code look like?
Well, most of the time the game will use something like the computers clock time as the initial seed, sometimes even the number of milliseconds since the computer was turned on.
How do they work? And here comes the actual tutorial. Most random number generators in games use a method called a linear congruential generator. While not the most powerful generator, LCGs can generate extreamly long streams of random numbers if used correctly.
What the heck is a “linear congruential generator”? A LCG is an algorithm that takes a seed, and changes it to a new one. The seed can then be taken and used as a random number. The next time it is used it uses the most recent seed and regenerates it.
So, show me one already!
n1=171 n2=30269
Well, there are many ways you could set up a number generator, however, I will be showing you a simple one. First, create an object. In it’s creation event create a variable called seed and set it to whatever number you want. In the keyboard pressed space event put the following code: seed = (seed * 171) mod 30269 show_message(string(seed/30269))
This takes your seed and generates a random number. However, using these methods generates a number between 0 and 30269 (or whatever you use for n2). So, I divided by 30269 (n2) so the number stays a decimal between 0 and 1.
What if I don’t want a number between 0 and 1? Multiply! If you multiply the result of the division by n2 whatever you multiply will be the highest possible result. 0 will remain the minimum. If you don’t want 0 to be the minimum, add to the result. Here’s some examples:
Okay, here’s one version... x = (x + n1) mod n2
(seed/30269)*10 Example 1: A number between 0 and 10
And here’s another... x = (x * n1) mod n2
(seed/30269)*5+1 Example 2: Generates a number between 1 and 6, much like rolling a die.
Both are very similar. In both, x represents the seed, and should have an initial value. Now, n1 and n2 are a little more complicated. In the second, n2 needs to be either a prime number or a power of a prime number and n1 needs to be a primitive root modulo (google it for more information, I will not be explaining all the math terms) of n2.
As you may have noticed, adding to the result adds to both the minimum, and the maximum. So keep that in mind. Also, both the above assume you used 30269 as n2, if not, just replace the 30269 with whatever you used for n2. I hope you have enjoyed this little tutorial, and learned everything you could want about random number generation. Written by freelance writer: Timothy Sassone
14
GM DEV
Getting Started With Ultimate 3D If you have never used Ultimate 3D then this tutorial written by gmjab is for you. Ultimate 3D is a 3D engine developed for Game Maker by Dr. Best. While Game Maker can be used to develop 3D games on its own, Game Maker is not designed to let you develop high quality 3D games. Rather Game Maker only supplies a limited number of 3D functions to allow people to make 3D game if the user wishes to do so. If your looking to develop a quality 3D game, Ultimate 3D should be your choice.
Why Ultimate 3D? You may have heard of other 3D engines developed for Game Maker. Some of the other most popular are: Xtreme 3D and GM Irrlicht(GMI). There was another 3D DLL called Ultima 3D, however it is no longer available. Xtreme3D The biggest competitor to Ultimate 3D is Xtreme 3D. Xtreme 3D is known to be a faster engine then Ultimate 3D. However Xtreme 3D lacks easy understandable documentation and it also lacks updates which has caused it to be an engine with a fair few bugs. GM Irrlicht GM Irrlicht (also developed by the creator of Xtreme 3D) is a ported version of the Irrlicht 3D engine. Irrlicht 3D is not a 3D Game Maker engine, rather it is a 3D engine for another programming language called C++. GM Irrlicht is an abandoned project that was made some time ago which also lacks in the same areas of Xtreme 3D.
Who can use it? Ultimate 3D is free to use and download, however you are required to credit the author: Christopher Peters if you use the engine. The engine can only be used with a registered copy of Game Maker. This is because Ultimate 3D is a DLL (Dynamic Link Library) which is similar to a program plug-in. Only registered versions of Game Maker have the capability to use DLL’s.
Download Ultimate 3D So you’ve heard of Ultimate 3D and you want to try it out? Well the first thing you will need to do is download the Service Development Kit (SDK) off the ultimate 3D website. Let’s do this now, so go to www.ultimate3d.org and click on the “Download” button on the left navigation bar and select ‘SDK’. Then download the latest release (this tutorial uses 2.1). If you wish to see what Ultimate 3D can do before you begin to learn how to use it, it is recommended that you download and run the Tech Demo which is also on the same website. Now that we have downloaded the SDK we can move onto the tutorial. This tutorial will teach you how to setup the 3D engine, how to setup the camera and how to draw a basic 3D block.
The SDK In the downloaded SDK you will find 3 editable Game Maker projects for Game Maker 5, 6 and 7. Basically what we want to do is open one of those Game Maker files and delete all the sprites, objects and rooms. Do not delete the scripts because that is the Ultimate 3D engine. So delete those resources now. Next save the project under a different filename so the original editable that came with the SDK is not overwritten when you save.
Setup the engine We have now a clean editable file to work from. To begin, create a new object called “obj_U3DEngine_Control”. Before we add any code make sure this object is set to ‘persistant’. You can turn this on by clicking the ‘Persistant’ checkbox on the left side of the ‘Object Properties’ window for “obj_U3DEngine_Control”. We did this because we want this object to be present in every room that we goto so that Ultimate 3D can run.Next add a “Create” event and write the following code: Init(); BG_r = 0; BG_g = 0; BG_b = 0;
The above code will start the Ultimate 3D engine and set the background colour. Starting the engine is done using the function: “Init();” and will setup all the 3D functions used by Ultimate 3D. The next three lines of code set the background colour. BG_r sets the red value in the background colour. BG_g sets the gree value in the background colour. Finally BG_B sets the blue value in the background colour. For this tutorial we want the background colour to be black, so leave the variables as 0. Now that the DLL can initialize when the “obj_U3DEngine_Control” is created we need to also prevent any errors when the game is closed or the “obj_U3DEngine_Control” object is destroyed. To do this, add a “Destroy” event to the “obj_U3DEngine_Control” object and write this code: external_call(global.u3d_cleanup);
In addition, add the “Game End” event to the same object and place the exact same code in this event also. With this code in both events we can be sure that the Ultimate 3D engine is shut down when the game ends or the “obj_U3DEngine_Control” is destroyed. The code: “external_call(global.u3d_cleanup);” will quickly and easily close down the engine safely avoiding any possible game errors.
15
GM DEV
Getting Started With Ultimate 3D (Continued) The next two pieces of code that we are going to add are required for Ultimate 3D to run correctly. For the first piece, create a ‘Begin Step’ event in “obj_U3DEngine_Control” and insert the following code: external_call(global.u3d_present);
Once you have inserted that code, create an ‘End Step’ event in the same object and write this: external_call(global.u3d_transmit_controller_inform ation,BG_r,BG_g,BG_b,false); external_call(global.u3d_render);
Both the above code snippets basically just tell the Ultimate 3D DLL that you are currently running Ultimate 3D and to render the scene in the Game Maker window.
Creating the camera Creating a good camera system can be complex depending on the type of game you are creating. This tutorial will not teach you how to make a flexible camera system. Rather, we will only be setting up a basic camera that looks straight ahead at our box that we will make in the next section. Why basic? Because creating a basic camera system will allow you to see the bare requirements needed to use a camera. Let’s create our camera by first creating a new object. We will call this camera object “obj_U3DEngine_Camera”. Unlike the previous controller object we will leave this object as un-persistent as you may want to create a few different cameras later on. Firstly, add a ‘create’ event to “obj_U3DEngine_Camera” and copy and paste this code below: x = 10; y = 0; z = 0; rotx = 30; roty = 0; rotz = 0; view = 90; height = 40; follow = 0; distance = 10; perspective = 0; min_range = 1; max_range = 1000; MoveCamera();
Basically, this sets all the variables up for the camera. Most are to do with positioning of the camera and the other few are to do with what the camera can see. The manual and the provided example explain each variable. I’ll give a quick rundown on what some of those variables do, to make things easy for now.
x, y, z - These variables position the camera object in the 3D world. The new variable here is Z. Z is the height position of the camera. rotx, roty, rotz - These are camera rotation variables which work in the same was as the x, y and z variables. follow, distance - You can use this to get the camera to follow a certain object from a specific distance. min_range, max_range - This is the minimum and maximum rang the camera can see. Now that you have an idea of what most of those variables do we will move on back to creating the camera. The final part to making the camera work is adding a step event. Create a ‘Step’ event in the “obj_U3DEngine_Camera” object and type this code: MoveCamera();
All this code does is update the camera’s positioning each step. Without it, the camera won’t move. That’s all for the camera, next we will create the block.
Adding a block This is the last part to the tutorial and by the end of it you will have a block on the screen. So to start, create another new object called “obj_Block”. Then add a new ‘create’ event into this object and paste the following code: LoadTexture(“BlockTex.bmp”,1) texture = 1; z = 0; width = 20; height = 20; depth2= 20; CreateCube();
The above code will load a new texture and assign the loaded texture to the block. It will then set the width, height and depth of the block before creating the actual 3D block. There is a provided texture with this issue in the resources if needed. Next add a ‘Step’ and ‘Destroy’ event. The next two pieces of code just update the block every step and destroy the block when the object is destroyed. In the ‘Step’ event type in: Step();
In the ‘Destroy’ event add: Destroy();
Finishing That’s all there is to it! Before running the game, create a room and make sure you enable views. Then insert the objects into the room. Make sure the block is about 16px directly below the camera so you can see it when it runs. I hoped you enjoyed the tutorial! Written by gmjab Check out the Starting U3D example provided with this issue.
16
GM DEV
Tutorial: 3D Real Time Strategy - Part 1 If you have wanted to make a 3D RTS but didn’t know how to start, this multipart tutorial will help. Hello, and welcome to the three-dimensional Real Time Strategy (RTS) tutorial. In this tutorial many things will be explained such as dynamic terrain, drawing onto the terrain basic shapes such as circles and squares, generating terrain, creating units, using joints with a program called Move Now and finally drawing the camera. To continue with this tutorial you must have a working version of Game Maker version 7 Professional (3d games require the professional version) and at least a year of knowledge on how to use Game Maker (you must of course know gml). Now, before I start with the coding aspect; the most complicated part, I will tell you a few things about the structure of most good Real Time Strategy games. A Real Time Strategy game is usually split into two main groups of objects. The first group of objects is the terrain, including things like bushes and trees. The second main group of objects are the moving things, like units (either side) or projectiles. An RTS, when built in the 3 dimensional axis requires at least two objects to operate, the terrain controller and the camera. In order to have a HUD (heads up display, the things that are drawn on your screen to alert you about things like your cash, health or status) you must have a third object. When you add units to your RTS game you must also add an object for each different type of unit, which means, we now have four objects. One major aspect which often challenges RTS games is that there must be many objects doing many things at once. In Age of Empires, a large selling RTS game, there can be up to twohundred units on one team. The game itself can support up to eight teams without any lag. We, ourselves, are not aiming to create another Age of Empires, rather, we are aiming to prove the concept that Game Maker can create small RTS games with good Frame rate (our game may only have the ability to have ten or twenty different objects on the screen at once). Now that I have explained some basic concept of the layout of most RTS games I will explain the layout of our game. This is an important part of the design process. The game I will help you create in this tutorial will have single textured terrain (although I will explain the theory of how you can add this feature in) and one type of unit (which you will be able to select/de-select). The unit will automatically animate itself when walking, attacking or even standing. You so far, know the RTS basics of this project so I’m going to keep this short and start explaining and building the code we are going to use. Let’s start with the terrain. Open up Game Maker 7 and create a new project. In that project create a blank room (call it rm_terrain) and inside the room go to the view tab. Please note that if you cannot see the views tab you are in simple mode. To switch to advanced mode go to the file menu and tick the menu that says Advanced Mode.
In the view tab select from the list menu view0. This will be our main view. Tick the checkbox that says Enable the use of views and the one below it that says Visible when room starts. If you have done this correctly view0 should have turned bold. Now there are two groups in the view tab. Port on screen (where it is on the screen) and View in room (where it actually is in the room. Notice that they both have a width value (W) and a height value (H). Change the width of both settings to 1024. Now change the height of both settings to 768. This emulates the resolution display without actually changing the resolution. You probably would have noticed the view is larger than the actual room. Go to the setting tab and change the width of the room to 1024 and the height of the room to 768. Now you have started the basic display mode lets begin with the camera object. Close the room (make sure you save the changes) and create a blank object. Call the blank object obj_camera (it is important you call it this or the code we add later will not work). Close the object and save the changes. In this tutorial we will create a set of scripts to deal with most of our work instead of using code directly inside the objects. This makes it neater (and can make the file size smaller). Create a new script and call it rts3d_camera_init. Once that script is open paste the following header into it: /* RTS3D_CAMERA_INIT <no arguments> */
To make it easier to use our code we will be using headers like this one in all our scripts. Anyway, below the header paste the following lines of code: // initialize the 3d drawing stuff d3d_start(); // more to do with viewing d3d_set_perspective(true); d3d_set_hidden(true); d3d_set_lighting(true); draw_set_color(c_white); d3d_set_culling(true); d3d_set_shading(true); // Blend texture pixels into each other (fake AA) texture_set_interpolation(true); // Set camera depth to fit with the other objects depth = 16384;
What this does is simple. The first line (after the comment) starts 3d mode by using the d3d_start() command. Then we set the default values for our drawing (to get things ready). For those who do not know what culling() and hidden() is I will explain it.
17
GM DEV
Tutorial: 3D Real Time Strategy - Part 1 (Continued) Culling is when you remove the unwanted triangles from the reverse side of a shape. This sometimes can make the game faster however when activated at the wrong times can lead to distorted shapes and unwanted polygons. Hidden is when you remove hidden shapes which are behind something. This usually does more good than it causes bad and can be useful when used properly. On the next line we use the texture_set_interpolation() command. This command decides whether to blend the pixels on textures together. Finally at the end of the script we have a line that handles the depth of the camera. If the depth of the camera is not set correctly ugly things can happen with the screen and wreck the players fun with nasty error messages. Now that we have added the first piece of the script, we must add the rest. Here is the next snippet of code you must add to the script. // camera direction was zero, now 270 direction = 270; wish_direction = direction; mydirection = direction; turn_direction = 0; // zooming variables (min/max distance allowed to terrain) xto = 0; yto = 0; zto = 0; min_dist = 160; max_dist = 250; dist = max_dist; // the z height, speed and pitch of the camera z = dist; zspeed = 0; pitch = 55 friction = 0.5;
Because the camera is an object we can set local variables. Here we are creating several variables. The first four are self explanatory. They affect the direction of the camera (and add a smooth viewing experience for the player). In the second block there are little miscellaneous variables. The variables xto, yto and zto are where the camera is looking at. The variable min_dist and max_dist are to do with the zooming where min_dist is the allowed distance from the current height of the terrain and max_ dist is the allowed maximum distance. The variable z is the current projection Z. As you know three dimensional worlds have x and y however unlike 2D games have a third z axes. The pitch is like the isometric effect of the view. The friction is a variable that can be contained in any object, whether the camera or not.
Finally, there is one more line of code to look at. This calls another script which prepares the mouse selection for our RTS (no good RTS does not have mouse selecting). In 3D mouse selecting gets much harder than just using events. Paste the following chunk of code into the end of the script: // prepare looking view prepare_look(x,y,z,xto,yto,zto,0,0,1,45,1.33333);
The arguments here are the same as the arguments for d3d_ set_projection_ext();. This script prepares the math for 3D mouse selection. Make a new script (closing this one, and saving it) and call it prepare_look. In the script prepare_look paste the following lines of code. //Script by Yourself //arguments 0-10 (first 11 arguments): Same as first 11 arguments of d3d_set_projection_ext(). var mm; // Get a vector which represents the direction the camera is pointing and normalise it dX = argument3-argument0; dY = argument4-argument1; dZ = argument5-argument2; mm = sqrt(dX*dX+dY*dY+dZ*dZ); dX /= mm; dY /= mm; dZ /= mm; // Get the up vector from the arguments and orthogonalize it with the camera direction // Orthogonalize is a fancy way of saying Iâ&#x20AC;&#x2122;ll make the vectors perpendicular uX = argument6; uY = argument7; uZ = argument8; mm = uX*dX+uY*dY+uZ*dZ; uX -= mm*dX; uY -= mm*dY; uZ -= mm*dZ; mm = sqrt(uX*uX+uY*uY+uZ*uZ); uX /= mm; uY /= mm; uZ /= mm; // Scale the vector up by the tangent of half the view angle tFOV = tan(argument9*pi/360); uX *= tFOV; uY *= tFOV; uZ *= tFOV; // We need one more vector which is perpendicular to both the previous vectors // So we use a cross product: v = u x d vX = uY*dZ-dY*uZ; vY = uZ*dX-dZ*uX; vZ = uX*dY-dX*uY; // This vectorâ&#x20AC;&#x2122;s magnitude is now the same as ||u||, so we scale it up by the aspect ratio // This vector represents the 2D x-axis on your screen in 3D space vX *= argument10; vY *= argument10; vZ *= argument10;
18
GM DEV
Tutorial: 3D Real Time Strategy - Part 1 (Continued) This is a script borrowed off the GMC so you will have to give credit in your final product. I am not going to explain this math because the math itself would take half the tutorial to explain however there are added comments which you can read to get a better understanding of it. This script is called prepare_look() however we need to create another script. Create a script and call it execute_look. This will be the actual execution script where we get the variables of the mouse relative to the 3d world (up and down the terrain as well). In this script, execute_look, paste the following lines of code. This is only the first snippet though; //Script by Yourself //argument argument 0,1,2 xyz of target var pX,pY,pZ,mm; // get the desired point’s coordinates relative to the camera_obj_var pX = argument0-camera_obj_var.x; pY = argument1-camera_obj_var.y; pZ = argument2-camera_obj_var.z;
Here what happens is that we create some temporary variables (on the first line) and on the next three lines (ignore the comments please) we get the points relative to the camera. Notice how the camera here is referred to as camera_obj_var? Ignore that, it will get explained later. Here is the next snippet of code that belongs in the script; // scale this vector so that it’s head lies somewhere // on an imaginary plane in front of the camera_ obj_var (your screen) mm = pX*camera_obj_var.dX+pY*camera_obj_var. dY+pZ*camera_obj_var.dZ; if (mm > 0) { pX /= mm; pY /= mm; pZ /= mm; } else {global.__x=0;global.__y=-100;exit}
What happens here is we scale the vector on an imaginary plane in front of the camera. The camera we are using virtually gets projected onto your screen. There is still one more snippet to go. Let’s have a look at this snippet; mm = (pX*camera_obj_var.vX+pY*camera_obj_var. vY+pZ*camera_obj_var.vZ)/sqr(1.33333*camera_obj_ var.tFOV); global.__x = (mm+1)/2*1024; mm = (pX*camera_obj_var.uX+pY*camera_obj_var. uY+pZ*camera_obj_var.uZ)/sqr(camera_obj_var.tFOV); global.__y = (1-mm)/2*768;
What this long piece of code does is it returns the two variables as global.__x and global.__y. It isn’t over yet. We need to use more math before we get the real positions of the mouse. What we have at the moment is __x and __y which are projected along the z axes. At the moment the z is 0 however when we add terrain the z value will span up and down therefore this will not be correct anymore. Before we continue making the scripts for the 3d mouse selecting we need to add the terrain. Add the rts3d_camera_init script to execute in the create event of obj_ camera. You can use a Drop and Drag tile or you can execute it via code (it has no arguments, so use closed brackets). Create a new object. This object, is the terrain object, and should be called obj_terrain accordingly. Make sure that the depth of obj_terrain is -102. You also need to go back to your camera object and change the depth of the camera object to -1000 (drawn above everything else). This terrain object will start by initializing itself. Create a new script called rts3d_init_ter. This will initialize most things in our game (not only the terrain). As the header for the script use the following code. This script has four arguments; /* RTS3D_INIT_TER argument0 - width argument1 - height argument2 - precision (no smaller than 4) argument3 - camera object */
Now you have added the header I’ll explain some of the arguments that this script will take so you can look at them in the next few snippets. Argument0 is the width of the terrain. Argument1 is the height of the terrain. After the height and width have been initialized it will be very hard to change them (because it creates several grids) so a good handy number to use (in my opinion) is about 512 for each, or for a larger map, 1024. Argument2 is an important variable. It is the precision of the terrain. It is recommended that you only use numbers that are divisible by four. The numbers 4, 8, 16, 32, 64, 128 and 256 are the numbers you should use for this argument. The more precision the faster the game will go. If you use a value of 4, for example, the game will lag a lot because the terrain has an added vertex every four pixels. The last argument is something you came across earlier. To make the engine easier to use we set the variable camera_obj_var to the third argument. This means that you can change the name of the camera object during game play (to get different perspective etc) and it will not throw errors easily. Because this tutorial is quite large, next issue I’ll be back for part 2 which will continue where I left off. Written by Schyler
19
GM DEV
Tutorial: Draw a Digital Clock This issue Calle provides information on how to draw a digital clock. This article is very simple and describes how you can do the simplest digital clock in Game Maker. This is really made easy in v6.0: time = string(current_hour)+”:” +string(current_minute)+”:”+string(current_second)
Game Maker can also tell year, current_year, and month, current_month, and each weekday, current_weekday. Only problem is that all of those functions return numbers, which is usually not what we want when presenting the current month or weekday. Then this is how you could do to manually make sure that the right thing is drawn, not very elegant but it works:
if (current_month==1) { month = “January” //draw the variable month } if (current_month==2) { month = “February”; } if (current_weekday==1) { day = “Monday” //draw the variable day }
And so it continues, I bet you get the system. For drawing method I would suggest draw_text, but thats very choose able. Written by Calle Ekdahl | Provided by: gmtutorials.com
Tutorial: Minimap
Minimaps are excellent for games which require the user to scroll around a room. Calle shows how to make one. mm_yu mm_xl mm_yd mm_xr
= = = =
5 //This is the upper y position 5 // This is leftmost position 105 //The second y position 105 //right x position
//Which objects to draw nr_obj = 3; //How many objects obj_d[0] = object0; obj_d[1] = object1; obj_d[2] = object2; obj_d[3] = object3; //In which ray above obj_c[0] = obj_c[1] = obj_c[2] = obj_c[3] =
i = 0; d = 0; draw_background_stretched(background_index,mm_ xl,mm_yu,mm_xr-mm_xl,mm_yd-mm_yu); while(i<instance_number(obj_d[d])) { //Selecting information x_id = (instance_find(obj_d[d],i).x/room_width)*92; y_id = (instance_find(obj_d[d],i).y/room_height)*92;
color - use the index number of the ar-
draw_point_color(mm_xl+x_id,mm_yu+y_id,obj_c[d]);
c_blue; c_red; c_gray; c_lime;
i +=1; if (i==instance_number(obj_d[d])) { d += 1; i = 0; }
The script above should be called suggestively in the create event as an initialization of all the variables. As you can see there are two arrays (rather than one two-dimensional) that keeps information about which objects to draw and in what colour. It would also be possible to create a third array which could keep information about other stuff, such that if you want to draw a specific sprite or so for specific objects.
}
Draw background strectched, background index, that gives a cool kind of feeling. Especially if you got a cool background, imagine a battlefield for an example; it gives a kind of map feeling. Although if you rather would like a one-colour background you might just delete that piece of code, maybe replace it with a rectangle. The condition of that first while statement might be confusing since it only seems to run through one array of obj_d, but as you can see later in the code it changes to d+1 and i is reset. That’s like placing the while loop inside another while loop which would say while(d<nr_obj), it’s the same thing. And finally, as you can see, I am using draw_point for drawing, this is highly selectable. You might change it anyway you like! Written by Calle Ekdahl | Provided by: gmtutorials.com
20
GM DEV
Tutorial: Pie Chart
Want to draw a pie chart in Game Maker? This issue, Calle provides the answer. Pie charts are more complicated than other charts, mainly because there are now draw pie function, so you have to do something else instead. There are several ways I suppose but this was the one I came up with. Not perfect, although it works. The logic is simple; as there are 360 degrees I draw 360 lines, one for each degree. This is how the code looks: value[0] value[1] value[2] color[0] color[1] color[2]
= = = = = =
50; 50; 50; c_red; c_blue; c_green;
tot = 3; // The total number of different values b= 0; i = 0; c = 0; total = 0; circle_radius = 100; // The size of the circle circle_x = room_width/2-circle_radius/2; //Concentrates it in the middle circle_y = room_height/2-circle_radius/2; draw_set_color(c_lime); //Look at the picture further down at this page draw_circle(circle_x,circle_y,circle_radius,false);
i= 0; while(i<tot) { total +=value[i]; //Calculates the total value i+=1; } i=0; while(i<tot) //Goes through all different values { percentage = value[i]/total*360; //Evaluates the numbers of lines draw_set_color(color[i]); //drawn in specific colour b=0; while(b<percentage) { draw_line(circle_x,circle_y,circle_x+lengthdir_x (circle_radius,b+c),circle_y+lengthdir_y(circle_radius, b+c)); b+=1; } c+=value[i]/total*360; i+=1; }
I tried to comment it so that you should understand the most. However, this has, as you might have understood, a glitch. When the lines get too far from the centre of the circle, space is created between them. To cover up this space you would have to draw multiple lines within the same degree with only small differences in their target positions. Written by Calle Ekdahl | Provided by: gmtutorials.com
Pixel Art Tutorial: Improve Your Pixeling What are some ways to improve your pixel art? Hiyukantaro provides 4 tips. Artistists are always looking for ways to improve their work. This issue I have provided 4 handy tips for all pixel artists to keep in mind.
1. Getting used to pixel from own inspiration (not by requests of programmers) Focus on the things you like, and the things that lay within your level of pixeling. So don’t go crazy, like wanting to make a elephant face on a big canvas… or whatever. You can also just stay with the basic skill, or make something really low-res. And never make something you dislike, only when you are requested to.
2. First make sure your line-art is perfect! A problem I faced too many times was that I corrected my line art while I already colored and shaded the whole peace. Due to focusing on the perfect look of your line-art you won’t face this problem that often. You will always need to correct little mistakes, because things sometimes look a little different when they are colored.
3. Make sure you don’t stick to one style of pixeling The most common seen thing is that people mastered 1 pixel style and left many styles undiscovered. Or create their own style (which is very good) but than don’t use new styles to improve their own, or learn from it. Always experiment with new styles!
4. Animating Well, I didn’t give a tutorial on animating yet, but I will do this in the very near future! When you animate for example one of your platformer/RPG characters. First study the human movement of the legs. And look at how the arms move while walking. This really helps you making a realistic animation. Don’t be shy and stick to the first animation sheet you made. Make a new one! When you start animating it’s important to practice as much as possible. “Practice is the key to success!” Written by Hiyukantaro
21
GM DEV
Pixel Art Tutorial: Running Animation Not quite sure how to draw a running man? Then this is the tutorial for you. A common barrier to making a great platform game is creating a character sprite that can run convincingly across the platforms. Many platform characters avoid the issue by simply adopting a legless or non-animated character, such as in Wubly or Jumper, which works just fine. The characters in those games don’t need to run. Other games simply settle for choppy animation. Even the great Mario has an awful three frame walking animation in Super Mario Bros. With a little practice, though, no one need settle for bad running animations. Let’s get started. First, draw your character in a profile view (facing completely left or right). For a more realistic character, make it about six times as tall as its head. True proportions would be closer to eight heads tall, but this tends to make characters look lanky. The hips are centered—three heads above and three heads below. The arm should hang down to about the middle of the thigh. Give the limbs a slight bend to keep them from looking stiff and robotic.
Here’s how mine turned out. I’ve shaded mine, but before you shade yours, keep a copy that is either purely line-art or just solid colored. This is what you will be animating. Animating and shading as you go is very difficult, so we’ll shade when we’re finished. There are four main positions of a running person, but it really comes down to two for each leg: one with the weight all on one foot, with the other leg bent with the knee pointing out, and another in mid-air with the legs extended (but not completely straight!). Only one arm is visible in the first and third frames. The arms always remain bent throughout the animation. The second and fourth frames, where the legs are extended, have rotated torsos. More of the front of the character can be seen in the second frame, and more of the back in the fourth frame. This can be achieved relatively easily by moving the arms out a bit and adjusting the neck-line of the shirt. Then fine-tune it. Remember to think three dimensionally.
For the smaller characters, four frames can be enough, but for a character of a reasonable size, it looks choppy. Four more frames can be added in between the first four. The easiest way to draw these is to copy the nearest frame with the leg extended and edit it. Since the arms and legs accelerate and decelerate through their motions, the in-between frames should reflect that by being more similar to the extended-legs frames than the stand-on-one-foot frames. This is because the arms and legs are at their maximum when they are fully extended and are beginning to swing the other way. It is helpful to keep the surrounding frames nearby when drawing the in-between frames.
Now that you have drawn all eight frames, pat yourself on the back, first of all, and then you can shade your animation. If you are going to mirror you sprite for use in a platform game, I recommend using a light-source from directly above, so it doesn’t look like the light moved when you switch from running right to running left. As they say, “practice makes perfect,” and animating is no exception. Learning to animate properly, though, can really get your game running smoothly.
Written by RoboBOT
Example Quick Look
The Ultimate Inventory Example Unlike many flawed inventory examples The Ultimate Inventory example seems to be a solid inventory example that features common inventory actions. It features item stacking, equipping, using and dropping. I found no bugs while using the example and the code contained is well commented and not messy. So if your building an RPG I would suggest you have a look at this example.
22
EXCLUSIVES
Exclusive Interview: CoderChris Timoi talks to CoderChris about the past, present, and future of GMPhysics GMT: Tell us a little about yourself. CDC: “Well, my name is Chris Giles, I am currently a full time student at the University of Maryland College Park majoring in computer science and mathematics (ironically, not physics). My main interests include video games, programming (simulation in particular), and snowboarding. I’ve been programming for as long as I can remember; well, maybe not that long, but at least 7 or 8 years. I started off using Game Maker, and although I’m currently working on much more complicated things, I still really support Game Maker, as I believe it is a great tool for learning how to program and get into game development. I have won numerous awards related to programming, including winning first place in the SkillsUSA national competition for programming. I spend much of my free time writing a new game engine, as well as GMPhysics, which fuels the engine’s interactive portions. I also am currently working with a team called robotics at Maryland, where we develop a fully autonomous, underwater vehicle designed to perform several complicated tasks such as retrieving objects and finding targets.” GMT: What is GMPhysics? CDC: “GMPhysics is a 2D physics engine designed to let Game Maker developers add extremely realistic physical simulations to their game, thus adding a huge amount of interactivity. The engine was designed to be very easy to use, though quick enough and with outstanding features that allow for effects that you just don’t see in many games these days. Physics simulation is a hard, but crucial part of a modern game. For this reason, I wanted to make it accessible to a larger audience, the majority of which does not want to waste time on a simulation that could take longer to write than the rest of the game. With GMPhysics, it’s a matter of integrating the library, and then you have the physics.” GMT: Could you tell us a little background information to GMPhysics? CDC: “GMPhysics started a few years ago (can’t remember how long ago) as a very simple rigid body simulation just for kicks. Unexpectedly, it caught on in the Game Maker community, and I found people actually started using it to a limited extent in their projects. At that point, I decided to make GMPhysics into an official project. Ever since, I’ve been adding more and more features and improving it in any way I can. V1 started off using physics formulas and code I had come up with after following a tutorial on physics simulation. It was OK, but not great. V2 came along, which was a vast improvement in terms of stability and speed, but still had a long way to go. At that point, I figured it may be better to simply wrap a pre-existing physics library. So, for V3 I went with a 3D library called Tokamak. It was much more stable and faster than V2, But towards the end I found that it was getting hard to add new features as I did not have access to the library’s code. Thus, for V4, I decided to upgrade to PhysX, a commercial physics engine used in many hit games. It seemed to work much better, allowing me to add many features that I wasn’t able to add with V3.
Unfortunately, PhysX wrapping wasn’t the most stable thing; the engine frequently crashes and freezes at times, and I was never able to pinpoint the problems. And now we are at the present.” GMT: So what are you doing at the moment? CDC: “I am currently writing V5, which is the next generation version of GMPhysics. It, unlike the older version, does not use a pre-existing physics library. Instead, using all the knowledge of simulation and physics I have gained, I’m writing my very own physics library from scratch. My goals are to make it even more stable, even quicker, and even more packed withfeatures than PhysX, as well as being completely stable, and able to be integrated with Game Maker 7. At the moment, a “pre-beta” has been released, although it is still quite unstable and unfinished. A beta is expected in February and the full release in March. In fact, the full release will probably be ready right around the time this article is printed.” GMT: What new features do you expect to be in V5? CDC: “V5 will be a vast improvement over V4. The main difference is that I will move from using the PhysX API to using my own custom physics engine. In terms of features: • • • • • • • • • •
much improved stability and speed true soft body physics with variable parameters such as elasticity and stiffness specialized rope physics continuous collision detection for all objects Improved buoyancy new fluid system new wind system that allows for physically based wind that can even bounce off of surfaces per-object gravity dynamic tearing for soft bodies and dynamic fragmenta- tion for rigid bodies a few more little things here and there”
GMT: And what new gaming possibilities would these features allow? CDC: “For the most part, it will simply give developers the power to have even more in-depth and interactive gameplay than was possible before. One of the features I am especially fond of is the fragmentation. With this, games can have objects that break when they get shot or hit, allowing for very visually appealing effects. Another gem that I have not yet mentioned to the Game Maker community, but have revealed here, is perobject gravity. This is really cool, in that you can now have small “planets” of sorts, allowing for effects like those seen in “Super Mario Galaxies”. The new soft body feature will also come into play a great deal. With it, you can now have really cool effects such as a metal barrel that actually gets dents put in it when it slams against the ground.”
23
EXCLUSIVES
Exclusive Interview: CoderChris (Continued) GMT: Have you been particularly impressed by any implementations of GMPhysics in games? CDC: “One game that I was particularly impressed with is called “Dominos 2”. It has one of the best uses of GMPhysics that I’ve seen, and it even managed to get around a few of the bugs that V4 had. It made use of most of the features that GMPhysics V4 had to offer; all in all a very well done game. There are lots of levels, all of which are original and contain new puzzles, the graphics are crisp and clean, and there is even a nice little level editor.” GMT: Have you considered releasing the source to the new version when it’s out to allow others to add to it and customise it for their own use? CDC: “The source for V5 will not be released, since it uses many algorithms that I am implementing into a commercial, 3D version of GMPhysics. However, one thing that is different about V5 is that in addition to having it be compatible with Game Maker 6 & 7, I am also releasing the C++ API, which will allow C++ developers to use the full power of GMPhysics” GMT: Could you tell us a bit more about the commercial version of GMPhysics? And will it be of any use to Game Maker developers? CDC: “I can’t really say much about the commercial version other than it is a 3D equivalent of GMPhysics targeted at commercial games.” GMT: I’ve got a couple of questions now submitted by fans and users of the DLL who are experienced with it. The first one is from Timmeh: “Do you plan on releasing anything in the way of documentation? A simple function list, a full blown manual with tutorial, or somewhere in-between?” CDC: “I plan on releasing full documentation for V5 in the form of a Windows help file. I’m going to document every function, and hopefully have an example with many of them. I also want to write a couple of small tutorials that will also be in the help file. In terms of examples, I also want to go far beyond what I had in V4, and include many more examples.” GMT: And from HaRRiKiRi: “Will there be functions for trajectory planning (simulating where the object will go, before actually going there), and if not, do you plan to add any later?” CDC: “There will not be trajectory planning in V5 on initial release; however, it is a good idea, and something that I plan on adding as an extension of V5.” GMT: And another from HaRRiKiRi: “Will there be special functions for multiplayer synchronization?” CDC: “I hadn’t actually thought about multiplayer sync functions, but again, it’s something that I want to add as an extension to V5.”
GMT: Do you ever feel that Game Maker limits what can be done with the DLL? CDC: “Unfortunately, it is true that GM limits GMPhysics, primarily in terms of speed. For example, a simple stress test using GM is limited in speed not because GMPhysics can’t handle many objects, but because it takes loads of time for GM to make all the DLL function calls. Another primary limitation that I am especially disappointed about is GM’s polygon drawing speed. This really limits the number and size of soft bodies that can be created in GM to only 4 or 5. However, GMPhysics can actually handle several hundred soft bodies without any slow down. These are just some examples; and its because of this that I am also releasing the C++ API with this release, so as to allow developers to harness the full power of GMPhysics.” GMT: Did you ever expect the DLL would become as popular as it is now (as one of the most replied to topics ever on the GMC)? CDC: “I never expected GMPhysics to become so popular; It started out as a simple experiment and playground for myself, but it caught on very fast and just grew exponentially.” GMT: Do you hope to go into game programming in later life? CDC: “Yes, in the future I plan to hopefully start my own game company; but that’s a stretch.” GMT: Do you have any plans for future versions of GMPhysics? CDC: “Actually, in terms of GMPhysics, V5 will be the last major version, but I do plan to release small upgrades here and there.” GMT: Are you going to be adding to any of your other projects (GMspeech and GMzip)? CDC: “My other projects unfortunately have been lost over the years, so I don’t think I’ll be adding much to those any more, however I may start a new one if I have some time later in the game.” GMT: Thank you for the interview, is there anything else you’d like to add? CDC: “I just want to add that GMPhysics has been a great learning experience for me, and I’ve had a lot of fun working on it through the years. I encourage anyone who wants to seriously get into game development to expand your horizons with innovative ideas, and it may turn into something great in the end.” Interview conducted by Timoi
Links - GMPhysics GMC Topic - GMPhysics Forum
24
EXCLUSIVES
Exclusive Interview: Hawthorneluke Timoi talks to the creator of a potentially massively successful (M)MORPG .hack// The World GMT: Could you tell us a bit about yourself? HTL: “I’m 18, male, from the UK and am currently in my gap year (so I hope to stay and work in Japan for a few months, once I’ve got enough money), before going to university (Sheffield Hallam) to study Games Development. I’ve always wanted to create games as long as I can ever remember and well, this is where I am now in this “adventure”, trying to use Game Maker to its full potential as well as other more industry standard languages such as C++ (which is what this game’s server is being coded in) to create games such as this one, which is what my dream would be.
As for me and Game Maker, I’ve been using it from version 4, which was also where I first started to make games and after a while program in my first programming language, GML. But I really don’t have much of an idea of how much time has passed between now and then though. Although lately like I mentioned I’ve been advancing more into languages such as C++, but I’ve still got a long way to go with those (although I can say the game’s server is doing very well).” GMT: How would you sum up The World to someone who has never heard of it before? HTL: “The World is actually the name of a fictional MMORPG the .hack// (pronounced “dot hack”) franchise (which expands into many forms of media such as games, novels, mangas, animes) is focused around, yet one thing that doesn’t really exist (yet) is a real world version of that MMORPG. I think the main reason for this is that in real life, without all the magic of what you can show in media (as this isn’t your average MMORPG, or even just some simple story about one simple game) such a game would get quite boring quite fast. Yet of course there are still many, many fans that would love to play a real life version of that game, which is where we come in. The game we (including the community’s suggestions) are making simply tackles this problem by taking measures to change certain aspects to make it a more practical game to be played
in reality (i.e. more fun) as well as making sure to keep it a very .hack-like experience for all the fans that are awaiting to play such a game, which is the The World we are aiming to create. In actual fact we’re far from the first people to do this, but you can judge for yourselves how ours is compared to the others’ and why we’re still continuing to make this game.” GMT: What motivated you to start making The World? HTL: “The idea’s always been there since I first learned about .hack, but I suppose it was when I was thinking about the amount of people that “play” a simple online chat game based on .hack called .hack//chat and with how that game works and thinking that it wouldn’t be so hard to get a game to that level myself (which I’m sure many people know that that’s never the case, but luckily I had had quite a bit of previous experience in making such games, although they never got too far). But the real motivation would of been thanks to my good friend Balmung of the Azure Sky being really keen to make such a game and so we just started and are slowly getting there.” GMT: Do you think that basing the game around an existing franchise will help make the game successful? And will players who haven’t heard of .hack// before still be able to enjoy the game? HTL: “I think and well I guess it already has given it a fan base (which can be a great motivation factor) because of .hack’s fan base and so of course with more people putting in ideas about their favourite game being brought to life will help a lot, but I also suppose there’s the possibility of the negative side of people wanting it to be exactly like they’ve always known it without any changes which we think would really benefit it (like I mentioned at first) and so they could end up liking it less. Although I can’t really see that happening and of course we have no intentions of taking away anything that makes .hack what it is. Of course this is a treat if you do know of and like .hack, but if you don’t, I don’t really see no reason why you wouldn’t be able to enjoy it. You just may not fully understand some easter egg like elements for example.” GMT: As a MMORPG, how will The World play? Will it be quest based? HTL: “There are still many uncertain things at the moment but I see it as the normal MMORPG in the sense where you’re free to to whatever you like, such as dungeon crawling, searching for a certain rare item, completing quests, having fun with friends, etc. But it’ll also hopefully be in a way less like your usual MMORPG, in not quite the usual ways, which is what makes .hack’s The World special.” GMT: Will there be any PvP (Player vs Player) or PvE (Player vs Environment)? HTL: “There will be plenty of both, but another thing that makes this game special in the .hack universe is that killing
25
EXCLUSIVES
Exclusive Interview: Hawthorneluke (Continued) a player isn’t just some normal, frequent, boring everyday event and so we’re aiming to try to create the same, more rare, important and exciting atmosphere that there is in .hack, although probably not the easiest thing to do. But of course you’ll also have area’s such as arena’s to do such things as PvP freely whenever you want to.” GMT: What other features does The World game have? HTL: “Of course it’ll have all the MMORPG basics to a good standard, but one not so common feature would be how the battle engine works. We’ve decided to make battles instances (so that only the people in the battle can see the whole action and participate in it, although people in the same area that can see you will know you’re in a battle and generally how you’re doing) so as to reduce lag and increase playability as much as possible. But this allows us to go with a Tales of Eternia style battle engine, which is in fact side scrolling but allows for a lot more intense action. Take a look at Tales of Eternia’s battle engine on YouTube and you’ll see the sort of thing we’re aiming for. Another feature that seems to be lacking in many Game Maker games is the GUI, especially popup’s being completely custom and so not freezing the game or anything at all as well as being easily movable etc making managing it a lot easier.” GMT: Why did you choose Game Maker as the development platform? HTL: “Simply because I’ve had a lot of experience in using it and I have far less experience or ability in other languages so it would of taken many, many attempts and a lot more time to just get as far as I have now, programming wise. So time and quality wise Game Maker was the best choice.” GMT: Which version of Game Maker, and what DLL’s are you using? HTL: “Version 7, Pro with quite a few DLL’s, currently: 39dll, HighResTimer2, get_ip, ImageConversion, ultracrypt, md5dll, SXMS-3 and fmodex (and one extension: GM Windows Dialogs).” GMT: Will there be any limits on the game caused by using Game Maker, such as number of players, graphics, the size of the game world? HTL: “There’ll always be limits and I think that is one of the biggest problems with Game Maker, but of course a lot is down to how you engineer it all. As for specifics such as that, we don’t really know yet, which is why we’re aiming to get an alpha test out to test such things with the base engine, especially how the number of players affects things. A lot of the main graphics are external so hopefully that should help out quite a lot and I don’t see how the game world size will affect anything in this sense, as long as it’s broken up into many manageable areas, which is a given.”
GMT: As you may be aware a Game Maker de-compiler has been released. What steps are you taking to maintain the security of The World? HTL: “I didn’t know that, but many files are external so they can be managed easier, especially with auto updates and they’re not only encrypted but are always checked with the server to see if their checksum is what it should be (i.e. if anything is changed at all then the game will know). The data sent to and from the server is also encrypted of course, but the most important thing in the case of security in such games is that a lot of it is server-based. So even if you edit your client, if the server, which is the master of everything, hasn’t been changed as well, then all that’ll be happening is that your game isn’t playing as it should be.” GMT: How many members do you have on your team? HTL: “This is always a problem. We’ve had quite a few people come and go (especially just disappearing without a trace) over time and so I can’t even give an exact number as to who really is in the team and maybe busy at the moment or just decided to never come back without saying anything. Of course we’ve always had a few dedicated members, but the biggest problem this game faces at the moment is team members with the right abilities and motivation. Like I mentioned earlier, we’re trying to release an alpha test but the biggest problem right now is that we have no real maps and most people interested in mapping have also disappeared. But of course once we’re past that stage we’re just going to need more and more. In fact lately the progress of the game has really dropped off because of lack of capable, motivated team members. If this game needs anything it’s those sort of people. If there are interested and capable people then I’m sure there will be something they can help out with and very likely something they can greatly help us out with (such as mapping, graphics and designs).” GMT: How do you plan to finance the running of the game, have you thought about the possibilities of people paying for extra features? HTL: “The only thought that we’ve had so far is for it to be completely free really. Of course we can’t try to make money off someone else’s franchise and I would hate to try to do so. Also, allowing for people to get ahead of everyone else by paying for extra features I feel would not only annoy everyone else but unbalance things. As long as we can host the server for free (another problem that needs solving) then everything should be completely free.” GMT: How do you think The World will stand up beside other more established free MMORPG’s, such as Runescape and Adventure Quest? HTL: “I’m confident it’ll have quite a few features that are better than such games, but also of course the opposite will be
26
EXCLUSIVES
Exclusive Interview: Hawthorneluke (Continued) true too. But I can’t see it getting anywhere near as popular at all. If there are always at least a few people happily playing then I’ll be very happy.” GMT: How much time will players have to put in, in order to become an advanced character in the game? HTL: “At this stage that really is a hard question to answer. I want it so you can always be having fun but always be aiming to get better and better. Also, I really like quite high level caps which can be very hard to reach, meaning such high level players will be rare, and well, quite interesting to meet hopefully. But yeah, I don’t want to turn people away because they’d have to play for ages to get anywhere and start having fun but nor do I want to make it too simple either.”
GMT: Are there any other features you hope to have in the future? HTL: “I always hope to be able to continue upgrading the game, adding in new features, events, items, maps, monsters, you name it. But as for other currently planned features, there are a few, although they’re all generally a given in my opinion. Things such as fully synchronized weather and time cycles, guilds and parties, your own home/guild hall, being able to set up your own shops etc, meaning guilds aren’t just for friends to go hunting with, possibly some dungeons that are randomly created etc, to name a few I can recall off of the top of my head.”
GMT: How large is the world map? Will it take long for players to explore all the areas? HTL: “Again I can’t really say yet but In my opinion, the bigger the better, as long as what does exist is worth existing. I really love having places to explore and you can only explore the same places so many times so I’d be aiming to create quite a big place. Also, I can always see us adding in more and more (via simple and quick automatic updates), especially with areas after the game’s properly released though, so it should always be expanding and there should always be something new to look forward to.” GMT: The automatic updating system sounds interesting, could you tell us a bit about how this works? HTL: “Yep. There are two parts to it. The first is just incorporated into the main game launcher, which checks new versions of the game as well as optional downloads such as music. The rest (such as required maps and graphics) are all checked and if not correct downloaded automatically on game launch. They are also checked and downloaded if needed when they’re used, behind the scenes. It’s all very secure and simple.” GMT: And what will it allow you to do? HTL: “Have your game always up to date quickly and automatically, allow you to choose if you want to/when to spend time to download large, not necessary files such as music and and keep all the files 100% as they should be, another wall against hackers.” GMT: How much planning did you do for this game? HTL: “To be honest, first of all we just dived into it to try to get somewhere with the main engine. But over time with getting more and more people interested in it and joining the team a lot has been planned out. But even then there’s still a great deal left to plan out. If there’s anything I can say about working on such a project it’s to make sure to plan what you will do and have enough experience in doing so first before trying to do so, otherwise you’ll end up with a complete mess!”
GMT: When do you expect the game to be fully released? HTL: “I wish I knew. At this rate it’s impossible to tell when the very nearly finished alpha release will come out because of so many unknowns, mainly how fast other people than me will be working. For example lately there’s been barely any progress, but in the last few day’s there’s been quite a bit, especially with the currently most important maps. All I can do is just keep everyone up to date as much as possible.” GMT: Is there anything else you’d like to say about The World? HTL: “I think you’ve let me cover many great points in this interview and so I can’t really think of much more to say about it as of now, except that we’re always, always looking to take in more dedicated and capable team members that may be able to help in any tiny way so to help get this game to the best standard as possible, as fast as possible. But dedication really is the key though.” GMT: Thank you very much for the interview, and good luck with The World in the future HTL: “And thank you for letting me have this chance to tell more people about this game in detail!” Interview conducted by Timoi
Links - The World home page - Join The World development team
27
EXCLUSIVES
Insight Into: Spirits of Metropolis Mr. Chubigans gives us insight into the match-3 game he plans to sell. Just the other day I was reading on Gamasutra an article titled, “Innovation in Casual Games: A Rallying Cry.” It protested the rise of match-3 games (like Bejewled, Puzzle Quest, Jewel Quest and all the knockoffs and clones) flooding the casual game market on PC, with little to no innovation in an attempt to create some fast cash for little ingenuity. Non-originality is nothing new in the game industry, certainly, but the manner in which these dozens and dozens of match-3 clones was dumped on the public was fast and dirty, nearly in a one year period alone. Perhaps it’s ironic that I plan on breaking into the commercial industry with a match-3 game of my own, this very title I’m showcasing today. Oh yes, I realize the waters are already thick with these kinds of games. Oh yeah, you bet I know how $20 is a higher price range than almost all Game Maker users are willing to spend. I do indeed recall the ultimate non-success my previous commercial game (ShellBlast) ended up being (which has its own little story and thread in the Distributing Games forum of the GMC). I’m telling you this because I’m brimming with confidence that Spirits of Metropolis isn’t just another match-3 clone, it IS worth the money, and is a genuinely excellent byproduct of a year’s worth of failures I was able to learn from. Finally, I have my breakthrough game, and I can’t wait till you all play the demo. So what is Spirits of Metropolis? It’s a game where you must, yes, match three alike colors at the base of the level (which is shown as a white gem). Doing so creates a chain reaction that sets off surrounding gems, and as you add onto the puzzle the level shines brighter and brighter until you start the chain manually by pressing enter. And bam, you just got a huge combo, tons of points and multipliers, and a refresh of the level as time ticks away. It’s a game of strategy and skill...something that many match-3 games lack, as they’re about as hard to do as a word-search puzzle. Spirits of Metropolis challenges the player not so much to look for three matching colors, but setting up the board for maximum points.
Color Clear Spin the color wheel and clear the selected colors from the board before the time elapses. Elemental Take your time & clear the level using only a specified number of turns. Pattern Create combos in the shape of the pattern highlighted on the board. Implosion Clear the entire level in just one turn! Puzzle A large array of puzzle levels that will twist your brain to the point of insanity. Editor Create your own levels in any one of these modes. And there you have it. These modes are subject to change before release, but that’s but a taste of what I’m cooking up for Spirits of Metropolis, as well as a large demo to really get a feel for the game. I plan on making Spirits of Metropolis the best game I’ve ever made in order to have it be a front piece for my resume and portfolio as I start to get into the gaming industry next year. If you’re interested in getting more updates and video gameplay as the game progresses, you can head over to www.vertigogaming.net/blog and register to keep tabs on how the game fares, and chime in with your own comments as well. Spirits of Metropolis is targeted for a summer 2008 release. Written by Mr. Chubigans
It sounds a bit confusing, but trust me when I say the game comes together as you go through the quick tutorial and some easy levels. It’s a completely original spin on a genre that some may find to be stale, but once they play this game, might change their minds about. So what do you get for a game that retails for $20? As much content as I can put into the game, including modes like: Arcade Vie for the highest score in the classic Arcade mode, where time and combos are crucial! Journey Tour the many game modes listed below in this multiple level adventure...
28
EXCLUSIVES
Preview: Spirits of Metropolis Graphics: 4.5/5 • Gameplay: 3.5/5 • Audio: 4.5/5
When I was told I was going to be previewing the latest work in progress of Vertigo Games, I was really looking forward to it. I received the game, played it and was instantly greeted with a tutorial. It looked rather complicated at first but the tutorial quickly told me what to do, and when I got to the main menu I’d already developed a few tactics for playing.
The game’s graphics are fairly good, and indeed what you would expect from Vertigo Games. Clean, easy on the eye, although never majorly complicated. The text is of a good, readible font and is always clear as to what message it is telling you. The gems are shiny and pleasant, the backgrounds are smart with glowing stars (at the bottom of the game screen a small silhouette city scrolls across – nothing special, but one of many neat touches). There is even a Music visualization at the bottom of the game. While the visualization looks fake, it is a very neat touch to the game. The explosions upon hitting the third colour in a gem chain are impressive too.
I played a few games after the tutorial, hoping there would be more cool and subtle touches. To be completely honest I was a little disappointed to find out there weren’t any. Whether VG is planning on adding any, I do not know (but I hope so). That’s the biggest problem with Spirits of Metropolis in its current state – it’s very repetitive. Here’s a quote from the Spirits of Metropolis page on the Vertigo Games website: “This isn’t your standard puzzle game” To be completely honest, I don’t yet agree with it. Just because a puzzle concept is a little new doesn’t mean it isn’t a standard puzzle game. When you start a new game, you get a set time limit and a big splurge of coloured gems. You have to make chains by recolourising gems, so that adjacent gems are of the same colour. You get an indicator displaying the next three colours you can change gems into; you can only choose your own next colour by getting a white indicated as your next change. You also cannot skip a colour – every one has to be used in the right order, which may mean losing a big combo by being forced to split it. For every three colours you can get in a chain, the third explodes, and the gems surrounding it (not diagonally) begin their own chains. You can split chains by colourising two/three adjacent gems off an active one – this can lead to a lot of gem explosions if done correctly. Furthermore, to start the chain reaction, you push a little button. At that point, an unchangeable white gem explodes. All your initial chains need to come off this gem. A nice touch rarely seen in other puzzlers is that if you don’t meet the score quota in your first go and you have time left, you get some more time added on the clock depending on how well you’ve done so far, the board is reset, and you’re free to make more chains.
I found the way buttons and and the HUD were very proffesional and something that you would expect if you bought this game. The game has many little neat features that you don’t start to see until you played it a few times. When all the game modes are completed this game will not only look great, but will feel great which will give it excellent replay value. Lastly sound is great – all sound effects feel in place and are never too loud or quiet. Music is also good – fitting in-game, quite a few different songs (I was particularly fond of the music accompanying the title menu) that just flowed to create a professional feel to the game. Pro’s Fitting music and sound effects Very well presented Tutorial explains everything Con’s Only one interface style Currently a little monotonous Not freeware
Overall I know that Vertigo Games may be planning to sell Spirits of Metropolis, and with some work it could easily be of commercial quality. All the effects are there, the core gameplay is solid – standard Vertigo Games output. It needs a lot of work though to make it complete, and I’m sure work is what will continue going into it. It needs more places, more to do, maybe a little online love, and then and only then will I stump up. Written by NAL
29
EXCLUSIVES
Insight Into: Sploing
Sploing is one game that will turn heads, so what is it all about?
Introduction I designed Sploing because I was tired of the crappy games GMC had to offer. Many were cheap rip-offs of bad games... Not my game! Sploing, when it’s done, will have a lot of the things I have always wanted in a game. The project is about two and a half years old, with on and off work between long breaks.
As for collectibles, there are cogs, melons, and keys. Cogs are the currency of Sploing’s planet and for some reason lay scattered through the various worlds of the game. Melons are an important fruit in Sploing. They are harder to find than cogs, and there are only 3 per level. When they are all collected and brought to the melon oracles, you will receive a melon award. These add up to unlock various “secrets” planned for the game. Some include upside down mode, multiplayer (?) and mini games. It depends mostly on what we feel the game needs and quite possibly the addition of “code donations”. Anyway, the keys, one hidden in each island, have a significance that relates to the obsidian pyramid on Desert Island. Speaking of islands, we are planning on creating nine. Each is located on a different spot of the bobble globe (we are planning on creating a 3D viewable globe of said planet) and contains its own challenges. The Islands are:
Graphics The graphical style of Sploing is a very Japanese-futuresque type. I wanted everything to match, so I went with a really high quality, everything-shiny look. All the characters, buildings, objects etc are based off little shiny spheres. This way, graphics are easy to make, look amazing, and fit together in the same environment while not creating an overdone motif.
Gameplay When I began working on Sploing, I wanted a platformer that shone like Super Mario (gameplaywise). Of course we would never reach that level first try, but at least there is a great influence in there. Sploing is a 2D platformer. You control him with the arrow keys, while using the “s” key to attack and the “d” key to jump. In his adventure, Sploing is able to collect mods for his legs (and in one case hands) to get farther in the game. They are: • • • • • •
Foot(Standard) Spring Rocket RollerBall Glue foot Fire Gloves
Each Mod gives Sploing a different combination of Speed, UpJump and Long-Jump. The RollerBall, for example, has a very low Up-Jump, a high speed, and big Long-Jump. The spring, on the other hand, has a med speed, a high Up-Jump and a low Long-Jump. The variability of the different legs enhances the gameplay and makes for an exciting game with far more possibilities.
• • • • • • • • •
Forest Desert Water Computer Ice Underground Sky Space Nega-realm
We were constantly struggling to come up with new and exhilarating ways to exploit the different terrains. The coral island, for example, is all about boats. The ZIF have a giant navy there, complete with submarines, torpedoes, squid, and everything that would force Sploing to rethink his idea of swimming. The Sky world, on the other hand, is all about falling down. The RollerBall mode is going to be an essential part of the Sky Island (a floating island yes) because this world is fast-paced. There will be many ways to complete a level, but deciding between the easy ways or the hard ways will take split-second decision and expert keyboard manipulation. Don’t worry though; this game is designed for all types of people. After reading this article, however, it may be only the patient ones who get to play it. Release is not expected for a while, but when it comes, it will amaze you. Check out the 3 sploing wallpapers in the Resource Pack.
30
EXCLUSIVES
Insight Into: Blazezone
Blazezone is a new TDS adventure game. Andy Hamm will provide some insight into what it is all about. Project Blazezone, (as the game is currently called,) is a top view adventure/action game under steady development. It is planned to be one of the next large scale releases for my personal website, (www.andygames.com) Project Blazezone deeply deluges into an interesting science fiction universe – one where humans have colonized lavishly throughout space. Universal law is enforced through an organization known as, The 7th Covenant. These men and woman work hard to help our own race, and other intergalactic races advance. Project Blazezone will focus on a story surrounding one small team of 7th Coven members. These men are pulled away from work at their home planet by high class Coven executives. They are then sent away to visit planet Tabitha. Tabitha is a rocky desert planet undergoing IAC or, Inhabitable Atmosphere Creation. The workers on Tabitha have failed to respond to routine contact attempts. Little does the drop-off team realize, after surveying what looks like an abandoned ghost settlement, they are not alone… The game play mechanics are very smooth so far. As stated above Project Blazezone is a top view game. The camera has been improved since my old testing engine. (As I will expand on later, that entire old engine had to be scraped.) Your character is equipped with a specialized suit and deployed complete with tools, weapons, and a flashlight. I am hoping to tell most ofthe story though short cinemas and team communication. (Dialog boxes.) My main focus currently will be getting your mates to act intelligent, - working with you. From the beginning I wanted this to be a single player
experience, so many top view games coming out are just to death match oriented. As for your enemies, you will fight several different kinds, (with variation among the kinds.) I can’t say any more than that. Trust me when I say, the game gets trippy and very strange as you progress. Tabitha holds many secrets… As I stated above: The old engine that you can currently test out is scraped. The AI was horrible and everything was so cluttered. Then the file was grossly oversized as a result. You can get an idea of the game play with that engine, but not what Project Blazezone will actually turn out to be. I have added some neat lighting, glowing, and smoke effects in the new engine. I have also reduced the file size considerably. The new engine has some fresh weapons, tools, and now with the assistance of lighting – a flashlight! (No I am not transforming it into some sort of horror game.) I am adding some nice polished tidbits, like the ability to kick around junk cluttering the floor with your, (visible now,) feet. Keep expecting improvements in everything, the graphics I am also updating! The tiles are getting redone so everything does not look like 32x32 boxes. I really am awaiting the ability to show off more. Right now there is no set release date, sorry. But realize this; it is for the good of the game. I can promise one thing though, it will be freeware! Written by Andy ‘Andy Games’ Hamm
31
EXCLUSIVES
Exclusive Liquisity 2 Trailer
Our special offer this issue is a exclusive preview of the all new Liquisity 2: Unexplored Depths. This issue we have an exclusive trailer of the new Liquisity 2: Unexplored Depths game by Vertigo Games. Liquisity is an underwater platformer. The main goal of Liquisity is to shoot a ball into a box using tools such as switches, jets and bouncers. The difference between this platformer and many others is that there are multiple solutions for each level. Reviews from Download.com state that liquisity is a ‘addictive puzzle game’ that ‘offers quite a few features’. From the original Liquisity came comments about the music such as ‘We enjoyed the soundtrack music’.
Thanks to Vertigo Games you have the privilege of watching the never before seen Liquisity 2 trailer. So take this opportunity to get a sneak preview of this great upcoming game by simply following the video link below and when prompted, enter the access code.
Exclusive Trailer Video Link: View on Vimeo.com Access Code: gmtechliquisity0608
32
PREVIEWS
Sub Terranea Online Graphics: 3/5 • Gameplay: 2.5/5 • Audio: 3.5/5
Sub Terranea was an old game on the long-obsolete Sega Genesis (Mega Drive to Europeans), in which a player would take control of a ship and go around shooting. With Sub Terranea Online, superjoebob has attempted to recreate the original’s gameplay, but (the big shocker) with added online multiplayer. Currently, the game allows unlimited players in one room, but with further advancements I am sure the creator will cap the number of players per game. So, straight into the gameplay, which is very pleasant. It plays as retro as its roots promise. The gameplay is pretty solid apart from one annoying bug where if you land on the ground at a peculiar angle it’ll start glitching until you die. Shooting is very nicely done and some of the effects produced from firing are great, although one or two effects were a tad out of style. The weapons themselves were generally good, and their bullets were always correctly aligned with the ship. I have a small gripe with the weapons though – changing them in-game is a little uncomfortable on the hand, especially during combat – shooting with shift while weapon switching with 1-6 = awkward. Otherwise, the gameplay is a strong point in the game – combat is good, level design is simple and spacey (but if more complicated the player would be too busy manoeuvring to focus on shooting), and ship control, other than the weapon-switching niggle, feels correct. Next, onto graphics. I’ve never seen the graphics for Sub Terranea, nor could I find any screenshots of it online. Therefore, I cannot assess whether or not the graphics in STO are ripped. I will write this paragraph assuming they’re not. Well, they’re pretty great. Very retro, very pixelated, very good. The HUD follows the graphical style of the game itself, as does scenery, weapons fired and even the title buttons. In my opinion, only one thing seemed out of place – certain effects produced when firing. It is a little weird to see, when firing a gun at a wall in a retro environment, the collision produce an explosion of cleanly-drawn red to yellow circles. It’s nothing drastic though, and certainly won’t be a bother to a gamer that’s not looking for bits to nitpick about. I’ll cover audio quickly. There’s currently not much at all. Just a sound effect for shooting, one for the bullet hitting something, one for the player ship hitting something, and one for the player dying. There might be one or two more (thrusting, refueling) but that’s basically it. There’s no music either.
In terms of multiplayer gameplay, it’s solid, and quite fun, yet nothing special. While being better than a lot of online shooters, it is, at heart, a basic space shooter that brings nothing new to the genre. It’s fun though, and that’s what’s important. I would quite like to see a single-player mode, be it long, short, or just a random match against an AI-piloted ship. If not (or on top of that), a little more online connection-control (which I’m sure the creator is doing). Currently, somebody hosts, then any players just get thrown in that room. It’s rarely seen in Game Maker online offerings, but a list of active servers, the quantity of users in each server, and its basic statistics (current level? player skill? player names?) would be highly appreciate it and make it that extra bit special. I have one other small problem with the game – the dodgy physics. When thrusting, they are fine. However, when you let go of thrust in the air, your ship will decelerate, and once it’s done that it will simply float downwards. Not fall, like any gravity-affected mass would. Just float. This might require a fix (or a cover explanation for the easy way out). Pro’s Great retro style Nice graphical effects Fun to play Con’s Occasional glitches A few guns seem similar In one or two places the physics feel dodgy
Overall Still, Sub Terranea Online is a very nice game, which I’m sure will be near-amazing once complete. There’s a few changes to make before its release, and a few additions, but once made you’ll want to download this. It’s a good port of an old game that probably would’ve been online anyway had the then-limited technology allowed it. Written by NAL
33
PREVIEWS
Lex
Graphics: 4/5 • Gameplay: 3/5 • Audio: 2/5
“The game begins with you starting as Lex, a care-free lizard living his days just like anyone else. Unfortunately, one day, he feels the ground shake and rumble. He jumps out of his home to find out what the noise was. With further exploration, he finds several machines with some kind of monster on it taking down trees and running over homes of his dear friends. He panics and tries to stop the machines, but in vain. He hops out of the way and takes cover under one of the large flowers and watches in despair. Suddenly, several insects flutter around the head of one of the monsters and the monster jumps out of its machine and runs away. Lex gets an idea, if he could work together with the insects, his mortal enemies, perhaps together they can take down the monsters and get their home back.” -Brod
Lex is a nicely done, short platformer which is still in development. Nice graphics and pleasant sound added to its quite nice concept making this game a delight. Although there is just a short WIP (Work in Progress) demo out there this game cannot be ignored. If developed properly like it is now, this game will really be a gem of a platformer. And at least it has a little original idea behind it, unlike most of the other games of this genre. Even at this early stage the game is quite polished on the whole, which is well… quite uncommon. Brod has certainly done great work and requires congratulations. The graphics and music suit the game and do quite a nice job at bringing out the message of the game. But all it has to offer at the moment are three short levels but the winners list (getting recognition) by finding all the hearts is quite a plus and is much appreciated. There isn’t much to do at the moment but that should soon change. The game certainly has showed its aims and it can be taken for granted that it will not fail to make a mark. The graphics can be simply termed as fantastic and show great skill. At the beginning the player is greeted with a highly polished menu on an animated background. The sprites of player and enemy snakes were also great. The text boxes were not to far behind either. Nice background tiles of blocks were used. However, better than all the rest was the HUD. Superb is the word to describe it. On the whole the graphics have been given quite a lot of time as can be seen from the results. It maybe
would have been better had they been made for full screen mode (the default windowed mode can be changed). The music was also nice, but not as comparable to the graphics. The one background track was quite pleasant and its happy theme suited the game play well without causing any disturbances. However, it could grow repetitive if it alone is kept for the whole game when fully developed. The option to switch the music off was quite a big plus. Still, the music was at least decent unlike most other platformer games which neglect this part. There were not any sound effects. If graphics and music were great then the gameplay was better. The gameplay was quite merry. There were not any glitches or errors to be found. The gameplay maybe short but the game did not grow boring at all. Still it may get repetitive after finding all of the hearts. It does, however, become repetitive after a little time. But that happens with most other platformer games doesn’t it? As termed earlier the gameplay was smooth and even no collision errors (which are quite common) were to be found. The game was easy and there was a well shown tutorial laid out at the beginning. The game could be quite customized even at this early stage (again uncommon). On the whole the gameplay was highly creative built on a nice concept. Pro’s Great tutorial which introduced almost every technique Nice and neat graphics Creative gameplay built on a nice concept Con’s This game is very short Little to do as of this WIP demo No sound effects
Overall Maybe it will turn out to be a great game, but then this game has a long way to go to before the release of the final version of the game. But the game needs to go under heavy development and improve a lot. However, one thing is for sure, if circumstances remain as they are at the moment no one can stop it from becoming a great game. Written by Xantheil
34
REVIEWS
Deep Space
Graphics: 3/5 • Gameplay: 3/5 • Audio: 1.5/5
“You got stuck on patrol duty... AGAIN! Patrol duty is the most boring part of working for the Galactic Enforcement. Being stuck flying around all day looking for ships going above the speed limit of 5X light speed, or finding planets under attack is boring, because it just doesn’t happen. Basically you are just forced to sit in your ship all day, doing nothing, and earning minimum wage. Well, this patrol duty isn’t so boring. Your asteroid charts lagged and didn’t update, so you found yourself right in the middle of an asteroid field. To make it worse, an asteroid clipped your ship, breaking your engine, and severely limiting your speed. Shoot the asteroids as they come near, and don’t get hit!”-Anonymouss There you have the description of the game Deep Space. Sounds (or rather smells) familiar, doesn’t it? Well it is indeed an asteroid clone as most would have guessed. Same style, same concept, same objects and well… same uniqueness! The game certainly has something which makes it largely different from other asteroid clones. But what is it? Same yet different, cloned but unique, this game certainly has what it takes to be a great game. You would certainly not wish to miss it and no one will. The idea may seem overused but Anonymouss certainly didn’t waste time trying to do a perfect clone. And at least his ideas, as well as his hard work, seems to pay off in what turns out to be a promising game. It may be far from great but there doesn’t seem to be any doubt that after tightening all of the loose ends it may well turn out to one of the best remakes of the classical Asteroids game. It may not seem to be the best bet around at first glance but stare hard and you may well find the reason. There are many nice in-depth touches, as well as a lot of detail, which has gone into every part of the game and well the results are for all to see. ‘Keep it simple’ is the motto of the game. The game resurrects some of the old memories of Asteroids. The graphics though simple seem fitting with the rest of the graphics, giving the game on a generally more wholesome look. The player’s spaceship looks quite decent, and while the asteroids look better, they look quite un-asteroid like. The best part however is the explosion, taken from the GameCave effects engine, though slightly modified. The HUD could have been way better than it is now as it gives the game a rather unpolished look. Default Game Maker message boxes also add to the unpolished look.
There isn’t much to write about sound simply because it lacks variation in this department. There is just one short background track set to loop forever, causing much distress. The ability to switch the music off is much missed (but the power button of the speaker came in handy there). However, nice sound effects were present wherever possible. The gameplay may still be the best part of the game and it is certainly what makes it such a nice little game. The game may be a clone of asteroids but it provides what it aims for (and what one seeks from it) a few minutes of entertainment, bringing you out of the real world or even the complex 3D world of your PS3 games. It comes as a rescue from the complex world, without getting repetitive. The gameplay was quite smooth and no glitches or bugs were to be found. The controls were simple (normal arrow keys as opposed to A/S/W/D) and the physics were realistic on the whole, providing a smooth experience. After the roller-coaster ride (of graphics and sound) comes the smooth end. The game is practically an asteroid clone, a remake of the great classic and greatly impressed me with its uniqueness in the similarities. Without losing the essence of the game it has done the best possible in the field of originality. Pro’s Nice arcade styled graphics Appropriate graphics and sound effects Creative game play and originality Con’s This game can become boring due to repetitive game play Just a few sound effects and one background track Lack of variety of enemies and other game elements
Overall Simple, creative and original game play, appropriate graphics and plenty sound effects and all the rest already make this game better than most other asteroid clones but as said earlier, tying up the loose ends, be it graphics, music or gameplay and polishing most of the elements is all that is needed to make this game grea. This game is quite promising and certainly has the potential to succeed. So if you want take a break from life’s complexities, game on! Written by Xantheil
35
REVIEWS
Falling CJ
Graphics: 1.5/5 • Gameplay: 2/5 • Audio: 3/5
Have you ever played Icy Tower by Free Lunch Design? If so, Falling CJ is the opposite of it. Instead of jumping up on platforms and trying to get as high as you can, you will actually be falling and avoiding boxes and platforms which will stop you. Falling CJ doesn’t have a story, it’s more of a short arcade game that you attempt a few times then don’t play for some time. The only thing you have to do in the game is: 1. fall, and 2. collect atoms for points. The graphics in Falling CJ are mostly made up of the free sprites which came with Game Maker. Therefore, the game isn’t very graphically appealing. There are some graphics in there which look homemade however they look like they were made in 30 seconds. The game had some coloured block explosions (Which didn’t look too bad) when you collected the atoms. When you collected atoms or paid 1000 points to fly down further the numbers of “500” or “-1000” flew around a bit before disappearing which I think was meant to give the impression that the numbers are also flying in the wind. The menu and game over screen looked the best I think.
The menu had custom graphics on it with blocks flying in all directions in the background which looks nice. The game over screen looks bare besides a few buttons. What stood out to me was the bouncing “Game Over” text. I don’t think I’ve seen that effect in many games I’ve played. In the end, the graphics are not good besides a few minor high points. The sound and music wasn’t bad, however there was a sound “Ouch!” when you hit an object which seems very out of place in the game. The game has a few different midi songs in it which is good as it gives the game some variety; however I think the menu music was better than the in-game music. Now the gameplay was an “ok” point in the game. The gameplay isn’t addictive; it is in-fact hard to move the character because once you start moving the ghost will not stop moving. The one level Falling CJ contains seems to be completely random and will run forever which is good for these types of games. There was no lag and no bugs as far as I could see. Pro’s Nice variety of music Not an easy game to score big points on The menu looks decent Con’s The game uses old GM sprites Hard to control the character Not addictive in any way
Overall Overall, Falling CJ is a quick arcade game that doesn’t appeal graphically and isn’t very addictive. The game looks like it was made in a day which is sad because a game like this could have so much more potential. Falling CJ needs a lot of work before it becomes a game that people will actually enjoy playing often. Written by gmjab
SUBMIT YOUR GAME Do you want your game to be reviewed? Or perhaps you want your game to have more exposure? Then submit your game to the Game Maker Technology Magazine which is read by thousands of Game Maker developers. Submitting your game is quick and easy to do. You will also receive a fast and friendly reply from one of our staff shortly afterwards. Here is how to do it in 3 steps:
1 2 3
Visit the forum: www.gamemakertech.info/forum/ Go to the Submit > Preview/Review and create a new topic. You don’t even need an account. Provide your username, game name, download link, screenshot and some brief information.
36
REVIEWS
Zymo
Graphics: 1/5 • Gameplay: 3/5 • Audio: 0/5
Zymo, a both text and graphically based game, is sure to keep you thinking, if nothing else. Unique controls and simple graphics make this game different from most other Game Maker games that I have played. Even still, I find the game refreshing because of its difference from others. Navigate your character, a simple pixillated stick figure, through block based rooms to your ultimate goal of a flag at the end of each level. Your first attempt to play will undoubtedly confuse you, as it did me, when you are unable to jump, and die nearly instantly. With a second glance at the instructions posted in the menu, you will find that to jump, you must type just that, ‘jump’. Now, the game would seem to have turned into a race of typing skills as well as reflexes. As the levels get more complicated, the game, inevitably, gets harder. If you thought that the first level was hard, good luck completing the fourth, it sure gave me trouble. As the game progresses, you are given more commands to type, and so more ways that you must control your character. ‘Jump’ and ‘duck’ are easy enough manage, but throw in ‘leap’ and ‘flip’, and you will surely find it difficult to navigate around closely spaced blocks and well placed spikes. If you become bored with the levels that you are playing, make some of your own! Zymo also sports a level editor (separate application), where you can make rooms of your own, as easy or difficult as you would like. While the text command style interface may be different, it may not really be something that you will like. If you have difficulty playing and completing these block-platform style games in the first place, then adding the necessity to type to quick thinking may go beyond difficult, and more into obnoxious. One more attribute I would change, if it was up to me, would be the levelto-level interface that I find less than appealing. After you finish a level, you’ll be given a password for the next level, where you will then be transferred to the menu to enter the password you have just been given to go to the next level. If you then die while playing the next level and forget the password that you used, then it looks like you will have to start all over again. The graphics for Zymo resemble the old-style games. The graphics and text are made of large pixels. The were no graphical effects that I found in the game. The game also maintained just one colour throughout the game. There is pretty much no HUD or any sort of game interface. While it is missing many great graphical elements I think the game was designed to look the
way it is. While playing the game, you get the feeling of an old DOS game even though it is just a recent game. Zymo also has no sound whatsoever. I think this game could do with some old style midi or chiptunes music. In addition, sound effects for jumping, dieing and even typing could have been added. In the end, sound is the most lacking area in the game. Even with a difficult interface, I recommend Zymo to anyone who is looking for something new and different. Still having troubles? Change the level of difficulty when you start the game for easier play- maybe a more simple game will mean a more enjoyable one.
Level Codes Enter these cheats into the menu and press ‘enter’. Level 2: mouse Level 3: round Level 4: oldstyle Level 5: frog Level 6: bear Level 7: funny Level 8: smash Level 9: world Level 10: 2digits Pro’s A different text-based interface Easy instructions and a simple game A nice old-style theme Con’s Bad level-to-level setup No sound The game can be completed in under 15 mins
Overall With a difficult interface, no sound or music, I’d recommend Zymo to people who are looking for something new. While this game is short the level editor makes up for a quick game. A gamer who likes old-style games would possibly enjoy this game’s style. Written by Chriscool
37
REVIEWS
The Adventures of Cendah Graphics: 3.5/5 • Gameplay: 3/5 • Audio: 4/5
RPG’s that are made in Game Maker are released all too often. Most of the released RPG’s are not quality games and soon get lost amongst the masses of other low-quality games. The Adventures of Cendah on the other hand, is an exception.
The game’s music was great. I thought most of the music was addictive and the sound effects that were chosen fitted perfectly. The only downside I could see is some music became too repetitive. Excellent work in the sound area.
The Adventures of Cendah has a medieval theme. You play as Cendah who is given the responsibility to scout the original homeland of the Demonic people. On the flight there however, your zeppelin explodes and you are the only survivor. Now you must help the villagers of Edearozth to earn enough money for your trip to return to the Demonic Chieftain to give your report on your homeland’s condition. There is something I love about the story of this game. Its how the story changes and expands as you play the game. For example, when you came to Edearozth your job was just to scout the land and return a report. But on the way your zeppelin explodes leaving you stranded until you can purchase a new one. Now you must go on quests for the villagers to earn money. Another thing I like about the story is it’s not always predicable like other RPG’s. One example of that was when I was searching for a friend of one of the villagers who was left in a cave. Instead of the usual ‘kill some monsters and rescue the man’ you will actually fight a heap of monsters only to find the man you’re looking for killed and half eaten. The graphics in this game keep one straight graphical theme which is not always easy to do. There are some nice particle effects around the coins that you collect, and when you strike a monster with your sword. Another effect used in more modern FPS games is the blood screen which is basically when the screen goes red around the edges if you get hit or killed. This game has that, which means it’s going to be pretty hard not to know you’re getting killed. When the menu appeared for the first time it reminded me of Warcraft 3, only this was a top down game. The HUD is very well done and never gets in the way. The HUD is simple, informative and looks good.
The gameplay was also very good. The controls where easy to learn, thanks to the few tutorials provided when you start the game. But more tutorials would probably have been nicer. The game has no lag issues but it has a couple of bugs in the menu. The only thing I found difficult about the gameplay was when you were attacked by a bat. If the bat attacked you the bat bounces back and by the time you swing your sword you miss him. So if you play the game, keep an eye out for bats and hit them at the right time. A great feature of the game is the cut scenes. I think the cut scenes were good and they weren’t irritating.
Save File Cheating The Adventures of Cendah uses a save file which can be easily modified to give your character an advantage. To cheat the game, first start a new game in The Adventures of Cendah and once you arrive on the beginning island, quit the game. A file named ‘save.ini’ will now appear in the location of the game. Modify the variables in that file to give yourself extra money, life and more. Pro’s Consistent graphics theme throughout the game Cut scenes boost the story Excellent music choice Con’s A couple of bugs are present in the game Fighting can be difficult The game could use some more tutorials
Overall The Adventures of Cendah is one of those well put together RPG’s which you don’t come across all to often. It has fitting music, graphics and easy gameplay. The story to the game is an expanding story and not always predicable. This RPG is a fine piece indeed and I urge everyone to at least play this once because it’s not a 10 minute game like many others. Fine work indeed Kingdiz. Written by gmjab
38
EXTRAS
Ancient Civilisations Competition Timoi & Nal have a look at some of the competition entries.
To start off this article and to find some competition games, I scanned almost the whole GMC thread looking for people who said they’d be entering the competition. I then PMed 26 of the people I thought were most likely to be seriously entering the competition. Out of those 26 I got a good response of 23 replies (thanks to all that did) and what surprised me most was only a third of them were still going to be entering. While writing the article, of those 8 who said they were entering 4 of them pulled saying they couldn’t make the competition deadline. So out of 23 people, only 4 are still entering. That’s a pretty massive drop out rate! Commitment to a project is clearly a problem with many people, in the future we’ll have a ‘Competition Game Planning’ article, a guide to making games for competitions.
Games from Creators The first Yoyo Games competition yielded some great games (Frozzd, Garden Gnome Carnage, and Dominos 2: Winter Edition to name a few) and with almost double the time, along with extra experience, the Ancient Civilisations Competition promised to have even better entries than before. Here’s a quick round up of some people’s projects with descriptions by their creators. Imperial Domination 2 by Don Arthuro “After the big success of the staff pick Imperial Domination, ArDiGames will bring you the sequel. This time the war will be fought in Europe during the rise of Rome. The game will have the same basics as its predecessor but will have a lot more options. Choose one of the 12 factions to archive Imperial Domination. Not only will you have to defeat your enemies and make allies to make your faction strong, you’ll also have to keep an eye on your provinces to make them prosperous and to prevent revolts. Make sure all over your empire people have the access to exotic resources by using a unique trade system. Create the strongest empire to unite Europe and bring it under your rule. Visit ArDiGames.com for more information.”
Light The Past by Hanson “You start stuck back in time with a malfunctioning time machine. Upon examining the insides, you discover that the core laser is out of adjustment. You must strategically position mirrors, splitters, and other objects, so that the laser is correctly routed to the receiver. Every step you complete brings you a few years closer to the goal, which is ‘now’. As you pass through each time zone, you learn a little about a civilization(s) of that time. ” 13 Skulls by Alpha Claw Productions “Two acclaimed archaeologists are exploring a newly discovered ancient Mayan ruin site. At a point deep in the ruins, one of the archaeologists unearths a peculiar red skull with eyes that glowed like fire. Suddenly, the skull illuminated in a brilliant light which cursed all who viewed it directly. The archaeologist became stricken with this horrible curse and now may only walk forwards. You, the other archaeologist, having been in another area at the time, find your friend in this mesmerized state and must guide her all the way through the hazardous ruins and find the other 12 skulls which she must collect herself to break the curse.” Rosetta Stone by Elmernite “Spell words, make points, and keep the scales balanced! Rosetta Stone is a word game unlike any other. You must spell words using the letters at hand with more constantly dropping. The longer the word the more points you’ll make. You can take letters from either side to spell words, but be careful! As you remove letters, the scale will shift as you change the balance. If the scale shifts too far! Game Over! The game will also contain another game mode that involves numbers. Same principle, different dimension. You will be given a number and the blocks will be arithmetic functions and numbers. Add, Subtract, Multiply, and Divide your way to that number, the more blocks you use, the more points you make. You don’t have all day though, the scale will begin tipping soon? The game will contain online high scores for both modes. So you’ll be able to see how you stack up against the world. Can you make it to first place?”
40
EXTRAS
Ancient Civilisations Competition (Continued) Quick Reviews The runner-up of the Winter Competition was a game that surprisingly appeared within only a few weeks of the competition starting (Garden Gnome Carnage), without a doubt this highlighted the fact that all a game needs to succeed is a fantastic idea and smooth execution. We decided to check out some of the earlier competition entries... Ted the Archeologist – Adventure in Ancient Babylon by Tirade Ted the Archeologist (sic) ends up playing like NetHack minus the heavy RPG elements, if you’ve never played NetHack (to those of you that haven’t: hello, what’s it like having a social life?) then TA:AAB has a very brown colour palette and is in the form of an isometric maze adventure. You travel round an underground tomb battling against skeletons, spiders, and mummies. There are a few puzzles, but they’re not exactly...well...very puzzling, most are just a matter of making your way through some traps, not much brain activity is involved. The controls feel inactive at times and when I died it ended feeling like it was the fault of the game more than anything I was doing wrong. But credit where credits due, this is one of the more ambitious games that were entered into the competition with many levels to complete and a proper story to boot. The talking mechanism can be a little messy which resulted in me going into the main game with no healthpacks, and promptly getting stuck a few levels in against a horde of spiders, plus you don’t get all your health back again when you restart a level. It verges on the edge of addictiveness but without ever really getting there, this is mainly due to poor combat and while there is a story, it feels like you have little incentive to carry on. Side levels with exploration would add a much needed replay value to it. The music is of a reasonable quality and it suits the game setting and style well. The graphics are very repetitious as most levels use exactly the same tile set with little variation, however the characters and enemies are well drawn and animated. 2.5/5
Viking by stinkyman You play as Dothomir, “a viking known for his ruthlessness and his cold blood” who on returning on his boat from winning a battle by himself is hit by a severe storm. You have no hope of survival so you must earn enough points to make it to Valhalla
by collecting your treasure that has fallen over-board, while getting out of the way of any hazards that come along. A nice touch is that you move forward by blowing into the sails, and yes, I’m aware why that wouldn’t actually work, but this game definitely isn’t about realism. What it translates to is a side-scrolling avoid-em-up with the emphasis firmly directed at fun. Viking very much reminds me of flash games with consistent cutesy graphics and simple gameplay, however this is by no means a bad thing. It is fun while it lasts and there’s a nice variety of monsters and objects to hurriedly get away from. The addition of a UFO that flies across the screen unfortunately misses the mark of “oh look, I bet you didn’t expect THAT did you” style of humour by a country mile and only detracts from the gameplay. It does have a couple of niggles such as sluggish movement, and occasionally you can become penned in between a couple of rocks with no hope of an escape. Surprisingly for a game this simple it achieves a decent stormy atmosphere with heavy cascading rain pouring down across the screen, waves sloshing about in the foreground and background, and some suitably thunderous (pun intended) lightning. I know two and a half out of five seems like not much judging from the review, but it’s big let-down is the fact that you can sail through (pun intended again) the game in a matter minutes. 3/5
Archers of the Great Wall by racefan64 As you’d probably already guessed, you’re an archer on the Great Wall of China, you’re job is to defend against a Mongul (sic) horde that conveniently attacks you in waves with increasingly powerful units. The amount of damage taken by the wall is shown in a large green bar at the bottom, whenever an enemy runs into the wall the amount of damage taken increases until eventually it reaches zero and it’s game over. Curiously the enemies disappear when they hit it, so one can only presume they do damage by head-butting
41
EXTRAS
Ancient Civilisations Competition (Continued) the wall at high-speed and then promptly dieing. The upgrade mechanism is thankfully cleverer than the Moguls, whenever you kill an opposing archer they leave a small glowing sphere for you which gives an upgrade when you hit it. For example an automatic firing bow (think Legolas-on-mega-sugarrush style rapid fire), which you keep for a certain amount of shots. The gameplay is perhaps overly simplistic with quite 1-dimensional gameplay, I suppose the ability to move left and right creates a bit of choice but like many philosophers have (probably) said, free will is an illusion, and moving position barely changes anything. Pausing the game when it loses focus or allowing full-screen would be an easy solution to this problem. Despite this it remains an enjoyable experience and can occupy an idle mind for about 15-20 minutes. 3/5
God of Sun: Non Graphix Adventure by Silen I’m rather disappointed with this. After playing Silen’s winter competition entry, Ice Breaker, I had high expectations for God of Sun. I was left feeling a little empty. Sound was basic and nothing special. The music was annoying as hell. I am to understand that all of the game graphics were generated with code (no sprites/backgrounds). So, some nice effects in the game, but overall not very exciting. Giving yourself a restriction like that won’t make the judges like the game any more. Gameplay was what let the game down. Bounce, bounce, shoot, bounce, go through hole in wall, bounce off enemy you’d already killed and shoot through back into room. Why the enemies respawn if you return to their room eludes me. It’s infuriating. Unfortunately, it never really redeems itself – the game is essentially shooting enemies and opening gates with corresponding keys.
A disappointment. This game had and still has huge potential so you SHOULD improve this. 2/5 - (Reviewed by NAL)
Ed The Easter Island Head by GMer56 In most cases, early entries into a nearly-three-month-long competition aren’t very good. Unfortunately, Ed the Easter Island Head is NOT an exception. I’ll ignore the music and sounds – obnoxious, horrid resource garbage – and move onto the gameplay (excluding Ed’s occasional “uh-oh” or “yum-yum”). It’s a basic platform engine; it brings nothing new to the genre. Occasionally, collisions are weird (you can stand on the edge of a cliff without your feet even touching the ground). Ed feels a little slow also; if you’re going to avoid the cars used once too much, you have to be clear of any high obstacles and jump at the right moment. As for graphics, generally OK. Some (eg. enemies) are out of style with the other graphics (cartoony low-bit colours). The pop-up dinosaurs look like 16-bit edits of real dinosaur photographs, and look really wrong. Overall, Ed is just playable, but simply lacks anything that would keep you interested. Well, that’s if you can get past the title menu… 2/5 - (Reviewed by NAL)
Written by Timoi & NAL
Links - Yoyo Games competition 2 page - All competition entries - GMC Competition Topic
42
EXTRAS
Interview With: Flashback
gmjab talks with Flashback to see how he is coming along in the Game Maker world. GMT: First up, tell us a bit about yourself and how did you found Game Maker? FB: “I found GM when I was around 8 on a free-software list my father subscribed to. At the time, some friends and I had wanted to make a game - and so we did, with some early 3.x version of GM.” GMT: What would you say you’re best at in game design? FB: “That’s actually changed over the years: I’ve specialized in AI, Effects, engine development, and music, and that in the end I’d have to say a combination of all three.” GMT: Has Game Maker affected your life in some way? FB: “It certainly allowed me to experience development for the first time: and that’s set the course for my interest in computer science in general. The multimedia aspects of game production have also spurred my interest in web design and hypermedia.” GMT: What have been some of your major projects over the years? FB: “Collision Course, Last Battle, Invertank, Scoperta Solare. Anyone who can find all of them gets props.” GMT: How long has the MusicLib been running for? Has it worked out better then you expected? FB: “Musiclib’s been around for just under two years. It’s actually done better than I thought -I never really had any vision of what it would be past 6 months when I started it, and I’ve certainly had more songs posted than I thought I would.”
could post songs without registering, leaving only a name: this will no longer be the case after a few incidents of nonregistereds flooding the site with songs that didn’t actually work. A lot of the improvements are under-the-hood, allowing me to more efficiently add on to the site.” GMT: Besides the MusicLib site, are there any upcoming projects you’re working on? FB: “Yes, but not any that I’m at liberty to discuss at the moment.” GMT: Have you got any personal development tips for the other GM’ers out there? FB: “If you’re just starting, and you think you can make an MMO, you need a psychiatrist.” GMT: In the time of using GM what has been the toughest thing to do? FB: “Graphics. My art skills are not terribly great, in regards to sprites.” GMT: Thank you for the interview, any final words? FB: “Thanks for the free advertising? Maybe that everyone will finish their projects to the best of their ability.” Interview conducted by gmjab
GMT: You’ve been working on the new MusicLib site lately, what new features can we expect to see? FB: “For one thing, Musiclib will move from it’s “free-for-allno-credit-required” blanket licenses to an artist-selectable Creative commons license (the same licensing Deviantart users are used to), so that you can actually control what kind of credit you get and how your songs are used. You’ll see a new layout, of course, and improved preview player (by aeron), and the institution of mandatory registration to post: up until now, artists
SUBMIT FOR AN EXCLUSIVE Have you got a great project that your nearly finished? Do you want your upcoming project to be made known? If you do, contact the Game Maker Technology Magazine. The Game Maker Technology Magazine is read by thousands of Game Maker developers so you can be sure that your project will be made known before it’s released. Contacting the magazine is easy and can be done in just 1 step.
1 Send an email to: support@gamemakertech.info and provide your username, email and a description of your project and we’ll contact you.
43
EXTRAS
Top GMPhysics Games
So what can GMPhysics really do? Timoi looks at the best games that make use of the DLL Dominos 2: Winter Edition by Marbs Arguably one the best uses of GMPhysics, with innovative ideas such as sledging, wind blasts, and see-saw puzzles making the most of the DLL. It also manages to overcome many of the bugs inherent in GMPhysics as well as providing the most seamless and smooth physics based game currently around. It excels in almost every other department too with great graphics, sound, and replay value. We can reveal that a new complete version is in the works, with many more features such as replays and multiplayer.
Boulders Never Die by Soup42 This has more of a puzzle twist than other GMPhysics games, and you are only allowed to place a couple of different shaped objects, but the physics work just the way they should. If anything the restrictiveness forces you to be even more strategic than otherwise. The different environments add to the variety, and some levels are seemingly impossibly hard, but it does have a certain addictive quality to it.
GMC Link | YoYo Games Link
YoYo Games Link
Dominos by Marbs The first Dominos doesn’t quite have the same smooth movement as the sequel, it can be frustrating controlling the small characters sometimes when they just don’t seem to go in the direction you want. But it does have more objects to control, such as a bowling ball, a banana, and even a completely physically simulated monster truck, in which a lot of fun can be had.
CryonPhysics by Steven Softworks A good concept and executed perfectly, the physics blend into the gameplay and the puzzles can be fiendishly difficult. The ability to create your own objects is truly a great feature too and you get a real sense of achievement that you might have solved a puzzle in a way no one else has. There are a couple of bugs, but to eliminate them all from a game that is this openended, and allows for so many possibilities, would be all but impossible. Though the gameplay could be seen as completely broken as you can drag the target objects, this benefits no one so simply not touching them ensures the most fun.
YoYo Games Link Domino Playground by Link There’s not much gameplay in this one, but it does it’s job very well as a sandbox toy. The ability to place your own objects and let them bounce about does bring about a certain childish glee, but nethertheless, it ends up feeling rather pointless after a while. Unfortunately it does have a tendency to crash if too many objects are created so don’t go crazy and place hundreds of boxes. YoYo Games Link
YoYo Games Link
Others to try out Sam Johnson by pandulapeter Quake Rally by Keth Monster Truck Mania by jblsucks Snow Contraption by Physics Written by Timoi
44
EXTRAS
Global Gamer Profile (GGP) What is Global Gamer Profile? P-Entertainment provides some insight into it. Global Gamer Profile (GGP) is a system under development by P-Entertainment. This system will let game creators create a profile for their players which can also be used for other games supporting the system. The system so far includes things like awards, signatures and game progress.
the internet which can be downloaded and imported into any game. This can be helpful not only for online use but also for RPGâ&#x20AC;&#x2122;s and similar games where you often have an icon next to what your character is saying.
Games Games are of course the main focus of this system, as it is a system created for games. So every game has to add itself to the file in order to use the other functions. The games will be saved together with two links and a percent number. The two links point to two files - one includes a number and the other one is the latest version of the game. These links are used for updating the game, the first link is read and the number is returned. If the number in the file is greater than the games version number then the game will download the second file and replace itself with the new file. The percent number is simply how far you have made it in the game. You can also check if a player has played one of your other games and then maybe give the player something special representing that other game.
Awards Awards are another important thing in this project. Every time the player achieves something he can be awarded with an award. This award will be saved with the name of the award and a simple description. It will also be saved together with the name of the game it was created with so you can track your awards. Awards can also be used the other way around. If a player has been awarded something in another game you can give him something in return in this game. With this system you can make the player reach a certain level in one of your other games before you give him something in this game.
Avatars Avatars are a good way for people to recognize you and if you use this system online you should use something which makes you able to be recognized. Therefore we chose to add avatars. The avatar is simply a link to a picture on
Signature Inside your profile there will also be space for a signature. This signature is simply whatever you have in mind. Most likely to be used with online gaming.
Friends For online gaming you can also have a list of your friends. These friends are saved in a list and can be added, deleted and edited as much as the player wants. Friends can also download your profile through a simple request system.
Gamercard This is a collection of the players favorite awards and games, together with the avatar and parts of the signature. This can be used to get a brief view of a person. This information will also be saved together with the rest of the information.
Security As this is being released as open source for people to implement in their own games there has been some problems with security. As everyone can just add games and awards to their profile there may be chaos about which games and awards are real. But as far as we at P-Entertainment are concerned we believe in peopleâ&#x20AC;&#x2122;s honesty and that this system will not be misused. There will be some simple rules and guidelines which will come together with the system in a simple .txt file so there wonâ&#x20AC;&#x2122;t be any misunderstandings. And we really hope that if anyone misuses this system we will be contacted by someone so we can prevent those people. If you wish to find out more about GGP and what it will bringplease contact P-Entertainment. Written by P-Entertainment
45
EXTRAS
Free Applications
Timoi tests out some free software you may find useful.
Terragen Homepage: http://www.planetside.co.uk/terragen/ This is a truly astonishing program, and the fact that it’s free is even more amazing. With just a few clicks (literally about 5) you can render photo-realistic landscapes, and I’m not joking about that, when you push the quality sliders up, it can be hard to tell that it’s not a photo. With just a few more clicks the landscapes can be customized with water (which looks stunning too), sky details, clouds, and custom lighting. Almost every aspect of the landscape can be changed and tweaked to your hearts content. Though it may take a minute or two to render, it’s surprising to realize that your humble computer can indeed generate such incredible images. The obvious use for this application in games is creating beautiful backdrops for your levels.
dBpoweramp Music Converter Homepage: http://www.dbpoweramp.com/dmc.htm The main point of this application is to allow you to convert any audio file to any other format easily. After installation you have the option of downloading many different audio codecs straight from the programs homepage, which then allows you to convert between them. While it generally works well, there are a couple of drawbacks such as the occasional advertisement pop-ups encouraging you to buy the full shareware version, but this doesn’t matter too much. When converting files there are a range of options to choose from so you can compress your music in games down to a manageable size.
Graphics Gale Homepage: http://www.humanbalance.net/gale/us/index.html This is a must have program for any budding pixel artist, with many features that make it easier to create far superior sprites than Game Maker’s standard image editor. It has the ability to zoom in as close as anyone would ever need so you can really pick out the detail. It supports many different formats, but unfortunately you have to purchase the shareware version of it (under £10) in order to export .gifs. This is just about the only fault to this otherwise excellent program. However little things like that are easy to get around with a bit of patience so you can keep your game-making to a zero budget. Written by Timoi
Found a Program?
Have you found a program that may aid game development? Then submit it to the GMTM to make it more known amongst thousands of other game developers. For more information, checkout the forum.
46
EXTRAS
Comic
Take a break from game development and have a laugh at this comic.
48
EXTRAS
Check Out
Show your community spirit by taking a look at these great sites.
49
EXTRAS
Closing
With every beginning there will surely be an ending. Well this issue is finally over and I hope you enjoyed it. Next time we’ll be back with Issue 13 which will feature some very helpful articles and resources. Until then I’m sure there is enough content in this issue to keep you occupied for some time. Remember you can have a hardcopy of this magazine by simply printing it. Don’t forget to leave your comments about this issue in our topic or on our forum. Next Issue Here is a sneak peak of 4 things that will be in the next issue: 1. Website Building Advise 2. Making your game seen 3. Little Fred Reviewed 4. Frozzd Walthrough Guide If you wish to find out more or suggest something for the next issue visit out forums on: www.gamemakertech.info/forum/. Leave feedback Good or bad, we value your feedback. Your feedback lets us know how we should improve to satisfy all the Game Maker users. Your feedback can be about (although not limited to) articles, reviews, GM tips or the magazine in general. You can leave feedback in either our GMC topic or on our forum. Submit to the magazine Yes, we at GMTM will take almost any submission for a chance of it being published in the next issue. To submit to the magazine, simply go to our forum and submit in the “submit” section. Registration is not required and you will get a fast reply by one of our friendly staff. Here are three examples: - Submit your game to be reviewed - Submit an article/tutorial you have written - Submit exclusive information or request information
We only ask that you submit content for which you have permission. Do not submit things that are not your own unless you have permission from the owner and do not submit illegal content. At GMTM we take submissions seriously and we will do whatever it takes to keep our forum clean and friendly. Write for Game Maker Technology Magazine Some of you may not have time to join the Game Maker Technology Magazine team, however you may have great writing skills, and if this is the case, then we welcome you to write articles freelance (where you work independently and on temporary contracts) - so you can write articles when you want, and have no deadlines. If you like the idea of being a freelance writer, check out more information here. View articles online and give feedback You can now view all the articles, reviews and other content in each magazine online. In addition to this you will be able to leave comments on articles/reviews and rate each article. This is all made possible on the Game Maker Technology Wiki. We look forward to your visit. Apply for a job Game Maker Technology Magazine is always looking for new fresh staff to write, research or review content for each magazine. If you think you have got what it takes to join us, check out the forum for more details as to what jobs are available. Creative commons The Game Maker Technology Magazine is licensed under the Creative Commons license. This means you are free to copy, distribute and transmit the work. This work is for Non-Commercial use only. You are NOT allowed to alter, modify or build upon the work contained in the magazine.
50