video games, programming, the internet, and stuff

YoYoGames announces GameMaker Studio 2 Console build targets, Ultimate Edition

Coming with the release of GMS2.0.7, YoYoGames have released Console modules to allow developers to build for Microsoft XBox One and Sony PlayStation 4. There is as yet still no module to allow development targeting the Nintendo Switch.

The cost for these console development modules is $800 for 12 months. Each.

Additionally, customers who purchase a console module must be a registered developer program for the console in question.

Or, for “just” $1500/year, you can subscribe to GMS2.0 Ultimate Edition, which seems to be a response to popular demand to bring back the “Master Collection” package. Ultimate Edition is an “everything and the kitchen sink” bundle that includes any future modules that YYG may release for no additional cost. The price of Ultimate is much higher than the cost for Master Collection , however, and is subscription-based, rather than a perpetual license. GMS1.x Master Collection was originally introduced at a 1-time cost of $500, later $800.

Readers may recall that I predicted that YoYoGames planned to move GMS2 to a subscription model, and that their license activation was in fact already a de facto a subscription model, and today’s announcement bears out that assessment.

YoYoGames confirmed that the existing modules (Desktop, Mobile, HTML5, UWP) remain a permanent license that you pay for once. However, it’s been YoYoGames’ practice in the past to charge again for the product when it hits the next major release number. Accordingly, YoYo could, if it wanted, release GMS3.0 next year, and charge everyone for an upgrade to that, and drop support/updates for 2.x, effectively forcing everyone to pay for another upgrade at that point. It’s a good bet that at some point they will switch to a subscription-based model at all tiers.

YoYo seem to be pricing themselves out of the market with this announcement. While it’s not unreasonable to charge a premium for the console build targets, the price points announced today do not compare favorably with the competition. Unity3D is also subscription-based, now, but you can get full access to all Unity3D build targets for free, with an income cap of $100K. Game Developers earning revenue over $100K/year from their games must upgrade to Plus or Pro tiers, at $35 or $125/mo — the $125/mo Unity Pro tier matches the cost of GMS2 Ultimate.

The Unity3D IDE is Visual Studio, an industry leader, and the language is C#. By contrast, the GameMaker Studio IDE and GML language are quite limited compared to the capabilities of Visual Studio and C#.

It’s likely that most developers who are in the Microsoft XBox or Sony PlayStation developer programs are already experienced professionals accustomed to professional-quality, industry standard development tools, so it’s hard to see why they would want to take a step down and use GameMaker when they could use Unity3D, or Unreal, or some other tool at less cost. GameMaker Studio 2 Ultimate is priced comparable to Unity Pro, but the capabilities and tools around Unity are much stronger and more flexible.

AtariBox hype, speculation

I’ve been around long enough to know how the Hype Machine works with videogame launches.

First, there’s a teaser announcement. It doesn’t tell you anything, but it’s designed to make you very curious, excited, and speculate about what it could be. The AtariBox website currently has a simple video showing the famous Atari Fuji logo, and the suggestion that a new game console is coming soon.

Next, there’s a bit more information leaked to the right media outlets; Joystiq, Kotaku, Polygon, etc. A few more bare details are leaked, but mostly as unconfirmed rumors. This creates a lot of buzz among the most dedicated followers of games. Gamers are incredibly demanding and fickle, or else ultra-apologist fanboys who will eat up (and forgive) anything. Everyone starts talking about what they hope the new product will be.

Gradually, more mainstream media starts to pick up on the story, and reporting on it. We’re at that point now.

I read the Forbes opinion. The author’s take on it is that gaming consoles have become indistinguishable from each other, there’s too much sameness between Xbox and PlayStation, so (he thinks) maybe Atari can make room for itself in the market by differentiating itself… somehow.

And it’s true. In the old days, there was a lot more variety in game consoles. The hardware developed by various big players and also-rans (alsos-ran?) was widely divergent in its engineering and capabilities, especially in terms of how they handled graphics and sound. Most systems were built around one of two chips: the MOS 6502 or the Zilog Z80, but had vastly different approaches to generating sound and drawing pixels to the TV screen, resulting in characteristics that could not be replicated by any other game console, meaning that each system necessarily had to take a unique approach to implementing a port of a given game design, resulting in vastly different experiences for the same title on various systems (when a title was even released on multiple systems, which wasn’t always a given).

But as engineers iterate, designs gradually converge on what works best. And in 2017 with the launch of the Nintendo Switch, we’re currently at the 9th generation of game consoles.

The thing is, the old consoles were different because their hardware was very different, AND because games were coded in ASM so that they could get every last bit of the very limited hardware’s capability. Neither of those is true now, nor will it ever be again. Computer hardware is extremely expensive to R&D, so open, commodity architectures that are well known to developers will be favored, leading to a convergence in hardware. Games are programmed in high-level languages so that the same code runs on multiple platforms. The result is uniformity.

No new modern console will support some non-standard resolution or unique color palette that will give their games a look uniquely its own. It’ll be 32-bit RGB color, 1080p or 4K, 60Hz or better. Controllers may vary, slightly, but the fact is if a game cant sell on multiple platforms, it won’t get developed (except by Nintendo). So having a unique controller only means you’ll secure a small segment of the market for yourself, while conceding the bulk of the market to games developed to more common/standard controllers. That’s what Nintendo’s approach has been since the Wii. And while NIntendo was successful with the Wii, they stumbled with its follow-up Wii U, and most people believe that Nintendo are only able to continue to be successful on the strength of their first-party IP that they keep exclusive to their platform.

What does that leave Atari? If they think they can go toe to toe against MS and Sony, they’re dreaming. Atari’s R&D and innovation more or less stopped in 1983, despite the last gasps the Lynx handheld and Jaguar console represented. Atari does have some strong IP in their arcade classic titles, but these have been re-released and re-hashed probably on the order of a dozen or more times already, mostly as nostalgia bundles that have been put out for every next-gen console since the SNES, occasionally as “reboots” or “sequels” that never seem to recapture the original magic.

The Ataribox *could* be a cool console, if it embraces retro. I have no interest in a 9th-Gen game system just because it happens to have the Atari name on it. What I *am* excited about is the possibility of a “what if” console, where imaginative game developers do a kind of speculative retro-future take on where 8-bit style games that Atari were known for in the 70s and 80s could have gone — a bit like what steampunk is to science fiction, the Ataribox could be to modern-retro gaming. Think an graphics processor constrained to 8-bit index color graphics, driven by a modern 3+GHz CPU with gigabytes of RAM instead of a few kilobytes, and beautiful (but limited-palette, low-fi) graphics without the sort of severe limitations such as sprites per line, etc.

That’s kind of what I hope it turns out to be. I have no idea, but that would be cool and truly different. Not just another Xbox/PS with a Fuji logo, please.

A Pitfall III that looks and feels like Pitfall I and II, but has all kinds of cool new challenges would be kind of awesome. (Of course, we already have Spelunky… but that’s just it, there’s a ton of retro-inspired modern indie games that could feel right at home on a modern retro console. A few years ago, I had high hopes that the Ouya would be that console. I still think the concept has merit, but whether it can survive and thrive in the market is largely in doubt.)

The thing is, there’s no reason to design special hardware constraints into such a system; a designer can voluntarily impose any such constraints on themselves to produce “retro style” games. That’s what we do now, when we want to.

I’m interested in seeing what the AtariBox is, but my enthusiasm is held in reserve. Why? Simply because at this point we know nothing about it, and because everything about the history of the videogame industry strongly suggests that it’s unlikely to succeed at a level needed to support a large company, and small companies tend to fail.

AtariBox, RetroN 77 teasers 

In the past few days, I’ve become aware of chatter about two potentially exciting new bits of hardware for Atari 2600 fans: Atari’s AtariBox, and Hyperkin’s RetroN 77.

Atari (well, the company who now owns Atari’s trademarks) has scant information about the AtariBox. Beyond the name, we know basically nothing about it so far.

RetroN 77 is a new console from Hyperkin, which is designed to play real Atari 2600 carts, apparently through emulation via the excellent open source Stella emulator, with real controllers, using the same ports as the original, so compatible with 3rd party Atari controllers, and outputting 1080p over HDMI.

Since I know nothing about the AtariBox yet, my early excitement is for the RetroN 77, but that could easily change. Hopefully Hyperkin will do the venerable VCS justice for the HDTV Age.

My hope for the AtariBox is that it will be a retro-inspired platform that caters to indie developers who want to make games in an old school style, that look like they could have been at home in the late 70’s/early80’s, albeit not strictly constrained by the hardware limits of that time. Think what Shovel Knight was to the NES; I’d love it if AtariBox were a platform for the equivalent of such games for the Atari 2600/5200/7800/400/800/Intellivision/Colecovision era of home videogames.

YoYoGames: GameMaker Studio 1.4 sunset annonced for 2018

Today, YoYoGames announced that GameMakerStudio 1.4 support will sunset in 2018.

Over the next 14 months, until 31 July 2018, we will continue to mend major issues and support platform updates for Studio 1.4. After the 14-month period, Studio 1.4 will still function normally however, we cannot guarantee it will remain compatible with every platform’s future updates.

While this day has been expected to come since the release of the 2.0 beta back in November 2016, this is quite a bit sooner than expected. YoYoGames support for the 8.x version of GameMaker continued for years after GameMakerStudio 1.0 was released, only ceasing very recently.

It’s not entirely bad for the company to focus itself on development and support for the latest version of their product, but it’s unfortunate for users who for whatever reason are not able to move to the new version so quickly. This also makes it all the more important that GMS2 be as good as it can be. Hopefully, by focusing on the latest version exclusively, this will enable YYG to develop it even faster, adding new features, fixing bugs, and addressing UX issues with the brand new IDE.

SMW persistent jailbreak hack the best of all time?

I think in terms of impressiveness, this amazing glitch exploit that allows you to permanently reprogram mods into the save data of a Super Mario World cartridge using only in-game input is right up there, neck and neck with the Apollo Moonshot missions.

I can’t even fathom how they figured this out, it’s beyond anything anyone could reasonably come up with. Impressive doesn’t begin to describe it.


E.T. was not the worst game of all time.

I’ve talked about this before, but today NPR covered it again.

This is a well known story in the lore of videogame history… There’s a certain amount of misconception about it.

Howard Scott Warshaw likes to talk about how E.T. has the reputation of being the worst game ever, and how between it and the highly regarded Yar’s Revenge, it gives him the greatest range of any game developer. But even he doesn’t think E.T was really the worst of all time. As he carefully states, E.T. is “the game that is widely held to be the worst video game of all time.” That’s a bit distanced from accepting that it is the worst.

It makes for a good story, and he likes to tell the story, and he’s a good storyteller, and he likes to set the record straight when he tells the story, because telling the story takes away the power of the failure to hurt him. He’s a really good sport about it, and a good guy, and was a good game developer when that’s what he was doing. He has a great attitude about failure, and it’s served him well in life. So more power to him.

Howard Scott Warshaw’s game was actually pretty good. I owned E.T. and liked it. It was ambitious, and it definitely had its share of flaws, but it was a much more complicated game than the arcade style action games that Atari was known for, and that was a problem for a lot of gamers who weren’t ready for a deeper game design and complex puzzle solving. The game was difficult, and solving the puzzles was a bit arcane, and the pits that you fall into frequently were rather annoying, but it was not the “worst game of all time” that it has been labeled as.

What it was, it was a huge commercial failure — mainly because Atari overpaid Steven Spielberg $26 million for the license rights to make an exclusive ET videogame. It was one of the better selling games for the Atari, moving 1.5 million units. Unfortunately, Atari had produced 5 million copies, vastly overestimating the market. And reviews of the game were mostly bad, in spite of the high sales. The sales came through more through name recognition and the success of the film, but once people played the game, many of them felt like it wasn’t good enough. And it was rushed. But it’s a very impressive achievement to create something as big and complex as E.T. with the tools that Warshaw had at the time, in as little time as he was given.

Atari were counting on ET to drive more console sales, and it didn’t happen. By 1983, the VCS was a 7 year old dinosaur, and badly needed a replacement. But Atari had a hard time leading the launch of the next generation of hardware, because doing so would have obsoleted their market-dominating 2600 model. They tried with the 5200, but it had several design problems, and this combined with lack of backward compatibility (they did release an adapter later) and expense made it unpopular.

At the time, there wasn’t really a precedent for the idea of computer equipment becoming obsolete in just a few years time, and so many consumers of the day felt like buying a new console every few years, particularly if their old games wouldn’t play on it, was a ripoff. They viewed electronics like a radio or television or record player, which could last for decades if cared for, and newer models could continue to play old media. And old game consoles may still work four decades on, but they are obviously obsolete and can’t play newer games, and newer machines don’t play old Atari games (other than through emulation.)

Meanwhile, Atari corporate had alienated some of their best developers, by refusing to credit them for their work on the cover of the box, or pay royalties, They left to found Activision, which opened the door to any third party releasing games for the 2600, including many fly by night operators who could barely program for the 2600, who put out horrid garbage games that glutted store shelves and gave the Atari a poorer reputation than it deserved, and resulted in the Great Crash.

It’s popular to blame ET for being the cause of the great crash of ’83, but it wasn’t.


LD38 results for TARJECTORIES

I think this may have been my best showing to date. I’ve ranked higher in individual categories before (Bad Puppy: #70 in Humor, Alamogordo: #71 in Humor) but I think this is the best that I’ve ranked in Overall and in Fun, which are perhaps the two most important categories. I’m very happy with how the game was received by the LDJam community this time around.

Thanks to everyone who played TARJECTORIES!

ld38 results


Great Plays from Ludum Dare 38

Planet Desumaton – siegfriedcroes

Planet Desumation

The gif speaks for itself… Control a small small planet, picking up Asteroids into orbit, and smash them into a large “boss” planet.

Path of the Rabbit – Managore

Path of the Rabbit

A turn based tile strategy game similar to Pipe Dreams. Managore’s games are always top notch, and this is no exception.

Sticky Keys – thevaber

Sticky Keys

A really well polished typing game, with a twist. The keys keep popping off, due to some nasty creepy crawly insects that have infested the keyboard. You have to interrupt yourself and pop the key caps back on in order to keep typing.

Monolith – samlo and david-carney

A rail shooter bullet hell game where you have to lock on to your target by holding still, leaving you vulnerable to enemy fire. It’s high speed and frenetic. The art style is b/w, with what looks to be a procedurally generated fractal landscape, and a monolith that looms over the horizon, and seems to never get any closer.


Tarjectories by csanyk for LD48-38: A Small World

Yes that’s right! My own game, this time I think is good enough to qualify as a recommended play. It’s a casual target shooting game played on tiny planetoids that rotate, with procedurally generated levels for added replayability. Patience and accuracy are the keys to doing well. Learn to estimate the gravity and rotation speed of the planet so you can aim your shots correctly. I plan to develop this one a bit further, so stay tuned.

Antivirus – kappaixAntivirus

A nicely designed 2D top down shooter, reminiscent of classics like Gauntlet, 2D Wolfenstein, Berzerk, and Frenzy. When you die you get a fake BSOD game over screen, which adds to the fun. Battle through an area and the size scale changes, making for an interesting and novel transition mechanic.

Plutus – jason-varnell, nathan-hicks, and Apostate Games


Hilariously written backstory makes this charming katamari-like feel special. Control the jealous planet (let’s not quibble) Pluto on a quest for revenge and ever greater mass.

Space Mailman – kepons

Space Mailman

Gorgeous but bare-bones wireframe graphics and hard core difficulty make this game tough to play. Deliver mail between planets to make money.

Flight of Claude – lyxil and colm-eccles

Flight of Claude

A beautiful, touching visual story about a baby bird and his nest mates.

Aphosis – urban-logic-games


Divert a doomsday rock on a collision course with Earth by attaching thrusters to stabilize its spin, then attaching a main thruster to push it away. Beautiful graphics, a fantastic musical backing, and extremely challenging game play make this one to try.

That Tiny Pea – thendash

That Tiny Pea

A fairly realistic update of the classic Lunar Lander. Land safely and you are rewarded by being able to step outside and take in the view. It’s hard!

The Life Amoebic – baby-dino-herd

The Life Amoebic

A convincing simulation of an amoeba. Control your amoeba by extending pseudopods with the mouse, and try to grab food to survive, grow, and divide. It’s pretty challenging.

Vixa – spav


Spin the world around to dump balls into the green-lit sections and away from the red-lit sections. Green multiplies your balls, red destroys them. Lose all your balls and you’re done. Great graphics and sound, and solid game play make this one a trip to play.

Tiny World Defense – ianmorrison

Tiny World Defense

Fly your spaceship over the surface of the planet, defending it from enemies who want to shrink the planet into nothingness. There were a number of other entries in LD38 with a similar look and feel, a 3D orb-based shooter, where your shots skim over the surface of the planet. Almost like it were a newly-invented genre or something. But out of them all I think this one is probably my favorite of them.

Super Kaiju Dunk City – radmars, emarcotte, steakzzz, ninjavitis

Super Kaiju Dunk City

This is an amazing entry in the Jam category. Super polished, it’s a cross between an infinite runner and a rhythm game, where you control a basketball-dribbling Godzilla-like Kaiju creature, as you relentlessly smash through level after level of targets. I had a blast playing this, and would love to see it as a full-fledged title. There’s not much more to ask for, except maybe an epic boss battle against another Kaiju or super robot, and some kind of breath attack.

That’s all for now… I still have a lot more games left to play. As I find more “great plays” I’ll be adding them here. If you have played something that you think deserves a larger audience, post a comment below.

Until next time!

GameMaker tutorial: high speed collisions

If you have a small object, such as a bullet, collisions can be problematic for GameMaker if the bullet’s speed is faster than the length of the bullet. Any time an object moves faster than its width, it is possible for the object to skip over object in its way that it should have collided with.

The illustration below shows why:

high speed collision skipping

Here’s a simple, elegant solution for your high speed object to avoid this problem, regardless of its top speed.

Make the bullet sprite’s length as long as the bullet’s speed. If your bullet moves 16px per step, then its sprite should be 16px long.

If the bullet’s speed is variable, then the thing to do is vary the length of the bullet as the speed of the bullet varies. You can use this using the image_xscale property to scale the bullet.

Say the base bullet speed is 16px. If the bullet can somehow accelerate to 32px per step, then it should lengthen to 32px, by setting the image_xscale to 2. We can see from this that a general expression that solves the problem for any sprite width and speed would be:

image_xscale = speed/sprite_width

But it’s probably a good idea to use image_xscale = max(1, speed/sprite_width), to keep the bullet from shrinking if it is moving slowly.

A nice thing about this effect is that it makes high speed bullets look like elongated streaks, very similar to a blurry action photo where the subject of a photo is moving too fast for the shutter speed. In effect, that’s exactly what’s happening in GameMaker, if we consider the game speed to be like the shutter speed of a camera. So this creates a very natural looking visual effect, and solves a problem with high speed collision skipping.

This technique may be applicable to other objects besides bullets, but it works best with smaller objects because the stretching isn’t as noticeable. As the instance is moving at a high speed while being stretched, it can trick the eye into thinking it’s just a motion blur effect. With larger objects, this illusion is not as convincing, and the apparent distortion is more obvious.

Pinpointing the point of impact

Let’s say you need to know the exact point of impact from your high speed bullet. Since the bullet is stretched out, the x, y coordinates are no longer approximate enough.

high speed bullet point of impact

We an use point_direction to find the angle at which the impact occurred.

point_of_impact = point_direction(other.x, other.y, bullet.x, bullet.y);

If the target object is a circle, then calculating the point of impact is simple from whatever angle:
impact_x = other.x + lengthdir_x(other.radius, collision_direction);
impact_y = other.y + lengthdir_y(other.radius, collision_direction);

The above will work as long as the high-speed bullet isn’t positioned such that the x,y origin of the sprite is on the far side of the target object. If it is, the point of impact will be on the opposite side of the target object. If this is a problem, you can do additional calculations using the direction of the bullet’s travel as a clue to determining where the true point of impact was. You can also reduce the problem by making the bullet sprite’s x-origin 0, so the bullet’s [x,y] position will always be at the rear of the bullet.

If the target object is non-circular, or non-centered, you’ll need to do a bit more work to determine the point of impact, and exactly how to do that is outside the scope of this article. But using built-in variables image_xoffset, image_yoffset, bbox_top, bbox_bottom, bbox_left, bbox_right, you should be able to figure it out, at least approximately enough to be useful.

csanyk.com © 2016
%d bloggers like this: