July 25, 2009

My Super First Day – Whisper

So, someone I know has created this cool new superhero universe-collaborative writing project-thing called “My Super First Day”.  And I’ve contributed to it.

Whisper

Pretty fun.  This whole writing project thing may even continue. ;)

Comments Comments | Categories: Fiction Writing | Autor: JohnEvans




June 3, 2009

Game Design Basics: Equipment

Equipment.  Why do games have it?  Is it to give the fantasy a bit more realism, or at least plausibility?  Is it because all the other games have it?  The truth is that there are solid design reasons to have equipment in your game.  However, it’s possible some developers don’t even know the good reasons, and that can result in shoddy design.  So, since I’ve been thinking about this recently, I thought I’d go over this basic game design area.  It all has to do with interesting choices.

Let’s take an example; let’s say there’s some item that provides 5 Defense.  Then there’s another that provides 10 Defense.  In some games, these bonuses will simply accumulate; in this case, it’s just a matter of getting every item.  That’s not very interesting, though.  What if these items were, say, helmets?  Then you could only use one of them.  In that case, you’d still want to accumulate every item, or at least the best one you could find at that moment.  There might be some issues with balancing out, say, what you could afford to buy vs. how good it was.  But mostly there’s not much of interest here.  Not only that, once you get the 10 Defense helmet, you forget all about the 5 Defense one.

However, let’s say that there’s a helmet that provides 10 Defense, but also one that provides 5 Defense and 5 Speed.  Now this sounds like more of an interesting choice.  Of course it all depends on the stat system, but here are some of the things we think about: Is Speed more important than Defense?  Is it more important in some situations?  Would it be profitable to wear one helmet in one situation and the other helmet at other times?  What if you can also change your body armor, which has its own varying effects; What strategy will you use in choosing your items there?  Will you specialize in increasing one stat, or will you take a more balanced approach?  With more types of equippable items, there are more profitable combinations.  These all lead to interesting choices.  Not only that, in this scenario the “lower-level” items are not simply superseded by later ones.

Many games allow a character to accumulate items that provide benefits.  It’s definitely worthwhile to think about these systems of benefits, to make sure you have some interesting choices for the players.

Comments Comments | Categories: Game Design | Autor: JohnEvans




May 31, 2009

Game Design: Leveraging User-Created Content 2: Context Switching

After writing my previous article on leveraging user-created content, I’ve been thinking about the subject some more.  I had one more insight I felt I should share.  But first let’s back up a bit…

A lot of times in games you work with sets of data.  Data is just information, 1s and 0s, the contents of variables; it doesn’t have any meaning in itself.  For data to mean something, it has to have context.  You “view” the model in a certain context.

When I talk about “leveraging” content, all I’m really talking about is switching the context.  A classic example (one example where software actually does leverage user-created content) is Streets of SimCity.  This was a racing/combat game published by Electronic Arts; the player went on missions involving driving around a city.  The really interesting thing was that the player could import city maps from SimCity 2000, and these cities would be rendered in full 3D to create custom driving environments for the player.  (SimCopter had a similar feature; the player could fly a helicopter around an imported city.)

The point here is the context switching.  In the context of SimCity 2000, a city is (roughly speaking) an arrangement of buildings and zones that have economic effects on each other.  However, in Streets of SimCity, the city is an arrangement of buildings and zones that define 3D geography.  The underlying data has not changed, it’s just that the games view it in different contexts.

With this in mind, we revisit the question: In what situations would it be appropriate and/or easy to leverage user-created content?  Now the answer is more apparent.  To leverage content in a new situation, you must view it in a different context so it has a different meaning.

Comments 1 Comment | Categories: Chaoseed, Game Design, Web-Based Games | Autor: JohnEvans




May 8, 2009

Scenarios

I recently picked up Zoo Tycoon: Complete Collection in the bargain bin and I’m having fun with it.  I love games where you get to create and develop things, and Zoo Tycoon does its job well.  (It has isometric 2D instead of 3D, which means less processor load, brighter colors and more visibility!)  However, playing it has got me thinking about “Scenarios”.

When you start up Zoo Tycoon you can play a “Freeform” game, a complete tabula rasa which you can develop in any fashion you see fit.  There is a losing condition–your zoo loses so much money that it goes out of business.  However, there is no true win condition and no restrictions (other than initial conditions like zoo size and starting money).  Instead of playing a Freeform game, you can instead play through “Scenarios”, each of which gives you a very specific set of constraints.  Often the zoo is partially built when you get there, and often your construction options are limited.  There is always a set of objectives that must be completed, within a set time limit, for you to win the scenario.

Of course, Zoo Tycoon isn’t the first game to implement scenarios; they’re a pretty common tool in strategy games.  SimCity Societies encourages you to attain Achievements, each of which is basically a scenario in itself.  Galactic Civilizations 2 has a number of scenarios that form a history of the war against the Dreadlords…and some that are completely different, just for a change of pace.

So, what is a scenario exactly?  I’ll go ahead and advance a definition:

A scenario is a set of objectives and constraints within a game.  It is possible to play the game in a completely unrestricted way, but while playing the scenario the player attempts to fulfill the objectives while working within the constraints.  There is an initial condition, the situation in which the player starts, and a win condition, which the player is working toward.

The interesting part of this definition is the second sentence, which implies that a scenario places unusual constraints on the player, thereby creating an experience that is somehow outside the norm.  Without this caveat, the definition could apply to anything.  It could apply to Super Mario Bros., for example; the player attempts to defeat Bowser while working within the constraints of the level designs and gravity.  This reductionist viewpoint could be useful, so we’ll keep it in mind.

So, to have a scenario you need gameplay that is restricted in a special case.  A good example of this is the web-based game Billy vs. Snakeman, specifically the Wasteland missions.  During Wasteland missions, ordinary Strength bonuses don’t count; Range, therefore, becomes much more important.  The usual bonuses of allies do not take effect; only special Wasteland allies can be used.  Similarly, Chakra costs are multiplied by 10 (and even, eventually, 100), meaning that only special Wasteland Jutsu can be used.  The player must scramble to find items, allies and bonuses that will allow him or her to solve these special missions.

The Wasteland missions are basically a “side quest”; there is nothing that forces you to complete them.  When you start out, you have no Wasteland gear, so your initial condition is fairly weak.  There is a win condition–one final Wasteland quest that provides a permanent reward.  (There is no “losing condition”, in that the only way you can lose is by giving up and turning your attention to some other part of the game!)  So, in my view, this is a good example of a scenario.

The interesting thing here is that most people might not think of Billy vs. Snakeman as a “strategy game” in the same vein as SimCity Societies or Galactic Civilizations 2.  However, it does allow the player to develop a situation (your character) over time, and it does allow a certain amount of freedom as to which actions to perform.  And if you don’t like your situation, you can start over…by creating a new character, if nothing else!

Another valuable example is Kingdom of Loathing.  Another web-based character development game, KoL focuses on humor, but it does have a lot of content and some elaborate strategy.  To summarize: Once you have completed the main quest in KoL, you may “ascend“.  When you ascend, your character’s status is reduced to starting levels and you do the whole thing over again–with a couple of differences, of course.  You may change your class, which results in a very different experience.  You may also choose a few sets of constraints to make your new playthrough more exciting–in other words, scenarios.  “Casual” allows you to use items from your previous ascension(s); “Hardcore” does not.  “Teetotaler” disallows consumption of alcoholic drinks (a good source of extra turns and stats) in exchange for the promise of a special bonus item upon completion of the run.  “Moon signs” unlock different special areas, each of which provides their own unique items and bonuses to assist you in your new life.  Not only that, players have created their own scenarios to play through to provide even more interesting experiences.

Kingdom of Loathing has enough variety in the player actions that these scenarios can be interesting; the constraints can really create new experiences.  But let’s go further, let’s try to hybridize these two kinds of scenarios.

What if, in Kingdom of Loathing, there was an accessory that provided a stat cap; each stat could not be more than 50 while you were wearing it.  And there was an area that you could only visit if you were wearing that accessory.  And there was a quest that required adventuring in this area to receive a special reward, with monsters that were difficult.  Players would have to find skills or items that provided effects other than stat bonuses to defeat the monsters guarding the treasure.  This would provide an experience outside the norm, and that is the point of scenarios.  This is a tool that could be applied to many games, opening up the range of experiences they can provide.

Comments Comments | Categories: Game Design, Role-Playing Games, Web-Based Games | Autor: JohnEvans




April 30, 2009

Game Design: Leveraging User-Created Content

For years now I’ve been interested in games as tools for creative expression.  I like games where you don’t just develop a skill, you create something as you play.  Once you have created some bit of content, it’s possible to reuse and repurpose that content; to leverage it.  There is one obvious game to talk about, an elephant in the room, but I’d like to start with a simpler example.

Recently I’ve been playing a web-based game called Billy vs. Snakeman.  It’s a parody of various anime series, but it’s also a fun game in its own right, with some clever features.  In its most basic elements, BvS deals with developing your character over time.  You increase “your” stats and collect items; these stats and items allow you to pass challenges within the game.  The interesting point here is that you’re not just experience the game, you’re also creating a piece of content–your character.  That character exists within the database whether you’re logged in or not.

BvS has a feature called the Arena where you can “fight” other characters.  In truth, this isn’t really like a player vs. player (PvP) thing; whether you win or lose, you don’t affect the other character at all.  (There are more PvP-oriented aspects of BvS, if you’re into that.)  When you perform the “Fight in the Arena” action, a character is randomly chosen from the database to be your opponent.  That character and your character are compared to see how they perform against a random challenge; ties go to your character.  If you win, you get “Arena Reputation”, a currency that can be spent on certain items (items that can only be purchased with Arena Reputation).

The interesting thing here is that the second character is simply a piece of content that exists in the database.  The other player is not notified and is not affected in any way.  However, that player has spent time building up the character’s stats and items, as well as creating a customized name and possibly an avatar image to represent that character.  So each character is an interesting piece of content, and the characters are leveraged to create an interesting experience for this particular feature in the game.

Now for the more complex example–Spore.  Spore consists of five phases, but in terms of this post they each have the same game flow.  When you play Spore, you are creating something–a cell, a creature, a building, a spaceship.  Usually these bits of content have restrictions on them having to do with gameplay; for example, creatures need legs and feet to move around, so all created creatures have legs and feet (unless the player specifically tried for a pathologically strange one).  With that in mind, and the social and technical design of the “creator” subprograms, most of the content looks appropriate; that is to say, creatures look like creatures that can walk around, buildings look like dwellings where creatures could live and work.  (Whether the content is socially appropriate is another question entirely!)

Once content is created, it usually gets shared to the Spore servers (user settings can change this).  What this means is that your creature gets uploaded to the server, then it can be downloaded into someone else’s game.  Then when they wander their galaxy and explore alien worlds, they might find your creatures living on those worlds.  Similarly, when you wander your galaxy, you find it populated with creatures created by other players the world over.

As we can see by now, Spore was built around the idea of leveraging content created by users.  User-created content is shared to make other users’ games more interesting.  The content is used in a “faux-multiplayer” way.  You meet other users’ creations as if they were other players playing the same game that you’re playing.  They answer the challenges of the game in their own ways, and you get to see the result and compare it to your own strategy.

The faux-multiplayer idea has one big advantage–it’s easy to design.  You can take one user’s data and treat it as if it existed in another user’s game world.  You can have both sets of data following the same game rules.  This is fun because it can inject more interesting variety into the games; the assumption is that the process of play guides the players to create interesting content.  One pitfall is that players might arrive at the same answers to the game’s challenges, resulting in everyone’s data looking the same.  This is an issue worthy of its own post, but let me say that Magic: the Gathering has addressed this problem better than anything else I’ve seen.  Magic is solely a multiplayer game where each player plays with a customized deck of cards; there are well-nigh unlimited combinations of cards that would stand a chance of winning, each with their own strategies.  Therefore creating a deck is itself a piece of creative expression that gets pitted against an opponent.

Now that I’ve gone over the basics, I’d like to speculate about new directions.  The way I see it, content leveraging can be divided into two segments; you encourage users to create interesting content, then you adapt that content in such a way as to improve the experience for someone else.

At this point I’d like to talk about a couple of web-based games I’ve created.  First is Phantasma; in this game, players portray wizards inhabiting a magical castle.  The emphasis is on developing your stats through “research”, learning spells and creating enchanted items.  Next is Chaostorm, a more abstract sort of game focused on creating items with procedurally-generated “recipes”.  Players can ultimately create “Scopes”, which assist them in finding items they need, and “Battle Items”, which boost their stats for PvP-ish contests.  Of course, because I’ve created both these games, I have access to all the content for both of them.  In Phantasma is a location entitled the “Kipatsu Shop”, known for selling items from “other worlds”.  In this case, the shop sells items from Chaostorm!  Randomly selected Chaostorm items are used as templates to create Phantasma items with appropriate power levels and prices.  Chaostorm Scopes are sold in Phantasma as “Elemental Scrutinizers” that assist a wizard’s research into the magical discipline of Elementalism, and Chaostorm Battle Items are sold as “Elemental Projectors” that increase a wizard’s spellcasting ability in that same realm.  The name and description of the item are imported directly from Chaostorm (with “Elemental Scrutinizer/Projector” prepended to the item’s name).  In this way, the content from Chaostorm is used to create interesting new items for Phantasma, in a carefully controlled process.

Chaostorm is a game designed to encourage users to create interesting content.  However, even less “experimental” games can yield intriguing bits of content.  As we saw with BvS, a player character itself is the sum of the player’s choices, their answers to the game’s challenges.  A long-time player of BvS has created an elaborately customized piece of data that represents a personality within that world.  This would hold for all sorts of games classified as “RPGs”, whether multiplayer or not.  Other games yield different types of content; SimCity is an obvious example.  (Will Wright came up with the idea for SimCity while designing maps for the background of a helicopter game; he liked designing cities so much he made a game out of it.)  With SimCity the player is tasked with creating a city.  There are a slew of city-building games that imitate this design; Caesar, Cleopatra, Stronghold, et al..  However, strategy games such as StarCraft have city-building elements as well, even if they’d be more likely to call it base-building.  There are any number of space-trading games that feature customizing one’s starships.  Oblivion allows one to purchase dwellings and fill them with furniture, although there isn’t much in-game encouragement to customize your home exactly how you wish.  As I see it, there are two ingredients for interesting content creation; there must be restrictions to guide your users into creating content that makes sense, and there should be enough possibilities that not all content is identical.

The second part of the process is adapting the content for new purposes.  I believe this is the part where there are still great possibilities for advancement.  Once you have a city, for example, you can have the character walk through it–but that’s easy.  What if there was a game where the player bought a city in a bottle?  SimCity Societies allows the player to create cities that have different “stats”, such as Spirituality or Industry.  Perhaps the city in a bottle is an item–the character could wear it around their neck in the “necklace slot”.  And cities with high Spirituality would provide bonuses to MP or Magic stats, while cities with high Industry could increase Strength.  Or, you could have an item that represented another character–made into a voodoo doll, or maybe an item that provides a link to their strength.  And that would provide some customized bonuses depending on the other character’s stats.  The point is that there are many different types of content that games require, and many of them can be “filled” with data provided by other games.

(EDIT: I wrote a little more on this subject for Part 2 of this article.)

Comments 1 Comment | Categories: Chaoseed, Game Design, Uncategorized, Web-Based Games | Autor: JohnEvans




April 15, 2009

AS3 and images part 2

Previously I talked about using images in AS3. Now I’ve figured out a further enhancement to the procedure I described.

In that previous article I talked about adding an image to the library and instantiating it as a BitmapData object.  Then I talked about creating a Bitmap object, but there’s a problem; in the AS3 reference, on the Bitmap page, there’s this nugget of information:

Note: The Bitmap class is not a subclass of the InteractiveObject class, so it cannot dispatch mouse events. However, you can use the addEventListener() method of the display object container that contains the Bitmap object.

This makes it impossible to turn a Bitmap into, say, a button.  However, there is hope!

Instead of making a Bitmap object, make a Sprite object.  Then fill the Sprite’s graphics member with the bitmap.  Specifically, use the beginBitmapFill(), drawRect() and endFill functions.  Here’s some basic code to get you started:

var t_IconClass:Class = getDefinitionByName("picture0.png") as Class;
var t_BitmapData:BitmapData = new t_IconClass(0, 0);
var t_Sprite:Sprite = new Sprite();
t_Sprite.x = 64;  // Position it wherever you want
t_Sprite.y = 128;
t_Sprite.graphics.beginBitmapFill(t_BitmapData);
t_Sprite.graphics.drawRect(0, 0, t_BitmapData.width, t_BitmapData.height);
t_Sprite.graphics.endFill();
t_Sprite.addEventListener(MouseEvent.MOUSE_DOWN, SpriteClickFunc);
addChild(t_Sprite);

Comments 1 Comment | Categories: Flash Games | Autor: JohnEvans




March 5, 2009

Game Design: Junk Food vs. Nutrition

It probably won’t surprise you to hear that I often think about why people play games.  For a while I’ve been batting around a metaphor that I find useful: Junk food vs. Nutrition.

Some games are simply fun.  They provide some sort of pleasure from manipulating the components or developing skill.  One of my favorite games of this type is Time Pilot (it’s available on XBox Live Arcade if you’re interested).  In Time Pilot, you pilot a futuristic plane that flies around shooting enemies; once you shoot enough enemies the “boss” appears, and when you defeat that you get to the next level.  That’s it.  Oh, there are a couple of wrinkles like point bonuses if you defeat all the enemies in a “wing”, but really that’s all it is.  And it’s quite fun.

Games like this I consider “junk food”.  They sate your desires, they provide enjoyment, but they don’t encourage you to “grow” at all.

This begs the question, what do I mean by “grow”, and what games would I consider “important”?  Of course this is all subjective, but this is my blog, so here goes.  I consider games to be “important” if they provide you with new information and new ways of thinking about things, if they encourage your mind to grow in some way.

For example, consider Portal.  Portal’s portals prompt players to think in new ways about space and motion.  Also, its story provides a new twist on the classic “enemy computer” trope, and its setting evokes a particular “research gone wrong” sort of horror.  These are things that guide the player to new thoughts and new information.

Now, some people will say that once you get all the “nutrition” from a game, playing it ceases to give you any new information.  That’s true.  Games aren’t infinitely “nutritive” (although some, like Master of Magic, feature so many emergent strategies that you can “profitably” play them for years).  After playing Portal for 10 hours you’ve probably gotten all the information you can from it, and now you’re just developing your portal-flipping skills.  At this point the game is “junk food”.  Also, some would argue that even a game as simple as Time Pilot has valuable information; there’s the interesting, if sparse, time travel premise, and there are various skill atoms you come across as you learn to play the game.  As no game is infinitely nutritive, no game is entirely junk either…Unless it’s merely a rehash of things the player has seen before.

Let me say that I don’t think “junk food” is bad.  If you want nothing more than fun from a game–there’s nothing wrong with that.  I’m certainly not going to tell you which games you can play.

But just think…If you want to grow, you can’t do it with junk food alone.

Now, as a relatively inexperienced game designer (compared to some out there, at least), I don’t feel as though my games are better than junk.  I don’t claim to be producing worthwhile games, yet…However, I do always try to include some “nutrition” in them, something new, something that makes people think, something that nudges the craft of game design just a little bit forward.  Phantasma, for example, has a somewhat original system of modeling spellcasting wizards, and it also has player-created “sculptures” and player-written books.  Chaostorm is a neat Web 2.0-ish game mechanic developed into a (simple, admittely) browser-based game.  And Aching Dreams takes resource management down to first principles to create a simple but flexible game framework…and, of course, it has sex.

Of course, this model informs the games I make, but perhaps more importantly it informs the games I play.  I’ve played a bunch of match-3 games, of course, for about five minutes each; they’re junk food.  However, Puzzle Quest: Challenge of the Warlords is a game I’ve devoted lots of time to–it illustrates how you can replace “standard” RPG gameplay with other mechanics, it explores the match-3 mechanic in a couple new directions, it allows you to develop your character in ways that influence the match-3 gameplay.  And it’s pretty fun too.  Conversely, I downloaded and played the demo for Castle Crashers, but I didn’t spend more than a few minutes on it.  Sure, it seemed well polished, but it was a four-player beat-’em-up like Final Fight or Teenage Mutant Ninja Turtles…And sure, the animation is great, but game design isn’t about animation, it’s about information.

So, if you design games, are you creating junk food or a healthy snack?  If you play games (and, nowadays, who doesn’t)–How much time do you spend with junk food, and how much with stuff that actually helps your mind grow?  (I’ll admit that my “junk food time” is, well, let’s just say greater than zero!)

Comments Comments | Categories: Chaoseed, Game Critique, Game Design | Autor: JohnEvans




February 3, 2009

The Roll of Heroes

Recently I attended Global Game Jam 2009. It was interesting; I don’t have anything too urgent to report, I’ll make a full, thoughtful blog post about it later.  For now I want to talk about something else.

I was thinking about the question, how does an indie game developer make money?  People have tried all sorts of things.  It seems to me that the best way is selling a product, or perhaps a subscription.  Some people sell advertising on their websites.  Kingdom of Loathing sells in-game items (well, they call it “donations” but it’s basically selling).  They also sell T-shirts.

Some folks take in donations and call them donations, not promising anything in return, except that they often offer a sort of lagniappe upon receipt.  An omake; a bonus, in other words.  For example, Andrew Hussie is a comic artist and not a game developer (well, that can be debated but let’s leave it for now)…If you donate to him, he draws a non-canon comic panel (or strip!) inspired by whatever “prompt” you give him.  And Tarn Adams (“the Dwarf Fortress guy”) will send you a crayon drawing if you donate…plus add your name to the Bay 12 Games Champions List.

Now that, that is intriguing.  It got me thinking of something I could do.  Something I might call…The Roll of Heroes.  (Or something better if it occurs to me.)

The idea is simple: If you donate some money to me (that is, to Chaoseed Software), your name will be added to “The Roll of Heroes”.  This will be a list somewhere with your name on it; probably a webpage listing everyone who’s donated to me.  (Unless you want to stay anonymous–since you’re the one giving me money, I’m more than willing to accomodate!)

The webpage listing is the only reward that is guaranteed.  However…If you have donated, your name is forever recorded as someone who supported me in a very real way.  And I’m bound to remember that.  So just as an example, let’s say your name is “Catherine”.  Completely random, off the top of my head name.  If I’m writing some fantasy world background and I want the name of a revolutionary heroine…I might just take a look at my Roll of Heroes and say “Oh, I can name her Catherine!”.  Or perhaps I might name a city “Catherine-on-the-River”.  The point is, your name has a chance of being immortalized in one of my games.

Of course, it doesn’t have to be a name.  Let’s say you love the number 57 and you give me some money–the 57th Legion repels an invading army.  Or you’re overly enamored of the phrase “Now we’re getting somewhere!”.  If the Roll of Heroes says “Now we’re getting somewhere! — $20″ then I’m going to have characters say it if I can possibly sneak it in.  Or you have a trailhead leading to a website…well, if you have a trailhead, contact me directly and we may be able to work something out even without money. ;)

I should mention that this whole idea is just that, an idea.  I haven’t implemented it yet, and I have to give it some more thought before I actually do it.  I’d welcome criticism, though, so feel free to tell me what you think!

Comments Comments | Categories: Chaoseed, Game Design | Autor: JohnEvans




December 27, 2008

Mini Game Design: Poker Panic

For 3-7 players.  Uses a standard 52-card deck.

  1. Shuffle, deal 7 cards to each player.
  2. Players trade cards amongst themselves.
  3. After a while (time limit?) trading ends.
  4. Each player uses the cards they have to construct the highest-scoring poker hand they can.
  5. Highest hand wins.

The information problem

Notice I’ve said nothing about what sort of information is allowed to be passed.  How do you know the other person will stick to their deal?  Do you have to reveal the cards before trading them?  What happens if you trade cards and suddenly someone says “Wait, you said it was a heart, but this is only a 3 of hearts!  I don’t want this, give me back my card!”.  Also, is it difficult to make deals with someone sitting across the table from you?

Playing on a computer solves many of these problems.  Any decent chatroom interface allows the players to chat with each other both publically and privately.  Also, I can envision a trading interface that would make things easy.  The trading interface would look something like this:

  1. You choose a card(s) to offer.
  2. You choose how to present those card(s).  If you were trading the 7 of hearts, there would be options for calling it “One 7″, “One H”, “One Red”, “7H”.
  3. When both players are finished with the trade, they see the details of the trade and can examine it.  (“Trading One 7 For One D”)
  4. If both players confirm, the trade is executed.  If either player cancels, the trade is cancelled.

This solves the problem of not getting what you expected by making it part of the game.  Yes, you might have gotten a 2H, but you saw that you were getting “One H” and you pressed “Confirm”–it’s your fault!

Notes

You may trade unequal numbers of cards.  Is a hand with four cards a legal hand?  I would say for this game it should be.  If you trade away all but four cards, but those four cards are four kings, you deserve to win!

Obviously there’s room for variation; giving the players fewer cards to start with would probably restrict their freedom, but giving them too many would shift the emphasis more toward simply arranging the cards you already had.  Playtesting is certainly a good idea here.  One thing that might be fun would be to shuffle two decks together; that way things become more uncertain and random.

Comments Comments | Categories: Card Games, Game Design | Autor: JohnEvans




December 14, 2008

AS3 and images; Aching Dreams 2

I upgraded to Flash CS4, and I’ve been working on Aching Dreams 2, as well as simply learning ActionScript 3.0. So far I’m just working on the programming framework; the story, gameplay and characters are still being, ah, fleshed out.

Here’s something interesting I’ve discovered:

When you add an image to a Flash file in the library, it becomes an “embedded asset”. In AS3, you can use the getDefinitionByName() function to find the embedded asset class based on its filename (well, its linkage name, which is by default its filename). Then you can instantiate the class and get a BitmapData class; you can use this to construct a Bitmap class, then use addChild or addChildAt to display it. The really interesting thing is that the documentation says the BitmapData constructor takes a height and width…but this doesn’t seem to matter in the case of embedded assets. Pass the constructor anything you want, even 0,0, and it should still instantiate and display correctly.

EDIT: The followup post has more about this and a better way to pull it off.

Comments 1 Comment | Categories: Adult Games, Flash Games | Autor: JohnEvans