• 03-22-10 : Play over 12,000 free nonogram, logic art puzzles!
    We call them GLYPHIX.

  • 02-08-09 : Go behind-the-scenes with our upcoming fantasy puzzle
    epic in our Hero Glyphix development blog

  • 07-27-07 : www.heroglyphix.com is live! Visit the site for free
    daily logic puzzles, lively forums, puzzle designing and more.

"Once Twice Thrice" Development Journal

By Brandon Wood, Designer and Programmer

"Ever wonder what it takes to make a video game? Well here you go, my daily development journal that I kept while designing and programming OTT. This journal details 3 months of concentrated effort. From the first program skeleton, to final submission for publication. It was a ridiculous amount of work, but it was also tremendous fun, I hope you enjoy reading it as much as I enjoyed writing it."


Jump to the interesting bits:

1. --Prologue--- 6. Everybody's Gotta Eat
2. Heroes, Spells and Switches 7. The End is Near
3. OTT vs Dweep 8. Finishing Touches
4. On Puzzle Design 9. The Rest is in Heaven's Hands
5. Enemies Come to Life 10. --Epilogue--


Prologue
Before this 3 months of serious development on OTT, there were nearly 2 years of failed experiments with game programming and time learning Microsoft's Direct X. There was a tetris like game, a hack-and-slash dungeon crawler, and at least one other attempt that never got completed.. some never even got close. Still they were invaluable learning experiences, and those failures are what prepared me for undertaking "Once Twice Thrice".

Log: Ace Deuce Thrice

March 1, 2002

About 1-1/2 weeks with a DirectX skeleton, and I'm off with a huge lead on a good game. See Triforce.doc.

The map is non-scrolling. The characters move, and cast spells, and the walk over only the right things, and their spells change the environment.

WOOHOO!!

March 4, 2002

Mailed a copy to Matt last Friday, and he's so far very optimistic. I hope for the best

I've included character's casting animations today. I'm going to have to overhaul the animation system I'm afraid. It's a bit clunky. But I may have finished all its features already, so if it's clunky and small, the no problem, it's clunky and big that will erupt on me.

I've got a status in the animation class and a status for the hero, telling what they're doing, i.e. moving, casting, idle.. There's a lot of overlap here, but I think they still need to be separate things. This is what's causing any confusion.

Next steps include getting some switches loaded, drawn, and working. Then next week, the baddies.

I've got the program parsing switches into switch objects, and then into a collection. It all looks very promising.

March 6, 2002

This is addictive. Everything is going in so well. I'm pushing myself forward just waiting for something to break! Everything I add needs only a minimal amount of debugging before its perfect. Wow!

There are tap switches, and hold switches. They all work exactly right, and can (un) flip more than one block at a time.

Next are timed switches, and once-only switches

March 11, 2002

I got a tremendous commitment from Matt in the art department (APE Animation?). He is a huge asset to me.

I added animated background tiles Friday night. And polished it today to include 1st and 2nd layers. All is still going according to plan. Next are the sliders and stoppers, and then the baddies.

March 13, 2002

Had to recreate the map editor this week. The old one was from last summer, and was definitely no good. It only took about 2 days to get it right though and its way better than before.

There are goals for the heroes to get to now. The goal is on layer 2 so it can be animated. Also, it can lie on top of lava or water, so there's another puzzle there.. that's very "Nintendo" if I do say so myself. Sliders and stopper are working well. When the 3 heroes are on a goal, the level advances, and there I really need a flashy level complete animation.

The map editor needs better erasing facilities, as sometimes, you redraw one layer, and leave the data in the others inadvertently.

March 14, 2002

Message screens after you beat a level. Gentle termination after end level, no Game over screen yet. Level transition is close to done. Level transition needs only level names

March 15, 2002

Level restarts from pause screen are good. Took the color keying off layer1 and this saves lots of graphical leftovers on the black gridlines. Other managerial tasks still to be done include packing all the media in resource files, and the game over screen.

Baddies are happening! I'm doing polymorphism in VB!! Okay, I'm not entirely convinced that this is true polymorphism as I know it in c++, but VB sure is doing it best. Baddie is the base class, and the individual righties, lefties, and assorted others inherit from it, enabling me to call baddie.ai, and everyone gets their business taken care of. Wow, this is great to see.

For now, I'm going to have an anim4way, and an animStationary. Assuming 2 major groups of enemies, those who can face many directions, and those who can face only down. As my project receives more polish, I feel greater need for idle animations, and/or flinch animations. We'll have to see about those.

I'm now getting concerned about what to do on hero/enemy contact. I don't want to do life bars or points, I'd rather have the baddies only block/enable passages, but I'm going to have to do something to make them more of a threat to the player.

The baddies is a huge step! I'm really moving now.

Matt sent some artwork for the green wizard, and I'm impressed. He says he's taking his inspiration from Zelda LTTP, and I couldn't possibly think of a better game to aspire toward.

March 18, 2002

Installed and played with no problems at Chets. This was a huge motivation to keep going, to see a good install was very reassuring. Also, he made comments about it being fun, and that's the biggest payoff of all.

Spoke with Mary about composing some midi files, and she was very cooperative. I hope to get her a demo soon.

Made executive decision to put special layer below layer 2. This does many good things. It makes me able to hide switches under trees and rocks, and also allows the green wiz to hold switches down with a tree! I think this is for the best.

Also, the Stretch option is out. It slows things down, and it will mess up Matt's artwork, it is no more.

Righties and lefties are good, animated, flipping switches, the works. There are walking cacti to be lead about by the water wizard, and they can hold down switches with their population. Sharks are next and then some kind of shark killer (zappers?).

March 19, 2002

Slow progress today.

Heroes collide with baddies and flinch/slide backwards. Actually, a pretty big piece of work for such a slack day.

Weapons must hit baddies, and baddies die. That should be quick. Then zappers and sharks.

March 20, 2002

Weapons hit Baddies. Only certain weapons kill certain baddies.

So I had to kill the heroes to have the baddies cause any tension for the player. And to kill the hero, means to reset the level, and to do that means some kind of pretty "Try Again" screen or pretty transition. I attempted another message screen, and a tile by tile blackout, but both were pretty bad hacks. What I ended up with was a stretch-in, stretch-out thing with the Ddraw stretching the sprites, and it soooo very cool! It especially thrilling because it was so simple to implement, and still looks so professional. Almost like the tessellation done on the SNES so often in those old days. Cool!

Presentation points increasing with How-To screen, and Game stat keeping screens. I'm sure these will show real dedication to the project. These are the perks that could have never been in Questengine or Wizard Fist due to my inexperience and/or poor planning. But now, I'm getting all the features added with minimal difficulty. WooHoo!

IT FEELS GOOD!!

Tomorrow: More baddies, Stats loading and saving, prep for Friday demo.

March 21, 2002

Much thanks to the lucky leper again today. I've got all the bitmaps in a binary file. Very cool, pretty easy. I think I'll include the level data in a module in the program somewhere.. you know.. hardcoded. I can output a file from the map editor that I can copy and paste into the module, and that's how I'll keep my levels safe from hackers.

March 22, 2002

Mom's birthday today, 52.

More work on the binary file today, I've got the game stats saving there now. This has been a real learning experience.

March 25, 2002

Downloaded the Dweep Demo this weekend to see my competition, and while I'm very impressed with the effort, there doesn't appear to be anything there I can't do.

Brief comparison. His non-scrolling background was what "gave me permission" to do a non-scrolling background in mine; Dweep is only ever facing forward.. there's a huge shortcut around 4way moving characters; the midi music was pretty good, I can do that; His interface was simple, mine will be only slightly more complex. It all looked very comparable to what I'll have to offer. He did a little path finding code, which is probably more sophisticated programming than you'll find in OTT.

What I learned, was not about presentation or technical attributes, but rather level design. In Dweep's levels, you've always got many options, where only one move is the right move. And with enough planning you can always beat a board on the first try. Dweep is a game of perfect information, you always know exactly what's going to happen. OTT (at least the levels I've created so far) are more like: There's only one move available right now, find it and do it. And I think that's a little more shallow design than Dweep's. OTT is not a game of perfect information when there is a switch on the board, because switches can operate different blocks anywhere on the screen, and they can operate in different ways. So I have to carefully balance the design between, player skill, and player luck (where the switches are involved). And that explains pretty well how I've designed it so far. The switches provide a little mystery, but they'll never get the player stuck or cheat him or her. That's why the levels are laid out so linearly now, I've put the switches only where they'll be encountered in the right order, so as to not leave the hero back tracking, or stuck if they accidentally make the wrong decision.

So this "Many available moves, only one is right" philosophy is definitely one I'm going to keep in mind for the rest of my level design. In the first 5 demo levels of Dweep, I got stuck and frustrated on the last 3. I'm quickly frustrated, so that's not a dig on the game, but when Tommy sat down to play, he was enthralled, and determined to figure it out, and he eventually did. I'm convinced that these were hard levels in the demo just to get you to look for a guide online, and thereby increase the amount of time you're thinking about the game. That Pavlina is a one smart cookie!

Hopefully I'll get to do a lot of level design this week.

The green guys need to be able to walk over sliders and stoppers if there are trees on them. (done)

March 26, 2002

I think I spent too much time yesterday piddling with this and that, and getting misguided. I had no clear goals. I'm going to fix that today, by introducing an Excel document with all my goals between now and completion. I don't know how much time I've got left on OTT, I've got to make every day count.

The baddies start facing in any of 4 directions now, assigned on the map editor

About that level design thing: I went back to review my original inspirations, and my attempts at level design, are what I was attempting to achieve. I'm using the puzzles in Miyamoto's Zelda games as my inspirations, and they are of a different nature than Dweep's. Lets compare:

Let's examine, as an example, a room in the Goron fire dungeon [with the snakey dragon named Volvagia from Zelda :OOT. There's first a gate with an imprisoned Goron that is locked, we know we can't get in yet, but we know it's a goal for later. There's some fire slugs to contend with but they're not part of the puzzle. The exit of the room is a fence to climb up through the ceiling. That is our goal. But we're kept from our goal by the fire at the base of the chain link fence. We see a crystal, its use is unknown, but in an effort explore, we hit it. The crystal turns off the fire. Its use is no longer a mystery. Hit the crystal, fire goes down, we run to the fence, but don't get their quick enough, and the fire is back. Darn. Then we see something else we can interact with, a block. Push the block to make a path to another platform. From this platform we can drop a bomb on the crystal to activate it, and we're close to the fence so we can get to it before the flames come back. Puzzle solved

An important part of the Zelda puzzle is the "Darn". You think you've got the solution, then Darn, now there's a new issue to contend with. My puzzle design leans heavily towards this because these are the puzzles I like, and these are the games I play.

I think it is a discredit to Dweep, that sometimes one false move can render a board unbeatable. Sure there are infinite restarts, but that's required to even make the game playable. In Zelda, you're never in a state where you're stuck. You can always mange to undo the last move, though sometimes it requires a hint of backtracking. Mabey they're not that different after all? Backtracking/restarting.. hmm? Perhaps the backtrack is to an adventure game as restarting is to a puzzle game. The restart breaks the fantasy, but not all games are about experiencing a fantasy world, they're just games.

Dweep. 1-- A truer puzzle game than Zelda. There are no distractions with enemies or anything moving. The game never changes around you, you're responsible for every change in the game environment. This is good, the player has complete control.

2--The board is constantly in a state where tiles are available or unavailable for you to move to. The whole point of the game is to manipulate these states so that you can move to the baby Dweeps.

3--You know how each move will change the state of the board (perfect information), though sometimes you ache at the thought of having to work out each possibility in you HEAD, and you place pieces at random just to "see if it'll work here"

4--no baddies to distract you. No baddies to cause any sense of tension.

Zelda

1--More of an adventure game with puzzles. Even within a puzzle room, there are enemies, and other influences on the game world you don't control. These introduce an element of mystery, and sometimes challenges of timing skill. The player has complete control of Link, but not of the constantly changing state of the board.

2--There are moveable/non-moveable places in a puzzle room

3--you can learn how each move will change the board through experimentation. This is kept fun when each situation is original

4-- The baddies can make you have to perform some skill of dexterity. Winning the board isn't only getting to the goal, but also surviving until you can reach it. style='mso-tab-count: 1'>

This method of puzzle design is obviously so well beaten into my HEAD for a reason. I've played the Zelda games to death, I know how the puzzles work. The question here is do I want to replicate Zelda's puzzles or do I want to do something like Dweep?

I get frustrated with games like Dweep, because I think they're too hard, but that's what keeps most people playing. I like Zelda, and I've often mentioned that Zelda is not very difficult, its just that there's so much to do that it never gets boring. I'm obviously going toward the Zelda school of design here, and that can't be a bad thing, but do Zelda puzzles only fit in an adventure game with some action and a story? Is a real budget ware puzzle game supposed to be like Dweep? If I put Zelda puzzles in a budget game will they feel out of place? Perhaps Zelda's puzzles can be easier because they're not integral to the gameplay, but rather they work with the action and the other elements? I did notice that my game got more fun when I put some random Righties in one level and I had to get away from them. The threat of enemy death is part of the game play.

So Dweep is a harder game with more difficult puzzles. But Zelda is strengthened by experimentation and survival challenges. Now can my game make it with Zelda's puzzles? We'll obviously Zelda made it, and did very well; but I don't have the high quality action, or any bit of story.

There's a design decision to be made that relates well to the discussion here. To make all levels available from the outset like Dweep, or to force the player to take some levels in order, like Zelda. Zelda's method makes the game more of a quest and an adventure through a fantasy world. Dweep's all access practice makes it more of a real "game" and less of an "adventure"

So the bottom line is I'm putting adventure game puzzles in a puzzle game market. This could be very good or very bad I suppose. I don't want to remake Dweep, so its good that I not copy it in every way, but I still question if OTT will poke at people's determination enough to keep them playing.

Wait a minute.. that's interesting. People keep playing Dweep because it challenges them, and they're too determined not to give up on a hard level. Perhaps people keep playing Zelda to see the simpler puzzles presented in different ways. It's the different methods of interaction that make for all the creative puzzle possibilities

This is very good, and fits with the existing designs. Dweep has about 10 ways to interact with game: wrench, mirror, heat pad, icepad, laser beam, torch, bomb, bucket. OTT has 3 moving characters, 3 spells, several terrain types, several enemy types, and multiple ways for all these bits to interact. I designed this with Zelda in mind, lots of ways to interact, lots of combinations to present the player. This has got to be the strength of the Zelda/OTT design.

I love talking about my game so closely together with Zelda.

Penguins added. Turn water to ice, run from fire, only walk in 2 directions unless scared by fire then may change direction.

Mushrooms are drawn, and shoot spores with >1 second, and <2 seconds between spore spits. Spores fly pretty fast. Spores don't fly over things like they should just yet. I'll have to tinker with their walk type.

Getting the projectile shooters in there is very cool! When I was making Questengine, I couldn't do dynamically created stuff at all, I knew projectile guys were out of the question. I'm elated to have it included now.

Today, I got the enemies to load with directional data, I got penguins included and working properly, I got mushrooms included and tuned, and I got spores included, but they still need just a bit of work. I'll get to that tomorrow.

The program is getting big. Every new baddie adds about 11k, and a few pages of text. If I had true polymorphism in c++, I'd not have this problem. But vb's pseudo-polymorphism will have to do for now. If this get published, the next project will be c++ for sure.

The exe is 240K and that's without about 150K of level data to be added. It wouldn't surprise me if the exe were 500K by the time I'm finished. The graphics are 500K, and the music will probably be 200. So I've only got 1.2MB of my work, the rest is for the VB DLL's, and sound effects too.

March 27, 2002

With the projectile guys in yesterday, all of a sudden, a few more puzzle ideas flood into my HEAD. And I'll get even more when I actually get to play in the level editor.

Termites are Down With the Sickness! WooHoo.

I had completely forgot about warps until now. I thought I had all the special tiles behind me.. oh well. They're mostly done, they only need to make sparks on activation. And they need to be added to the map editor.

My Excel sheet, outlining duties until completion, does sometimes grow on me, as with this inclusion of warps now (and yesterday, the trex, and other enemies). But I'm still crossing off more things than I'm adding. I'm getting closer to completion everyday.

The worst chore in front of me now, is getting back to the menu screen from the DX mode. I've looked at that once and it was no simple thing. It's going to take some figuring. Otherwise, It's just adding a few baddies, and creating the levels.

Oh heck, and the sound effects!

No problem.

March 28, 2002

Last night I got DX mode back to a VB form. It was a tremendous oversight on my part for not seeing it earlier, I was a big stupid dummy HEAD.

Trex included and working well. Its very fun to lead them around into the other baddies, and watch them eat!! I feel very childish, but it's quite a delight. I make the sound effects as the Trex's eat the other "Chomp Chomp, grumble gumble, crackle crackle" heh, heh.

March 30, 2002

Torch guys are torching. Level header info is included, midi tunes are encrypted. All that's left are sound effects and level creation..Wow.. I'm getting so much close all the time. This is very exciting. I hope Matt turns out some more work pretty fast. I want to get this in ASAP.

April 1, 2002

Much work this weekend, and this is surprising, because work is normally slower at home. I'm just about done with the programming. Really! The majority of the work now it level creation. I also need sound effects, and there may be some little cleanup issues, but there's no big long list of things in my HEAD that I'll have to back track over and go fix. My goal is to have about 10 levels ready this week, and get Mary on the job next weekend. I'm going to ask Matt if he thinks he can have all the art done within a month's time. After I get these first levels done, I'll be distributing to David and Chet, and other buddies to start play testing.

Things are progressing nicely. I hope I can keep my HEAD on my shoulders as I go into the stretch.

April 2, 2002

I put in a "Buy Me Now!" screen, and lots of "Buy Me Now!" buttons all over the other screens after reviewing another of Pavlina's articles about shareware, and again noticing it in Dweep. I'll need to add this option to the pause screen menu as well.

Last night I added the recording of the level times, and the display on the stat screen. The average, min and max times are there as well. These are a few things that never made it onto my Excel sheet, but they were so simple as to almost be insignificant.

David told me he demoed Fitznik and Dweep over the weekend, and we talked a little about their game design. He came right out and said that he liked my design better. What I described as the "Darn" (a few days ago, see above) he described as an "Ah-Ha". Which is what comes right after the "Darn". .. "Darn, that won't work.. Ah-Ha, now I see" In a good game, like Zelda, and I hope OTT, these D/A cycles can be compounded for greater results.

Upon further analysis of Dweep, I began to question the real differences between it and OTT's design. I said that in Dweep, there are always many moves, but only one is right, where in OTT, there is only ever one move, and it is necessarily the right one. These do blur together a little more than I once thought. In Dweep, if a player makes the wrong move, then they may as well have not made the move at all, just like in OTT, where they see moves that they can't make yet, in Dweep, they can jump ahead and make the move, then see that it is wrong, and a waste of time. It is fair to say that Dweep has an advantage here because it never takes the control away from the player. They can always make the move regardless of its correctness. In OTT, the game prevents them from making incorrect moves, so while not actually disabling the controls, it does prohibit the experimentation on the players' part. I'm not sure which is better. I'm kind of leaning toward Dweep method, but I may just be being overly critical. It was reassuring to see that David like my approach better. Of course OTT's approach does avoid the boring restart/repeat cycle.

At the very least, my approach will compliment the gameplay in Fitznik and Dweep. Though yesterday I made about 10 levels and in at least 2 of them, I see Dweep like game play where the solution is far from obvious to the player, and they have to look many steps ahead to see a resolution.

Matt just sent an update. All the heroes have all their sell casting animations. He complimented the design of a few levels, and mentioned one that was pretty challenging. That sounds great. He again mentioned that he's glad to be a part of the project, and that's the best way to keep an employee happy.

A note of concern. He mentioned that the game runs slowly on his machine. That is a grand concern of mine, because Questengine absolutely poked along toward the end of its development. I bet he's using windowed mode, and that could account for a lot of slowdown, but still. I need to get this on mom's 366Mhz and test it out.

When making my "Buy Me Now!" screen, I had to come up with a couple tag lines, and I feel the need to justify one here for future reference. "Literally THOUSANDS of different interactions with the game environment." I want this to be a legitimate figure, not some trumped up number. So lets figure: 3 wizard, each with 2 powers (spell power and walking ability) = 6. 3 types of switches. Grass, dirt, ice, lava, water, solid, tree, fire, = 8 terrain types. 4 sliders and 4 stoppers, >12 baddies with different interactions. = 6x8x4x4x12 = 48x16x12 = 9216 combinations. And that doesn't include goals, warps, and baddies with multiple interactions. So I think THOUSANDS isn't an overstatement.

More housecleaning today. I removed the 11K of code to create the binary file, and replaced with a few loops. I got the "buy" buttons to bring up dexterity software.com, which I hope is a nice touch.

Just made the package again. Its currently at 1.8MB when all zipped up. I still have some levels graphics (just a few) and sounds to add. But I feel very confident that my final downloadable package will be below 3 MB. That's including the msvbvm60.dll, and dx70vb.dll. That will rock!

Gobs and Gobs of "Buy Me Now" stuff. I've almost replicated all of Pavlina placements now. Every one except the between-levels screens. This should demonstrate, not so much that I've done all sorts of hard work, because its not very hard, but rather that I've done my homework, and I know what is required. This all makes me a better shareware developer.

April 3, 2002

Matt said he is running full screen, so I'm a bit worried about the slowdown. I put in a high resolution timer I got from the lucky leper, but it doesn't do any good to test it here because my machine is too fast to cause any part of the code to take much time. I'll try it out at home tonight.

I just spent 20 minutes trying to get through my own level!! Level 16, T-rex Valley 2, dang yo, that's hard. You have to space the trexes out, and have them eat each other, ugh. I made the level, and designed the first few moves, then started testing just to see how it would work, and how much I needed to orchestrate the rest of the level. But I couldn't beat it. I thought it was possible, but I wasn't sure, I had to keep trying until I did. This was a really fun level. Very very Dweep-like as a far as, "do whatever you like, but you've got to be perfect to get it right." You have to look ahead, and be prepared for things to go wrong. And if things do go wrong, you're not instantly dead, you can sometimes bail yourself out with another wizard, this is an attribute even the great Dweep can't demonstrate. Definitely my best level yet.

I've got 19 levels now, I'll say the break down is 8 tutorial, 7 thinkers, and 4 super challenging. There will be no more tutorial levels, though tutorial bits will be included with other levels. All the rest should be thinkers or tuffies. These are actually pretty hard to design. I've got some ideas in my HEAD that have been there forever, but when I go to make them, they seem to easy, and I have to rethink them to make them better. Still, I should have no trouble making 50 levels. Though it may take a whole month's worth of work.

April 4, 2002

The midi thing worked well last night, so I've got that. It's very complex, so I expect a high learning curve. Perhaps Mary will just play a few tunes, and we'll be done in an hour.

I found the source of the slowness last night. When blitting layer 2, I'd used blt, rather than bltfast.. just like I'd done everywhere else in the project, but this layer was drawing lots of tiles. The bottom layer draws all the tiles, but it doesn't color key anything, and the hero/spell/baddies/special drawers draw just a handfull of things each pass (3 heroes, probably 1 spell, a couple sparks, mabey 12 baddies). So it was layer2 that was slowing things down. The time told all as soon as I got it home. Most draw functions were taking 1-4 milliseconds, and the drawLayer2 was taking 50! I'll make Matt aware of these changes, and see if he noticed the difference.

Made another level that I think is pretty challenging. I surprised me a few times, and I thought I knew what I was doing. I appreciate, and try to incorporate situations where you make one move, but then see that it was premature, and you must undo it or lose the game. I've used the other wizards as hazards, so if the baddie gets to them, because you placed a block incorrectly, then its game over, try again. They're stuck helplessly in this little corner, hoping nothing eats them.

I went through and named all the levels. I think the vast majority are very good. And I'm still full of ideas. My mindset is changing a little, and its becoming easier to design more challenging puzzles. I don't think I'll have any problem making 50 levels.

April 5, 2002

Looked at the speed issues again last night, and I think I've got a few more options to explore.

Also, got Kara to play some. She played the first 12 levels I think. She really didn't like the blue character's controls, and she complained a little about having to do 3 people at once. But she was definitely having fun, and wanted to figure out the levels.

I'm concerned because I've got to make such an impression with my first few levels, but I'll be able to pick and choose them to get the right ones, so I can be pretty critical. I've got to make them easy to play but hard to beat. Getting used to the controls will be the hardest thing for anyone I think. I'm going to take out the 'advance controls' because I'll not have any users hardcore enough to use them.

I made a distributable version for David to take home this weekend. I hope everything goes well, and he has only good news to report.

I rustled up some sound effects yesterday, and I'll work on that soon. And I still need to get one level done each day next week. I can still make it by the end of the month, but with all these new distractions, it's going to take some real dedication.

April 8, 2002

David gave good criticism.. I've make all the wizards control with the arrow keys, and select with 1,2,3, (which will probably become s,d,f,). Kara made this same recommendation, so it was definitely worth the change.

He installed with no problems. As did I at mom's on a 366. It ran a little slow on her machine, but it was definitely playable. I've got one more effort to make towards a speed increase. I tried it Saturday night, and the program vomited all over me. I had it working in the IDE, faster, and cleanly, but the compiled exe would give crazy results. I was worried sick, and infuriated for about 1 hour. But as with every other trip up in OTT, I soon got past it, and all is well. I'm going to have to recreate that speed increase, and see if the bad stuff happens again. It was a very simple change, I don't know what went wrong.

Matt sent good stuff, penguins, monkeys, golems, termites. And the fire is now animated. He seems to be picking up the pace nicely.

I'm not getting levels created like I need to, I've got caught up on programming bits again. I got all the sound working this weekend. I'm going to buy a sound effect collection for about $13. I did the cursor today, and I need to do the "Change direction without walking" facility.

April 9, 2002

Bought the sound effects today.

Figured out the source of the upchuck Saturday night. This was actually a compiler error. The IDE and the EXE did the mod function different ways. So I had to work around it. No problems. I hope this makes a big speed difference, because I don't know where else to go.

The character select is there, from yesterday, and the "Hold still while I change direction" is there too by way of the spacebar.

I don't feel like I've got much done these past 2 days. I think because I've not been able to scratch anything off my list. I need to update that more often. Also I'm getting behind on creating levels. I'm going to have to hit that hard pretty soon.

April 10, 2002

The character select changed from the awkward and confusing s,d,f, to only f. Who knows why I didn't do it that way to begin with.

I'd like to be able to get caught up in some programming, but I've really nothing else to do but work on these levels.

Finished 4 levels today. 2 of them are very good, the other 2 are just average, and need revision. I'm up to 26 levels now.. Halfway there!

I've got real urges to move along to another project.. My programming side is bored with the thought of level creation. But when I do actually get into it, its very fun, and a lot of work.

April 11, 2002

Today is pure level creation. It's getting really hard to get good levels. I need to go back and review my best ones, and see what makes them good. Then I can work on those strengths, and create more challenging levels.

Dexterity.com has added some to the developer's FAQ. They're straight up on the fact that they don't want incomplete submissions. I'm great with this, because I didn't want to submit anything that wasn't polished, but I'd like to gather even more from these statements and hope that the submissions that Steve mentioned on Gamedev.net perhaps are still a little ways off, and mabey I'll not get beat to market by too many competitors.

The end of April is coming fast. And Mary may not produce the goods until mid May, but I'm still very much on target to get this done (done, finished, polished and buffed, spit-shined, glossy and glowing) by the time William comes in July. Back to work.

April 12, 2002

So today is Friday. I need to send Matt a new distributable, and change that current character cursor just a little more, I think it should stay constantly highlighting the selected character.

I'll polish a few levels from yesterday, and make a few more. I need to make a small change to draw hero, and see if it's any better on mom's machine.

The install at Mary's was flawless, and I've regained almost all the confidence I lost with Questengine. It was still a little slow, but I've not tried the speed improvements yet, so I'll hopefully see an improvement this weekend on mom's machine.

I've renewed motivation that it's okay to be unlike Dweep. The only concern there is that if the target audience only wants those really hard thinking puzzles then I may miss my audience. But there's also part of that audience that would actually like some reflex based gameplay, and a little action. After I build a level, It takes no time at all to pretty much forget what I did, and then when I go to play it, I have to trial and error a little bit. And this is considering that I do have some knowledge of where to start on the puzzle. So I think that the final game will have plenty of challenge to merit a purchase from gamers. It's not an hours-upon-hours-come-back-to-it-next-week headscratcher, but its very good, and more importantly, very fun.

Well Heck! Dexterity.com has a huge preview for Olympus. It's in a whole other league than the rest of their games, and OTT. Large sprites, special effects, smooth terrain transitions, lots of animation, online multiplayer.. ugh. It was mentioned that it would be for the more serious gamer, and that's definitely the case. Ugh.

Its certainly not going to be a 5MB download, I can guarantee that. It's going to be 20MB or more. Perhaps this is just an experiment to expand the audience. The current group of casual Dweep players is going to be overwhelmed by Olympus. Lets hope, and I'm betting, that this is a very strong effort toward expanding his market to include more serious gamers, along with gamers who'll pay money for Pirate's Plunder.

I'm going to stop being frustrated that my levels aren't so Dweep-like. I have a good time playing them and I think other's will too. Perhaps in Dweep, every puzzles is of advanced difficulty. In OTT, the puzzles are only from Moderate to Advance difficulty, but then I drop in a mushroom or a T-rex, and the intensity really goes up. And it's never a cheap hit: The player is very aware that the mushroom is there, and when it kills them, the response is "why did I do that, that was so stupid of me" not "this stupid game is cheating". It's always the player's fault when they lose a level. Level making was getting to be a huge headache because I was trying to be too puzzly.. but when I started counting on the baddies to increase the challenge, creating became more fun, and so did the game. This should be a perfect compliment for the rest of Dexterity's lineup. Heck, it may be beneficial if they publish another Dweep/Fitznik game between now and OTT, that will just make OTT stand out from the crowd even more.

Bottom line is that I've done a killer job programming this one, and its going to take serious dedication on the part of another programmer to 1-up me. I'm not afraid of the competition. There's a Bruce Lee quote waiting to happen here.. how does it go: "Do not think about the outcome of the fight. Concentrate on what is happening right now, and what is your best next move." and of course, my personal motto: "Do your very best, and leave the rest to heaven."

April 15, 2002

I got my sound effects Friday. Out of 6000, I'll have plenty for this game. But still, the package sucks overall. Poor quality, mislabeled sounds, slow interface. But it'll do.

But I got my game home and the disk was corrupted, so I didn't get to test my sped up version at moms and that was a bummer.

Read mention of the Alt+Tab problem on Pavlina's site. I got it fixed, but I've still got and issue with that handy-dandy Window's key. Urgh. I've noticed a pattern lately. Every time a bug comes up, I immediately jump into mega-worry-mode. I've got so much riding on this production, and people counting on me now, I can't stand the thought of something bringing failure. It's painful to think about.

April 16, 2002

Alt+Tab and the Windows Key are my playthings. I toy with them because they are no more than trivialities to me. I own them! I AM THE HOUSE-ROCKIN-EST PROGRAMMER IN THIS 1/2 OF THE OFFICE BABY!!111! WOOHOO.

The vomit of 2 weekends back, and now Pavlina's alt-tab bug both huge project threatening bugs for the inexperienced, immature, naive programmer I was a year ago. But no more!! I officially rock their respective places of dwelling. Again, WooHoo!

I read the real way to combat the alt-tab bug in the gamedev forums yesterday. I knew it had something to do with restoring surfaces. But I decided that was too much trouble, and I looked for the cheap way around it. And that band-aid was, as band-aids are, incomplete and unreliable. A real ZDSD coder wouldn't have settled for such nonsense.

This morning when I looked at the problem, It was as simple as "If I have to test and restore the surfaces, then so be it, I'll test and restore the surfaces." And 10 minutes later the dreaded alt-tab bug was history. Did I mention how much I rock!

April 17, 2002

Matt said that he' seeing a speed improvement. Huzzah! I'll see it this weekend at mom's

I'm about to get some midi help from a guy at gamedev I think. I hope that works out.

There's more housekeeping coming around. I need to make the registration happen, and have it disable all the nag screens if registration = true.

Made 2 more levels yesterday. They were quick and easy, not difficult to make, and will not be difficult to beat. These levels are good for my game, but I also need puzzlers, so hopeful I can make a few of those before the week is out. I'm at 34 levels now I think. 16 left to go.

Level 35 is Excellent. Some action, lots of thinking ahead, some "Don't act to hastily or you'll screw yourself." That's actually a strength of my level design. To make one choice obvious, but its full consequences aren't apparent until later, and then perhaps you're already screwed. Dweep does this. It demands the player look farther ahead, and that's good gaming.

Recipe for a Very Good Level: Take one good level, add a t-rex or a mushroom, viola.

Recipe for an Excellent Level: Start with a hint of brilliance (must come first), then add a Very Good Level. There you go!

I listen to Zelda 1 midi's when I design levels, and I think it helps.

Sometimes when designing a level, I think that if I could limit the number of spells the hero's had, I could make better puzzles. And I guess I could.. but this is not the design I'm after. This is what Dweep, and all the others do: you only get 2 lasers and one wrench, and you have to solve the level with that. This demands perfection. Zelda, on the other hand, almost always plants the bombs in the rooms where you need them, and the pots break open to reveal magic jars when you need the fire spell to destroy the enclosing spiked wooden walls. I'm glad I've got my own style.

April 18, 2002

I gots me a musician!! WooHoo.

Nick from Gamedev.net has played the demo and says that he is "excited", "impressed", and that music for OTT is his "top priority." I'm thrilled.

Level 36 is very good, level 37 is excellent.

April 19, 2002

I got to test the fast version at mom's last night, I didn't see a speed improvement, and That's disappointing. Matt did, and he's on a 700, so mabey mom's 366 is still to slow for it to make a difference.

Also on mom's machine and Mary's machine, the hero's didn't color key correctly. Perhaps because they're color keying with white instead of black. I'll have to test this.

Matt's sent good feedback on the levels, and fire and tree spell effects. WooHoo!

April 22, 2002

Matt's done flinch frames, and Skimlet's spell animation. We may just have one flinch frame per hero.

I did most of the sound effects Friday night. It's sounding pretty good.

This level design is killing me. I'm glad my next project won't need much level design because it's driving me crazy. It was a lot more fun in Questengine, but that game was also a lot more action. I've got to create an intelligent puzzle in every board now, and that's hard work. I think I can squeeze out 10 more levels to make 50, but that's going to be all.

Level design definitely comes in streaks for me. Some days I'll make 4 good ones, then It'll be 3 days before I can turn out anything again. The motivation hit me today "As soon as I get all these done, I can move past them and do other things" Even if those are boring things like sound effects, and registration screens, still, I want to get the "50 levels" monkey off my back. I hope I can get them done this week. I got a couple done this afternoon. But I've still at least 12 left.

After that.. yikes.. I'll be dangerously close to completion! I may add in the ability to load in one's own levels. I'm sure there will be rough areas in need of polish. And I guess I should finally put the level data inside the executable.

Matt says he should be able to finish in 3-4 weeks. That still puts him done before the end of may. I'm going to get my testing crew on the mission this weekend I hope. I wonder who I can get to play.

April 23, 2002

I've been playing the Brainwave games from Dexterity software, an enjoying them as a guilty pleasure. This game is simple, and its been done before, but its very high quality, has lots of replay value, and is really worth $10. I bet he made a killing from these.

If I can get published before Olympus, I'll have a huge market for my more complex, and graphically pleasing game next to his other offerings. Olympus will outmatch me in every aspect, but competitive products drive each other's sales says Doc Pavlina. The bottom line is that I've got to get it done!

A thread at gamedev.net reminded me to remove the error checking that VB compiles into every project (array bounds checking, int overflow checking etc). They said that this would make a difference in the speed, and as a pleasant surprise, it also reduced the size of the exe by 40K(10%)!

Level 42 is very good. The more levels I make, the better I understand my game. The puzzles are beginning to feel more like Zelda levels more often, and less like Dweep levels. I'm figuring out my strengths.

Strengths of my level design are: Complex levels; lots of sliders, trees and boulders for decoration. So that the first look at the level leaves many mysteries to be discovered. And like Zelda, you have to experiment to figure out some of the devices, but even through this experimentation, you need not render the level unbeatable, you try something, then undo the change. You've gained knowledge that will be fun to use the beat the level, and you also had fun doing the experiment to get the knowledge. And all the while, there are Trex's tracking you down.

April 24, 2002

And some days that "level design" bug doesn't bite quite so hard. Ugh. I do want to get them all done before may though. That's still my goal. That leaves me about 6 days for about 8 levels. I can do that. Once I get them all done, I can fix up the order, which will make things a lot better.

April 25, 2002

In revising an older level, I've found where a gaming weakness of mine, has (to what extent is yet unknown) affected my game creation skills. I revised kroW, (work backwards) after Matt complained that it was way too easy. I made some changes and then went to test it out, it was very challenging, and I was about to declare it unsolvable, and go back to the map editor to fix it. But I recognized the same feelings that I get from Dweep levels, and thought that perhaps I was giving up too early. So I kept trying it, and eventually figured it out! and it's a really good level. Almost "Trex-valley" good. It would have been a shame it I'd changed it and lost this gem of a level.

I'm definitely going to make a trex game next,.. .well.. after Lord of the Keys!

My time is getting short. I've got about 8 weeks to wrap everything up, and that's not much time at all. If Nick doesn't mail back tomorrow, I'm going to have to seek another musician.

April 29, 2002

Time is getting short, but I'm about to get these levels whipped. I want to get my last 3 done, and the revisers revised this week. Then it's all down hill. I'm getting real close to having my first real project done. I feel quite certain that I'll be done and ready to go before all the art and music are finished. Matt's got the most still to do, but he's working steadily, and that's all I need. Hopefully Nick will send some tunes this week.

I looked at my old c++ DirectX skeleton at home, and I think that it could work. All of my VB work has made more confidant all-around with development, and the dev environment. So I tore into vc++ with much more aggressiveness last week when I went to look around. Sure..it'll only take one linker error to get me completely frustrated, but I hope I have the time and patience to give c developing another good effort.

"Everything is progressing well, you don't need to worry about deadlines. We'll be done long before July 1st." Says Matt I'm truly hoping that this is the case

I'm almost a little weirded out by this whole thing coming together. It seems a little too good to be true. Note that, at any point now, I fully expect the world to crash in on top of me. My program, and all by backup copies may spontaneously be written to zeroes tomorrow, just as the Fates little way of playing with my life. But in case they don't, in case this does get finished, and I live my dreams, then wow.

April 30, 2002

I've got a good lead on my final 3 levels, but not divine inspiration yet. I still hope to get them done this week.

May 1, 2002

No work on the levels today. Instead, I did more documentation. I'll have to have all that nice and pretty before I send her off. Yesterday late, I whipped up the conversion program so I can include the level data inside the .exe. That should now be a breeze to implement.

I do understand that I'm putting off more level design. But I do feel a creative urge coming on. It feels like Friday is going to be a good day to finish up those levels ( today is Wednesday).

Yikes.. Its May already! I hope Matt and Nick are busting it out.

May 2, 2002

Made some progress on those levels. I think I can get them done tomorrow.. I hope Matt gets his stuff done soon. I want to wrap this one up!

Level data is tamper proof. It's not compiled into the program, but it's all in one text file now. And if anyone tampers with the data, then the level will not load.

May 6, 2002

I'm going to get some screen shots today, and hopefully distribute to the some readers of the lucky leper this Friday.

May 7, 2002

Matt says he'll have everything done in 2 weeks. Great.

I've made a yahoo page, and requested beta testers from the lucky leper.

I've got to mail Nick and see how things are coming along.

All levels created!! Level 49 "Spectacle Rock" is my tribute to Zelda 1. Red ring, silver arrows, warps, eyes, and entrance are all noted with special bits.. I'm feeling so nostalgic.

There are revisions to make, some extensive, but revisions are always easier than starting from scratch. I can order the levels now, and decide on those appropriate for the demo.

Well.. I'm a little bit scared! The levels are done.. ? ! OH MY the levels are done!

All of a sudden, a million things crowd my HEAD that have to be done before I'm finished.

-guard level 50

-make game over screen

-finish documentation.

-still more speed optimization

-revise levels

-order levels

So much work.

May 23, 2002

Its about time to wrap this one up. I've done all I can do, and now it time to lay my soul open to the world and have my work judged. I'll be sending OTT off to potential publishers very soon. "Work hard, do your best, and the rest is in Heaven's hands." Never has it been more true for me...

* Zelda, Ocarina of Time, Volvagia, and Goron all copyright Nintendo

Dweep, Olympus, Fitznik, Brainwave, and Pirate's Plunder, all copyright Dexterity Software

Epilogue
On July 2, 2002 (six days before our second child was born) OTT was accepted for publishing by Dexterity Software, one of the most successful publishers of shareware games in the world. WooHoo! Since then, OTT has gone through literally dozens of revisions: the whole game was ported from Visual Basic to Blitz Basic, the entire user interface was redesigned and vastly improved, mouse control was added (its hard to imagine the game without mouse controls now), help info was added, and lots of graphical whizz-bangs were included. While the basic game play was solid and hasn't changed, general accessiblity of the game, i.e the menu screen navigation, the control of the characters, and the introduction of the terrain and the enemies, is much, much smoother now. I'm always surprised by how much I have still to learn.



Copyright Quest Engine Incorporated 2004-2007

 OTT Universe
 Glyphix Puzzles
 'Project HG'
 Home
 Heroes
 Enemies
 Terrain
 How To Play
 Screenshots
 Solutions
 Free Demo
 Buy "OTT" Now
 Contact
 Journal

 For Parents
 About Quest Engine
 Mission Statement
 Links

 Join our mailing list