This is a response to 5 Game Maker Clichés to Avoid. My intent is to provide some counterpoints to consider, not a refutation per se.
“Boxes & Circles Don’t Make Good Characters”
Agreed, but games don’t have to be about characters. Abstract games are a lot of fun, too. Of course, even abstract games need to have good graphics. Better do something really cool with that box if you want players to engage with your game and have a compelling experience.
However, it depends a great deal on what your capabilities and resources are. Good sprite animation is expensive. It takes skill, and time to master that skill. Not everyone has that at their disposal, and it shouldn’t stop someone from doing what they can with what they have. If you do it long enough, you’ll get good enough, or you’ll come into contact with others who have skills to complement yours. Many of them will want to be paid for their work, however. So if you’re not yet to a level where your games are generating revenue, it can be hard to attract a team of talent. And without a team of talent, it can be very hard to develop a game that will attract enough attention to generate any revenue. But if developing a well developed character is too expensive — by which I mean if it’s slowing down your progress or preventing it altogether — I say ditch it until it becomes affordable.
It can certainly add polish to a game to provide a well-designed character, but don’t let character development and emphasis on graphics take focus away from designing a solid core game play. For as long as videogames have been around, there has been an over-emphasis on the importance of graphics. Graphics make the strongest first impression, but it’s even more important to provide responsive, intuitive controls, a balanced system of rules, an appropriate challenge curve that neither frustrates nor bores the player, and an overall experience which compels the player to want to play again and try to do better than their last game. Graphics will oversell a poor game play experience, but players know when they’re having fun and when they can’t put a game down. If your amazing graphics draw more people in, you’d better have something to give them when they show up.
Perhaps the best situation is when your character design fuels and inspires your game play design. If you’re implementing character traits or behaviors, think about how those work within the game, to make them more than just dressing.
Changing the load screen and default icons requires a paid license, right? So I imagine that rules out a lot of student and amateur developers right there.
Well, if you’ve paid for the license, and want to be taken seriously, then you want to touch every aspect of the game you produce and make it “yours”. Including making your own icon and load screen.
That said, I’ve never played a game and said “Wow, they had such great progress bars!”
I think it’s a little sad and ironic that GameMakerBlog basically says that the key to making a good Game Maker game is to disguise it so people won’t think it was made with Game Maker. Game Maker is a decent platform for game development, and doesn’t get as much respect or recognition as it really deserves.
Sure, Game Maker has its issues and limitations, but many of these are due to it making compromises necessary in order to realize its strengths. It has a low barrier to entry compared to, say, C++ and OpenGL, but cannot offer the kind of performance that native code in a low level language can. But Game Maker does in fact serve its intended purpose very well, and in the right hands can yield amazing results. “Looks like it was made in Game Maker” really means “by an amateur who doesn’t know what they’re doing” and such a person working with other tools likely often doesn’t even get their code past the compiler.
So the large number of low quality games made with Game Maker is really a mark of success, after a fashion. After all, if you have a little limited success early on with your first attempt at making a game, it’s more likely you’ll continue to try to get better than. Before you can make a great game, you have to start somewhere, and Game Maker gives move aspiring developers their start than probably any other platform. Learning to do it better will happen in time, but once you’re there, I don’t see anything wrong with showing a little pride and/or gratitude about the tools that helped you get there. Maybe some great games that leave in the placeholder load screen would help enhance Game Maker’s reputation.
GameMakerBlog claims that making a game in Full Screen is easy and requires only a few lines of code. I would say that setting the game to run in fullscreen mode is easy, but getting that game to look right and perform well at any resolution in fullscreen is not as easy.
It’s possible in Game Maker to force the Display to a resolution the programmer decides the game needs to run at, but a lot of players will not like that. Having the program take over the display settings and change them is jarring and can be alarming, and if it doesn’t reset things back to how they were on exit, is extremely annoying.
Beyond that, if you make the decision to support multiple resolutions, you have a lot more work cut out for you. You must make decisions. How do you handle larger resolutions screens? Show more of the game? How do you size your rooms? Do you just stretch and scale them up for larger size resolution monitors? Do you use a black border? Do you dynamically re-position your HUD and re-position objects and tiles? Do you create static rooms to support every resolution you want the game to be able to play at?
My AutoFullScreen extension helps with the coding for setting the game to run in fullscreen mode and setting up a view sized to the display dimensions, but you will still need to decide what to do with your rooms, and possibly write some functions which change your room sizes on the fly, or else generate static rooms for every room in your game at every resolution.
What players really deserve is customizable settings. And Game Maker does not provide the developer with anything out of the box that you can just drop in to a project and be done with it. I would love it if I could just drop in a generic, skinnable room that provides basic graphics and sound controls, and maybe a set of widgets that allow other configuration settings, like changing the default control mappings, resetting high scores, and so on, a trophy room for achievements, and so on. That would be so nice.
Instead, the developer has to devote resources to building a “Settings” room, and then figuring out code to change all the relevant settings they want the player to be able to customize, and figure out a way to build useful interface widgets that the player can manipulate, then skin it all to make it consistent with the graphical theme of the game’s art design. It’s made even more challenging by the fact that Game Maker has no built-in user controls that you can simply drop into the room and put a little code into. You actually have to create sprites for sliders and buttons and checkboxes, and program them from generic objects. It’s *very* time consuming compared to what you get with other development environments.
Learning how to do all of this is a great exercise in learning how to program, but it’s such a common task (pretty much EVERY game needs this) that Yoyogames really ought to build in more for the developer to simply use rather than devote their resources to thinking about the problem, designing a solution, trying to figure out everything you need to figure out to do it.
This one I agree with entirely. The trend is emblematic of what young kids do when they get together and work on things. In part, it’s just learning by mimicry of what they see adult-run companies doing. Sometimes maybe it *is* adults, just trying to get a small design studio established but failing because that’s what happens 99% of the time. But it is annoying that these failed attempts can linger around on web forums and so on. It’s enough to make you wish that Yoyogames would provide a “kiddie pool” for students who are just starting out with learning programming, which they kindof do by providing a “Beginners” discussion board. Of course, message boards have the same policing problems that all discussion boards do.
Beginner questions should relate to questions developers have about using Game Maker, not a “help wanted” board for people looking to collaborate to find each other. One solution would be to provide such a board, and move the discussion there. Set the board up so that posts only remain visible for a set length of time, so that abandoned efforts to start up something don’t clutter the board.
In general, Yoyogames should try to find ways to help real efforts at start a game development studio or team succeed, rather than complain about all the failed efforts, abandoned projects, and people who are “doing it wrong.” Start by identifying what successful design teams have done to get off the ground and self-organized, and provide that information to help everyone, and maybe provide access to tools that will help facilitate that effort.
It’s not surprising that typical Game Maker games are small. Up until now Game Maker has not facilitated team development, and a solo developer can only do so much. As well, unless you really know what you’re doing with how you architect your objects and code, Game Maker projects tend to be difficult to scale up into larger games. Since all variables in Game Maker are “public”, there’s no discipline enforced on the developer by the tool to code in ways that keep things organized and manageable. “Spaghetti code” projects tend to result, and this hurts maintainability. Anything that hurts code maintainability will also make it harder for projects to grow beyond a certain point.
Beyond that, if you finish playing a game and feel like it was too short, the game developer has succeeded at leaving the audience wanting more. Sequels are the solution here. For a solo developer to invest a huge amount of time into developing a large game without first putting something out there to get a feel for how well it will be received is not a good idea.
It’s crucial, though, to be able to follow up the teaser with something fresh quickly. Failing that, some kind of level editor or player-moddable game can sustain interest. Unfortunately, Game Maker doesn’t lend itself to creating games that are easily moddable in this way. It’s certainly possible for this type of functionality to be developed, but it requires an advanced level of Game Maker knowledge, and again, a lot of time. Make this easier and put it within reach of Intermediate Game Maker devs, and perhaps we’ll see more of it.
2 CommentsAdd a Comment
Interesting view here, I’m excited as to how much discussion this is starting to create because I think it helps people to really think hard about things that maybe weren’t considered before.
Though I feel like you are assuming the developer is technically challenged here.
For example, I can assure you though that full screen is not particularly hard. There are pre-built functions which allow for screen size detection (which can be turned into a variable for room / view changing) and you can position GUI elements relative to any screen size by adding a few fancy extras onto your X and Y co-ordinates. The rest is a matter of making resources sharp enough to be displayed right. on most screens (GM can handle a lot of the rest).
Unfortunately, whether you like it or not, there is a stigma attached with Game Maker, and you will have a hard time getting your work around if you leave things like default loading screens in that give the game away. I myself once worked on a physics sandbox game, and people immediately questioned if it would be worth trying because “its probably just another Game Maker game like the rest”.
Please note the original article may not represent the feelings or views of Game Maker blog as a whole.
I tend to assume all developers are technically challenged, just at different levels, according to their ability. I assume a technically challenged developer becauase a lot of Game Maker users are beginners, or are non-programmers. Cliches are a hallmark of an inexperienced writer who has yet to find their own voice and master their craft. And also of a lazy writers who isn’t thinking too much about what they’re doing, and is falling into habits.
Part of why these cliches exist is because there are so many Game Maker devs with low skill. A big reason why there are so many Game Maker devs with low skill is because Game Maker is a great environment for low-skilled devs to start with. It’s a victim of its own success.
By pointing out the cliches and encouraging developers to improve their games to get past them, we’re helping to encourage low-skill developers to become more seasoned. But it really should be no surprise why there’s so much low-quality stuff built in Game Maker. It’s how we learn so we can get to building the impressive stuff.
But I think these game cliches, at least, are more about design choices than they are about weak technical skills. Of course, there’s a relationship — a developer with a more limited set of technical skills is bound to be more limited in what they are able to build from their designs, and will tend to make compromises when they find it difficult to figure out how to build something to work the way they envisioned it.
As far as that goes, it’s useful to ask: what’s bad about a cliche? Is it just that it’s overdone and trite and evidences lack of deep consideration in the design and concept of the game? Or is there actually something intrinsically bad about the cliche? Perhaps a lot of cliches exist because they are actually strong design choices. We might choose to call them tropes, instead, then. The first three cliches from the original article are definitely technical matters, and lack of experience/skill is their root cause.
That said, it’s possible to make the choice deliberately, and to do so because it helps you make a strong game, despite employing a cliche here or there. Masters can break the rules. And even if you’re not a master, if your focus is elsewhere, employing a little laziness can be OK.