Monday, March 15, 2010

Ludomancer No More

A couple of factors have led me to take the leap and overhaul my design blog. First, Blogspot announced they’d no longer be supporting FTP posting. I far as I deciphered, this means I’d have to host my content on their servers as well as use a .blogspot domain name. Second, I was getting pretty tired of the word Ludomancer. It seemed clever, if a bit ridiculous at the time of conception and the ridiculous has felt more pronounced lately. I like the new title, and I think it’s something people can spell and potentially remember.Without further ado, here's the new site.

Design By Zero

2007-2010

Labels:

Thursday, January 21, 2010

Nickles in the Toilet: Mini Followup

I just discovered XNPlay. It's an entire review site dedicated to XBL Indie games and is definitely worth visiting if you want some assistance in sifting through the pile.

Labels: , ,

Tuesday, January 19, 2010

Nickles in the Toilet: Vol 1

Here's a quick smattering of Xbox Live Indie games I've played recently and enjoyed. I was originally going to go with the tired cliche' "Diamonds in the Rough" for the title, but I think what I've currently selected is:
  1. more amusing
    and
  2. more indicative of the XBL Indie experience at present
There are some pretty cool experiences to be had if you're willing to fish around with your hands in the filth for a while. Just don't forget to wash up afterward. If I've left anything off it's because I either haven't played it yet or haven't gotten to it yet, hence the volume number in the title.


Miner Dig Deep
This is a fun little grind that has you sending your avatar deeper and deeper down a 2d mine shaft. You mine resources by time limited lantern light to get money for better tools and lanterns so you can stay down longer and dig deeper for better tools and lanterns. Nice relaxing guitar riffs and pretty addicting mechanics.

Arkedo Series 3: Pixel
I've only played a bit of the demo for this one, but it's won me over. Super slick polished visuals, tight platforming controls and a unique gameplay feature where you "zoom in" to sprites to explore them are the highlights of this one.

Gerbil Physics
Pretty short 2d physics game akin to Boom Blox. You have a set number of bombs you can place anywhere on the screen, and you have to use them to knock all the blocks down. The added enjoyment comes from the gerbil sprites that sort of live in each block, and their reactions to being buffeted about by explosives.
Pixel Boarder
Another one of the 2d "physics thing sliding on ramps" games, but the presentation is pretty cool, featuring chunky pixelated visuals and a pretty rad chiptune soundtrack. The interface is a little different as well, with each stick on the gamepad controlling one of the snowboarders arms, with weight shifting and other physical ramifications emerging from pose changes.

Solar
This one was my first actual XBLI purchase. In this game you play a star. Your objective is to attract planets through a pretty intuitive and relaxing gravitational sim. You can also smash the crap out of other solar systems by flinging heavenly bodies into them.

Weapon of Choice
This is a really polished 2d shooter along the lines of Contra, with some really quirky and interesting weapons and giant boss battles. You can tell a lot of love and time went into it.

Fishing Girl
Relaxing fishing grind that spawned from Danc's blog, Lost Garden. Fish to make money to get better rods to catch bigger fish, etc. Simple yet pretty effective.

Kodu
I haven't really scratched the surface of this thing, but it appears to be a pretty robust and powerful visual coding system. It's severely hampered by the limited code sharing abilities and has received very little fanfare. Like RPG Maker and other similar entities, I've avoided it mostly because I could spend that learning curve with real programming. The cubey landscapes are super cool looking though.

Labels: , ,

Thursday, January 07, 2010

Surfacing for Air



Finally back from an extended stay in Rapture. This is mostly a scattershot attempt at recollecting my thoughs and stoking the coals of this thing once more.

Just finished Bioshock 2 with a great team of designers and other devs. Got back from a holiday break and have begun to ramp up on another project that looks promising.

Darksiders shipped recently. I was on the project for a year and a half, and I'm curious to see it after being absent from its development for a couple of years. It's a talented team, and I know they've busted ass to see this thing from concept to physical manifestation.

Currently rifling through my myriad side project ideas trying to find something that grabs my attention and is feasible. Trying to choose between the following:
  • Sim/adventure game where you are in control of a family line of monster hunters. Manage relationships to develop the family as well as the research and development. Use the resources you develop to fuel dungeon expeditions and gradually rid the land of monsters after generations of hard work.
  • 2d platformer where you can occupy different scales by inhabiting and controlling larger creatures that also serve as parts of the exploratory landscape.
  • Exploratory adventure game that primarily consists of traveling across massive landscapes from A to B. Mechanics emphasize methods of travel, morale maintenance, route planning, adversary avoidance and engagement.
  • Figure out a direction to take the internal/external identity prototype I developed recently.
  • Finish a couple of simpler XBLA style games. One is an acrobatic arena combat game involving grappling hooks. The other is an action/puzzley game where you control 2 nodes connected by a string and try to collect moving objects of one color while avoiding moving objects of another color.
  • Co-op cyberpunk mod using the Unreal Development Kit
These all vary in scope, technical complexity and design weirdity, but hopefully I'll nail something down soon and start posting my travails as they come up. Maybe more design related stuff soon as well.

Labels: ,

Monday, August 17, 2009

Shared Worlds: Recursive Cooking Structures

Before I properly intro this particular project concept, I want to bat around some of the subsystems of the game, since it's a bit of an agglomeration. The first system in question is the cooking interface, mainly because it was the most recent system that caught my attention and received a little more fleshing out as a result.

I've always enjoyed life-sim games, ever since the original Harvest Moon on the SNES. Something I've wanted to explore in these types of games is a more robust cooking system, where the player can improvise and even devise his own dishes. Yes, this sounds kind of lame but I'm a sucker for granular crafting systems and the player expressions that can be found within.

The Structure

The path I'm thinking of taking is a recursive, lisp-style structure to a recipe. Working from the top down, the recipe is defined as processes that have parameters that can be the output of other processes. A rough example in some kind of syntactical language might look something like this:

Chili:
simmer[30 minutes,low](mix(brown(ground beef),chop[fine](onion[1/2 medium]),chop[coarse](bell pepper[1 whole],black beans[1 can, not drained],diced tomatoes[2 cans, not drained],tomato sauce[2 cans],))

Chili Spice Mix:
mix(cumin[1 T],sage[1 T],garlic powder[2 t],black pepper[1/2 t],cayenne pepper[1/2 t],cinnamon[1 pinch])

This will probably be more of an XML hierarchy structure in the final version, but this was the first way it popped into my head. Chili, in this case, is the result of 'simmering' several ingredients, including one that is a process, 'browning' with an ingredient 'ground beef'. Another ingredient is 'chili spice mix', which is another recipe of a sort that involves mixing several other ingredients.

The nesting allows for as much depth as I want, and the player can potentially get pretty creative with dishes.

Verbs & Tools

Processes in the above recipe would be executed with different in-game objects the player would need access to. Mixing would require a bowl of some sort, simmering would require a skillet and stove-top. The actual interface for this is still up in the air, but simply having the items in a kitchen should be adequate for now. I'm not interested in doing some sort of mini-game for each step of the recipe at this point.

So each tool has a list of verbs it can enact. The skillet can saute, simmer, fry, brown, etc. Each ingredient has a list of verbs that work on it. Meat can be browned, fried, boiled, broiled, etc. Each step in a recipe then has verbs that are required for that node to be completed, as shown above.

Tool Quality, Ingredient flavor, Character skill

I'm not of the camp that thinks every facet of a game should impact the overarching systems in some significant way. Sometimes expression and choice just for the sake of it is ok. (The extreme case of this for me was Spore, which I think took choice irrelevance a little too far) Having said that, I plan for the choices available in this cooking system to impact and have an effect on the larger systems in the game.

Feeding into this system will be systemic properties of the entities involved, namely the player caharacter, the ingredients and the tools he is using. A lot of these will be raw numbers (e.g. t
ool quality, the character's cooking skill) that can tally up pretty directly to a quality rating, maybe involving some dice rolling behind the scenes. Something I'd also like to employ is a flavor harmony system (discoverable by the player in some fashion) where complementary ingredients will enhance a dish. FoodPairing is a good example of something I'd like to shoot for.

Higher quality means a 'better' consumable for the player. I'm thinking of swiping the stomach meter from Contact (food based items take up space in the stomach when used, and slowly digest, making room for more) and making higher quality foods give better benefit for less real estate in the stomach. (food slots and 'density' colors, stat effects for duration of occupancy in stomach, 'hungry' status effect)

The Hierarchy

To allow for ingredient abstraction (e.g. A recipe simply calling for 'vegetables') I plan on implementing a class system for ingredients. This will tie into the world entities the player will be collecting for use in cooking, and will have a pretty standard object oriented tree structure. There will be higher level distinctions like 'meat', 'fuit', 'vegetable', and within those classes will be progressively finer distinctions, based on how much detail I want to put into the world and the things that can be harvested from it.

This also allows for recipes to call for more arbitrary ingredients. An omelet could optionally include X number of 'vegetables'. A kabob could involve grilled 'meat' and grilled 'vegetables'.

In the next post on this system, I'll go into:

  • Scaling & Automation
    Making recipes serve an arbitrary number of people. Finding ways to make the process for the player simpler (choosing 'make chili') after the first time the recipe has been completed. Meshing with other systems so the player can make devices that assemble food from recipes.
  • Accessibility & Interface
    It's of utmost importance to me that this system is accessible to players. I want to expose all the working parts that the player needs to see to form a model of the system, hide all the unnecessary bits behind the scenes and provide a smooth interface to manipulate the system as easily as possible.
  • Shortcomings
    Explore the shortcomings of the system, ways it could be improved, etc.

Labels: , , ,

Thursday, July 30, 2009

Identity: Interiors, Exteriors

Here are the plans for my next steps with the Relationship/Identity prototype.

Character Creation
A small bit of preamble for the player to establish some preliminary settings before entering the sim.

Gender
Symbolic abstraction of gender. Circle or square, I'm thinking.

Preference
Sort of a sexual preference where you choose one of the genders that your character will be attracted to. This will tie into more advanced relationship modeling later where characters can perhaps fall in love, maybe even have offspring? Don't know if reproduction throws noise into the message or not yet.

Attitude/Color
This will be your starting color. It represents your starting attitude/worldview/personality, and will be more of a part of your character than in the current version. More on this in the next section.

Internal vs External Color
The point of this exercise is to explore the different facades we use when dealing with other people, as well as the bonds that form between people that share a certain outlook on life. Currently, the player is a totally free agent, exempt from any kind of grounding since he can change his color at will. I'm going to implement an 'internal color' in addition to an 'external color' to represent your real feelings vs those you're projecting to those around you.

The external color will be bound by the internal, so you can only stray a certain distance from your true feelings. If you express a color other than your internal color for a while, your internal color will begin to slide towards the external one. This might be a constant gradual process so there will still be alteration if you're frequently flitting between different external colors.

At some point I'd like to explore the concept of chroma representing the purity of someone's convictions. As they glide closer to grey,

Familiarity
When the player first sees a new character they'll appear gray, completely neutral and 'colorless'. The more the player stays within proximity of a character, the more the exterior color will begin to show. I'm thinking about doing this one channel at a time (R,G,B) instead of fading them all in at once, just to delay the hue reveal so the player won't be able to adapt his exterior color at the first faint sign of color. This might be ridiculous though, and I'll play around with the fade in to see what feels right.

After getting to know a character for longer, the interior color will begin to show itself. Matching color with the interior color of a character might result in stronger bonds of friendship or romance. Still thinking about how much complexity I want to include in the relationship model.

External Influences
Dramatic events shape our perspective on the world. Getting mugged, surviving a car crash, losing a loved one, these can all color the way we look at things. My first pass at implementing this sort of phenomenon will be colored projectiles that randomly fire into the scene, re-coloring the first character they collide with. This character is changed forever, both internally and externally.

I'm beginning to wonder if keeping a dev blog this detailed is going to diminish the impact of the final product, or if it's better to put details out in the open like this for critique and feedback. Anyone commenting, feel free to chime in on this topic. Curious what people think.

I'm also looking into a better way to make this available to people, as I'm currently coding in an XNA framework and using a 360 gamepad, which makes for a decidedly unportable experience.

Labels: , ,

Friday, July 24, 2009

Identity: First Steps

I've begun to work more on the prototype for Identity. (Initial post here) I'd initially worked out the color picker interface with a moving avatar and then put the thing down for a while. I've since revisited the little fledgling game and added the characters you'll interact with.

Recapping from the first post, the NPCs are letters of the alphabet. This keeps things as simple as possible while letting the player remember specific characters pretty easily.

Each character is introduced to the world with a random color. This represents a personality type and general mindset. The character then has some basic directives.

  • Wander around, looking for others.
  • If someone is similar to me, approach them.
  • If someone is very dissimilar to me, avoid them.
  • If I'm around someone similar long enough, alter my attitude(color) to be more like them.

The player is perceived by these entities, but is otherwise a free agent. He can change his color at will, and they will act accordingly.

Once I got the basic attraction/repulsion/mimicry behavior in, I was able to watch patterns emerge. One thing that I expected was cliques. You'd get clusters of like minded people that would rove about, accreting others who were anywhere close to similarly minded. Unchecked, the system would stabilize in 2 or 3 major factions.

What I didn't expect was peer pressure. When I was able to go up to a small group, 1-5, I could easily match their color then slowly sway the group along the spectrum to whatever hue I wanted. With a large group, however, every unit was mimicking its neighbor, so I had a lot more competition for swaying a unit to change its hue. The tactic I usually ended up resorting to was physically pushing a character away from the group, then coercing it before it could return to the others.

My next steps will be to make the general behaviors more subtle, and to try and work in an influence stat, since some characters are more likely to sway others to their color than others.

Video footage below:




Labels: , ,