Stop that Thief!

February 3rd, 2011

This, kids, is how you act like a complete bastard and ruin things for everyone:

Counterfeit Lugaru on Apple’s App Store

What’s going on here is that Wolfire Games released the source code to their game Lugaru as part of the second edition of the Humble Indie Bundle a little while ago. Essentially, a great deal where you get loads of good games as well as source code for a pittance. Great deal indeed for a guy calling himself iCoder (Michael Latour) – he decided to use the source code for Lugaru to release it himself on the App Store. And to make things even better, at the tenth of the price of the official Lugaru HD release.

“Naah, I can’t be arsed to make a game of my own! I’ll just grab this code…and steal these assets… There! Hah! I wonder why more game developers don’t do it like this instead!”

I’m completely flabbergasted. My flabber is all gasted. Or maybe my gast is all flabbered. From Wolfire’s blog:

iCoder was very unhelpful in response to our emails (their feedback form doesn’t seem to work), but Kotaku managed to get an interesting comment for their article, they responded “we have every legal right to market and sell the software” and, “the license we were granted allows for non-exclusive redistribution of the source code or the compiled product, modified or unmodified, for a fee or free of charge.”

So, the code was GPL’d and thus this Michael Latour thinks that the art and sound assets fall under the same license. Insane. The gall of it. Let’s see, in how many ways is this wrong?

  • It’s illegal, first of all.
  • It’s immoral and unethical, secondly. To such an enormous degree that it’s ridiculous.
  • This little stunt will cause others to think twice before releasing the source code for a game.
  • He’s releasing a game at a pitiful price, speeding on (ever so slightly) the race to the bottom with regards to game prices.
  • His little stunt requires the time and effort of the original developers. It’s not just a passive loss of revenue – it requires them to actively pursue this in order to get it removed.
  • Even though it’s blindingly obvious that the game will be pulled off the App Store, he’s still earning money from it – at the expense of the original developers. Think about that. No matter what happens, he will probably have gained something from this because it’s going to be too much work getting him to cough up the dollars he’s earned.

And I’ve probably missed a number of other points.

I’m all for open source. In some cases. But a game is heavily (I’d say to most part) dependent on assets, so the code itself serves little purpose. If you have some clever algorithms it makes sense to release the code, but I have a hard time seeing how general game code is useful for anyone. With that in mind, this little incident hasn’t exactly made me more favorable toward releasing source code for any games. The risk of people like Michael Latour confusing the source code and the assets is simply too great.



The Game You Develop is Never the Game You Planned

January 27th, 2011

When I was sketching up the designs for Wildhollow, it was a wildly different game compared to how it ended up. I had wanted to make a mix between Harvest Moon and Viva PiƱata, with strange genetic manipulations and animated crossbred animals that ran around, playing with balls and other things in a large environment. Instead, I had to cut down on the animations to an enormous degree – so much that the animal handling parts became simple abstractions. “Buy animal, feed, brush, sell for profit.”

And there were many other cutbacks and deviations from my original plans. Most of them due to budget constraints. Some, because it was a bloody awful idea to start with, or plain laziness time constraints…but in general, it was due to art requirements and the budget.

Now, with Spandex Force: Superhero U, I’m facing the same problems. Let’s mention the Sidekick Situation, as an example.

Sidekicks

When I made my original sketches I had been playing way too much Dragon Age: Origins, and I loved the character interactions. “Hey, why not make something leaning towards that,” I thought. I also had played way too much King’s Bounty: The Legend, in which you can select a helper character that aids you in various ways. So I got a great idea: there shall be fellow students at the school with whom you can develop relationships, bicker and squabble about various things, and eventually (if you complete a sidequest or two) select one of them to become your sidekick.

Now that reality has caught up with me I’m noticing a couple of flaws with my plan:

  1. Having loads and loads of dialogue may sound like a cool thing, but it’s really not all that cool to have to write it. Why couldn’t I remember how much time it took to write all those lines for Wildhollow? Not to mention, try to think of worthwhile things for the characters to say.
  2. Picking up characters works in a game like King’s Bounty, since it’s focused on exploration and discovering all the secrets that lie hidden in the massive game world. This doesn’t work all that well in a game that focuses on puzzles, and don’t feature a massively huge game world – to put it mildly.
  3. It’s hard to think of suitable bonuses for having a sidekick. A passive bonus somehow? Or an attack bonus in the battles? Both? Or just a cool thing with no particularly good bonus? Balancing things becomes a bit iffy.
  4. Screen real estate. I’m planning on porting the game to mobile devices, and it really gets cluttered up already as it is. Power levels, experience points, health, equipment, etc etc. Not to mention that I want to add some acheivements which will have to be presented somehow. And now I want to add another character, possibly with his or her own statistiscs, as well? Hey, I want to keep this game simple!

So, my current thought is to have the fellow students as mildly amusing interludes now and then, and that each of them will offer a voluntary sidequest – for example, Lighting Lad is being bullied by the Wombat and requires your assistance. No need to add sidekicks right now; maybe I’ll save that for the sequel…



Spandex Force: Superhero U Battle Arena

January 14th, 2011

When I released the original Spandex Force many called it a Puzze Quest clone, something I don’t really agree with. It’s highly “inspired” by PQ, of course, but I made some significant changes. For one thing, it’s focused on superpowers rather than matching skulls to damage your opponent, and it is also impossible to heal since I wanted quick matches. The latter point leads to a more significant difference between Puzzle Quest and Spandex Force: my game is intended to be played casually.

That mindset has continued with Spandex Force: Superhero U. If anything, I’m aiming for even more casual gameplay, with small and fast games that will be over in a couple of minutes – easy to pick up and just have a go.

One area in which that shows is in the Battle Arena that I’ve been working on lately. I want to have an online component in the game, but I also want something very simple that will work for everyone. This is what I’m going for right now at least:

  • If you have an account, all of your heroes will be stored both locally and on a server. All information about the hero is stored, including some statistics about the gameplay style in battles – for example, what powers are used most frequently, what tokens does he tend to favour, and so on. This is transparent to the player, and he doesn’t have to do anything.
  • If a player enters the Battle Arena, he will be able to play against AI representations of these other players. The game tries to suggest suitable matches, and the player simply chooses whom to do battle with.
  • In order to determine a good match, each stored hero has a force level that is determined by his level + his total physical/elemental/mental powers (including bonuses from artifacts). This can range from 4 to…well…2-300. There’s no real upper limit there.
  • To make the battles worthwhile, you’ll gain XP, money and reputation (different resources in the game) after each won battle. These can be used later on in the Adventure Mode.

Okay, so that covers how the battles against other heroes work, and what the matching will be determined by. But what else will there be? Rankings, of course!

I haven’t decided on the exact formula, but there will be win/loss statistics in the Battle Arena, with different points awarded depending on how big the relative difference is between your hero and your opponent. All of this will be used when creating top lists.

“Plural,” I hear you ask. Indeed, there will be multiple top lists. One global list, for all the heroes, but also lists for six different divisions.

A hero’s force level determines his division. I’m temporarily using boxing terms to define the different divisions, but that will definitely change:

  • Flyweight – force level 0-19
  • Featherweight – force level 20-39
  • Lightweight – force level 40-69
  • Middleweight – force level 70-99
  • Heavyweight – force level 100-149
  • Super Heavyweight – force level 150+

Of course, since a player gains levels and powers he won’t remain in a division for very long. But this system potentially opens up for people who want to make heroes explicitly to be in the top lists of the various divisions. How? Very easy: the XP, money etc that you gain in Battle Arena matches won’t take any effect until you enter the Adventure Mode again. So… If you have a level 6 hero that you want to use to compete in the Featherweight divison you simply never play again in the Adventure Mode with him or her. Will anyone actually do that? Who knows…but the possibility is there.

Regarding the actual layout of the Battle Arena, I’m trying to be as lightweight as possible. When you enter the arena screen you will get some info about your statistics (wins/losses/division/rank, etc), and you will see four random opponent heroes you can battle. (Two in the same division, one lower, one higher – or something like that.) If you don’t like the heroes in question, you click a button to get four new ones.

You can also view the different top lists, and choose to battle the heroes there. I’m essentially creating a positive feedback loop: people who play a lot will advance in the rankings, and – since others can more easily choose to play against those heroes – their statistics will increase even more. I think that it’s a good idea, but I’m not sure about that.

The keen observer will note an absence of many things normally found in online components. No online battles against a live opponent? No friend lists? No chat? Etc etc. Nope, none of that. At least not right now. I’m fairly convinced that all of those things would be past the point of diminishing returns. I’m also hoping very much that what I’m proposing will be enough to give a fresh and interesting optional gameplay component, beside the normal Adventure Mode!



Copyright © 2009 KarjaSoft