Tag: YoYoGames

GameMaker Studio marks 1st anniversary

YoYoGames is celebrating the release of GameMaker Studio, one year ago today. With all the updates and improvements that have been made to the product since the 1.0 release, it’s surprising that it’s only been a year since it came out of beta.

I myself have not been a GameMaker user for very long, either. I began using it in September 2010, with version 8.0. In that time, I have found it to be the easiest to learn development tools that I have ever used. It has enabled me to make playable games with features that I would not have thought myself capable of building, and then rewarded me as I gained confidence that I could become a better programmer than I had previously dared to dream. And this has allowed me to pursue a long-dormant dream that I’ve had since I was six years old and experienced my first videogame: to design and build fun, playable games. As a result, life is better than ever. For this I have been very grateful.

Happy birthday, GameMaker Studio!

GameMaker: Studio Master Collection discount for Professional licensees

As covered by GameMakerBlog, YoYoGames has announced a special 60% discount sale for developers using GameMaker: Studio Professional only, allowing them to upgrade to Master Collection for $199. The special discount extends through 3/31/13.

This limited-time special offer is apparently in response to a situation affecting Professional licensees who had no cost-effective upgrade path to allow them to convert their existing investment to a Master Collection license. Following the recent release of the Ubuntu build target module, a paid upgrade for Professional users, there were complaints of unfair pricing affecting Professional licensees.

The big advantage for owners of a Master Collection license is that any future Game Maker build targets that happen to be released are automatically included as free updates, while GM:S Pro licensees have to pony up more cash for each piecemeal upgrade, thus making Pro a much more costly way to get all the features available in the Master Collection. As the Master Collection grows (and we don’t really know how much more, or if, it will grow), this disparity will only increase.

While this is a fine gesture on the part of YYG to respond to Pro license holders who asked for cost-effective upgrade path to the Master Collection, I still think it makes more sense for YYG to make it part of an ongoing pricing strategy, similar to the “Anytime Upgrade” option Microsoft made available to Windows 7 users, which would enable them to upgrade to higher product tiers for the difference in cost from their present tier, at any time. Hopefully YYG may yet make such a change to their licensing model — if you’d like to see that happen, I encourage you to send them feedback.

For now, this seems to be a good opportunity (and perhaps the only one) for any serious GameMaker Studio Professional users who may want to upgrade to the Master Collection.

DRM bug afflicts legitimate Game Maker Studio licensees

Game Maker Studio users should be advised of a potentially disasterous bug that can permanently disfigure their graphical resources.

I have (so far) been unaffected by this issue, and am unaware of what triggers it or who might be affected. From reading the story over at Gamemakerblog, it seems that it may have to do with Steam, but details are still unclear.

This is a good time to re-emphasize the importance of good backups. If you don’t have something to restore from, it’s sad, but you really only have yourself to blame for not having better backups.

GameMaker Studio even incorporates source control features that allow you to store your project resources in a Subversion repository. Anyone who uses subversion with their GameMaker projects should be pretty safe, as long as they have a version of their sprites checked in prior to the images being corrupted.

As well, it’s a good practice to maintain your graphics resources outside of your gamemaker projects. While useful, the built-in sprite editor is rudimentary, and many graphics artists prefer to work in a more robust professional quality tool, then import into GameMaker. If you work this way, you should still have your originals intact, and won’t be as badly affected by this problem.

I really hope that this incident will spur Yoyogames to look at its anti-piracy philosophy and find other controls that they can use to curb unlicensed use of the features that they reserve for paid licensees.

GameMaker Studio support for Windows 8 is here

YoYoGames announced today that GameMaker Studio has just added support for Windows 8, and will allow publishing of games to the Windows Store. Moreover, this is not a module that you’ll need to pay extra for; it’s included with the Standard editionand up for free.

I’m presently still skeptical about Windows 8, and plan to be staying on 7 as long as possible, hopefully transitioning to Linux/Mac OS X when the time comes, but I’m always happy when YYG provides GameMaker devs with a means to make money.

It’s CRAZY how quickly these developments have been coming from YYG. They’re really in high gear lately.

YoYoGames Announces GameMaker on Steam

This is some big news. YoYoGames is now distributing GameMaker Studio on Steam.

Apparently, this also will enable GameMaker developers who use Steam to release their games directly on Steam in the future. I have to look into this; I’ve been wanting to find a way to get games into the market for a while now. This might make it a whole lot easier

Update: It is possible to distribute games via Steam, through the Steam Workshop, but not for money. Sadface. :(

Come on, YoYoGames/Valve, let people who create content with your tools derive income from that content! It will incentivize content creation! It’s a bit strange to be selling a $500 professional software development suite to game developers and then make it more difficult than it needs to be to generate income with it.

GameMaker HTML5 – deeper impressions

For Ludum Dare 24, I worked on my project in Game Maker: Studio, and did most of my development work targeting HTMl5. I produced a Windows build as well as an HTML5 build, and have spent a lot of time enhancing the game since the compo deadline.

This has afforded me the opportunity to become much more familiar with GameMaker’s HTML5 shortcomings, so it seems like a good time to follow up on my initial impressions from the January beta. While most of the basic features are solid, there’s still a lot of bugs, unsupported features, and inconsistent implementations in the HTML5 runner. Unfortunately, it adds up to make the HTML5 module a bit lacking for serious game development.

Don’t get me wrong — it’s still very possible to make a decent, playable HTML5 game with GameMaker Studio. Just, if you’re hoping to be able to do absolutely everything in HTML5 as you can in Windows, you’re in for a long wait. While much of the framework runs equivalently, there are a lot of minor differences. And while these are minor details, producing a polished, professional game is all about minor details, and getting them right.

I still think there is a lot of promise for HTML5, but W3C, WHATWG, and the major browser developers have to pull together to solidify the technology standards. YYG can’t do some of the things with the HTML5 runner that they currently do in the Windows runner, without this happening. To their credit, they have been releasing updates rapidly, patching bugs almost weekly.

Unfortunately, this means that HTML5 games built in GameMaker Studio are not going to be as pretty or as polished as Flash can be, at least for the foreseeable future. Of course, Flash has many of its own problems: with the rise of the open HTML5 standards, Flash’s future is in doubt, and it seems to be in decline, so it’s not like it’s a great platform to pick up right now if you’re not already well versed in it. Unfortunately, the usurper isn’t quite ready yet. The W3C recently announced the HTML5 recommendation will be finalized in 2014, but even once that has been accomplished, it’s still up to the browser developers to support the standard consistently and completely — something they were never able to accomplish with HTML4. This points to HTML5 being a less solid platform than game developers might hope for.

Here’s some of the shortcomings I ran into while developing Karyote.

Color blending

The Game Maker HTML5 runner doesn’t support all the color blending modes that the Windows runner does. Color blending effects really make games look great when done well, so this is a huge disappointment graphically. I submitted a bug report for this and YYG closed it saying they can’t do anything to address it until the web standards catch up.

Surfaces

Surfaces kindof work in HTML5, but I have a major problem with my implementation in Karyote. Somehow, the game broke when I added a drawing surface, such that in normal run mode, most of the objects in the game don’t draw/don’t exist. I don’t have any understanding why, either.

It works fine in Windows, but in my HTML5 build it doesn’t work unless running in debug mode. The problem only exists when the game is not running in debug_mode, so debug mode is not helpful for me to trouble shoot with. In fact, the running version that I have up of the enhanced build currently is running in debug_mode, with the debug console hidden with CSS.

Creating sprites – no control over collision masks

This was my first game where I implemented procedurally generated sprites, and they work great in my Windows build, but not in HTML5. For some reason, when I create my sprite in HTML5, they don’t get a correct collision mask, and end up with a mask that is much too large, resulting in poor hit detection. It seems the collision mask is set to match the bounding box of the sprite, rather than the image. In the Windows build, the sprite automatically gets an accurate, precise collision mask.

There’s a gml function sprite_collision_mask() which is supposed to allow me to set the collision mask, but this doesn’t work in HTML5, either. In reading up on the issue, I learned this is a bug, and there’s presently a workaround available by using sprite_duplicate(), but this approach apparently can cause excess memory consumption and/or performance issues.

Drawing round objects are approximated

If I draw_circle() in gml, I don’t get a true circle. I get a polygon which has enough sides to reasonably approximate a circle, as long as the radius is sufficiently small. For even a moderately sized circle, you can see the flat edges and corners. Smooth, scalable vector graphics like you’d expect to see in an SVG or Flash animation don’t seem to be implemented yet.

Update: There’s a gml function, draw_set_circle_precision(), which can be used to set the number of sides in your circle-approximating polygon between 4 and 64. The more sides in your pseudo-circle, the slower they are drawn. This still isn’t a true circle, and will still have smoothness issues when scaled very large, but it’s better than nothing.

Conclusion

I still see much potential for HTML5 games, but until these issues have been fixed, it’s going to be hard for GM:Studio developers to equal the graphical quality of a good Flash developer. HTML5 is the heir apparent to replace Flash, but it’s still emerging and has yet to establish itself as a mature technology, and it will likely be a few years before this will happen.

Meanwhile, Flash is not the best game development platform, either, and it’s not the best web application platform, and while it’s under steady assault due to the mobile market spurning it, it’s still a more mature technology, and there are game development frameworks for it. While I can’t really recommend Flash to a new developer, if you’re a seasoned Flash developer you may want to stick with Flash for web browser games for a while longer yet, unless you really want to reach the mobile device market yet don’t want to do native development for some reason. But really, the answer for mobile devices is to do native development — the difference between a native Android or iOS game and what can be delivered through HTML5 is like night and day.

Or, if you’re really looking to make web browser games, you may want to take a look at some of the competing technologies, such as Construct, or Unity 3D, native HTML5, or something else.

GameMaker has some definite strengths, and is making steady strides, but the battle is far from over and there are other legitimate contenders in the market.

If you use GameMaker for other platforms, the HTML5 module is still worthwhile, but you’re not going to be able to do absolutely everything you want to be able to do with it. Buying it now still gives you a lot of capabilities, and if you haven’t yet, you’ll probably want to get started now in order to get familiar with them so that you’ll be ready to deliver robust, high quality games once the technology catches up. Waiting until the platform is perfect before jumping in is just not a good idea, as you want to have as much of a head start as you can get to sharpen your skills.

You’ll need to HTML5-ify a version of your project to work around some of the limitations of HTML5. Use your source control and fork a branch for your HMTL5 customizations and workarounds.

An HTML5 game has a lot of potential to be a good way to entice players to try your game, and may lead them to download your other builds, by providing a limited demo that runs right in their browser. And there are plenty of games that you can make right now that are “fully featured” as long as you don’t require the things that HTML5 isn’t capable of delivering right now. But if you want something with a lot of eye candy, the equal to what you can currently do on your Windows GameMaker projects, it’s just not there today.

Game Maker Studio 1.1 released

Yoyogames just released Game Maker Studio 1.1. It looks like there are a lot of positive new developments happening with the platform, and I’m really excited about a few of them. Lots of good new features!

New Pricing

YYG has changed the pricing structure again. The exiting news (for those who may have been reluctant to try Studio due to its higher cost) is that there is now a free edition, which gives beginners a way to get in to try things out. Unfortunately, Studio Free is more feature-restricted than the old Game Maker Lite. The 8.x line is still available for download and purchase, at the same prices as before, but the old version is a bit further deprecated now, lacking prominent position on the YYG homepage.

The new Standard Edition is still just $49, no different than Game Maker 8.x Standard. Professional remains at $99, with the same price for the additional modules that you can buy separately. Or, if you want everything all at once, you have the option of spending $499 for Master Edition, which saves you $99 over the cost of Professional + all the additional modules.

I haven’t heard whether they’re planning to allow early adopters of Professional to move to Master Edition at a discounted price yet, but even if they don’t it’s nice to see the price coming down.

Another nice freebie is that Professional allows you to test Android apps, even if you don’t have the license for the Android module. I’m particularly looking forward to finally getting into mobile development. I had not yet spend the money on the mobile app modules, so the free testing on Android is a great thing for me to get my start on Android.

Target platforms

Gone from the site is any mention of a Symbian module. I’m assuming that since even Nokia is giving up Symbian OS and has gotten in bed for better or worse with Microsoft’s Windows Phone 7, we may in time see a module to allow Windows Phone as a build target. [Update: on 9/20/2012 YoYoGames announced that Game Maker Studio will target Windows 8 and Windows Phone 8 platforms.]

I’d like to voice a desire for a linux build target module. Since Android and OS X are both based on unix, I’d hope that extending support to Linux would be feasible.

Developer Features

The new audio engine and room designer are welcome, and I’m interested to see what they offer. One of the audio limitations in Game Maker that I’ve wished to overcome is generating sounds procedurally. I see a lot of potential in musical games where the game objects can generate different tones and pitches depending on what’s going on in the game. Whether the new audio engine allows this or not remains to be seen — I haven’t had time to play with it yet.

The room editor improvements are always good to see, as well. I’d like to see YYG continue to develop the editor into a more usable level editor, with faster UI access to the different objects and tiles, so that building rooms becomes less tedious.

I’d also really like to see them provide some built-in room templates for “boilerplate” things such as the title screen, configuration screen, achievements and high scores, load/save screens, etc.

The really exciting new feature is the Developer’s Portal, with its analytics and monetization features. This will make it far easier for independent game developers to realize a return on their investment in the more expensive Professional license, and hopefully will help quell criticism of the higher pricing. Reducing the effort needed to make money with Game Maker is huge. I’m really looking forward to delving into these features and learning all about them.

What else could I wish for?

Anytime a new version gets released, I think about features I’d like to see. My current list:

  1. An interactive GML console. It’d be great to be able to write a line (or block, or function) of GML code and execute it in a console just so you can confirm that it does what you’re expecting quickly, without having to build and run a project. The instant feedback would speed up my development.
  2. Drag n Drop to GML converter built in to IDE.  Drag and Drop actions are the way newbies learn Game Maker. I also use them when I’m trying to throw something together quickly for a proof of concept, because it’s handy. How handy would it be to right-click on my Event and select a “Convert DnD to GML” command, and have it automatically convert those Drag and Drop actions into a single Execute GML Code action?
  3. Linux built target. I’d really like to see my Game Maker projects running on native linux someday.
  4. A cross-platform Game Maker IDE. YYG has announced that they’re working on the Mac version of the IDE. I’d like to see a Linux version at some point, too.
  5. A robust GML pause() function to allow for easy, painless implementation of pause. Or a family of functions that give a variety of approaches to pausing your game. Or maybe even a Pause event, so you can easily define what your objects do when the game is paused (I envision telling objects to stop their collision event handlers, but continue their drawing/sprite animation, stop making sounds but make the background music volume reduce, dimming the whole screen while displaying a pause message or pause menu.) Hmm…
  6. Room templates (mentioned above) to make all the typical non-game screens (title screen, configuration screen, highscore/achievements screen, etc.) easier and faster to configure.
  7. User Control Widgets — a set of skinnable, extendible UI widgets to make it easy to make buttons, text boxes, pulldown menus, listboxes and all the other controls that make up a UI. Just wrap up Qt or GTK+ and be done with it:)
  8. Expanded Object classes. Generic do-everything Objects are great for their flexibility, but it gets tedious re-implementing the same types of objects again and again. Developing generic solutions that you can import into your projects as needed takes time and, while a good way to really learn programming and the Game Maker framework, is hard to get right. It’d be really great if there were some common subclasses of Object built right in to Game Maker, for things like platforms, pickup items, particle systems, object spawners, bullets, and so on, to make game development even faster than it already is.
  9. HTML5 integration with popular CMS platforms such as WordPress, Drupal, Ruby on Rails, etc. I’d like to be able to present an HTML5 within a wordpress page or article without the need for iframes, and to store the project as assets in my wordpress media library somehow. And possibly other things.
  10. Better Drag and Drop hover text. If you use DnD actions in your events, you’ll know that when you hover over the action, a tool tip will appear telling you what it is doing. There’s room for improvement here, in principle it should be possible to word the tooltip text in such a way that it isn’t necessary to open up the action to see what it does — only to edit. I’ll have to remember to post an example later to make this clearer.
  11. Non-modal edit windows on Execute GML Code actions. It’s a pain not to be able to switch window focus when editing a Execute GML Code action. Script windows are not modal, you can freely switch between them and have more than one open at a time, so these should be the same way.
  12. A pony. Everyone wants a pony.

Game Maker HTML5 and WordPress

Site traffic on the WordPress portion of csanyk.com is up due to Ludum Dare. According to my Jetpack stats counter, got about double my usual visits on Saturday, mostly as a result of posting my alpha build of Karyote. Traffic yesterday was about at the same level. It’s too early to know whether the increase in traffic will be sustained or not, but I’d expect there might be a small bump with a long tail.

This does not include hits of the actual Karyote game url, which is not hosted within my WordPress site. I haven’t looked at the awstats numbers yet, but I’m kindof curious to know many people are playing the game now.

I’d like to get my Game Maker HTML5 games better integrated to WordPress, but (as of the last time I played with doing that, during the GM:HTML5 beta, at least) it is tricky, and I haven’t gotten it working right yet.

Game Maker Studio auto-generates a basic HTML5 page for your game when you build it, but it’s not a simple matter to cut and paste the necessary code from that page into a WordPress page.

YoYoGames should probably think about providing CMS integrators so that people can have an easier time packaging their games in a way that allows them to integrate with WordPress, Blogger, Drupal, Django, and other CMS frameworks.

While I’m wishing, it’d also be cool if Studio has a feature allowing you to modify the template used to generate their HTML5 page. That feature could exist for all I know, I need to get more familiar with the HTML5 features of Studio.

Hopefully if they don’t, at least the dev community will step forward and address it.

Game Maker Studio 1.0 Launched

Today YoYoGames announced the launch of Game Maker Studio 1.0. This long-awaited release finally gives Game Maker developers the ability to build games that run natively on Windows, OS X, iOS, Android, and HTML5. I’d heard some time ago that there was a Symbian module in the works as well, but I don’t see any mention of it in their releases — I doubt that it will be missed. Also announced today is that Game Maker HTML5 is no longer a standalone product, and has been folded into Studio.

I participated in the HTML5 beta as well as the Studio beta, and reported a fair number of bugs. While I’m enthusiastic, I think it remains to be seen how successful the new Studio will be — the impression I’ve gotten from my limited work in HTML5 is that the differences of each platform impose constraints on a unified project, and often during the beta I found that stuff that worked in a Windows build didn’t in HTML5. Hopefully that’s all just part of the beta. I definitely like the direction YoYoGames has been headed in, and as long as they execute, it should be a good time to be a Game Maker developer.

The highlights of Studio:

  1. Multi-platform build targeting
  2. Source Control
  3. new built-in Physics features

Game Maker’s proprietary language, GML, is going through some redesign as well, but we probably won’t see the full vision for a time, until Game Maker 9 is released. With Studio 1.0, it seems that YoYoGames has started deprecating certain functions, in order to drop Windows-specific stuff and embrace a more platform-agnostic approach, which should mean that developers won’t have to worry about whether a given instruction makes is supported or makes sense on the OS they’re targeting. Hopefully this will encourage cross-platform application releases and make them the norm rather than the exception.

With the launch, YoYoGames announced pricing, and it’s a little different from what I expected. The base Studio Core (giving you Windows and OS X build capability) is $99. Considering that Game Maker Standard was $40, roughly doubling the price to give you access to OS X seems reasonable.

The HTML5 module is an additional $99. $199 was the original price of HTML5, so for $198 you get Studio with the HTML5 extension. I think a lot of Game Maker users were shocked at the price jump, but when you consider how cool it is to have the capability of distributing your games through the web with no extra plug in or extension needed to run, it’s awfully nice.

The mobile platform modules are another $199 each for OS X and Android. This means the full Studio suite will run a developer almost $600, or 15 times what it costs for Standard. YoYoGames justifies this by saying that these are optional modules for professional developers, and I’m sure it costs them lots of money to develop the runner for these platforms. It’s a bit odd to think that for just $200 you can reach 3 major platforms, but to get another two platforms it triples the price. In any case, the idea seems to be that the ease of selling on the mobile markets makes it worth the cost of the tools, and I’m glad they tiered their pricing rather than force everyone to pay full price all or nothing. Starting out at $99 or $200 is a lot more reasonable, and buying the mobile modules later takes a bit of the sting out of the price. Compared with Unity Pro, which is $1500 for its base, and an additional $400 each for iOS and Android, it’s still quite inexpensive as a professional developer tool.

Game Maker HTML5: First Impressions

[Editor’s note: Be sure to read the follow-up to this article.]

I’ve only been a Game Maker user since August 2010, but I have found it very easy to pick up and learn quickly — so much so that by February 2011, Packt Publishing noticed my blog and asked me to contribute technical review on their upcoming Game Maker Cookbook. Game Maker has its quirks, but it has one of the gentlest and most accessible learning curves of any programming environment that I’ve tried so far. It has its detractors, and it does have some weaknesses, but overall I like it a lot.

YoYoGames is giving away licenses for their still-beta Game Maker HTML5 for participants in Global Game Jam. Kudos to them. What a great way to support indie game developers! Considering that the beta for GM-HTML5 is $100 for a license, and Global Game Jam is free, this is a rather good deal. I happen to be participating in Global Game Jam this year, so it provided me with a code that allowed me to download a copy of the software for use with a time-limited license key.

Wasting no time, I spent the rest of the evening producing a quick demo game to get familiar with the new program, and learn how it works. I was able to build a mostly-working Space Invaders clone in just a few hours.

Here, then, are my thoughts on the product so far: (more…)