Indie game prototype analysis
What game maker is and describe the key functions required to create games in the program.
Game maker is a application for personal computer’s that allow users to create various types of games using the tools it provides. When you first open Game maker it will look similar to other seemingly complicated application such as Adobe Photoshop with a whole bunch of text and Icon’s all over the place, however the application is fairly straightforward. The most important section of the application is the Resource tree found on the left side, this is where all the game assets can be found and changed as well as various game settings.
Sprite’s are the visual elements of a game, such as a character or platform however these sprites don’t have any functionality on their own, Object’s are what you need to apply functionality to those sprites via the form of event’s, an event is something like a Key press or the step event which occurs every frame. Within these event’s you set some actions that will take place once the event is triggered such as on key press w the character will move vertically upwards by a set amount, you would then combine that with the step event to have the character always moving vertically downwards in order to simulate jumping. For objects to really work however they need to be placed in a room, A room is what the player will see on the screen at a given time, this is also where you place other assets such as backgrounds, sounds which can be imported from files. Paths are used to enable an object to move in a set motion via co-ordinate’s, this does also require an event and some actions to make work. Scripts can be written using GML [game maker’s default programming language] and are available to enable tasks to be performed if it is written within the script, their for advanced users of Game maker so I myself have no experience of using them. That same rule applies to shaders, these are incredibly powerful tools that are available in game maker in order to add shading to your games without taxing on the user’s CPU power. Font’s are used to display text in a room such as a game over screen or main menu will use font’s, font’s are required to be applied to an object and then placed in a room with various events and functions to work. Time lines are used to specify which actions happen at which times usually at a specific step/frame during play time. Included files is a segment for files that you have imported that you wish to be included into the final package of the game, depending on the platform the game is meant for different files will need different endings such as .exe and the rest. Extensions are purchasable elements to the game maker program that can add different functions to your game. Macros are the location for your game’s information and global settings which can be viewed and changed to the creator’s wishes.
These are what typically are called tools along the top of game maker, the 1st 3 different options are your standard create new game, open existing game and save game. then we have create an executable target[CONTINUE], afterwards we have Run the game and run the game in debug mode allowing the creators to test the game to see if it works, if any issues appear they will show up in the log and tell you whats causing the issue. afterwards is stop web server, and clean project asset compiler cache, these as they say will stop the web server and clean the asset compiler’s cache. afterwards we have a long list of tools allowing you to create new assets such as; sprite, sounds, background, path, script, shader, text, time line, object and finally a room. alternatively you can right click the folders in the resource tree to do this. the we have change the global game settings and a help tool for game maker. your target is what operating system you are programming your game for.
This is the Run log, this details what processes are currently being ran and any issues that are encountered, for example when you run a game it will display all the assets that are being loaded and if the game crashes it will display an error and tell you what the issue is.
How game maker differs from other programs I have used and why?
I personally have only used 2 other programs before, Unreal engine 4 in comparison Game maker is far more straight forward and user friendly for the extent that I have used it for, for example their is no need for blueprints inside of game maker however I guess the alternative would be the use of event’s, and functions. creating events and the like is very simple, it’s like putting pieces of a puzzle together and seeing what you get although if you know what your doing and what you need the whole trial and error element to the process isn’t much needed. I would say although game maker is very much more limited in capability than unreal engine 4 due to the possibility for 3D games that Unreal provides which from my understanding game maker cannot. A simpler and more restricted version of game maker that I have used in the past was a program called scratch which might as well not exist, one reason is I dislike the program, because it only allows you to make the types of games you will find on a flash game’s website and even then that’s impossible because it’s so badly optimised the games never work.
How will this task help me meet the current requirements and parameters of my project?
I learnt to understand game maker in it’s most basic of form’s which allowed me to create a prototype for my game which I could then transfer what I learnt as well as what worked and didn’t work over to my actual game’s project, I also learnt the importance of creating simple prototypes for games which saves time and effort as well as avoids issues concerning the final games outcome such as bugs and glitches. I could then If I wish to elaborate and delve deeper into game maker in order to create future games if I wish to do so.
What research activities did I undertake in order to help me with my work?
During the creation of my prototype it often occurred I would go through a trial and error process of trying to get various mechanics such as a simulated gravity element to my game where I would try different numbers to get it to feel as right as it could be, which I found to be effective because it also showcased the minor’s and the extreme effects of random number’s being placed into a vertical movement function. It wasn’t just gravity this applied to either, this would also include my own experimentation’s.
I also observed others applying mechanics to their games which gave me a bit of direction to follow and an Idea how to pursue those game mechanics which advanced the speed and process of creating not only my prototype but also my game later down the line.
If I really did get “hard stuck” then I would take to the internet and research possibilities in what I could add or how I could fix something, however this method wasn’t always effective due to allot of game maker users using scripts instead of the process I was following.
I could of researched other games made by users within game maker that I could potentially “steal” from to get idea’s for my project.
How will this task help me to plan and organise my work on the current project?
During the creation of my prototype I encountered alot of issues such as bugs and glitches that occurred from my experiments as well as trial and error processes, this made me keep these in mind when creating my final product which in tern resulted in me encountering almost no bugs and glitches at all. The most common bug during the prototype is that of touching a platform would send the player character flying in a random direction, another was the ability to instantly kill all enemies after simply touching one of them which turned out to be a simple case of all the enemies where using the same object.
How did I apply my practical skills (include screenshots where relevant)?
I learnt many new skills and processes while creating my game, I learnt how to implement simulated gravity and collision into my game.
I also learnt how to add a player character, enemies and projectiles as well as basic movements for my player character.
I learnt to create a basic level with collectibles that once collected unlock the end goal, add a background and platforms and a end goal.
I learnt how to create a start and game over screens respectively as well as a completion screen and had it so that it transitioned from the start screen, to the game’s level, to then either the game over or completion screen.
I also added various other functions such as lives, a restart button, a exit game button and a moving backdrop/scrolling level as well as sounds/music.
bibliography for the sounds and music used are found at the bottom of this blog.
How effective were my solutions in solving interactive-based problem?
I was given the problem of creating a 2d side scrolling platforming game about Marie curie during the era of World war 2. The strengths of my project piece I believe is that the game at least worked accordingly, You encounter the start screen, press the start button, move through the level collecting clear pick ups, avoid the enemies and “kill” them, and reach the end goal completing the game. However The weaknesses are the lack of interesting mechanics such as moving platforms and enemies which made the game bland in comparison to others. The artistic style of the game ended up being that of a someones first time using MS paint with a basic mouse that attempted to showcase a war time setting but instead displayed a city that was engulfed in flames, zeppelins floating and soldiers firing at nothing, Marie curie also looks like a Blonde “skin head” wearing a wedding dress of sorts. With future projects as well as if I had the chance to improve this projects work I would most definitely try to improve the visual quality and portray the image I was meant to, have the player character clearly be Marie curie, the setting more clearly that of world war 1’s France and add more unique features to the game such as multiple levels, and new mechanics. In comparison to other games of the same type in just shy of being worthy of a flash game on some random website and many other people in the same class had much better work. I was partially inspired by games such as valiant hearts with it’s war time setting and how well it portrayed that setting and the difficulties that came with living in such difficult times.
final game music link
free music archive
Game Over Sound
jump and laser sounds are from bfxr
background music https://www.freesound.org/people/Plastikhuehnchen/sounds/317405/