All I Want for Christmas

Wow… It’s amazing to be here. On the cusp of release! My plan is to do so next month, in time for the holidays. πŸ˜€

I’m currently working on the “release candidate” code, which is me playing a game all the way through myself, and fixing stuff on the way. I’ve found enough substantial changes to make it worth the time and trouble!

A change I recently made was to “pad out” transaction scripts and mob files to a near 2-bit value. This gives me a little buffer space at the end of each transaction for changes later after release that won’t alter the address location in the disk file. Without that, any minor change would require a player to start the game over from scratch, something I’d like to avoid.

The game will be sold through a fellow 99’er and a good friend’s website at ArcadeShopper. He sells a lot of great retro equipment and software for a variety of platforms, and hey, anything I can do to pay back a bit to the community is great!

My… precious…

As part of release, I’ve also been working on the tangibles. The game will have a full digital release, of course, but you can’t have a classic CRPG without a collector’s edition!

I’ve had a game box custom-created by BoardGamesMaker, which is large enough to fit all the Collector’s Edition contents. They do excellent work, albeit with a bit of lag time. The unit cost is VERY high though, and so I probably will have to have boxes printed in small numbers, even though I’d save money with bulk.

The manuals I originally had printed by Lulu, but I decided I wanted to get a slightly better one printed locally at a print shop I’ve done business with before. They did an excellent job with both the manuals and reference cards! Sadly, I decided this after I’d ordered a batch of 50 from Lulu, so I guess I’ll have spares to sell…

The cloth map wasn’t something I’d sure I’d even be able to do, until a good friend and fellow retro CRPG developer suggested Spoonflower. I was able to print 9 maps on a yard of fabric for a relatively low cost. I then engaged a professional seamstress with years of experience (Thanks mom!) to help me baste and hem the edges.

It would come as no surprise to any retro-enthusiast that there are many who want the game on ACTUAL old-school media, namely cartridge and floppy disk. Of course, this presents some challenges…

The cartridge is the game’s executable loaded onto a cartridge for faster loading. This also removes the need for any of the other requisite cartridges to run the game. A fellow 99’er has offered me a good bulk rate deal on assembled boards with EPROMS, and I have several dozen old TI carts I can recycle the case for. However, the game loads just fine from disk as well, and the cartridge ROM can be put on an SD card for a modern-cartridge peripheral called FinalGROM. So at some point I’ll probably say “No more carts.” I had cartridge labels printed up in two styles at StickerGiant.

Floppy disks are interesting… They are no longer manufactured, and aren’t something you can 3D print. So working disks can be a bit of a pain to find. Plus my game is pretty big, it requires three double-sided double-density (360k) disks to store. And you can’t use high-density either, they won’t work with the older disk drives or controllers.

Fortunately I got an offer of some old user group disks from an enthusiastic supporter, and I bought some from Greg as well. And anyone who just wants labels because they have their own disks they can use I’ll provide them. (3 1/2″ disks I can’t do anyway… that particular combination for the TI is very rare.)

How many collector’s editions will there be? Unknown… I had dreamed of only selling 99 at most, but I thought that was unlikely to happen. Now, though, seeing the enthusiasm of the retro community I don’t know, it could get that high. Either way, there will be a point where I’ll say “I’m done, digital only going forward.”

Stay tuned for a link to the website in the next couple weeks!

Posted in CRPG, Design, Personal, Screenshots, TI-99/4a | 6 Comments

Inch by Inch

Well we are officially into the last third of the year, four months left in 2020 to keep my New Year’s resolution to release the game in 2020…

This post coincides with the release of beta 33. (If you’re asking what happened with 32, it was an internal release that followed 31 hastily due to a game-breaking set of bugs, and wasn’t announced.) One of the testers has successfully won the game, albeit with me providing several fixes ahead of them. So I’m feeling very confident that we are close to completion!

The changelist for 33 is huge, I made a lot of updates and fixes based upon tester feedback. Besides fixing obvious bugs or issues, a lot of it is also polishing the design. I ended up changing one spell (Terror) so it impacted all enemy units instead of just one because the spell was almost useless otherwise. In a lot of classic CRPG’s the spells tend to be more for show than actual practical use, and I want to avoid that.

Another change in 33 was a total revamp of the monster’s AI. I originally intended to keep it simple. But I found that many of the stronger “boss” creatures or opponents with spells were just so random and stupid with their use of them that battles were easy to win and kind of dull.

Some of the changes made:

  • I added a new monster trait, pounce, which allows a monster to jump right next to an opponent

  • I updated targeting to be based upon distance to unit and a “threat” level. So the character who hangs back throwing fireballs is eventually going to get targeted.

  • Some monsters are smart, and also consider how wounded characters are as part of the threat assessment.

  • For buff and healing spells, monsters consider if they or any allies need them before casting them.

  • For debuff spells, monsters consider if the target already has it. I was getting tired of the plains dragon constantly hitting the same target with its sleep breath over and over.

  • For any spells that affected locations, the monster now determines how many enemy and ally units are impacted. That way they pick the best direction or location for maximum impact and minimal friendly-fire.

I’m hopeful this will make combat a bit more interesting, since you spend a lot of time in any CRPG engaged in it. πŸ™‚

So let’s hope 33 proves to be a success and from here on out it’s just spit and polish to the first release candidate. I am still doing some balance checks with the economy. The early game seems good but the latter game there was way too much much money and not enough things to spend it on.

That NPC looks like a switch?

That army looks like a staircase?

Terror spell works pretty well…

Posted in Beta, CRPG, Design, Screenshots, TI-99/4a, Video | 3 Comments

Summer of Testing

And here we are in July, in what is proving to be the most “interesting” year of the new century so far. And I don’t mean that in a complimentary fashion. πŸ˜›

My 45th birthday is coming up this week, and sadly I’ll have to spend it at home alone. My family (my mom’s birthday is the day before mine, my brother’s a week after mine) all live in Yakima county, which if you’ve been reading the news, has the highest rate of infection and positive cases for the entire west coast. This doesn’t surprise me in the least; the county’s population is very neanderthal conservative and pretty much ignored all the state government’s emergency mandates until just a month ago.

Even though my family is being ultra-safe, we decided it’s better I don’t come come over to visit until things improve a bit. (I’ll have to deliberately self-quarantine myself coming BACK, just as a precaution.)

And meanwhile, testing continues. And continues. And continues some more!

Beta 29.4 is nearing the end of it’s cycle and 30 will be coming shortly. One of my testers has been both enthusiastic and thorough, and it’s really helped with finding content bugs and even code bugs. I really wanted 30 to be the last beta build, but we’ll see how that goes.

The engine feels like it’s getting pretty solid now. Although… there is some signs there may be some subtle and inconsistent bugs in the code somewhere. After several hours of play, testing started to see little “glitches” on the display, and crashes when interacting with mobs. A game restart cleared up the issues. These could take awhile to hunt down, unfortunately…

One example was a bug with teleport in combat. It crashed the game, but not every time. I eventually had to use a debugger dump to figure out where it was before it went crazy, and it turned out the data table storing the address for the “teleport” routine was getting over-written by monster pathfinding algorithms, as they were next to each other in memory.

I also had to make changes to content when it came to altering maps. I have script and mob types that alter map tiles, but I had to greatly reduce their use. Why? Because they reset after you reload. This creates situations where a player may get trapped. This is something I never noticed in my own testing because I wasn’t playing a “save/reload” style a typical player would.

Both my level curve and monster stats needed adjustment as well. My main tester easily got the party to level 11 (out of 16) without even touching several areas of content, and generally found the bosses easy to defeat if they didn’t have any special attacks. I’d rather err on the side of “too easy” than “too hard” though.

One thing this whole process has made me realize is with any complex system (like a CRPG), the amount of testing is staggering. You could get away with less testing, if you have a much more simple system, but you may not end up with that great of a game.

Also, it’s important to leave your ego out of it. As a game designer and coder, you may get feedback you don’t like hearing. I wasn’t convinced that floating values for damage was necessary, and it was a pain to implement, but I did it. And I’m glad I did so now. Good testers make for a great game!

Posted in Beta, CRPG, Personal, Screenshots, TI-99/4a | 2 Comments

15 Years of Development

Title Screen
Early Title Screen

In May of 2005, I graduated from college with my Bachelor’s in Computer Science. At the time, I had started preliminary work on my CRPG, having decided that working on something original and new was better than trying to port over other games. (Which, in this case, was Chris Crawford’s Eastern Front 1941 for the Atari 8-bit systems.) My first task was to create a scrolling engine, using line of sight blocking. I wonder if every top-down CRPG starts with this?

So, with this month, it’s been 15 years. Yikes.

So it’s been an interesting couple months. I was furloughed from work for six weeks, as a cost-saving measure as the company re-oriented itself for a new and uncertain future. I’m back working now, thankfully, but I’m definitely keeping my eye on how things go.

Despite having nothing but free time, development has been slow. Stressing out about potentially needing to find new work in the middle of the worst crisis the country has experienced in over a century is not very conducive to creative thinking. I did get beta 28 out, but I still have a lot of script testing to do.

A few new features made their way into beta 29, based upon tester feedback:

  • A “return to town” effect, which will take the party back to the last place they rested. Or the starting location, if they haven’t yet. There is both a spell and an item that can do this. Some maps can’t be escaped from this way, because the game requires you to be “trapped”.
  • Floating damage indicators on the battlemap screen. The damage inflicted appears as little floating digits briefly. I pushed back on this a little, not seeing the need but one of the testers said they were so focused on the battlemap they never saw the numbers displayed below.

I still have script testing to do in several more locations, so I’m trying to buckle down and get that done. I want to make beta 29 and/or 30 the LAST beta build before a release.

After that, I have to figure out how I will distribute it. I was originally going to just put it up free for download, but I’ve been realizing that doing so would be wrong. A lot of work goes into a game like this, and to set the expectation that it should be free just because it’s on a vintage system is a bad idea.

As a look back, here’s some screen shots of the early game development to enjoy!

Statistic Bars
Early engine design, different appearance!
Screenshot #1
Early look. Not a lot of mixed colors used… Maps also had names
Screenshot #2
A lot of the basic graphics were done long ago
Screenshot #5
Dungeon walls changed, stopped trying for 3D isometric perspective
Screenshot #8
Combat was similar, but I was running out of screen space…
Posted in Beta, CRPG, Personal, RPG, Screenshots, TI-99/4a | 4 Comments

Beta Blitz

Crazy times…

I’m hunkered down in my home working remotely as we wait out the worst of the coronavirus. Even though our original plans to attend Emerald City Comic Con in Seattle were cancelled, we did end up doing a “hotel staycation” that was very fun and timely; many of the places we went are now shut down for the rest of the month.

You’d think that would mean I’d have plenty of time to work on the game, but my more immediate concerns were making sure that all of us had the supplies we needed to weather the coming weeks without having to use spare socks as toilet paper. πŸ˜‰ Hopefully that should change this week, as I pick back up on the work.

Beta testing has been ongoing for just over four months now, and we’re up to build 27, and 28 should be coming soon. My “major” version number indicates that a new saved game is needed, while “minor” means that only the program binaries and support files need to be changed and that saved game files can be preserved.

That was something I hadn’t honestly anticipated. Having testers have to play through the same content over and over again quickly erodes interest, even when it’s critical to do, such as when a major change to the engine is introduced that fundamentally affects gameplay at all levels.

Unfortunately, it’s hard to avoid. Because I may add or remove text or mob data for fixes or expansions, every single internal address updates as well. This means old saves end up wildly inaccurate and wrong. Plus, saved games actually alter and change the data as they go along, which makes conversion difficult and not worth the time to do.

I’ve also discovered, to my own disgust, that a LOT of scripting is just not working right in places, or has small annoying issues. This is because I never had a chance to play through it and bullet-proof it. I was hoping the beta testing could expose this and make it easier to fix, but in practice because it often blocks the testers and forces a restart, it’s been better for me to just play the content myself and make sure everything is working right. Then anything they find are the small outliers or details that just slipped by but aren’t breaking.

However, I’ve been very pleased with the progress with the game’s improvements. Lots of excellent interface changes made their way in, based upon feedback. I re-wrote the monster pathfinding to make boss monsters move more adroitly and with greater challenge. And several dungeons got major overhauls to make them easier, harder, or just more interesting.

So my next steps are to drop my “super party” (who are max level and can blow through monsters easily; I’m not focused on testing combat/game balance) into some new areas and make sure all the scripting is solid and working as intended. My goal is to make sure in beta 28 there is no areas I haven’t personally checked out.

My goal was to be done by May, and that may still happen. It all depends on how things go! Everyone stay safe out there.

Posted in Beta, CRPG, Personal, TI-99/4a | 3 Comments

Goodbye 2019!

Another year gone, another year the CRPG is not done… Bah! However, it’s NEARLY done. πŸ™‚

Beta testing has been ongoing for over a month, and it’s been going well. A lot of bugs and changes introduced to make the game better, and I know it will get done next year for certain. I’m hopeful I can get it done well before May, which would mark the 15 year anniversary of when I started this project.

Wow, 15 years…. where does the time go?

Back in May 2005, I was graduating college and preparing to move to western Washington to pursue a career in software development. I had dug my TI out of the basement a year or so earlier because working on code had re-awakened so many old ideas and plans. I quickly discovered that the old hardware was difficult to work on, and moved over to emulation for development. (Classic99 even then was an impressive piece of work that functioned extremely well!) I completed a few projects in assembly, and got started on some others, when I decided to take the plunge and work on a full-on CRPG.

It took a year or so to even get to a state where I could say there WAS a game being made. I did a lot of prototyping in the first few years. The first big challenge was replicating the line-of-sight algorithm from Ultima, and a scrolling map. At this point, I created my original website, “Crafting a Vintage CRPG“, which was a predecessor to this blog.

And from there on, it’s been on again, off again year after year… I’m pleased to finally be able to say though it will be done. I am honestly looking forward to sharing this work with everyone, and I hope that people find the game fun and that it helps bring some attention to a very seldom considered vintage computer. πŸ™‚

So what did we accomplish in 2019? Let’s see…

  • I completed the content for the other three world disks. (Mostly. I’m still wrapping up the final dungeon and adding some new content)
  • I completed the combat engine and did some very heavy testing of it
  • I added large-size creatures to the game
  • I started using GitHub to maintain my code base, which has done a lot for efficiency
  • Created the game map in Campaign Cartographer
  • Wrote up the manual and reference card, using stock art purchased from DriveThruRPG
  • I started the beta test with a small selected group of testers
  • Based on testing feedback, I re-added an old favorite features, offhand weapons for rogues

The bulk of the year was spent on content, but I consider that a good thing. If your content isn’t interesting, it isn’t going to keep gamers interested. πŸ™‚

So what’s next? Finish the beta testing, finish the game, get it out there! To quote the 10th Doctor, Allons-y!

Posted in Blog, CRPG, Design, Personal, TI-99/4a | 2 Comments

And Go!

Beta testing has started! I spent several hours today cleaning up boss special attacks and at the moment, the engine should be complete other than bug fixes.

Launches are never clean… I found several mob misalignments with graphics that I fixed immediately myself. And my link was wrong so nobody could download it initially. πŸ˜›

I’m planning to try and step back and let some feedback come in from the beta test team (which has about 10 people on it at the moment) before stepping in myself to play through. I’ve been too close to it for awhile so some external feedback is critical for fixing things I may just be overlooking.

You can check where things are on the Progress tab! My plan is still to launch the game before the end of the year.

I also resurrected my long dormant Twitter account… I figure I should probably have SOME presence there. I’ve also set up a Discord server specifically for the beta testing for quick feedback.

Posted in Beta, CRPG, TI-99/4a | Leave a comment

Beta Max

November 1st, I’m running out of time to not have to update the copyright on the title screen… But things are going smoothly, and beta testing should begin very soon!

Right now I’m fixing game engine bugs to get it far enough along that anything the testers find will be hopefully something I haven’t encountered yet. I addressed several bugs and features over the last few days, and just have a few more to go. The big one is updating the combat engine so boss monsters attacks offset from their larger footprint. I only have about 128 bytes left in the module though, so I may have to do some trimming…

Content-wise, I still have the last few dungeons to complete. However, I’m going to be doing a lot of content updating during the beta test, adding and expanding dialogue and NPC’s based on feedback, and likely no tester is going to reach end-game anytime soon, so I have time to get that done.

I also have a plan for the game box. I was going to see if I could get a particular company that creates custom game boxes (mainly board games) to do the work for me, but the cost is just too high. If I had unique custom artwork, it would be worth it, but I mainly have free art (used under license) and if I HAD to, I could just do all the printing and assembly myself.

Here is a mock-up of the game box:

The front
The back

I found some cheap cardboard mailer boxes that, even after shipping, are just under a dollar apiece. I’ll get sticker paper and just print the front and back on those, cut it on a cutting board, and then apply them to the box. Well, it’s a step up from ziploc bags at least. πŸ˜€

I’ll have to provide the game on a CD-ROM, unfortunately. Floppy disks these days are just too rare and likely to fail. At some point in the future, I may make a loader cartridge for the main game files which will load MUCH faster. This will not eliminate the need for a SAMS card though.

Posted in CRPG, Design, Screenshots, TI-99/4a | 11 Comments

Chaotic Cartography

Been a crazy month…

My cat had to be rushed to the ER again, this time with an actual urinary blockage. They cleared it with a urethra tube, but now he MUST be on prescription urinary foods from now on. I don’t mind the extra cost of those, it’s mainly that he’s a stubborn little cuss who doesn’t want to eat it. It will take awhile to transition him.

“Eat your dinner!” “No, it’s yucky!”

As a result, I had to cancel my plans to attend the Portland Retro Game Expo. I just didn’t have anyone available who could both house-sit and cat-monitor, and we’d have been far too worried about him to enjoy the trip.

Oh well, at least that means I can focus on getting the game ready for beta testing. πŸ™‚

My work on ancillary items continues. I finished the reference card. The game is sufficiently complex enough to warrant one for the various keys, and I realized that many of the in-game icons may need to be detailed. I did them up in black and white and then put them on the card. I may also, if I have the memory space, expand the in-game help page to include the icons and their meanings.

The other task, which I have long put off, is creating a map. Every good vintage CRPG has a map. The challenge is to create one that is professional and artistic but also doesn’t spoil the game. I also had to finish the in game maps and stitch them together to figure out what the land actually looked like.

I already had the perfect software for the job; Campaign Cartographer, from ProFantasy Software. In fact, I’ve been an owner of the software way back to their first version that ran in DOS 6.11. They used the core engine of a CAD system to build it, so it’s a very complicated and powerful tool with a VERY high learning curve.

One challenge I had to overcome how to print the map. I don’t think I can afford to have cloth maps. (This place makes them but that’s expensive. I’d have to crowdsource fund that.) So I’m working with the idea of printing it on 11×17 paper ($1.18 at your local Office Depot) and then two-folding it. That should be affordable and the results pleasing.

I’ve run into a similar issue with the manuals. Doing embossed style covers with foil print and rich textured paper like the old Ultima manuals is considered “special custom” printing these days, which means you probably have minimum print runs of 500 and likely four-figure costs. For a hobby project, I just can’t justify that.

Anyway, here is the map!

I created the map by taking giant tile block map and used it as a background layer, which then allowed me to trace coastlines and add other land features. I started out VERY detailed but I realized that everything would be too small to see at the print scale. So I started over and used fixed scales and just made it more general.

I’m sure there is more that I could do to pretty it up… There’s LOTS of threads online about using Campaign Cartographer to achieve certain effects. But overall I’m pleased and willing to move on with it as is.

Posted in CRPG, Design, Personal, Screenshots, TI-99/4a | 5 Comments

Manual Intervention

Slow progress on the CRPG…

I had a fun but exhausting weekend at Rose City Comic Con in Portland, one of my cats got sick and I had to rush him to the ER on a Sunday (fortunately he’s okay!), work has been on a major upswing lately, classic World of Warcraft continues to draw me in, and I had a death in the family as well.

When I’m feeling stuck in a rut, I change direction onto some other portion of the project. Which in this case, is the manuals. I had always envisioned creating beautiful manuals for the game. The gold star in this area is, of course, the Ultima series.

A good example would be the Ultima IV manuals. There is the history and spell book, written in a flavored prose which still manages to convey the necessary information on the game’s structure. And then a reference card which has some of the more technical aspects like the key controls and specific elements for each computer platform.

The Ultima IV Manuals! (And cloth map)

However, I’ve never gotten very far with writing up a history book in the prose style I wanted. It just felt fake and weird… And I started to realize it just wasn’t my style. I like a good manual but a manual should be exactly what it is; instructions.

Maybe I just don’t have the writing skills to pull it off… But as I read the Ultima manuals over again, I started to realize it wasn’t what I wanted to do. They do add flavor and verisimilitude, but that’s mainly because the games those manuals are for has so little.

Another aspect of it was I realized a lot of the history and background information I wanted to convey, I could do so in the game itself. There are several places in game I can scatter books that share little bits of history and trivia that will be far more rewarding for the player to discover themselves, rather than read it in a manual outside the game.

In order to find a style of writing that worked for me, I also researched on the TI side of things. I read over the Tunnels of Doom and Legends manuals and was impressed with both of them; what they lack in production values they make up for in informative instructions. The TOD manual even provides the steps to using the TI computer to load the game, something I tried to emulate myself.

So there will just be one instruction manual, and maybe a reference card (I’ll see if there’s enough information to put ON a card to warrant it). My first draft is 40 pages, that may go up a bit as I add or remove things. I’ll definitely have to get them professionally printed; when you get too many pages you need a place that can print and align them straight and trim the edges off. I can do a nice cover of some kind as well.

One thing I did NOT want to omit, but wasn’t sure how to get, was artwork for the manual. I am not an artist myself, so I knew I’d have to get it elsewhere. Fortunately, I discovered that sites like DriveThruRPG actually sell stock art with an open license for use in RPG products! This is far better than commissioning artwork, which can get VERY expensive.

Rough draft of the manual!

I will make a map for the game, but unless a very convenient and economic means presents itself, it will probably be on paper and not cloth. I have several map drawing programs I can use to create a good one. I may even hand-draw that one myself.

I had envisioned at the start that I could create a box for the game, but I’m not certain about the economics of that right now. I found an online source that crafts custom boxes with artwork for board games, RPG’s, and similar, but their per unit price would be extremely high for a low production count. And they also manufacture them overseas which means prices are likely to go up…

I may have to resort to getting blank boxes from somewhere and just pasting art onto them myself. A step up from a zip-loc bag at least.

Posted in CRPG, Personal, Screenshots, TI-99/4a | 7 Comments