Showing posts with label Tsel do Bahn. Show all posts
Showing posts with label Tsel do Bahn. Show all posts

Friday, September 24, 2010

Tsel do Bahn, Part 2

My Final Project has been kicking into high gear - we have Alpha turn-in on Tuesday, and as the QA Producer, I've been busy helping the programmers and artists hammer out bugs left and right - but I've still had some time to work on my own personal project, Tsel do Bahn. I've basically made two big pushes: Improving the player's ability to impact himself (and his awareness of it), and the player's ability to impact the environment.



Above: The improved HUD, with status indicators and the Sheathed Weapon.

The first thing I'll mention are potions, and their statuses. You can see those statuses indicated in the HUD on the image above; from left to right, they are Armor Up, Attack Up, Speed Up, and Invincibility (star sprite courtesy of Super Mario All-Stars). Each of those statuses are currently granted by a potion, used from the hero's inventory in the Pause screen as a (stackable) one-shot item. Drinking multiple potions of the same type will combine the durations of the potions, but will only use the value (effectiveness, or strength of the status granted) of the weakest potion.

The 'Sheathed' weapon is my interpretation on Zelda's classic "have more than one tool accessible at a time" mechanic; here, you select the Sheathed weapon on the Pause screen using the Talk key (defaulting to Left Alt), and switch between them using the Tab key. This still allows you to have more than one tool at your disposal without going back into the menu, but keeps me from having to worry about that tool's effect happening if you talk to someone, and from having to get away from the number of buttons on a Game Boy - if Weapon is B, and Talk is A, and Tab is Select, with Enter as Start/Pause and the Arrow Keys as the D-Pad, then I'm set on buttons for the game.



Above: The Fosse Grim weapon, about to break a breakable block.

The other push I've made, allowing the player to interact with the environment, has focused on a set of three tools: the Cane of Somaria (idea from Nintendo); the Fragarach, or as I misspell it, the Fargarach; and the Fosse Grim - tools of Earth, Wind, and Sea, respectively.

Tsel do Bahn already had the Sokoban functionality in it; namely, you can push blocks into pits to turn the pit into passable terrain. Using the Cane of Somaria, you can create a block of your own, wherever you like, and push it into a pit. If you use the Cane again, though, the old block will be unsummoned, and the pit will un-fill, becoming untraversable again.

The Fargarach is a sword that, when charged up - ohr, yes, I've implemented hold-the-button-down charge attacks, by the way - creates a gust of wind that pulls enemies towards you, or pulls you towards its endpoint, much like a conveyor belt. There are, of course, other gusts of wind that can exist without being summoned by the Fargarach's help. A stream of wind can be stopped by pushing a block in its path, including a Somaria-summoned block. A stream of wind (including a Fargarach-summoned one) can also turn a windmill, visible in the image above, middle-bottom; this acts much like a switch or a button, causing things to happen when activated by wind, or when deactivated by stopping a wind with a block.

Finally, the Fosse Grim is a violin that acts as a ranged weapon, shown in the image above. When its charged-up attack is used, its musical note will create a temporary waterspout on impact, which can harm enemies further. This waterspout will also destroy breakable objects, including cracked blocks - which, yes, can be pushed around to block wind or fill pits.

The three tools above are going to form the backbone of puzzle-solving elements in Tsel do Bahn - I may implement more tools, but I can now say that there are enough in there to form enough non-boring, non-repetitive puzzles that the game will be alright if I don't add any more tools. Combined with the ability to switch to a second tool without pausing, and the ability to boost one's combat potential for a limited time and at a cost of resources, I can fairly say that Tsel do Bahn is now transitioning from "Tech Demo" to being an actual - dare I say it? - game.

But, it won't be a real, full-fledged game until it has a few other things... Like, say, music and sound effects, or maybe a plot and some dungeons. The latter two will come when I try to make this a Real Game for NaNoWriMo, but the former two... Maybe that'll be what I tackle next. Who knows? I just hope I have the time to, with Final Project kicking into a higher gear for me.

Friday, August 20, 2010

Tsel do Bahn, Part 1

I'm in Final Project now - a team of Internal Producers, Developers, and Artists making a game over the course of five months. We've finished the documentation stage, and the group has started on making the prototype: tough work for the developers, lots of back and forth with the artists... and nothing for the internal producers to QA test yet. While there's always a need to edit documentation, that work requires only one IP, not all four that I have in my team.

Since I'm also not allowed to program alongside the developers (for good reasons, admittedly), I've resumed a personal coding project that I started almost six months ago, and have worked on on-and-off as school allows. It's a Zelda-style game, with text-file scripts creating the rooms and interesting features (people, pits, blocks, treasure chests, and enemies). I'm using sprites from The Legend of Zelda GameBoy games, as well as Final Fantasy Adventure, so don't think I did the spriting work too.


The game in action - the hero, on the left-hand side, is about to push a block into a pit in order to travel beyond it.

My original goal was to create a simple Zelda-style game with Sokoban-style puzzles, where you push a block into a pit to turn it into passable ground, and that's where the name comes from (a portmandeu of "Zelda" and "Sokoban"). I've coded that entire functionality in this month, and I'm pretty happy with it, though I can already see how I can improve it a little.

I've gotten a few other things into it, too, as our documentation phase has wound down: multiple, switchable weapons with different stats and animations; a (rudimentary but functional) pause screen where you can choose between those weapons; tons of new functions for the scripting engine, like 'place actor', 'change sprite', 'change solidity', and 'change layer'; and map-specific dungeon keys, with a HUD ticker to keep track of them.


The rudimentary pause screen, with three weapons selectable in the corner.

Mostly, Tsel do Bahn is an exercise in me programming and designing a game with no constraints - there's no due date, no budget, no documentation. It's also an effort to keep my programming skills sharp, and to learn more about a reasonably common API (PyGame - though Tsel do Bahn also uses BuzHug for its databases). But, honestly, it's also an attempt to make the kind of game I want to play - an old-school top-down action-adventure, with puzzle elements, open to others to create their own quests.

It's also something I plan to continue with - I'm hoping to have enough tools, enemies, and interesting bits to make it a viably playable experience. My ultimate pie-in-the-sky goal would be to use Tsel do Bahn to complete NaNoWriMo; instead of writing 50,000 words of fiction, maybe I'd make 50 rooms of dungeon-puzzle action.