Friday, February 08, 2008
Frayed Knights - Bad Text Gone Wild!
The ongoing saga of the development of Frayed Knights - the indie RPG full of fantasy and bad jokes - continues in article, all about massive progress and massive speed-bumps. And a BIG ANNOUNCEMENT at the end!
Boy. Ya get this euphoria from having accomplished a few major, intimidating tasks... and then you end up spending three days re-writing something that you THOUGHT was already working in order to fix a bug that just cropped up.
Dialog and Font
In my case, my 2D text rendering suddenly went to crap. And you know what? Nothing is sexy about font rendering. Here I was, planning on doing all kinds of uber-cool (to the geekly mind, I guess) AI stuff and some overdue game mechanics stuff, and I gotta work on text rendering.I ended up replacing my code (which was based on a user-created module from TGB 1.1.2) with the not-so-new, improved, official code from a later version of the engine. This handled fonts completely differently. It worked fine, but everything about how it was positioned, sized, and called was different. This made my precious little dialog-balloon code, which I thought was done, require a rewrite pretty much from the ground up. And all the other TGB-based text calls, like the little floating numbers on hits, or that really groovy blue "MISS!" word that appears far too frequently.
But in addition to running to stay in place, I made a few improvements to the static dialogs. They have color-coded borders now, a suggestion I received at the Utah Indie meet a week ago. It actually works really well. I also increased the font size, so that players will be less likely to go blind from this game. Well, at least it won't be the text that makes them go blind. The graphics may still do that to 'em. Sorry 'bout that in advance.
Take That, You Fiend!
Besides the very boring font / dialog stuff, I also improved how monsters spawn, so they are less likely to end up stuck in walls or under the stairs. It's working pretty cleanly now. And that's about the extend of the path-finding for monsters. I also make them fight the player much closer (at least the random encounters do). Putting them right up in your grille like that did wonders for improving the "feel" of combat - it's visually more interesting and exciting. That's first-person perspective for you!
As I've mentioned before, I'm going old-school with monsters. Positioning is kind of on the abstract side. I actually have a table for every section of the dungeon or wilderness with what monsters appear, their frequency, and an abstract measure of quantity. As you fight the wandering monsters, their frequency of appearing drops. Eventually, this number will go back up - so if you leave the temple for a few adventures, and then come back, you may still find some priests, pus-golems, and brittlebones again. In fact, you'll never "run out" of monsters - you just may get to a very small chance of them appearing.I also started working on music, sound effects, and spell visuals. You know, for the full version of this game, I may really go back and try once more to integrate TGE 1.5.2 and the ArcaneFX pack with TGB - this time, using an older version of TGB (1.1.3, probably), so future spell visuals can be much cooler. But for the April "Pilot Episode," I'm gonna have to keep it simple. Little particle sprays, and stuff like that. I have great plans for cool animations for spells like, "Power Word: Defenestrate." But that will come later.
Time To Go On A Diet!
One issue I discovered just prior to the Utah Indie Developer meeting was that the game's size. It has ballooned to something like 120 megabytes at maximum ZIP compression! And this is is (mostly) just assets for the pilot episode. This is too friggin' huge. Now, this might cause nobody to download it, which means the bandwidth for hosting it won't be such a big deal... but that's not really the problem I'd like to have. I really want the demo to fit in under 70 megs. Under 50, if I could swing it, but I have no idea how to pack it down that tightly.
So it's time to put the data on a diet. There were some easy savings to be had eliminating some obsolete objects from the directories, and compressing the sound effects from their monstrous .WAV format down to the much-tighter .OGG format. But that only gets us part of the way there. Then we have a few 1024 x 1024 textures hanging out that need to go down to (at least) 512 x 512, and some 512 x 512 that can probably (regretfully) be reduced to 256 x 256. And I can try and share texture usage more across multiple objects. Naturally, this is painful to do, leads to things looking pixellated and all alike, and hurts the visuals on levels that make babies cry. But - such compromises are reality.
Some stuff... man, I don't know. I have a dead skeleton which - coming through the Blender exporter - is at about 115K in size. Man, back in my day, we had entire RPGs that fit within that size, or not much more than that. I'm a little suspicious of that size, too, as the full skeleton exported from 3DS Max (which I do not have) - with rigging for animation - was a little smaller than this. But sometimes I just have to suck up the hit.
That, or put a white box on the floor, and ask the player to pretend it looks like a skeleton.
Dialog Jitters
Well, besides my font suddenly going all low-rez on me and having to be re-coded, I had one other concern about the dialogs. And that has nothing to do with coding.
What is terrifying me the most about this game is the writing. The humor. The game is gonna live or die based on that, and I'm worried it won't be up to snuff.
I can be okay the facts that the animations look like crap, that my textures are inconsistent in style, and that I'm forcing the game to run in 1024 x 768 resolution. I know this isn't gonna be Oblivion - or even Wizardry 8. But if the writing isn't good enough and entertaining enough - if the characters do not "click" with players - the whole game fails.
That's the easiest thing to correct (text is cheap), but it's surprisingly challenging to balance. Is there enough dialog? Is it too much? Are the jokes too low-key and dry? Am I finding the right "voice" for the characters in each dialog (especially tough when said character might only say two words in a dialog)? Since so much of what happens in the game is non-linear, is the player getting something resembling a "story," or is it going to be utterly confusing random-feeling jumble of vignettes?
I guess that's part of why I'm approaching the release this way - with a "pilot episode" in April. It'll be kinda like a big, public focus-group test. A chance for you to let me know just how badly I've screwed up on this thing, so I can hopefully make the corrections. Effectively, the April 1st release will be "My First RPG." People can savage it, I'll learn from it, and fix things for my "next" game... which will be "Frayed Knights - The Complete Story." Except not named as lamely as that. I hope.
Alpha Test Sign Up
I need alpha testers for the Frayed Knights pilot. Testing will begin March 1st (possibly sooner). If you are interested, please register on the community and Sign Up In This Thread! Now, I won't be dropping the first alpha on everyone all at once. I'm going to phase this into weekly releases, opening it wider and wider each time to different groups. This way, I will hopefully have people scrutinizing the fourth alpha just as carefully as the first alpha.
And that's all for this week.
I think.
Looky! Forum Discussion About This Week's Dev Diary! Cool!*
(* for very liberal definitions of "cool")
Labels: Frayed Knights, Roleplaying Games
Comments:
Links to this post:
<< Home
If you're expecting to want feedback on dialog, it might be useful to have a convenient way for the alpha-testers to refer to lines that fell flat, or that they particularly liked (more of the latter, I'm sure ;) You might want to add a little identifier to each line for reference, just for the alpha.
Deleted then edited for clarity and because I was inattentive:
Forgive me if you've talked about this in a previous blog entry, but I've only recently started following your blog (found through Shamus McLaser's blog, IIRC).
I was wondering, when you started, did you keep a "day job", or did you work full-time on your game? I ask because I'm working about as hard as I can on my own indie game, but during the week, my evenings consist of anywhere from zero to four hours of work on my game. I just can't spend the energy (or time, I also have a family) working until 3am to get everything I want done after a long (sometimes ten-hour) day at my "real" job. Luckily, I can spend upwards of twelve hours a day on Saturday and Sunday, but I feel like I'm fighting an uphill battle.
Forgive me if you've talked about this in a previous blog entry, but I've only recently started following your blog (found through Shamus McLaser's blog, IIRC).
I was wondering, when you started, did you keep a "day job", or did you work full-time on your game? I ask because I'm working about as hard as I can on my own indie game, but during the week, my evenings consist of anywhere from zero to four hours of work on my game. I just can't spend the energy (or time, I also have a family) working until 3am to get everything I want done after a long (sometimes ten-hour) day at my "real" job. Luckily, I can spend upwards of twelve hours a day on Saturday and Sunday, but I feel like I'm fighting an uphill battle.
@John: That's actually a really good idea. I can put a little debug control at the bottom of the screen that displays the name of the current dialog when it comes up. That'd be really easy to do. Thanks!
@mos - Well, lessee... it's been HOW LONG since I finished Void War? I think I'm not so great at this part-time indie thing either, but I'm learning (I think I always will be), and I'm happy to share what I learn.
Anyway --- while this makes a great topic for a blog post or two, I'd say it doesn't sound like I'm doing too differently from you. I typically start working on the indie thing at ~ 9:00 PM each night, after the kids are settled, and work until 1:00 or 2:00. Then I catch around 5+ hours of sleep, and go to work.
I actually don't get much more work done on weekends, because I typically have a lot of other activities scheduled. Kinda important to give family & social life their due. But I get a few hours in.
The times I'm most productive, I'm just very focused, going through my hit-list and getting tasks done. Sometimes I just feel like I waste the whole evening.
@mos - Well, lessee... it's been HOW LONG since I finished Void War? I think I'm not so great at this part-time indie thing either, but I'm learning (I think I always will be), and I'm happy to share what I learn.
Anyway --- while this makes a great topic for a blog post or two, I'd say it doesn't sound like I'm doing too differently from you. I typically start working on the indie thing at ~ 9:00 PM each night, after the kids are settled, and work until 1:00 or 2:00. Then I catch around 5+ hours of sleep, and go to work.
I actually don't get much more work done on weekends, because I typically have a lot of other activities scheduled. Kinda important to give family & social life their due. But I get a few hours in.
The times I'm most productive, I'm just very focused, going through my hit-list and getting tasks done. Sometimes I just feel like I waste the whole evening.
Yeah, if you were to write a blog entry or two on that topic, I know I wouldn't be the only one interested.
Ok, that doesn't sound too bad, then. Sometimes I get ready to quit for the day, and I look at the list of things I've completed, and I'm pretty happy. Other times, I look at the loooong list of things that need to be done, and I wonder if I shouldn't just put this idea aside until I can get a little money in the bank and live off my savings for awhile.
Ok, that doesn't sound too bad, then. Sometimes I get ready to quit for the day, and I look at the list of things I've completed, and I'm pretty happy. Other times, I look at the loooong list of things that need to be done, and I wonder if I shouldn't just put this idea aside until I can get a little money in the bank and live off my savings for awhile.
I'd be interested in helping with feedback on the game. I still havent bothered to retrieve my lost password so I figured I'd just post here regarding testing.
As for spinning wheels on Indie games, I work on mine full time and I'm still horrified how slow it goes. Jay can tell you-- he's been watching for a couple years now.
As for spinning wheels on Indie games, I work on mine full time and I'm still horrified how slow it goes. Jay can tell you-- he's been watching for a couple years now.
For size vs. quality trade off, you could do what Fate did. They gave you the low quality detail in the initial download, but then had an additional download that would improve the graphics. They also had some text noting the difference in their splash screen or something, so you knew about it.
@Herb - LOL, yeah, I keep wondering why it isn't done already. The final stages - dealing with all the stupid little details - seems interminable!
By the way, I'll try and see if I can't reset your password for you or something. I'm going through the forums for bug-reports and so forth because it's just the easiest way to handle things.
@Jay K - I actually did something like that for Void War. Kinda. It makes for a painful distribution, process, though. I wish I didn't have to split the demo version and the full version, but I really don't see a clean way around it. The full version will be at LEAST twice as big.
Post a Comment
By the way, I'll try and see if I can't reset your password for you or something. I'm going through the forums for bug-reports and so forth because it's just the easiest way to handle things.
@Jay K - I actually did something like that for Void War. Kinda. It makes for a painful distribution, process, though. I wish I didn't have to split the demo version and the full version, but I really don't see a clean way around it. The full version will be at LEAST twice as big.
Links to this post:
<< Home


