Thursday, January 28, 2016
New blog with M-W-F update schedule!
Anybody still reading this (now defunct) blog, please direct yourself to my new blog at: http://allgamerevue.blogspot.com/
Thursday, August 20, 2015
It's that time of year again....
Ludum Dare time! For those that don't know, Ludum Dare is a thrice-yearly event in which people from around the world attempt to create video games from start to finish in 72 hours centered around the theme. The theme, which won't be announced until the start of the contest, is chosen through multiple rounds of voting, and has been narrowed down to twenty finalists.
I thought it might be fun to go through the different proposed themes, talk about potential ideas, and cite already existing games for inspiration. The way I see it, the challenge lies not just in following the theme, but in taking a different twist on it then everyone else.
Abandoned - This is a pretty broad theme. It could be about an abandoned town or house, in the vein of Gone Home, or about a person or child who has been abandoned. Definitely expect to see a lot of horror-themed games for this one.
Alone in the World - The obvious way to go on this one would be an I Am Legend style, post-apocalyptic setting, but I think there's other options. Maybe you're in a populated world, but you're totally unique, the only one of your kind - maybe the last of your species, or maybe the world's first fully sentient robot.
A Map Will Be Useful - I'd expect to see a lot of dungeon crawlers and Zelda-style adventures on this one; probably a fair share of Metroidvanias, too. An interesting twist might be forcing the player to create their own map, a la Etrian Odyssey.
Attraction - Expect to see a lot of visual novels on this one, but probably some magnet-style puzzlers, as well. Might be interesting to do a Katmari Darmacy or Bit.Trip Void style game here.
A World in the Skies - an easier theme, as it really only informs the setting, not the gameplay. Still, expect to see a lot of airship games in the style of Skies of Arcadia or Guns of Icarus.
Beyond the Wall - Another pretty broad theme. Probably going to see a lot of RPGs on this one, as it sets up perfectly for a hero's quest style story - you're the first person in eons to venture outside your home town's walls, etc.
Build Your Way Out - Expect everyone to make Minecraft or Gary's Mod clones for this one. It's going to be hard to come up with a game that meets the theme without going in that direction, and thus very hard to stand out from among the crowd. Maybe a Lemmings clone?
Can’t Stop Moving - Here's a prime example of where creativity will be required to stand out. Expect everyone to make endless runners - they're popular, easy to program, and fit the theme to a tee. A better way to go would be to look at it metaphorically - maybe you're a guy on the run from on town to the next, being chased by an unseen enemy.
Chain Reaction - I'd expect to see a lot of match-3 puzzlers here - another genre that's easy and popular. Probably some science games, too. A more interesting take might be to do an Ikaruga-style shooter.
Companion - Another theme that would probably see a fair share of visual novels. You could do a game based around controlling two characters, like Cookies & Cream or ilomilo.
Day and Night - The obvious angle would be to do a game based around a day and night cycle, like Majora's Mask or Castlevania 2. You could also take a more yen/yang approach and do something in the vein of Ikaruga.
Death is Not the End - You could do something centered around killing yourself - see the next entry - or something like Shadowman or Two Brothers where the afterlife is a big part of the gameplay.
Destroying Yourself - There's actually been a number of puzzle games over the years - Karoshi, End of the Line, Five Minutes to Kill Yourself, Life Goes On - where the point of the game is to kill yourself. A more creative take might be an action game where your deteriorating - you have one less ability each level, for instance.
Expanding World - This seems like a perfect fit for randomly generated levels, where you can have a game world that expands infinitely. Maybe something roguelike or Minecraft-like.
Growing Things - I'd say an RTS game, in the style of Pikmin, would be the obvious way to go with this theme, but RTSs are extremely difficult to program, and definitely don't lend themselves to a three day challenge. Maybe something in the style of Tamagotchi or the Sonic Adventure Chao Gardens? Definitely a harder theme.
Limited Capacity - I don't think you're going to see any one definite trend on this one. Political games, police games, platforms with limited ammo/resources... there's a ton of different interpretations.
No Enemies - One of the trickiest themes on here, because it sets so many rules about the game's design.... unless you wanted to interpret it as "leave none of my enemies standing" or "killing your friends: the game".
One Rule - Sorry guys, I'm gonna be a jerk on this one, but I've got a really awesome idea for this one and it's actually the theme I'm voting for, so I'm keeping my thoughts to myself...
Power Supply - Lot of different ways you could go on this one. A game about robots? A game about limited ammo or resources? A game about robots with limited ammo and/or resources? ...okay, maybe not that many different ways.
You are the Monster - You'll probably see a lot of Rampage and Destroy All Human clones with this one, maybe with some Last Of Us inspired stuff sprinkled in. Me personally, I'd just make a full-length version of this Warioware game....
I thought it might be fun to go through the different proposed themes, talk about potential ideas, and cite already existing games for inspiration. The way I see it, the challenge lies not just in following the theme, but in taking a different twist on it then everyone else.
Abandoned - This is a pretty broad theme. It could be about an abandoned town or house, in the vein of Gone Home, or about a person or child who has been abandoned. Definitely expect to see a lot of horror-themed games for this one.
Alone in the World - The obvious way to go on this one would be an I Am Legend style, post-apocalyptic setting, but I think there's other options. Maybe you're in a populated world, but you're totally unique, the only one of your kind - maybe the last of your species, or maybe the world's first fully sentient robot.
A Map Will Be Useful - I'd expect to see a lot of dungeon crawlers and Zelda-style adventures on this one; probably a fair share of Metroidvanias, too. An interesting twist might be forcing the player to create their own map, a la Etrian Odyssey.
Attraction - Expect to see a lot of visual novels on this one, but probably some magnet-style puzzlers, as well. Might be interesting to do a Katmari Darmacy or Bit.Trip Void style game here.
A World in the Skies - an easier theme, as it really only informs the setting, not the gameplay. Still, expect to see a lot of airship games in the style of Skies of Arcadia or Guns of Icarus.
Beyond the Wall - Another pretty broad theme. Probably going to see a lot of RPGs on this one, as it sets up perfectly for a hero's quest style story - you're the first person in eons to venture outside your home town's walls, etc.
Build Your Way Out - Expect everyone to make Minecraft or Gary's Mod clones for this one. It's going to be hard to come up with a game that meets the theme without going in that direction, and thus very hard to stand out from among the crowd. Maybe a Lemmings clone?
Can’t Stop Moving - Here's a prime example of where creativity will be required to stand out. Expect everyone to make endless runners - they're popular, easy to program, and fit the theme to a tee. A better way to go would be to look at it metaphorically - maybe you're a guy on the run from on town to the next, being chased by an unseen enemy.
Chain Reaction - I'd expect to see a lot of match-3 puzzlers here - another genre that's easy and popular. Probably some science games, too. A more interesting take might be to do an Ikaruga-style shooter.
Companion - Another theme that would probably see a fair share of visual novels. You could do a game based around controlling two characters, like Cookies & Cream or ilomilo.
Day and Night - The obvious angle would be to do a game based around a day and night cycle, like Majora's Mask or Castlevania 2. You could also take a more yen/yang approach and do something in the vein of Ikaruga.
Death is Not the End - You could do something centered around killing yourself - see the next entry - or something like Shadowman or Two Brothers where the afterlife is a big part of the gameplay.
Destroying Yourself - There's actually been a number of puzzle games over the years - Karoshi, End of the Line, Five Minutes to Kill Yourself, Life Goes On - where the point of the game is to kill yourself. A more creative take might be an action game where your deteriorating - you have one less ability each level, for instance.
Expanding World - This seems like a perfect fit for randomly generated levels, where you can have a game world that expands infinitely. Maybe something roguelike or Minecraft-like.
Growing Things - I'd say an RTS game, in the style of Pikmin, would be the obvious way to go with this theme, but RTSs are extremely difficult to program, and definitely don't lend themselves to a three day challenge. Maybe something in the style of Tamagotchi or the Sonic Adventure Chao Gardens? Definitely a harder theme.
Limited Capacity - I don't think you're going to see any one definite trend on this one. Political games, police games, platforms with limited ammo/resources... there's a ton of different interpretations.
No Enemies - One of the trickiest themes on here, because it sets so many rules about the game's design.... unless you wanted to interpret it as "leave none of my enemies standing" or "killing your friends: the game".
One Rule - Sorry guys, I'm gonna be a jerk on this one, but I've got a really awesome idea for this one and it's actually the theme I'm voting for, so I'm keeping my thoughts to myself...
Power Supply - Lot of different ways you could go on this one. A game about robots? A game about limited ammo or resources? A game about robots with limited ammo and/or resources? ...okay, maybe not that many different ways.
You are the Monster - You'll probably see a lot of Rampage and Destroy All Human clones with this one, maybe with some Last Of Us inspired stuff sprinkled in. Me personally, I'd just make a full-length version of this Warioware game....
Tuesday, August 18, 2015
Quick Update
Writing a blog post about how you'll be doing more blog posts is kind of a cheat - and definitely one I've been guilty of before in the past. Still, I felt it was important to postmark the date that the blog went from lame and neglected to awesome and relevant. Keep an eye here the next few days as I overhaul everything from the theme (goodbye "Syntactic Sugar", hello... something better) to the content to a focus on quantity over quality.
...okay so that last one sounds a little counter-intuitive, so let me explain. I've been so focused on making sure every post sounds professional and relevant, that I have very little content. So from now on, expect more funny rants and amusing anecdotes in addition to the programming analysis.
...okay so that last one sounds a little counter-intuitive, so let me explain. I've been so focused on making sure every post sounds professional and relevant, that I have very little content. So from now on, expect more funny rants and amusing anecdotes in addition to the programming analysis.
Thursday, January 22, 2015
Choose a card, any card...
Currently working on a website for a client... they asked if I could display some cards on a page that had a skill on one side, and when you hovered over with the mouse they flipped to the other side with information about that skill. My response was, "do they need to look 3D?" When the answer was no, I told the client I could take care of it right away.
Using JQuery:
$("#box1").mouseenter(function(){
var div=$("div");
div.animate({width:'0px',left:'100',opacity:'0.4'},"slow");
div.animate({width:'200px',left:'0',opacity:'0.8'},"slow");
});
$("#box1").mouseleave(function(){
var div=$("div");
div.animate({width:'0px',left:'100',opacity:'0.4'},"slow");
div.animate({width:'200px',left:'0',opacity:'0.8'},"slow");
});
The "trick" here is to move the card at the same time you shrink the width, then move it back as you expand the width. This creates the "flipping" effect.
Using JQuery:
$("#box1").mouseenter(function(){
var div=$("div");
div.animate({width:'0px',left:'100',opacity:'0.4'},"slow");
div.animate({width:'200px',left:'0',opacity:'0.8'},"slow");
});
$("#box1").mouseleave(function(){
var div=$("div");
div.animate({width:'0px',left:'100',opacity:'0.4'},"slow");
div.animate({width:'200px',left:'0',opacity:'0.8'},"slow");
});
The "trick" here is to move the card at the same time you shrink the width, then move it back as you expand the width. This creates the "flipping" effect.
Friday, January 16, 2015
There's a Starman, waiting in the sky....
I've always maintained that the best-written and most-underrated DC comic is James Robinson's Starman. For years, I've dreamed of them making a TV show where Jack Knight, donned in his leather jacket, fights evil-doers with his futuristic weaponry (and lack of superpowers) to rockin' seventies tunes.... and now Marvel's beaten them to it with some guy I've never even heard of called Star Lord?! Com'on, DC, get your act together!
Monday, January 12, 2015
New Year, New Goals
Hey, everyone, it's January! Time to check in on last year's resolutions, and make new ones (i.e. the same ones because you didn't keep them last year). Last year, I resolved to make at least one blog post a week, and I mostly succeeded! ...until I started my new job September 2nd, and then haven't posted since. But! Now that I'm settled in, and it's a new year, it's time to make some new goals:
1. Apachee Cordova
I spent most of 2013 learning to make games in JavaScript, and most of 2014 learning to make them in Python. In both cases, I became frusterated with the limitations of where and how people could play them. One of the main attractions of Python for me was the promise of easy portabilitly, but I soon found that Pygame - the main library people use for Python games - didn't have that same flexability.
This year, I plan to get comfertable working in the Visual Studio mainframe. My goal is to start by creating each project in Cordova, even if I'm not planning on porting it, so that I'll always have the option later. This way, when I change directions on a project, I won't be faced with the prospect of rewriting it from scratch - something that has happened to me more then once.
2. A New Website
I need to find a place to host my projects - not necessarily a paid domain name, because I'm toopoor thrifty for that, but a permanent home where they can live. In conjunction with that, I also want to unify my "web presence", if you can even call it that. Currently I have this blog, a twitter, and a tumblr that I may or may not delete. I need to do a better job of unifying them, navigationally and thematically.
3. Finishing Projects
One of the reasons I have a problem with finishing things is my level of perfectionism - nothing ever feels "good enough" to put out into the world and show off. One of my favorite quotes is Leonardo Da Vinci's "art is never finished, only abandoned". I have several projects in various states of done-ness that need to go up on the new (coming soon) website.
Clueball - matching game I created in 2013. It's technically "done", in that it's playable, but it needs a little spit-polish to really feel finished. I purposely created in in a wide-screen, in case I ever decided to port it to mobile devices, and the gameplay would be a perfect candidate to do so. Since it's written completely in JavaScript, it should be a good candidate to cut my teeth on Cordova.
Client-requested projects - I have a couple of projects that were commissioned by clients but then fell thru that I would like to host. One, an interactive map of the United States, works perfectly but needs to be "rebranded", or in this case have the original branding and purpose removed and turned into a more generic map info program. The other one, a website, I have permission from the client to show off in it's completed form, but still needs a few more hours of work to be "ready for prime-time".
Wizard's Scroll - a little puzzle game that's probably 65% completed, but that I became frustrated with and abandoned. Like Clueball, I purposely created it in an aspect ratio that would translate well to mobile devices, just in case, but it turns out the game it evolved into would be better suited for browser play. That means that, aside from finishing a few levels, the game is in need of a major visual overhaul. It's something that I didn't feel up to doing, until my wife got me a Wacom tablet for Christmas - now suddenly doing a ton of graphics from scratch sounds more fun than exhausting.
4. New Projects
As usual, I have way more ideas then I have time or energy to use implementing them, but I am looking forward to working on some new things. And, as I mentioned previously, I have a brand new Wacom that's just dying to be put to use....
1. Apachee Cordova
I spent most of 2013 learning to make games in JavaScript, and most of 2014 learning to make them in Python. In both cases, I became frusterated with the limitations of where and how people could play them. One of the main attractions of Python for me was the promise of easy portabilitly, but I soon found that Pygame - the main library people use for Python games - didn't have that same flexability.
This year, I plan to get comfertable working in the Visual Studio mainframe. My goal is to start by creating each project in Cordova, even if I'm not planning on porting it, so that I'll always have the option later. This way, when I change directions on a project, I won't be faced with the prospect of rewriting it from scratch - something that has happened to me more then once.
2. A New Website
I need to find a place to host my projects - not necessarily a paid domain name, because I'm too
3. Finishing Projects
One of the reasons I have a problem with finishing things is my level of perfectionism - nothing ever feels "good enough" to put out into the world and show off. One of my favorite quotes is Leonardo Da Vinci's "art is never finished, only abandoned". I have several projects in various states of done-ness that need to go up on the new (coming soon) website.
Clueball - matching game I created in 2013. It's technically "done", in that it's playable, but it needs a little spit-polish to really feel finished. I purposely created in in a wide-screen, in case I ever decided to port it to mobile devices, and the gameplay would be a perfect candidate to do so. Since it's written completely in JavaScript, it should be a good candidate to cut my teeth on Cordova.
Client-requested projects - I have a couple of projects that were commissioned by clients but then fell thru that I would like to host. One, an interactive map of the United States, works perfectly but needs to be "rebranded", or in this case have the original branding and purpose removed and turned into a more generic map info program. The other one, a website, I have permission from the client to show off in it's completed form, but still needs a few more hours of work to be "ready for prime-time".
Wizard's Scroll - a little puzzle game that's probably 65% completed, but that I became frustrated with and abandoned. Like Clueball, I purposely created it in an aspect ratio that would translate well to mobile devices, just in case, but it turns out the game it evolved into would be better suited for browser play. That means that, aside from finishing a few levels, the game is in need of a major visual overhaul. It's something that I didn't feel up to doing, until my wife got me a Wacom tablet for Christmas - now suddenly doing a ton of graphics from scratch sounds more fun than exhausting.
4. New Projects
As usual, I have way more ideas then I have time or energy to use implementing them, but I am looking forward to working on some new things. And, as I mentioned previously, I have a brand new Wacom that's just dying to be put to use....
Monday, August 11, 2014
Obscure & Underrated #2: Todd's Adventures in Slime World (Atari Lynx)
Something you often see people complain about on the internet is that "video games are easier then they used to be". There's a lot of differing opinions as to why this is - too many tutorials, too much dumbing down, trying too hard to appeal to a broader audience, etc. But in my mind, it boils down to one simple fact: modern video games are about simulating what it's like to be awesome and unstoppable, whereas old-school video games are about simulating what it's like to be in incredibly dangerous situations.
Take, for example, Todd's Adventures in Slime World.
The gameplay of Slime World consists of side-scrolling platforming through a series of rooms connected by shootable doors, a la Metroid. As the name suggests, everything in Slime World is made out of slime - Todd can scale the sticky walls, and there are waterfalls and flowing slime walls to impede your progress. Everything in the game - from the background to the game's logo - oozes and drips and pulsates with a life of it's own. Instead of a health bar, Todd slowly turns green every time he gets slimed by an enemy. If you turn completely green, it's game over, but if you find a freshwater pond to wash off in, you can restore yourself to full health.
As previously mentioned, Slime World is an extremely dangerous place. Destroying most enemies causes a spray of green slime; get covered with too much, and you're dead. Get sprayed with red slime, and you die instantly, even if shielded. Also fatal are the underground Red Snappers, which require looking for tell-tale clues to detect. There are limited-use tools scattered around, such as a jetpack, purifiers that turn slime pools into life-restoring water pools, and my personal favorite, a bomb that blows up everything in the room (you throw it, then quickly run back out the door and watch it detonate). Similar to a rougelike, the game takes careful planning and deliberation, and a session can take a couple of hours to complete. Although there aren't any randomly generated levels, Slime World makes up for it by offering seven different "adventures", each one a different game mode with it's own rules, subtleties, and unique map layout.
Slime World was made for the Atari Lynx, an oft-forgotten handheld video game system that existed around the same time as the better-selling Nintendo Game Boy and Sega Game Gear. Besides boasting full color, the Atari Lynx's biggest selling point was it's multiplayer; Todd's Adventures in Slime World could support up to eight players at one time. (Or so they claimed; I haven't been able to verify this fact, since no one has ever had eight Atari Lynx systems at one time)
Despite it's amazing graphics and features, Todd's Adventures in Slime World didn't find much of an audience, due mostly to the rarity of Atari Lynx (they were only sold at Babbage's, a computer store you could only find in malls back in the nineties). There are Genesis and TurboGrafx CD ports, but somehow the scaling and dripping effects of the slime actually look better in the Lynx version. The game was clearly a labor of love, and I sincerely hope that someday the game's creator will do a Kickstarter for a Steam version - imagine eight simultaneous online players in a side-scrolling randomly generated slime-infested nightmare! ...Ah, well, I can only dream.
Take, for example, Todd's Adventures in Slime World.
The gameplay of Slime World consists of side-scrolling platforming through a series of rooms connected by shootable doors, a la Metroid. As the name suggests, everything in Slime World is made out of slime - Todd can scale the sticky walls, and there are waterfalls and flowing slime walls to impede your progress. Everything in the game - from the background to the game's logo - oozes and drips and pulsates with a life of it's own. Instead of a health bar, Todd slowly turns green every time he gets slimed by an enemy. If you turn completely green, it's game over, but if you find a freshwater pond to wash off in, you can restore yourself to full health.
As previously mentioned, Slime World is an extremely dangerous place. Destroying most enemies causes a spray of green slime; get covered with too much, and you're dead. Get sprayed with red slime, and you die instantly, even if shielded. Also fatal are the underground Red Snappers, which require looking for tell-tale clues to detect. There are limited-use tools scattered around, such as a jetpack, purifiers that turn slime pools into life-restoring water pools, and my personal favorite, a bomb that blows up everything in the room (you throw it, then quickly run back out the door and watch it detonate). Similar to a rougelike, the game takes careful planning and deliberation, and a session can take a couple of hours to complete. Although there aren't any randomly generated levels, Slime World makes up for it by offering seven different "adventures", each one a different game mode with it's own rules, subtleties, and unique map layout.
Slime World was made for the Atari Lynx, an oft-forgotten handheld video game system that existed around the same time as the better-selling Nintendo Game Boy and Sega Game Gear. Besides boasting full color, the Atari Lynx's biggest selling point was it's multiplayer; Todd's Adventures in Slime World could support up to eight players at one time. (Or so they claimed; I haven't been able to verify this fact, since no one has ever had eight Atari Lynx systems at one time)
Despite it's amazing graphics and features, Todd's Adventures in Slime World didn't find much of an audience, due mostly to the rarity of Atari Lynx (they were only sold at Babbage's, a computer store you could only find in malls back in the nineties). There are Genesis and TurboGrafx CD ports, but somehow the scaling and dripping effects of the slime actually look better in the Lynx version. The game was clearly a labor of love, and I sincerely hope that someday the game's creator will do a Kickstarter for a Steam version - imagine eight simultaneous online players in a side-scrolling randomly generated slime-infested nightmare! ...Ah, well, I can only dream.
Monday, August 4, 2014
Obscure & Underrated #1: Trax (GB)
Nowadays, HAL Laboratory really only makes two kinds of games: Kirby games and Pokémon games. So it may surprise you to learn that HAL was responsible for everything from Earthbound to Daydreamin' Davy to the excellent Adventures of Lolo/Eggerland series.
But today... today we are here to talk about Trax.
Trax released for the Game Boy in 1991, a year before the first Kirby game debuted, but right away the similarities are immediately obvious. The spherical hero, the solid black projectiles, the four-pointed explosions - it's all classic HAL Laboratory. But what sets this game apart from it's brethren is the gameplay.
In Trax, you play a tank that can fire in eight directions. The A button rotates your turret and the B button fires. It's nowhere near as convenient as the twin analog sticks of Robotron or Geometry Wars, but for the Game Boy it was pretty clever. Various power-ups appear along your way, with a lot of them the shmup variety that toggle through different types before you pick it up. There are four levels, each with mini-bosses and a gigantic boss at the end.
All that would still just be a pretty standard game though. What really makes Trax worth your time is the sheer insanity of this game. Bosses are huge. Levels take place in Japanese villages and valleys, and nearly everything on the screen is destructible. You fight tanks that look just like you. You fight tanks that look just like you but are so big they can't even fit on the screen. There's cut screens, showing beaten bosses chasing after you or blowing up. My favorite is the first mini-boss - a helicopter with hands who throws his propeller at you like a boomerang. It's the kind of creativity you'd expect in a game like Intrusion 2, except in pixelated black and white glory.
So there you have it. It's a shame HAL has never returned to Trax... the tank's only other appearance was as a mini-boss in Kirby Super Star (tucked away in the Meta Knight level). Too bad... the world could use more games like Trax.
But today... today we are here to talk about Trax.
Trax released for the Game Boy in 1991, a year before the first Kirby game debuted, but right away the similarities are immediately obvious. The spherical hero, the solid black projectiles, the four-pointed explosions - it's all classic HAL Laboratory. But what sets this game apart from it's brethren is the gameplay.
In Trax, you play a tank that can fire in eight directions. The A button rotates your turret and the B button fires. It's nowhere near as convenient as the twin analog sticks of Robotron or Geometry Wars, but for the Game Boy it was pretty clever. Various power-ups appear along your way, with a lot of them the shmup variety that toggle through different types before you pick it up. There are four levels, each with mini-bosses and a gigantic boss at the end.
All that would still just be a pretty standard game though. What really makes Trax worth your time is the sheer insanity of this game. Bosses are huge. Levels take place in Japanese villages and valleys, and nearly everything on the screen is destructible. You fight tanks that look just like you. You fight tanks that look just like you but are so big they can't even fit on the screen. There's cut screens, showing beaten bosses chasing after you or blowing up. My favorite is the first mini-boss - a helicopter with hands who throws his propeller at you like a boomerang. It's the kind of creativity you'd expect in a game like Intrusion 2, except in pixelated black and white glory.
So there you have it. It's a shame HAL has never returned to Trax... the tank's only other appearance was as a mini-boss in Kirby Super Star (tucked away in the Meta Knight level). Too bad... the world could use more games like Trax.
Saturday, August 2, 2014
Everything You Know Is Wrong
It's always a bummer when there's an idea you always wanted to do and somebody else makes it happen first.
Since I was a kid, I had the concept for a game in which the player would always be disoriented, but had I no clue of how it would actually work. As a teenager, a name was put to the concept when, right after listening to Weird Al's Everything You Know Is Wrong, a friend suggested that I should make an Everything You Know is Wrong video game.
Over the years, I've collected ideas, drawing tons of inspiration from games like Wario Ware and Achievement Unlocked, games where figuring out the controls and objectives are the entire point. After literally over two decades of mulling around this idea, it's only in the last couple of years that a firm concept has taken shape: the gameplay, the aesthetics, an actual title, etc. I even fiddled with a prototype in GameMaker a couple times, and I've got a half-written script floating around on my hard drive.
So, imagine my disappointment yesterday when I discovered this:
I mean, it's cool, good for them. They didn't steal from me or anything; they came up with it on their own, and I didn't even have any immediate plans to start earnestly developing the game. An idea is only as good as what you do with it, and the game looks pretty creative and fun.
Still, it's a little disheartening to see such specific thoughts of mine in someone else's game. It's not exactly the game I would have made, of course; not by a long shot. But the misleading and taunting of the player, the spikes that are actually trampolines... they even used my tagline! How crazy is that?
In the end, though, it's cool to see so many of my ideas work. And even though I clearly can't use the trampoline spikes now without looking like I copied them, there's still enough original things on my end - specifically on the presentation and atmosphere end, which are completely different in my concept, a little more Stanley Parable inspired - that it may be worth eventually doing after all.
But until I finally get off my lazy rear end, go play Default Dan! I know I will be.
Since I was a kid, I had the concept for a game in which the player would always be disoriented, but had I no clue of how it would actually work. As a teenager, a name was put to the concept when, right after listening to Weird Al's Everything You Know Is Wrong, a friend suggested that I should make an Everything You Know is Wrong video game.
Over the years, I've collected ideas, drawing tons of inspiration from games like Wario Ware and Achievement Unlocked, games where figuring out the controls and objectives are the entire point. After literally over two decades of mulling around this idea, it's only in the last couple of years that a firm concept has taken shape: the gameplay, the aesthetics, an actual title, etc. I even fiddled with a prototype in GameMaker a couple times, and I've got a half-written script floating around on my hard drive.
So, imagine my disappointment yesterday when I discovered this:
I mean, it's cool, good for them. They didn't steal from me or anything; they came up with it on their own, and I didn't even have any immediate plans to start earnestly developing the game. An idea is only as good as what you do with it, and the game looks pretty creative and fun.
Still, it's a little disheartening to see such specific thoughts of mine in someone else's game. It's not exactly the game I would have made, of course; not by a long shot. But the misleading and taunting of the player, the spikes that are actually trampolines... they even used my tagline! How crazy is that?
In the end, though, it's cool to see so many of my ideas work. And even though I clearly can't use the trampoline spikes now without looking like I copied them, there's still enough original things on my end - specifically on the presentation and atmosphere end, which are completely different in my concept, a little more Stanley Parable inspired - that it may be worth eventually doing after all.
But until I finally get off my lazy rear end, go play Default Dan! I know I will be.
Friday, August 1, 2014
Aw Snap!
Boy, didn't post much during July, did I? Almost like it's a month of American celebrations and holidays or something.
Anyways, I'm officially giving up on Snap.svg. It's not that it isn't easy to use, or that it isn't pretty - it's that it's been a nightmare trying to get it to behave consistently across different browsers. It should have been a red flag to me when the demonstrations on the official website don't display properly on Internet Explorer. Yes, I am aware that Internet Explorer is not the best or most progressive browser choice, but that does not change the fact that a large percentage of your potential audience will be using it.
I have two projects that I've been using Snap with. One, a potential Super Hexagon fan-project that I hinted at earlier, will probably end up coming to nothing anyway. The other, a major visual overhaul for Clueball, is a bigger problem. I love the graphical style; maybe instead of rendering it live, I'll just make picture files of it.
Anyways, I'm officially giving up on Snap.svg. It's not that it isn't easy to use, or that it isn't pretty - it's that it's been a nightmare trying to get it to behave consistently across different browsers. It should have been a red flag to me when the demonstrations on the official website don't display properly on Internet Explorer. Yes, I am aware that Internet Explorer is not the best or most progressive browser choice, but that does not change the fact that a large percentage of your potential audience will be using it.
I have two projects that I've been using Snap with. One, a potential Super Hexagon fan-project that I hinted at earlier, will probably end up coming to nothing anyway. The other, a major visual overhaul for Clueball, is a bigger problem. I love the graphical style; maybe instead of rendering it live, I'll just make picture files of it.
Sunday, July 6, 2014
Monkeys Wave Goodbye (bye, bye!)
It's official: monkeysintheplayground.com is no more! This was, of course, according to plan, but I overlooked one crucial detail: I no longer have a place to host Clueball. I will be rectifying this problem as quickly as possible.
Wednesday, June 25, 2014
Quick Update
In my last post, I suggested that I was focusing on getting Wizard's Scroll to run in Java. Still true! Porting the Python code over to Java using Jython was easier then expected; getting it to run as an applet on JVM, however, is proving to be much more difficult.
Also, over the last couple of days I've been tinkering with an idea for a fan project. Don't want to say much about it, if/when it inevitably falls thru, but it's already looking pretty interesting...
Also, over the last couple of days I've been tinkering with an idea for a fan project. Don't want to say much about it, if/when it inevitably falls thru, but it's already looking pretty interesting...
Monday, June 9, 2014
State of the Blog - June 2014
I'm back in class! This, of course, is a double-edged sword, because while it's good news for my career, it's bad news for the projects at this site. Mostly what it means is focusing on the projects that are most important to me and/or beneficial for my portfolio, and jettisoning the extraneous.
Untitled Gaming Library
This is the project I'm currently most excited about. It started as the game engine for Mom I'm Home and then Wizard's Scroll, and then I starting rewriting the engine into small functions that could be used for any project, and what I'm ending up with is a pretty useful library of game-making tools. This is a long-term project, but eventually I'd like to tweak it into something really classy I can release on GitHub.
Wizard's Scroll
My biggest short-term goal right now is Wizard's Scroll. Although my eventual goal a 100-level game with fully functional level editor is still a ways off, the 50-level demo version is very close to finished. I just need to tweak a little code and get it running on JVM. Probably two weeks worth of work, if I had two consecutive weeks to work on any one thing right now.
Clueball
My second most immediate priority is Clueball. The nice thing about this one is the game is already fully functional; I'm just adding a few coats of paint and some additional features. My original goal with Clueball, back when I started it last year, was to implement full Facebook functionality; that's moved to the backburner for now. I'd be more interested in seeing if I could PhoneGap it into running on Android...
Untitled Meditation App
I haven't mentioned it here, but I've been fiddling with an idea for a meditation app on the side. This is another long-term project; the goal is to have something simple running by the time I move at the end of the year. I know a few martial artists in the area that I'm moving to, and my hope is to get some "professional" feedback and suggestions, resulting in a nice little Android app.
Mom I'm Home
The concept of Mom I'm Home was to make a Legend of Zelda-style game with SNES-style graphics loosely based on my childhood neighborhood (a suburb with several nearby forested areas), with the urban parts serving as the overworld and the forest areas serving as the dungeons. I still think this is an interesting idea, but the truth is, this is a project that would take a whole team of programmers to complete, not just one guy. That's why this game (along with Lore and other projects I've mentioned here and there) are going on indefinite hiatus. That's the downside of focusing on the important projects; it means some other, interesting stuff falling through the cracks. But fear not! Things will be resurrected as I find the time slash resources.
Untitled Gaming Library
This is the project I'm currently most excited about. It started as the game engine for Mom I'm Home and then Wizard's Scroll, and then I starting rewriting the engine into small functions that could be used for any project, and what I'm ending up with is a pretty useful library of game-making tools. This is a long-term project, but eventually I'd like to tweak it into something really classy I can release on GitHub.
Wizard's Scroll
My biggest short-term goal right now is Wizard's Scroll. Although my eventual goal a 100-level game with fully functional level editor is still a ways off, the 50-level demo version is very close to finished. I just need to tweak a little code and get it running on JVM. Probably two weeks worth of work, if I had two consecutive weeks to work on any one thing right now.
Clueball
My second most immediate priority is Clueball. The nice thing about this one is the game is already fully functional; I'm just adding a few coats of paint and some additional features. My original goal with Clueball, back when I started it last year, was to implement full Facebook functionality; that's moved to the backburner for now. I'd be more interested in seeing if I could PhoneGap it into running on Android...
Untitled Meditation App
I haven't mentioned it here, but I've been fiddling with an idea for a meditation app on the side. This is another long-term project; the goal is to have something simple running by the time I move at the end of the year. I know a few martial artists in the area that I'm moving to, and my hope is to get some "professional" feedback and suggestions, resulting in a nice little Android app.
Mom I'm Home
The concept of Mom I'm Home was to make a Legend of Zelda-style game with SNES-style graphics loosely based on my childhood neighborhood (a suburb with several nearby forested areas), with the urban parts serving as the overworld and the forest areas serving as the dungeons. I still think this is an interesting idea, but the truth is, this is a project that would take a whole team of programmers to complete, not just one guy. That's why this game (along with Lore and other projects I've mentioned here and there) are going on indefinite hiatus. That's the downside of focusing on the important projects; it means some other, interesting stuff falling through the cracks. But fear not! Things will be resurrected as I find the time slash resources.
Saturday, May 24, 2014
#screenshotsaturday
I've been saying for quite a while now that Clueball needs a little polish and TLC, and I'm happy to announce that I'm finally getting around to that! I've spent the last couple days playing around with Snap.svg to see if I couldn't make things look a little more professional, and although this is just an early version (no numbers on the balls yet), I'm still pretty happy with the results:
Old Clueball:
New Clueball:
Again, it's clearly not finished yet, but in the meantime, feel free to keep playing the original version and leave feedback!
Wednesday, May 21, 2014
Quick Update
Taking a brake from the penguin Java porting project for the moment to work on Wizard's Scroll. I realized I didn't want to port the code until it was a lot more polished. That said, the entire process of ripping chunks of code out of games to use in different games has taught me a lot. Specifically, I'm rewriting the code in Wizard's Scroll so that it's more like a library that could be used for any game, rather then code hobbled together to only do one thing. Who knows, maybe it will evolve into something I could release someday.
Wednesday, May 14, 2014
JavaScript and Java: Side-by-Side Comparison
[UPDATED 5/15/14: Tweaked a couple things in the Java code]
Currently translating my maze-generating code from JavaScript to Java. Here's the original code in JavaScript:
var room=new Array();
var size=100
for (x=2;x<size;x+=2)
{for (y=2;y<size;y+=2)
{room[x+(y*size)]=" ";
var r=Math.floor(Math.random()*4);
if (r==0 && x<size-2) {room[x+1+(y*size)]= " ";}
if (r==1 && x>02) {room[x-1+(y*size)]= " ";}
if (r==2 && y<size-2) {room[x+((y+1)*size)]=" ";}
if (r==3 && y>02) {room[x+((y-1)*size)]=" ";}
if (r==0 && x==size-2){room[x-1+(y*size)]= " ";}
if (r==1 && x==02) {room[x+1+(y*size)]= " ";}
if (r==2 && y==size-2){room[x+((y-1)*size)]=" ";}
if (r==3 && y==02) {room[x+((y+1)*size)]=" ";}
}
}
And here's the same code in Java:
int size = 100;
int[][] room = new int[size][size];
for (int x=2;x<size;x+=2)
{for (int y=2;y<size;y+=2)
{room[x][y]=1;
int r = 1; //haven't looked up the code for random numbers yet!
if (r==0 && x<size-2) {room[x+1][y]=1;}
if (r==1 && x>02) {room[x-1][y]=1;}
if (r==2 && y<size-2) {room[x][y+1]=1;}
if (r==3 && y>02) {room[x][y-1]=1;}
if (r==0 && x==size-2){room[x-1][y]=1;}
if (r==1 && x==02) {room[x+1][y]=1;}
if (r==2 && y==size-2){room[x][y-1]=1;}
if (r==3 && y==02) {room[x][y+1]=1;}
}
}
The maze code works by 1) filling a grid with walls, 2) making every other space of every other row an open space (or, if you divided the maze into 2x2 squares, it would be the fourth quadrant of every square), and then 3) using random numbers to connect those spaces.
As you'll notice, the code hasn't actually changed all that much. The biggest and most obvious change is declaring variables. In JavaScript, you need only use var, and you don't need to declare the variables in for statements. In Java, variables are typed, meaning that you must declare what a variable will be used for at the time you declare it.
The other two changes may not have been strictly necessary. The first is the change to double arrays (not supported in JavaScript). As you can see, the double array makes reading code much easier then the multiplying required in the JavaScript code. The second change was from strings to integers. This has mostly to do with the fact that in the game the code was originally from, the map code could contain many different characters besides just walls and spaces. In the penguin game, we will only be checking for walls or spaces, so it was more efficient to use numbers. Come to think of it, I may actually change them to Booleans - true on/off numbers.
Next time: Python to Java!
Currently translating my maze-generating code from JavaScript to Java. Here's the original code in JavaScript:
var room=new Array();
var size=100
for (x=2;x<size;x+=2)
{for (y=2;y<size;y+=2)
{room[x+(y*size)]=" ";
var r=Math.floor(Math.random()*4);
if (r==0 && x<size-2) {room[x+1+(y*size)]= " ";}
if (r==1 && x>02) {room[x-1+(y*size)]= " ";}
if (r==2 && y<size-2) {room[x+((y+1)*size)]=" ";}
if (r==3 && y>02) {room[x+((y-1)*size)]=" ";}
if (r==0 && x==size-2){room[x-1+(y*size)]= " ";}
if (r==1 && x==02) {room[x+1+(y*size)]= " ";}
if (r==2 && y==size-2){room[x+((y-1)*size)]=" ";}
if (r==3 && y==02) {room[x+((y+1)*size)]=" ";}
}
}
And here's the same code in Java:
int size = 100;
int[][] room = new int[size][size];
for (int x=2;x<size;x+=2)
{for (int y=2;y<size;y+=2)
{room[x][y]=1;
int r = 1; //haven't looked up the code for random numbers yet!
if (r==0 && x<size-2) {room[x+1][y]=1;}
if (r==1 && x>02) {room[x-1][y]=1;}
if (r==2 && y<size-2) {room[x][y+1]=1;}
if (r==3 && y>02) {room[x][y-1]=1;}
if (r==0 && x==size-2){room[x-1][y]=1;}
if (r==1 && x==02) {room[x+1][y]=1;}
if (r==2 && y==size-2){room[x][y-1]=1;}
if (r==3 && y==02) {room[x][y+1]=1;}
}
}
The maze code works by 1) filling a grid with walls, 2) making every other space of every other row an open space (or, if you divided the maze into 2x2 squares, it would be the fourth quadrant of every square), and then 3) using random numbers to connect those spaces.
As you'll notice, the code hasn't actually changed all that much. The biggest and most obvious change is declaring variables. In JavaScript, you need only use var, and you don't need to declare the variables in for statements. In Java, variables are typed, meaning that you must declare what a variable will be used for at the time you declare it.
The other two changes may not have been strictly necessary. The first is the change to double arrays (not supported in JavaScript). As you can see, the double array makes reading code much easier then the multiplying required in the JavaScript code. The second change was from strings to integers. This has mostly to do with the fact that in the game the code was originally from, the map code could contain many different characters besides just walls and spaces. In the penguin game, we will only be checking for walls or spaces, so it was more efficient to use numbers. Come to think of it, I may actually change them to Booleans - true on/off numbers.
Next time: Python to Java!
Tuesday, May 13, 2014
A Little Tougher Then It Has to Be
Finally finished moving on Friday; spent the last couple of days settling in. But you guys didn't come here to talk about that! You came here to talk about code. So let's talk.
A few days ago I decided to write a game by taking code from a couple other games (in different languages, mind you), put them together, and then shore up the edges, so to speak. So then I decided, since they were in different languages anyways, and I've been meaning to learn Java for ages, I could teach myself by porting the code over to a language I've never used before! While moving. Yeah, apparently I just like making things hard on myself.
At any rate, since this is suppose to be a blog about coding and syntax and I haven't talked much about either lately, I thought it might be interesting to include you guys in the process; side by side comparisons of code, that sort of thing.
In the meantime, if anybody has any suggestions or tips about learning Java, I'm all ears. I'm familiar with C++ and JavaScript, so the syntax is nothing new, but all these different class types are confounding me.
A few days ago I decided to write a game by taking code from a couple other games (in different languages, mind you), put them together, and then shore up the edges, so to speak. So then I decided, since they were in different languages anyways, and I've been meaning to learn Java for ages, I could teach myself by porting the code over to a language I've never used before! While moving. Yeah, apparently I just like making things hard on myself.
At any rate, since this is suppose to be a blog about coding and syntax and I haven't talked much about either lately, I thought it might be interesting to include you guys in the process; side by side comparisons of code, that sort of thing.
In the meantime, if anybody has any suggestions or tips about learning Java, I'm all ears. I'm familiar with C++ and JavaScript, so the syntax is nothing new, but all these different class types are confounding me.
Sunday, May 4, 2014
Repurposing Code
Before going back to school for software engineering, I spent almost fifteen years in the restaurant industry. One of the terms that chefs like to throw around is "repurposing" food; this is where you take the components left over from previous dishes and put them together to make something entirely new.
My family is currently in the midst of moving. I'm not getting much done on my current projects, because they're all at points that require a lot of focusing, and I don't have time fore that. What I do have is a lot of short sporadic bursts of time. So I decided to issue myself a challenge: could I repurpose code from some of my other projects to create an entirely new game?
I'm keeping it simple for this challenge, so the goal is to make something similar to Sega's classic arcade game Pengo. To work with, I've got the game engine from Wizard's Scroll, which already includes code for pushing blocks, and the random maze generating algorithm I wrote for Lore. (Of course, one's in Python and one's in JavaScript, but hey, let's not make it too easy, right?) So, "all" I have to do is take the parts I need, rewrite them to work together, and then add in enemies.
I just started it this afternoon. Not very far yet, but who knows? Maybe I'll finish it up and throw it on Kongregate.....
My family is currently in the midst of moving. I'm not getting much done on my current projects, because they're all at points that require a lot of focusing, and I don't have time fore that. What I do have is a lot of short sporadic bursts of time. So I decided to issue myself a challenge: could I repurpose code from some of my other projects to create an entirely new game?
I'm keeping it simple for this challenge, so the goal is to make something similar to Sega's classic arcade game Pengo. To work with, I've got the game engine from Wizard's Scroll, which already includes code for pushing blocks, and the random maze generating algorithm I wrote for Lore. (Of course, one's in Python and one's in JavaScript, but hey, let's not make it too easy, right?) So, "all" I have to do is take the parts I need, rewrite them to work together, and then add in enemies.
Saturday, April 26, 2014
Thursday, April 24, 2014
CTWB's Arrow SPOILER: Is Isabel Rochev actually Slade's Daughter?
This is a technology blog about coding and programming, so I don't usually talk about comics and TV shows here, but I've been scouring the internet and no one else is talking about this, so I felt like I should mention it here:
SPOILER ALERT
It appears that, in CTWB's Arrow three-part season finale, Isabel Rochev (Summer Glau, Serinity, Terminator: The Sarah Connor Chronicles) will be revealed to be the daughter of Slade Wilson, a.k.a. Deathstroke.
Draw your own conclusion:


On the left, Isabel Rochev, the woman who tricked Oliver Queen (a.k.a. the Arrow) and usurped control of his family's company. In the middle, a mysterious figure seen only for a moment during the official trailer for Arrow's three-part finale. On the right, Rose Wilson, a.k.a. Ravager, illegitimate child and protégé of Slade Wilson.
In episode 218, Deathstroke, it was revealed that Isabel is working in conjunction with Slade. In episode 219, The Man Under The Hood, we saw Deathstroke risking his life, and the possibility of Isabel receiving superpowers, by attempting a blood transfusion to save her life. Why her safety would be of such concern to someone like Slade has been a matter of debate by fans, as he has shown no such compassion for any of his other lackeys. Having a blood relation to Isabel would certainly explain things, and it would be in keeping with the comics, as Deathstroke's daughter Ravager exhibits both the same skills and abilities and a thirst to prove herself to her father.
In the trailer for the season finale, we see a group of men wearing Deathstroke's mask from the island; presumably these are the freed convicts who have been injected with the mirakuru (the miracle drug that gives Slade his powers). We are also given a brief glimpse of a mystery woman who appears to be wearing a stylized, feminized version of Deathstroke's current costume. This difference in appearance suggests that she has a higher rank over the freed convicts. Close examination of her features and facial expressions strongly suggests that this is Summer Glau (Isabel) under the mask. Why she would be given a costume so similar to Slade's is a mystery... unless, of course, she truly is kin.
Matt Estes is a software engineering student. His blog, Syntactic Sugar, is about writing computer code that is concise yet easy to read.
SPOILER ALERT
It appears that, in CTWB's Arrow three-part season finale, Isabel Rochev (Summer Glau, Serinity, Terminator: The Sarah Connor Chronicles) will be revealed to be the daughter of Slade Wilson, a.k.a. Deathstroke.
Draw your own conclusion:



On the left, Isabel Rochev, the woman who tricked Oliver Queen (a.k.a. the Arrow) and usurped control of his family's company. In the middle, a mysterious figure seen only for a moment during the official trailer for Arrow's three-part finale. On the right, Rose Wilson, a.k.a. Ravager, illegitimate child and protégé of Slade Wilson.
In episode 218, Deathstroke, it was revealed that Isabel is working in conjunction with Slade. In episode 219, The Man Under The Hood, we saw Deathstroke risking his life, and the possibility of Isabel receiving superpowers, by attempting a blood transfusion to save her life. Why her safety would be of such concern to someone like Slade has been a matter of debate by fans, as he has shown no such compassion for any of his other lackeys. Having a blood relation to Isabel would certainly explain things, and it would be in keeping with the comics, as Deathstroke's daughter Ravager exhibits both the same skills and abilities and a thirst to prove herself to her father.
In the trailer for the season finale, we see a group of men wearing Deathstroke's mask from the island; presumably these are the freed convicts who have been injected with the mirakuru (the miracle drug that gives Slade his powers). We are also given a brief glimpse of a mystery woman who appears to be wearing a stylized, feminized version of Deathstroke's current costume. This difference in appearance suggests that she has a higher rank over the freed convicts. Close examination of her features and facial expressions strongly suggests that this is Summer Glau (Isabel) under the mask. Why she would be given a costume so similar to Slade's is a mystery... unless, of course, she truly is kin.
Matt Estes is a software engineering student. His blog, Syntactic Sugar, is about writing computer code that is concise yet easy to read.
Subscribe to:
Posts (Atom)





















