Tuesday, July 26, 2011

Review: In-Game Economics

Summaries from The F-Words Of MMOs: Faucets:

  • Inflation: Increase in price, or Increase in money supply.
  • Faucets and Drains: Inflow and Outflow of currency/items.
  • Game have no fixed amount of good or services: re-spawning and drop from monster.
  • Fixed price for buying (ceiling price) and selling (floor price) with NPC (unlimited supply). Fake economy?
  • Time = Money.
  • Promote specialization and dependency. If you mine more ore, you actually gets more efficient and yeild more than collecting herbs. A herbalist who sucks at mining ore would rather buy from you; and you would buy herbs from him.
  • Rather than NPC selling potions are fix price, perhaps it should follow the market price (become really expensive when there are more buyers than makers). Perhaps limited supply as well?
  • Because of all the competition to unload junk on the open market, prices deflate very near to the floor price.
  • When time is limited, it's worth a lot more.
  • Is Gold farming and buying good? If gold "receiving" is okay but gold "selling" is bad, what's the solution? MMO makers should just sell their money (reduce time to gain money).
  • Treat equipment like equipment (not means of progression): something to be used and replaced (item degradation, item loss). Make them affordable and common.
  • Every items in game is crafted, rely on resource gathering by different specialization (Miner, Herbalist, Crafter).

Checklist to making a successful MMORPG in-game economy

  • Make sure there are resources that are needed that everyone can gather
  • Encourage specialization of labor by making systems that reward players for specializing in one thing, and encourage interdependency by having different specializations require output from other specializations...
  • Possible to change specialization (everyone can work on everything).
  • Build systems that make it easy for players to transact without actually having to interact (Market, Auction House)
  • Get rid of permanent gear. Get rid of gear-based progression! To make the economy more dynamic, to produce more items (and gather resources).

An MMORPG designer has to make the choice between which would be more fun for their game: the aforementioned trio of perma-bind-lootrain or a strong in-game economy.

Resources could be valuable, but how to make resource collection fun? It should be as fun as killing monster, not running around and waiting. Ability to capture monster which produce certain resources?

Max level characters shouldn't even be able to loot lower level weapons, to avoid equipment farming to lower levels?

Saturday, July 23, 2011

Interesting Games


Interesting Games (not necessary good or popular):
  • Fate of the World (Strategy)
  • Valkyrie Chronicle (Strategy)
  • The World Ends with You (RPG)
  • Today I die (Flash)
  • Everyday the same dream (Flash)
  • Ilomilio (Puzzle)
  • Dungeon Fighter (Scrolling Fighting MMO)
  • MineCraft
  • Oddworld: Stranger's Wrath
  • Star Control II


Fate of the World, interesting card-based turn-based strategic gameplay, playing as government/regime to tackle issue like global warming, population happiness, economic growth, etc. I wonder how well the simulation goes, and there are certain biasness towards center style. How about a real world simulation game based on real world time, where the source of influence come from daily news?



Star Control II indeed have funny story telling, which is very engaging. Lots of encounter with alien races, cool.

Thursday, July 21, 2011

Design: Mini Chronos

After getting really excited about actually building a game, doing multiple research and come up with dozens of great ideas, I feel there is a need to take a step back to start small. It is my first game development, and I wanted to actually complete it; not having a great game that never gets released.

Below is a below cutbacks to contain the scope:

  • It’s 2D (I can’t handle 3D anyway)
  • Simple Artwork (strong outline, simple colors with little shading and design). Perhaps Tron-styled or Radiangames-styled (strong colorful outlines only)
  • Definitely no multiplayer
  • Angrybird-like level: 1 set with 12 levels perhaps, possible level expansion later. 3 Star rating for each level (scoring based on time? need something slightly better) - to encourage replay for better scoring.
  • Character Setup: 2 type of ship (small, medium), 4 type of modules (weapon, shield, power, special)
  • 1 Gameplay: Tower Defense-like Battle-mode, kill enemy-collect coins-buy modules/drop special
  • Memorable character: the ship need a captain. Picard? Jack Sparrow? Yoko (Gurren Lagann)? Rei Ayanami (Evangelion)? Big Daddy (Bioshock)? Not spoil when miniaturized. 
  • Personality is main character (cool ship - organic ship?, great captain captain),animation, gameplay, sound, environment
  • Social feature: ship designer. Ability to swap sprites?

This shall be the crucial steps in actually making the battle system really fun (core of the game); the 2nd release should focus more on upgradability, character development, quests and online world capability, with the eventual multiplayer battle system.

Review: Radiangames' Monthly Xbox Live Indie Games Series

1 Guy (Radiangames), develop 7 games in 11 months for Xbox Live Indie Games (sadly still not enough to make a living).



What went Right?
  1. Scope Control: hard to keep a game simple, smaller and more focused the original idea the better, avoided hard technical problems (2D, no multiplayer, single platform, one resolution, fixed-step framerate), safe design, design similar games for reusability
  2. Playtesting: get new players and observe, feedbacks
  3. Restricted Art Style
  4. Upgrades: certain changes are required to make the game better, even it means more time.
  5. Passion vs. Innovation: Build the game you like to play equal more motivation to play, improve and finish

What Went Wrong
  1. Pricing Indecision: set niche game at higher pricepoint
  2. Mental Beatdown: hard to work all the time knowing you're slowly losing money and will have to give up on your dream if things don't go better
  3. Minimal Personality: read this 
  4. Branding Baggage: don't include company name as prefix, use box art logo instead
  5. Too Many Modes
Conclusion: XBLIG is not really financially rewarding, relegated by Microsoft and gaming community; tools are fantastic though.

Review: Casey's Contraptions

Casey's Contraptions is an Indie game developed by Noel Llopis (industry veteran) and Miguel Ángel Friginal (web developer, artist) for iPad




What went Right?
  1. Strong Theme and Style - Character Personality, use toys and household items (instead of industry looking item), enable imaginary goal (rescue explorer from jungle with hotair balloon), strong outline and solid colors.
  2. Social Features: share solutions with friends, level editor (allow download levels created by others)
  3. Iterative Development: add features iteratively
  4. Strong launch: announce 6 months before release (25% into development), followed by twitter and blog, showing at GDC (developer feedback, game press), set release date 3 weeks after submission to Apple, featured as iPad Game of the Week, priced $2.99 (not $4.99) for volume reaching top 10 sales
  5. Enough Development Time: 8 months, early availability of level editor, change game's star rating system, time for polishing

What went Wrong
  1. No simultaneous iPhone Launch: lack of critical mass for game relies on social element, planning 2nd release with lots of new content
  2. Butting Heads Too Much: aesthetics vs. usability, performance vs. gameplay, simplicity vs. interest, uniqueness vs. familiarity, or tea vs. coffee; it is a good thing, but too much debating (than actual implementation) as well, hashing problem due to working remotely
  3. Unnecessary Rework: revision does make it better, problem when looping doesn't converge into a better design (shifting around), iteration testing of UI would help
  4. Not Enough Unit-Testing
  5. Fixed Price Model: Fall off chart after a few week, Microtransaction take more time to implement, selling more content, need larger play base for Microtransaction (2-5% would by extra content)

Tuesday, July 19, 2011

Review: Microtransactions


Extra Credits: Microtransactions

  • Let people play for free if they want; they might eventually decide to buy something
  • Player could earn all type of currency (including those paid by cash, though they have to work really hard) 1) Perception of Fair 2) Once they used the store once, they are likely to use it again 3) soon they realize their time is worth more than a few paid dollar 4) if you don't do this, you are cutting out anyone without a credit cards (TEENAGERS!).
  • Never sell power (quickest path for money; and make player feel like being taken advantage). Sell convenience only (more storage space, perhaps short term leveling boost).
  • Don't split your players (don't do special area or level for paying players)
  • Market research about how much to charge for
  • Build from the design from ground ups (not something to think about at the end)

Review: 7 ways games reward the brain



Tom Chatfield: 7 ways games reward the brain


  1. Experience Bar meassuring progress
  2. Multiple long and short team aims
  3. Rewards for effort (don't punish)
  4. Rapid, frequent, clear feedback (understand a lesson)
  5. An element of uncertainty (rewards, neorological gold mine)
  6. Windows of enhanced attention (Memory, Confidence)
  7. Other people! (collab with peers, player develop self organising and governing system)


Wanting + Liking = Engagement
Ambition + Delight = Flying Beast (Powerful, Beautiful, Pleassure to fly around)

Engagement (both personal and collective).

A Game Committee voted by Players

The Politics of Creative Ownership: EVE Online's Council of Stellar Management brought up an interesting idea, by having a group of voted dedicated players help steer the directions of the game, highlighting the features requested by the community.

Source: Gamespot

Though it might sounds like a good idea, but isn’t that what real life politics should do for us as well? We vote for our preferred candidates, and he or she is supposed to look after our rights and benefits at the central government; sadly we are disappointed most of the time as it doesn’t really work as intended due to several “political” reasons.

Summary about Council of Stellar Management:

  • Why not just use a forum? Poor signal-to-noise ratio.
  • Election is held to select committee (with 10-14% voting rate)
  • Being a committee can be a full time job without pay; spending few hours answering request does eat into the gameplay (should we offer small allowance for our committee for their community work?)
  • Eventually the committee is given more “power”; by allowing them to sit in company’s voting in allocating certain resources to certain teams or certain features.
  • Like any politics, there shall be “corruptions”

Like in real life politics, the committee sounds promising yet it seems little progress is made (some progress in solving the lag problem). The EVE seems to be released in 2003 (8 years), and it seems to be the most popular space-themed RPG; yet it is not that “interesting”. My brother tried it before (I didn’t), but the games seems "slow" (with limited queued slots up to weeks) and seems to focus on mining rather than actual battle. Again, I am ill-informed regarding this matter.

I wonder how World of Warcraft handles their requirement gathering for expansion pack.

Monday, July 18, 2011

Why FarmVille/CityVille are popular?

If I was to build a web/mobile and social game, it’s very crucial for me to understand the success of FarmVille/CityVille series with 100+ millions MAU (Monthly Active Users) and it company Zynga valued at USD 5 billions (which is more than EA, WTF!).

Fundamentally, the philosophy behind the game is to build something popular and addictive (and try to hinder you progress eventually, and you pay by doing free advertisement for them or pay them), not necessary fun. Ironically, it goes against the old age philosophy of building a fun game and others shall follow.

A lot of observations is summarized from the article CityVille Explained Part 1 and Part 2 by Tadhg Kelly.

Source: About.com

It sucks, but it’s Popular/Addictive
According to a CNN Article: Why the no-fun 'FarmVille' is so popular. People don't like it, but they play it anyway. Yup, most of us agreed it’s a boring mindless clicking game, but it’s also very addictive. Most seasonal gamers will agree that the game lack depth and could easily point out a dozen of “cons” about the game. Since it’s so popular, a lot of people are motivated to try to through words of mouth or media advertisement. The real question is, how popular and addictive is it?

Popular through Advertisement, Viral Feeds & Cross-Marketing
A new game always have to problem of being new: no one knows about the game. Thus the game needs media exposure and advertisement; but even a big game developer studio usually allocates a bigger development budget than advertising budget. The folks at Zynga are rich and understand the exponential and cross-border effect of advertising really well, and they are rumoured to spends $50 million on advertising and was one of Facebook’s biggest customer.

Besides advertising, it focuses viral feeds, asking player to post their achievements to Facebook walls every now and then, so that they can “share” it with their friends. The “sharing” usually involved:

  1. Would you like to tell your friends what you have done?
  2. Would you like to ask your friends for help?
  3. Would you like to send a friend a gift?
  4. Would you like to grant a friend’s request for help?

The “sharing” opportunities happens frequently when:

  1. When you attain a level
  2. When you run out of energy
  3. When you build a building that needs employees
  4. When you leave the game open in a browser window for five minutes
  5. When a particular task needs friends to complete

Basically, they want you to generate one of these viral feeds:

  1. A Wall-publish
  2. A Cross-Wall Publish
  3. A Notification Request
  4. An Email

The game is also more than happy to bribe players for participating in its viral spread: cute lonely animals will show up on your farm periodically and as a player you face a dilemma in sentencing them to virtual abandonment and death unless you post on your Facebook wall that you need one of your friends to start playing Farmville and "adopt" the adorable little self-promoter.

Once they build a game and platform with millions of users through advertising and viral feeds, they levy on cross-marketing (using Application Banner): using FarmVille to promote FrontierVille, and using both to promote CityVille. This method is adopted by Applifier, which offer a way for smaller developers to band together and cross-promote to each other.

There are various reported cases of people got roped into playing Farmville when girlfriend/wife insisted they needed to help her out and play with her. Get the chicks and they will get the men for you.

The game is very successful in introducing win-win collaboration, where players are encourage to send gifts without cost, build franchise (more income and rental for both party) and help each other’s with collections of rewards (coins, xp, etc.). All these will results more posting of viral feeds in each other’s wall, and more exposure to their friends’ friends, and also to encourage each other to login more frequently.

Make it really Addictive (in a good and bad way)
The less obvious reason that millions of people are addicted to "FarmVille" is that there's a sense of social obligation to play. If you don't play "FarmVille," your "FarmVille" friends suffer. -- CNN

User “poink” commented, “The real reason so many people play Farmville is because games like this have a direct line to the pleasure center of your brain. It's like being a trained monkey. Every few seconds, press a button. Yay! Reward! Now the next one will be a few seconds later... Give everybody in America free WoW accounts and you'd see the exact same thing. Farmville is just a poor man's MMORPG

The genius in how Farmville has succeed in getting so many people addicted comes down to how it handles commitments on a player's time: every time you play Farmville and plant a crop, you're making a commitment to come back during a 12 hour window or so to harvest your crop, or else you forfeit your investment. – Gamasutra

Using the above method, CityVille achieve a high 30% DAU (Daily Active Users) over MAU (Month Active Users), meaning a lot of players login everyday frequently. The industry average for game is about 10-20%. Open Loops: Starting something and the need to complete them.

The games provide tons of rewards, by dropping Pellets such as XP stars, Coins, Energy Bolts, Reputation Hearts, and Goods; so that you can click on them, collect them, animate with a nice sounds, and feel good about your increasing achievements. The game might occasionally reward an extra drop of one of these pellets as a part of a regular click action; it programmed “random” bonus which are certain to happen frequently to make you feel lucky.

Then we have levelling, which shall give you more precious points, and unlocking more levels, buildings, gifts and etc. (our collection is expanding, yeah!). There are tons of simple tasks, like Collect 10 flowers, and we get more rewards for completing these tasks, and open up more tasks.

Another “killer” method to make you come back every day: Daily Bonus! Shit! It gets better, and it even tells you what’s coming in along the week, and maybe there is a combo gift it you collect them five in a row?

Click Click! Lots of clicking with lots of things to do. Timers used in this dual fashion are incredibly effective. What they do is to deliberately set up a conflict whereby players have to wait to do everything they want (crops take 12 hours to harvest), but in the meantime can do some of the things that they want (replanting doesn’t take energy!).

Last but not least, what make these games successful are simplicity (not too much depth) and little or no strategy. As a seasonal gamer, I always wanted a game such more depth and involve more strategy, so that I can learn and take advantage of the strategy. Perhaps that’s the reason that serious game shall not appeal to casual gamer: because it’s harder to succeed and feel good. Casual games like these are not mean to challenge you, but to amuse you, reward you and make you feel good, and hook you with addictions to come back for more. Now it sounded like drugs.

"Force" you to work for them, or pay them
The rate at which you earn experience does gradually increase; provided that you have enough Farmville friends to allow expansion of your farm you'll start earning more XP a day due to that space. You can also trade coins for experience by buying buildings, but progress in the game is scaled to happen more and more slowly as you advance in it.

The game will eventually introduce some elements which make your life slightly difficult (slow progress, caps, etc.), and provide you with options to solve these difficulties: Either you could ask you friend to play (do advertisement for them), or you could pay them cash to buy your way through; and the cycle is never ending.

A Better Game?
I think most do agree that CityVille is a better game in terms of User Interface and Graphics as compared to FarmVille, and it also had more things to do. Underlying, it is still the same game mechanics: encourage “sharing” to promote viral feeds, more clicking, more waiting and coming back, pay money to make your game life better, etc.

It’s a “better” game than serious game in the sense that it’s simpler to play, with a lot to do and doesn’t penalise you for deploying the wrong strategy (and rewards you frequently). There are some shallow depths, where you plant trees around your buildings for some increased bonus; but don’t have specific rules like you must plant trees next to a water source for optimum performance kind of things. It’s "better" because it had elements which appeal to casual gamers, and it’s set of addictive features.

Less Effective in the Future
Facebook recently cut back on game developers' ability to post updates to users' walls, because people were angry that their newsfeeds were filling up with "FarmVille" spam. Facebook games immediately began bleeding users.

So viral feed might have reduced efficiency in the future (still fairly effective), but they can still leverage on advertisement and cross-marketing.

Conclusions
It’s all incentive-driven. One of the ironies around social games is that they aren’t particularly social. They don’t encourage deep social interaction because such interaction is useless to the developer. It’s all about making you pay, or help spreading the game.

Zynga has made a lot of noise about establishing its own destination site, but none of these games has ever taken off elsewhere, because people won't play them without the ads, the viral reminders and the sense of obligation.

What made *Ville successful again?

  • Advertisement, Viral Feeds (get your friend to play, and remind them to play), Cross-Marketing
  • Addictive: lots of clicking with plenty to do, lure you to come back everyday, lots of rewards/achievements and no penalty
  • Make a simple game with little or no strategy involved (let player do whatever they like in their own ways), and of course cute graphics.
  • It's played in short burst; good for many people who doesn't want to spend long straight hours playing.

Personally, I dislike the directions where this is going. A game is no longer what a game used to be; it had become an amusement and addiction. It no longer provokes thoughts and strategy (or skill). It makes you pester your friends, and the game is not designed to be fun or make the player happy and satisfied; it’s to lure them with goodies in the beginning, and make their life slightly miserable so that they will pay money (or do free advertisement) in order to gain short-term relief. It’s a well-crafted “scam” with bad intentions; but the monetary rewards and proven formula is just too tempting ($5.1 billion). SHIT!

A real social game?

Unsocial 'Social' Games
I think we all agreed that the term “social” game are overrated, where most of them are just games on social network, with little social elements in game. We played mostly in solitary nature and leveling up (building farm, planting flower, construct building, solving quest alone, etc.); while the idea of Army (Castle Age) and Gang (Mafia) is just asking other players to “join” us, where there is no real collaboration and interaction happening besides our power is slightly increased (we don’t even talk or know who they are). We might work together to kill a monster (Castle Age), but with total stranger we found on forum or Facebook link which we does not continue any further relationship building with them after the quest. We don’t really get to play or work together with our real world friend (who are playing the same game) most of the time. I do get minimum social elements such as chatting (helping to answer game related question) and gifting, and some social gesture like wave, dance, high-five, etc. We get social elements in the sense of communication; but not meaningful social gameplay (co-op, competitive, etc.).



Do we want to go Social?
One of the fundamental contradictions of the human condition is that we are simultaneously individuals and social beings. We are each lost in our own heads, with only the limited bandwidth afforded by expression and language to allow us to understand each other. We typically strive to achieve our own needs and desires, often at the expense of others; we are atomistic individuals, striving for our own benefit in a Randian sense.


And yet we cannot grow without the nurture provided by our parents, are driven by our needs to find sexual and emotional partners, have built civilizations that depend utterly on cooperation and exchange, and are most often happy in the companionship of friends.
-- Extracted from Unsocial 'Social' Games by Greg Costikyan

Obstacles of playing together

  • Different Server
  • Different Schedule
  • Different Level (due to different intensity)

Would it be possible to solve the technical issue of the requiring multiple server? We need multiple servers at different geographical locations for speed/latency needs, and we need different "world" due to the congestion (1 million people consume too much network traffic on both clients and server, and visual congestion as well). We understand that real-time RPG consume of network traffic, what if the nature of the game is not that up to the second real-time with limited information exchange, such as Mafia Wars or a slower paced Civilization. What if you can utilize a cloud server which are virtually run as a single server (utilizing multiple physical servers)? Perhaps the Google App Engine is near that vision.

Nothing much can be done about different schedule, except that your friend could lend a "passive" help when he is not log on, such as an AI controlled you friend's character as your sidekicks. Or perhaps an auto-assist when you are under attack.

Problem of playing together at different level is tricky due to firepower and tanking issue. In fact, lower level character shouldn't be allowed to reap the benefit of group killing very high level monster due to leeching/parasiting issue (it is unfair and not "fun"). I guess they can work together in mini-games, which firepower or level doesn't play an important role. Allow co-op in mini games, where we can still harvest useful  rewards. Or we can pool resources to build a castle, or invest in a certain property, or perform research in an ancient technology.

How to encourage social gameplay:

  • Teams: like in a basketball team
  • Diplomacy: Form alliance to take down equally strength enemy
  • Negotiated Trade: Exchange for resources which you do not have
  • Resource Competition: fighting to high resources focal point
  • Hierarchy: pledge allegiance to more powerful player, commander need to turn control of some province to sub commander (which could defect if not satisfied with the commander's play)

Gift and Badge
In game gift doesn’t play a significant role in progressing or leveling, but it’s a very important social behavior of human. We like to give gift as sign of affection or appreciation, with general items like flower or cards, or specific gift like star wars figurine or totoro doll if we know their preferences.

What if we can up-vote another player for doing good deeds? If a veteran player helps answering newbie question, the newbie could say thanks by giving him a Teacher badge (not system given, but voted by players). After a group mission, we could vote for MVP (Most Valuable Player) or the player who sacrifice himself to make the mission possible, or leadership badge for player who coordinated the attack well. We show our appreciation by granting them badges (like the President granting Medals), on top of a word of thanks.

Saturday, July 16, 2011

Review: How to Design Effective Achievements

Summaries based on The Cake Is Not a Lie: How to Design Effective Achievements.


Measurement vs. Completion Achievements
Measurement achievements are given to players for completing a task to a certain degree (like Angry bird star rating).

Completion Achievements are offered to player once the task is completed (in regardless of how well they do). There are 2 sub categories: performance contingent achievements (require skill to complete) and non-performance contingent achievements (award for simply being present).

Best practice: Use measurement achievements instead of completion achievements to increase intrinsic motivation through feedback.

Boring vs. Interesting Tasks
Boring tasks: 1st strategy is associate inherent value through the wording of the task (e.g. Ultimate Farmer). 2nd strategy is to add additional rules or fantasy to the task itself.

Interesting tasks. Instead of trying to create artificial interest in a task the achievements should be attentional, in that they focus the player's attention on important lessons or strategies for the task.(e.g. "The Flying Heal Bus" in StarCraft II to encourage the use of medic).

Best practice: Reward players for boring tasks and give them feedback for interesting ones. Make achievements for interesting tasks attentional.

Achievement Difficulty
The difficulty of achievements is addressed twice by designers. First, the actual difficulty of achievements needs to be on a level that is attainable but challenging to the players. Second, a player's self-efficacy for the task(s) associated with the achievement must be high enough that they feel confident in attempting it.

Best practice: Make achievements challenging for the greatest returns in player performance and enjoyment. Phrase achievements and design interactions to increase player self-efficacy.

Goal Orientation
Best practice: For complex tasks requiring creativity or complicated strategies try to instill a mastery orientation (improve proficiency, tendency to explore). For simple or repetitive tasks instill a performance orientation (to achieve perfect score, take less risk). Try to keep new players, who are still learning how to play, in a mastery orientation.

Review: MMORPG

MMORPG is probably one of the most popular genre for online gaming at the moment, with the poster child of Ultima Online, EverQuest and World of Warcraft. Behinds these glorious title, there are at least a few hundred unknown titles fighting in the same space offering free gameplay with in-game purchase. After browsing through a dozen of them and reading in depth into Eden Eternal, Aika Online and Fiesta Online, I come up with the following observation and idea.

Generics
Like most MMORPG, it’s usually setup in a fantasy-themed (sometimes sci-fi), where we select our race (Human, Elf, etc.) and class (Warrior, Mage, Cleric, Archer, etc.), with a bit of visual customization (skin color, hair, etc.) and start questing. We run around town to get quest, kill some monster and level up for better skill (super bash, fireball, etc.) and equipment (dragon blade, ice armor, etc.).

This is the basics, and of course we have more advance system like pet, crafting, rune stones, guild, etc. How does a game actually differentiate itself if the gameplay and mechanics are almost the same?


Theme & Feel
I do admit the logo/poster, theme, description and art work play a very important role as 1st impression when selecting a game. If the game is realistic, the art work have to be top notched with beautiful character (probably sexy as well). If it’s cartoonish, things have to be cute and clean (since we don’t fall for sexy cartoon character, it needs to have something special like mystic creature).

I guess I am bored with fantasy and sci-fi themed, but I am attracted by Pirates theme, Mixing Old Guns with Magic, or even Magic with Mecha. The artwork and theme just feel good and cool, with something different and refreshing. Rather than traditional theme, I like fusion or something of alternate reality (Final Fantasy costume, equipment and transportations are amazing).

Pet System
I guest a pet system is a fairly interesting part of the game (using a mystic creature rather than another character like us as our sidekick). A good twist to the pet system is transformation (like Pokémon and Digimon), where the pet actually transform into something different and stronger besides just leveling. It could transform into a more defensive role or offensive role (specialization).

We could probably build an entire mini game for the pet (acquiring good quality food, pet training, etc.) and even allow for multiple pet switching, but that is an idea for another day.

Relationship
I really like the idea of relationship, where one of the games allows finding a sweetheart with another player. I think rather than forging the relationship directly (just marry anyone directly as long as they agree); I like the idea of fostering relationship (solving quest together, existing each other, etc.) and gaining relationship points. The relationship could be upgraded from Stranger, Friend, Comrades, etc. After a certain relationship level and by mutual agreement, we could foster deeper relationship as sweethearts, husband/wife to soul mates. Besides love relationship, there is the possibility of Master /Apprentice and Ultimate Comrades.

The benefit of fostering relationship is both social and in game advantage. We could engage in certain activity together such as crafting engraved present for each other, earning badges, private communication lines, intimate gestures, etc. For in game benefit, we can craft certain items only soul mates could perform, allow direct teleportation, combo attacks, unlock ancient wisdom, etc.

Multi-class System
I am a believer that the initial character should be generic, and allowing classing and specialization along the way. One idea is Class switching, where we could have different leveling for Warrior, Mage and Archer, and we can switch freely between them (Level 10 Warrior, Level 3 Mage). Though it gives more freedom to player to change playing style, but it does make each player less unique and also cumbersome to develop all classes. Another idea sub classing, a Mage could learn Warrior as a secondary class to buff up his HP and Strength, thus turning into a warlock.

Clan War
Besides killing each other and big monster or attack/defend city, clan could work together to build or conquer “Wonders”. A clan could conquer Temple of Merlin, thus all mages shall get a 10% buff as long as the Temple is defended.

Battle Arena
I like battle arena as a testing ground to test our firepower, thus we could have simulated enemy in waves, continuous swamp or big boss. We can also do PVP where it can be a single mode, dual mode, group mode, massive mode and etc. There is no harm in PVP, and it allows a ladder board or special equipment and badges for the champion. We can even have a competition for the ability to kill the most number of enemies under a minute.

Badges, Achievement Timeline, Relationship Progress
Besides getting badges, I like the timeline recording of milestone Achievements. Like when we kill Jabba the Hut, when we join a clan war and taken the Black Fortress, or when we 1st meet our Soul Mate. The Badges page (kill 10 enemy in a single blow), Achievement Timeline page and Relationship Progress page (Pet, Sweetheart, Friends, NPC, etc) all make satisfactory bragging view of what we had done (or played).

A Lot of Running Around
I find running around and talking with different people to get quest are the usual practice, but it’s quite annoying (some game created the auto run to NPC or direct teleport to Questing Ground to reduce the annoyance). Rather than having a dozen quests in hand, we really should streamline it down to 1-3 quests at a time (not limiting the quest slot we can take, but the actual quests available). Perhaps 1 Epic quest (the main storyline), 1 Special quest (sub-storyline or special NPC) and 1 time filler quest. About the running around thingy? There should be a magical communication/teleportation device with all quest NPCs are listed and we can communicate with them when we are in town (also avoid problem of many players surrounding a particular NPC).

Tutorial, Questing & Story Telling
Limit the amount of text shown on screen explaining gameplay mechanics or quest story. I’ll be busy playing, not busy reading. Give me a simple liner on what to do, and store the rest of the story in a diary/storybook which I can read if I am interested with the story.

I like the idea of showing a cute character (usually a fairy or mystic creature) when displaying text, it sort of lessens the pain with some eye candy (fairy with the right expression).

Review: Game Design of Lord of Ultima

It is a shame to say I haven’t played this game, and doesn’t plan to because I don’t feel it fits my gaming style (I hate waiting game which require me to login every now and then, it’s a disturbance to my life) and it’s doesn’t get more fun to play as we progress (it’s irony with longer building time and increased micro management of cities). But I feel I could learn a few game design ideas from Lord of Ultima (which is similar to the Haypi Kingdom I played on Android) based on reviews from MMO Hut and Unreality.


The God Oldies
It followed a traditional but workable gameplay, where you build buildings, generate resources, train troops, go to war and repeat again. I was hoping for some innovation or simplification to make it more fun and less repetitive. It does offer a civilization kind of resources where you build woodcutter house next to forest and farm next to river for better bonus; sadly some player said it’s more efficient to bulldoze the land so that you can build more building to generate the resources (protect the natural resources!).

Tutorial Quest
After the tutorial, a series of quests give players a sense of direction, which is like Haypi and its good for beginner. It “teaches” us to build various building, upgrade them, recruit army, form alliance, rise in rank and “reward” us with some goodies. The quest might be boring, but it’s actually a form of tutorial with reward.

It’s a waiting game
The problem with most casual online games are the time mechanics, where it might require a few minutes to do something in the beginning, eventually it will require a few hours or days to perform an action (upgrade building or moving troops). I am free on weekends and would like to play more, but there isn’t much to do except to wait. I am busy on weekdays, but I still have to login now and then to micromanage my cities. I don’t want the game to control my life; I want to play whenever I feel like it, and the my city should grow passively and slowly if I don’t login (the worst is when I go to vacation, it feels like leaving a baby at home).

Why games become boring and tedious as time goes?
The irony with many games is that the best part is always the beginning, where we explore new things and are given new tools or unit and everything goes at a much faster speed (level faster, more upgrades, etc.). Then building take longer time to complete, and there are no more new surprises except some new unit or building (which still function pretty much the same, just slightly more powerful; disruptive or special unit perhaps?), and it get more tedious as we need to micro manage more cities (more boring and repetitive work). Romance of the Three Kingdom (RTK2) has the same problem when we have to conquer china with 40+ provinces, but we can delegate the cities to AI and send in the lower ranking officer. Let me focus on the frontline and go to war! Capture the land, capture great generals, and capture more women and treasure!

Problem of a physical map
There is a great problem about online strategy game with a physical map: we are fixed at a specific location, and our neighbors and resources around are fixed as well. If we have a very powerful neighbor around us, then we are at disadvantage; we shall be picked on, or we have less space to expand even though he is our ally; and we prosper if we are surrounded by weaklings or people who abandoned the game. If we invite a friend to join the game, he might be a few thousand miles away and can’t be of much help.

We can lessen the effects by allowing greater mobility: allow faster travel time by taking train, using magic or portal. Or we can create a virtual space, where you don’t have immediate neighbors; thus eliminating the concept of distance (or distance separation by provinces or continents).

PVP
I am not a big fan of PVP. I like RPG where PVP is optional, or contained within an Arena (which make it more fun and engaged when I am ready). In strategy game, we attack other for greater rewards; and our city is opened to attack when our army leaves the fortress. Even if my army never leave town, I could still be swarmed by a massive army (during clan war, etc.). What is the fun if I don’t attack others? There aren’t much of viable options except to engage in PVP to gain more cities and more resources; and offence is the best defense. We are afraid to lose our city yet happy to gain another; and we worry about losing our new and old city since we need to protect both. I can agree with high risk and high return; but I have to say anxiety might be bad for game as well. In online strategy game, PVP is not optional; it’s the only way to win (together with alliance).

There seems to be only one way to win: expand with more cities, and the powerful will become more powerful. Can I choose to grow only one city into a legendary city instead, without going into war? Can I make ally with NPC natives, thus I shall be protected when I am attacked? Can I offer the best quality iron in the whole continent, where everyone trade with me and protect me?

Money: The root of evil
The free to play model is a double edge sword; it made it easy and cheap to start, yet hard to prosper without throwing in some real cash. The game is painfully slow pace as we progress, thus we have to buy minister to speed up things; or buy more resources. Money should not upset the balance of the game, nor purposely make the game painful and offer solution to ease the pain by pouring in money (that is against the spirit of building a good game).

I know this is hard issue to tackle: motivating player to pay without upsetting the balance. The ideal thinking is that player would want to become a “philanthropist” by donating through in-game payment to support a good and free game; top 100 philanthropists in Caledonia or a Mount Rushmore for you on the map. Or perhaps you can buy your way to become a counselor (like United Nation), where you get to vote for province/building/unit name, controlling policy to control which foreign force be allowed to trade with Caledonia and etc. Of cause you could pay to repaint your city with your own design or create your own flag. Perhaps a luck potion, where the dice you role slightly in your favor for a short duration of time.

SimCity: The Simulation Game

Some interesting ideas from Will Wright who made SimCity, SimAnt (almost forgotten about it) and The Sims.

Now I remembered about the special events such as Alien Invasion, Fire, etc. which are pretty cool

Open Ended Game: Play as you desire!
Now I kinda remember that SimCity is an open ended game with no win or lose situation (we don’t fly to Alpha Century like in Civilization). There is no must do to win list; just built as you like and watch it grow. Of cause the typical me try to build the biggest metropolis on a flat land, with a gigantic waterfall for hydro power and a river for port to prosper (and having ships cruising around). I didn’t try to build a resort city as planting more trees doesn't have extra benefit besides aesthetic.

"What kind of city do I want? For me what is success? Is it a big city? Is it a city with low crime? Or low traffic? High-land value?" I always go for high-land value, high population and high revenue (like our typical world). In a typical game, we always expect military victory? But civilization does allow victory through diplomatic or technology (space race) beside world domination. Though the options are opened, but sometimes the game is biased and geared towards a certain direction (Diplomatic is fine; but the enemy will still kick your ass if you lose out in military power).

The many ways to play a game is a fine idea, which requires more thinking and refinement is make it really feasible.

Why TheSims work? Focus on the Player
The Sims is about running our daily mundane, boring life in a virtual world; how is cleaning toilet and buying furniture more interesting that building city or killing aliens? People inherently are narcissistic: anything about them is fascinating. The “hero” in the game is actually the player; and everything in the game is about the player? Reality TV? We used to enjoy watching glamorous superstar, now we are watching average joe doing everyday stuff on TV.

Simulation Game
It seems like simulation game is another dying breed. I hardly can remember why SimAnt is nice; but the idea is interesting. I like Dungeon Keeper where my minions just go around doing their stuff; where I assert little control when necessary. I create the environment for my creation to prosper, that’s cool. Set the stage for passive gameplay, while we perform “minor” tweaking to set the stage as we like it.

Game idea: create the environment (food and breeding grounds) for our creations to grow, keep them happy and motivated by providing what they need (entertainment, delicacies, sports, etc) and engage in war or compete in terms of achievement (population, income, colony size, etc).

Thursday, July 14, 2011

Civilization and Ultima gone social

I think it’s a trend that legendary game maker are making a comeback through social games (Civilization and Ultima). Lord British does point to a few interesting idea:

Notification & Instant Co-op
Do we actually “play together” with our friends in game, or we just happen to play the same game? We found a cool game, we ask our friend to join, and then we go our separate way immersing to level up as soon as possible, without too much collaboration and co-operation with our friend. We might not be able to do the same quest together because we are of different level; or it’s too hard to pinpoint his location (or he is busy with something else), thus I just group with someone near me. Lord British suggest notification (like Facebook stream), where the system automatically update our friends of key actions (login/logout, questing, killed a boss); where our friend could respond easily by clicking on the notification saying “hi” or “congratulation”, or remove the stream if it bug them. I do find it difficult to quest with friends due to timing issue (they might be on a one hour quest when I login), or it might be too difficult to locate him. What if the is a notification “John is fighting the Kraken and is critically wounded”, and I can teleport him and aid him immediately. Or “John is at the entrance of Hall of Death and request for reinforcement”, thus we can teleport in and join the party. That would really be coming to the aid of a friend in need.

Instant Game
One of the reason for the popularity of social games or mobile games is its accessibility and simplicity to start. We no longer need to read some reviews, go to the shop and buy the game, and wait hours for installation before we can even start. Now we just go to the online market (App Store or Android Market) and install (still take a few minutes to download and install); and we can try the game before we pay. On Chrome Web Store, we can click and play almost instantly (no installation); my friend can send me a link and we can start to play instantly on PC, iPhone or Android Phone, iPad and Tablet (and Chromebook as well). If you like it, you can pay to access higher level without request re-installation (it just happens automatically). It’s extremely simple to start playing immediately.

Casual Gamer gone Advance?
I think we can agree FarmVille is a very simple game, and perhaps that’s one of the reason why so many people played it (non-gamer can pick up easily). FrontierVille and CityVille had increased in complexity and depth, and it outperformed FarmVille. Perhaps the gamers are ready for something of “a real game”, something more advance with more depth (not necessarily more complex).

Fishing?
Lord British talks about fishing game in Ultima Online, which remind me of Chocobo farming and racing in Final Fantasy. I think mini games are important to bring some “lightness” to a long and serious game; and gamer could be very competitive and demand depth to the mini games as well (weekly champion, different breeds of Chocobo, and use different kind of bait for different fish, etc.). And you can earn badges with ladder board in mini games, cool eh?

Metric Driven Feedback
I am not a game developer, so metric driven feedback is new to me. Basically each user’s action is recorded, thus we can have a statistic on what the user like to do most. Do they like fishing more, or Chocobo racing? Players like the Kraken Quest, or the Mermaid Quest? As time filler, players solve puzzle, collect herbs or just leveling? Is crafting popular? Once we know statistically what players like to do, we can spend more time to enhance the feature.

Civilization: Building a wonder together
From the civilization article, there is a feature where a few people will work together to build a wonder. Each player contributes some of their time and energy to build something great. Besides working together in group quest, perhaps we can introduce something which can span over time and doesn’t require all of us to be in the same place and same time. For example, we have 7 days to take down an enemy fort with massive health points, thus we have to work round the clock to launch attack and weaken it slowly (sounds like Castle Age); or we need to pool resources to build a space station where everyone could repair and upgrade their ship.

Wednesday, July 13, 2011

Review: Eight Ways To Make a Bad Tutorial

Learn to make good tutorial from The Designer's Notebook: Eight Ways To Make a Bad Tutorial:
  • Don't force user to do tutorial (especially not when they restart again)
  • Don't cause a lot of reading and pressing next
  • Describe looks and location of button/menu by picture or highlighting them on screen
  • Make sure tutorial flow doesn't go missing halfway through leaving the player guessing what to do next (the magically reappear again)
  • Make sure a mistake doesn't cause long repeat of the tutorial again (ability to skip perhaps?)
  • Don't encourage your player like a four year old (good job for clicking A); or humiliate them.
  • Ability to skip tutorial when he had learned enough (perhaps chapterized the tutorial?)
  • Tutorial is required, period. Though it can be simple.
  • Remember to try your tutorial with complete novice.

Battle System

Final Fantasy VII battle system is quite fun, where it’s semi a cross between turn-based and real time: where you’ll need time to fill up your action gauge before you can attack or cast spell. RTK2 is nice where you can move your generals around the enemy and perform a simultaneous attack, and later RTK allow archery unit to attack from far. Master of Orion automatic battle is where two rows of ships moving and shooting each other until total annihilation. Tower Defense game is nice to play, but it get bored after a few hours. There was a game (which I forgotten the name) where the automatic battle system queue the Carrier and Drone ships in front as “shield”, while other high power ships shoot long range beam from behind (those with more “shield” usually wins).

I like a passive battle system (automatic mode) with some kind manual intervention for added advantage. The reason for passive battle system is that it allows you to showcase the awesomeness of the army or ship which you had been building all these while, and the manual intervention add some really simple but fun control so you don’t feel bored watching.

But now we are in RPG, and we only have a main character (the mother ship) most of the time (perhaps some secondary ships later as helper). It will be like a tower defense game, where the mother ship shall be in the center (movable) will being attacked from various angle by enemy forces. Each action requires power to sustain, and the power recharge at a certain rate. We can choose to enable shield/auto repair, fire laser or torpedo, or deploy fighter drones as long as we have enough power to sustain them. We can conserve power when we are not attacking (store into battery), but you need to disable certain weaponry when we are low on power. All weapons will auto fire once enabled (doesn’t require manual control), and we can launch special attacks (worm hole, EMP, etc.) as long as we have the power to burn and it’ll take time to recharge. Thus, power recharge rate and battery size play an important role to support advance weaponry; while module which consume less power is critical as well. The strategy to select the right balance between fire power and power consumption is very important.

At more advance level, we shall have AI controlled supporting ship or battle station to lend us more firepower; or nearby planet which assist us with their artillery or star defense system, or channel additional power to the main ship. Ally might jump in to lend firepower to us half way through, or use cloaking ability to buy time to recharge battery in between waves of enemy. Nearby asteroid, comet, solar, moon or nebula (like the effects of Terrain) shall play a certain roles which affect our battle. We can move nearer to a Solar to recharge energy faster through solar panel; or the asteroid can we used as a shield to protect our ship.

Tuesday, July 12, 2011

Review: Using GWT and Eclipse to Build Great Mobile Web Apps



Summaries:

  • Design different view for different devices (Mobile, Tablet, Desktop)
  • Specify each ViewFactory with its corresponding Form Factor in the config file
  • Orientation Change: Use addResizeHandle, check for Potrait (Height > Width) or not, and adjust accordingly
  • Use MVP Pattern: Business Logic consist of Presenter (driving the View/Factory) and Model (DTO, RPC, cache, validation)
  • Make it Snappy: use ClientBundle, use Code Splitting/runAsync
  • GWT helps dead code elimination, duplicate function removal, obfuscation
  • Use Application Cache to load resources (works with iPhone and Anroid, Chrome, Safari, Firefox). Use AppCache linker (GWT 2.4).Use LocalStorage (GWT 2.3). Application Cache might still have some defects.

Review: GWT best practices for writing smaller, faster apps



Performance Tips:

  • Reduce HTTP Request, use ClientBundle
  • Use Scheduler for efficient Loop
  • Use Gwt-RPC / RequestFactory to do batch request
  • Gwt-RPC type explosion (because of serializer and deserializer for each subtype): use contrete types (ArrayList, not List), Limit Polymorphism with Gwt-RPC, blacklist certain RPC types, consider RequestFactory
  • Don't use Widget if HTML will do (unless event responds is required, but you can't add Widgets to HTML elements; counter with HTML panel perhaps?), use LayoutPanels, use Cell Widgets
  • Place is bookmarkable state, is History Management (handle app state when use click back or open a specific form directly through specific url)
  • Place + Activity + Code Splitting (load JS on demand)
  • Compile Faster: draftComple, set one User Agent and Locale
  • Shrink JS (around 7% reduction for 300K size): -XdisableClassMetadata (Disable some java.lang.Class methods like getName), -XdisableCastChecking, -compileReport, set compiler.stackMode strip, set compiler.enum,obfuscate.names true, set CssResource.obfuscationPrefix empty

Sunday, July 10, 2011

Game Concept: Army Building

Note: This is a high-level game concept (introduced at later stage)

Castle Age and Gangster War got a very similar army building methods, where you invite other players to join you (thus increase your army size). Your army strength is determined by your army size and total equipment (each army member to take up the best equipment available), and perhaps your personal stats as well.
The concept of army building is interesting (besides personal strength building), but the process of asking other players to join your army is pretty pointless. It doesn’t foster relationship or cooperation, which everyone just tries to mindlessly increase the army size as fast as possible by utilizing forums, Facebook or world chats (posting your id and ask others to add you). Those who didn’t figure out this trick will lose out drastically.

Another thing is the calculation of Army Strength is not transparent (some logical hint, but it doesn’t always add up), thus all we could do is to continuously increase the army size and equipment (which is not very satisfying).

RPG is always about personal development and fighting (active fighting, where your control is required) based on your personal stat and equipment. Army building adds another layer of strategy twist to the game, where to recruit other players (or NPC) to perform a passive fighting (no physical control is required – player can be away, and stat plays an important role). In a space themed game, the RPG-ship will perform mission (active fighting), while the Strategy-army helps to defend city or play offensive (passive fighting) in a fraction’s missions.

What is the better way to recruit army? There are 2 approaches, either to recruit Player or NPC. To recruit player, we should not allow it to recruit just anybody easily. We need to keep track of Player to Player relationship score, where the score will increase if we perform mission together, assist, donate, defend, etc. It helps to really appreciate and know our friend list (and motivated to help them as our own interest), rather than just party with new people every day and forgotten who we played with yesterday. Once the relationship had reached a certain level, army joining is allowed.

Another approach is building relationship with NPC or specific races, where they shall provide us with certain number of army once our relationship score reach a certain level. We accomplish missions provided by the NPC and wouldn’t attack them to very tempting short-term benefit.

As our character level, we shall be able to recruit more army. Each army could be equipped with certain equipment. Some depth could be interesting, but it should be kept simple to avoid nuisance once the army grow in size. Perhaps the army is like a Mech, where we craft special Mech machine for them.

The next question is should the army or the equipment usable in RPG mode (personal mission), or it should be a totally separate matter? We could make the Mech usable as drones on the main ships, thus we can choose to leave the Mech to perform missions on their own (passive), or bring them on board for our personal missions. To avoid over complexity, the Mech should not be customizable like the main Ship, but we have Schematic/Blueprint to craft a better Mech (good Modules can be sacrificed as raw material for a Good Mech?).

So each army consists of a soldier (Player or NPC, passive representation) and a Mech, where extra Soldier without a Mech is useless, while extra Mech could be used on board the main ship (or different Mech for different purpose, e.g. Mining, Repair, etc). The army should be kept to be a smaller size (max 12, average 2-6) to allow more personalization and appreciation. Each soldier would have a certain stats (no experience though), as well as the Mech.

Game Design 0.1 (Ark of Chronos)

This is the primary design behind my 1st web game (Ark of Chronos)

  • It will be space theme, where you control a ship (upgrade, customize, etc) and perform missions
  • It will be mostly RPG (fighting enemy, leveling, collect and upgrade, etc) with a strategy twist (resource collection & building, strategy-based battle system, etc).
  • It will start with a basic ship, jump into simple mission and battle system, then follow by ship customization with new equipment (save the more complex idea for later version)
  • The cool and addictive part shall be ship upgrade and customization, and officer recruitment.
  • Each ship with come with a few basic static stats (not customizable), thus it’s important to find or build a good ship: slot number (to install modules), cockpit size (for offices), drone bays (for fighter drones) and armor. It will be categorized by Class (which represents its size and functionality).
  • Modules (customizable): Weapon, Shield, Engine, Power, CPU (Rare, improve overall performance), Special (Auto Repair, Repulsive Beam, Scanner, Jump Gate, ECM, Cargohold, etc)
  • Officer: Captain (Multi-role, Improve performance of other Officer), Navigator (Evasive, etc), Gunner (Accuracy), Engineer (Repair Shield), Mechanic (Repair Drone), Hacker (Immobilized Enemy), Scientist, Doctor, Spy, Explorer, etc.
  • Need a clear distinction between benefit of module and officer (Evasive Module or Navigator?). Officer could gain experience and increase stats, died or injured in battle.
  • Drone: Mining, Scouting, Attack, etc.
  • Collection: Reputation (Increase Rank), Credit (Money), Relationship (with other Races), Crystal (Raw Material).

Routines:

  • Attack Pirates (Increase Reputation, Random Modules, Credit, Crystal)
  • Mining (Deploy Mining Drones while defend against Hostile attack) – Find places with high mineral deposit
  • Privateer (Attack freight/Raid city for expensive items, immediate rewards), worsen relationship

Missions (Stated Rewards) / Relationship Building (Increase Relationships, Awaits Periodic Goodies)

  • Standard / Routine Ops, Epic Missions
  • Attack & Destroy – Depends Shield and Weaponry
  • Defend (Rescue, Repair, Mining – Depends on Drones)
  • Exploration: Find Items / Artifacts / Planets / Creatures / New Races - Depends on Engine, Scanning
  • Build something (Modules, Ships or Others: Planetary Structure, Drones, Bots, etc)
  • Good or Evil Deeds: Kill the Space Whale, or Communicate with them

Rewards / Goodies

  • Reputation, Credit, Crystal
  • Ship / Modules / Drones, or Schematic (for Crafting)
  • Items (Material for Crafting)
  • Officers

Friday, July 8, 2011

HTML5 Game Development Ground Up



Resources: Code, Slides

Summary:

Elements of a Good Game

What are the elements of a game which I really like?

  • Simplicity in the beginning (easy to get started), and added more depth as we progress (expose more features as player level up).
  • Play at your own pace (allow continuous hours of game play, or a few times a day, or once a week, or stop for a month and pick up again) without imposing penalty by not logging in frequently.
  • We don't like heavy penalty upon death (loss of precious equipment), but light penalty is required (a pinch or effort set-backs is important to foster risk and reward trade-off, but not a stab with irreversible painful consequences).
  • Avoid specialization in the beginning (e.g. select fraction or race), but it's a progressive selection along the way which shape our characteristic and advantage (good or evil deeds, permanent transformation at later stage, etc).
  • Simplicity of resources (we don't need 10 types of common redundant resources such as metal, wood, stone, marble, diamond, etc), each with a different purpose and rarity. E.g. Gold as currency, Wood as general material, Precious Stones as material with greater rarity (for higher level stuff), Rune Stone for Material Crafting.
  • Collection: we like to collect rare artifacts, great generals, precious stones, etc. Other type of collection include Pokemon collection of monsters, Final Fantasy collection of new spell (learn from monster).
  • Enhancement: Increase Stat, Skill Point Distribution
  • Recognition and Reward: Leveling & Title (unlock reward or ability)
  • Harvesting and Craft: finding materials to craft something special
  • Long Term Relationship Building with Tribe/NPC
  • Encounter new races (with their own uniqueness) and allow further unique interaction with these races (attack them for instant reward, or build relationship for long term prosperity)
  • Only drop Meaningful/Useful/Quality Items (we don't need 1000+ low grade items/equipment's which we probably would not use it, and end up selling them for gold only).
  • Quality Material Construction/Crafting (we don't need 1000+ crafting recipe which creates lousy equipment) using special material (the material list should be a simple and meaningful eco-system, so that we don't end up keeping tons of different materials which we won't use, or don't know how to use).
  • Special Stones and Socket-ed Item (add special ability to our equipment: enhance power, cold effect, etc).
  • NPC/Drone Development (allow us to hire and develop side-kicks or mystic creatures, or a team of Captain, Navigator, Gunner, Pilot, etc.). There should be some experience and stats, but not as complex as the main character.
  • Mini Games like those in Final Fantasy could be quite entertaining at times
  • Economy Ecosystem: As an alternative way to get resource in a quick manner, or make a profit. Should not involve complex price checking, or location-based pricing, transporting goods, or need to member and write down pricing, etc. A powerful search and trend observation (chart) mechanism perhaps.
  • Special Artifact (Unique Item): get them through rare boss drop, treasure hunting quest, high level relationships with certain tribes, championship, increase luck or scouting capability
  • Quest: Shouldn't have too many similar or no-brainer core quests until I don't bother to read them (causing me to click on as many quests as possible, and just hack and slash until all the quests are magically completed). 1000+ similar quest for more gold or more experience doesn't sound very fun. Time filler or hunting quests are acceptable (clear separation from core quest).
  • Physical Map and Travelling: Travelling shouldn't cost too much of annoyance (or too time consuming). Allow fun transportation like Bus/Hovercraft/Flying Fortress or Horse/Ostrich/Dragon.
  • Skill Tree or Tech Tree should not be too complex with too many branches (distinction between passive low effect and active high impact). Need to solve problem of saving precious skill point for higher-level skill, thus scarifying the current firepower (some low level skill must not be overridden by higher level skill).
  • Special Enemy: Mysterious Ghost Ship, 1 Million HP Gigantic Robot, Space Kraken in Wormhole (hostile environment)
  • Time Filler Activity: Kill for Experience, Treasure Hunting, Harvest for Crafting, Mini Games, Questing for Relation Building with Tribe/NPC
  • High Level Stuff: Clan or Castle Building, City Development, Massive War
A lot of features are fun, but try to avoid over complexity by including everything (you can't be both Strategy and RPG, there need to be a major and minor for hybrid). For example, Spore changes the gameplay drastically as you progress, thus broken the continuity (some might not like the different gameplay/genre at the next level).

BIG NO NO
  • Doesn't involve too much brainless repetitive clicking (e.g. click to harvest or water each of your 1000+ plants)
  • Doesn't involve asking me to invite my friends in order to get certain rewards
  • In-game payment (Real Money) should only offer convenience (or cosmetic), and does not upset the balance or offer too much competitive advantage (and should not hinder progress)

Thursday, July 7, 2011

Using GWT for Game Development

Why use GWT?
  • Abstraction for Different Brower and Platform
  • Ability to leverage on Java ecosystem, utilising existing Java game libraray like JBox2D
  • Real Time Debugging
  • ForPlay Game Engine, Asset Management, I/O System
  • Abstract Network Call & JSON (not WebScoket yet)
  • Ability to compile for HTML5 and Java (and Android), and Flash (ActionScript) *Apply to ForPlay only, not the entire GWT


More GWT Videos:

Game Platform

Let’s say I wanted to build a non-graphic intensive game and I wanted wider reach, I would filter out closed-heavy-graphics platform like Xbox, PlayStation, Nintendo and PC Native as well. To have wider reach, probably the web is the best way to go, and HTML5 would provide better capability as a web game platform (else I would need to resolve to Flash, which might not be very promising in the future). Chrome Web Store and Chromebook would increase the reach of web apps.

On the mobile front, people tend to use more native apps than mobile web apps; and to develop for each of the mobile platform (iPhone, Android, etc) could be quite a lot of extra work. Should I use HTML5, or Native Android or iPhone?



HTML5
HTML is pretty “ready” nowadays, with Canvas (for Graphics), Storage, Offline Mode and Web Socket which is crucial for the development of a game. I am quite sure Chrome could do HTML5 pretty well, but I am not sure about other browser especially IE. I am worry about Android’s Browser (and other Mobile Browser) capability and HTML5 support might be lacking behind Chrome.

HTML do support some native hardware and feature, such as Capture Image, Microphone, Location Awareness, Multi Touch, etc.

Perhaps Google Web Toolkit (GWT) for Game could be used to increase productivity on HTML5 development. There are more mobile libraries such as Sproutcore and jQuery Mobile; perhaps utilize Modernizr for feature detection and fallback. Refer to some HTML5 Mobile tips.

Android Native
Besides power and deep optimization, there are more hardware integration and API: Compass, Bluetooth, Gyroscope, Barometer, NFC, USB Accessories, Android@Home's Hardware. The ability to integrate with other apps and call native functions, such as SMS, Contacts, etc. There is a System Event Listener (listen for Incoming Calls, etc), Truly Background/Scheduling (Conserve Battery), Rich Offline Support (Synchronization), Notifications, etc.

Hybrid Approach
We could include WebView into a native app, and there is a HTML5 and Native bridge (HTML5 could call native, and vice versa). Problem is WebView might not have the full capability of a browser (certain HTML5 feature missing?).

Perhaps by using GWT, the Java code could be used at Android easily while churning out HTML5 for the web apps?

Conclusion
I would still go with HTML5 for the wider reach (praying HTML5 does live up to its reputation and promises), and the write once run many places (though platform optimization is still required). Hopefully mobile web apps are more discoverable in the future, and desktop and mobile browsers do become more standardized in terms of its HTML5 capabilities.

Wednesday, July 6, 2011

2D Graphic

One of the thing I always wanted to learn is how to create 2D Art (I am used to manipulating art in Photoshop, but not creating them). Besides, I couldn’t afford to employ an Artist, and it would be hard to communicate with them if my ideas keep changing.

Thanks to the “Space Shooter Player Sprite” tutorial by PHS Studion, now I can make cool aircraft design.


Airplane Sketch from Arizona Aircraft Painting


The basic frame. Not that cool yet, but it'll be with further "upgrades".

The Start of Game Making

Ever since I played Koei’s Romance of the Three Kingdom II (RTK2) on my 386 machine, I started to wander about how to build a game.

I am exposed to C++ and DirectX (non-game related) at my 1st job more than 10 years ago, thus I read plenty of GameDev and Gamasutra. Building a game was pretty difficult at that point of time involving mastering of DirectX or OpenGL (problems with different graphic cards) and developing a game engine. Later I am aware of the GarageGames as the distribution platform, and accessibility of Torque game engine for under USD 100. But the code is still too massive for me to handle, so is 3D graphics. I attempted a Visual Basic 6 clone of RTK2, but never finished it.

I concluded that building a game is too difficult as a one person project, thus I burry the thought for many years to come. As time passed by, I felt the genre of games had moved from good old strategy games to real time strategy, then to 1st person shooter, then to some franchise thingy and MMORPG, and now social games; I realize they never build the games I like anymore, perhaps I am the minority of the older generation. Everything had gone into 3D and action, and the only thing left is Civilization.

Besides RTK and Civilization, I do enjoy:
  • Master of Orion
  • Shogun: Total War
  • Diablo
  • StarCraft
  • Simcity
  • Dungeon Keeper
  • Pirates!
  • X-Com: UFO Defense
  • Final Fantasy
  • and Plenty of Tower Defense games
As I grow older, MMORPG like World of Warcraft is just too time consuming for me (though I am tempted by it's latest free starter edition). I want something casual yet addictive with the depth Strategy and RPG. I wanted something light where I can play on a browser (without taking the full screen), and on my Android device when I am bored and on the go.

Android or HTML5 seems to be the perfect platform for non-graphic intensive game while providing greater mobility and reach. I did consider XNA, but it's platform is restricted to XBox and Windows (not lightweight enough perhaps? but resourceful ...). C++ and DirectX are too heavy and time consuming for me.

Besides, serious work could be boring at times (even though it still intrigued me), and it’s time for me to pick up a hobby and fulfilled my dream of game making during my free time (rather than browsing more blogs or playing some unsatisfactory android games).