Page 2 of 2
Posted: Sat Jun 21, 2003 11:47 am
by Debaser
Roody_Yogurt wrote:I hope that most if not all of those bedrooms have something necessary to the plot or game play. Otherwise, as a player, I would probably prefer just not being able to go into them. For me, at least, rooms that are implemented just for the sake of logic often have a dead sort of feel to them.
Yeah, I know, and it's becoming a balancing act. I've got four bedrooms, a kitchen, and a living room, but I never let the player see the inside of the bathroom and I'm just pretending there's no back yard, which is something I dislike doing as I tend to find it hurts immersion to pretend something isn't there when it would logically be there. The first time you visit the house, one of the bedrooms is just kinda "there", one of them (which you can't access without solving a fairly simple optional puzzle) contains quite a bit of plot foreshadowing and some stuff that provides some background information on the setting and why its inhabitant is important to the plot. The other two both contain something you need to advance, but there's no real reason the two items couldn't both be in the same room, other than the fact that I've got four characters. I'm trying to alleviate this somewhat by making each room distinct in some way that will help characerization.
For instance, one of the house's inhabitants is a hard-core "fight the power" type with absolutely no money who's pretty much relying on the other inhabitants of the house to support her. So, when I put in her CD collection, I thought it would make sense for it to consist entirely of burned discs. That meant I had to put a computer with a cd burner somewhere and so, instantly, the one member of the foursome who I hadn't come up with anything to say about other than "really, really large" (of course, this brings up the issue of extraneous characters, which I'm having an even tougher time addressing) became the geek/computer savvy member of the group. Although he's asleep in this particular time block, visiting his room presents you wth this fact, because there's a top of the line computer and nothing else that looks like it could cost any money in there. In the same sense, by including their books and/or music selections and their choices of decore, I'm hoping to flesh these people out a bit for the player. I'm not sure how it will play to anyone who's not me, of course, and I won't until beta testing. At the very least, at some time block, each of the four rooms will contain it's corresponding character at a point when the player might want or need to speak with them.
To a certain, extent, I am really trying to realise a world, and I understand the pitfalls inherent. It's especially tough, because the game takes place across a fictional city and, at some essentially arbitrary point I keep having to tell the player "no, don't go any further in that direction, use the transit system". Plus, again, just finding some sort of "hook" for every place the player has to visit , something to make it memorable or at the very least distinct from everywhere else, is tough. And I'm probably not doing as well as I'd like, but I'm trying.
Posted: Sat Jun 21, 2003 12:53 pm
by Roody_Yogurt
Well, it sounds like you've got a grasp of the difficulty so I'm looking forward to seeing how you handle it. It's a respectable goal, and I hope it doesn't become too much of a hassle... says the guy who wouldn't even code a sink into the kitchen of his first and only real game.
Posted: Sat Jun 21, 2003 8:59 pm
by Ice Cream Jonsey
Confidential to T. Debaser, IL: Hey, if you end up being in need of an elevator, let me know. While there is an implementation of an elevator class for Inform. I did not actually go and translate it, though I probably should have. I just mucked about with rooms and parse_rank values to differentiate between the direction "down" and the "down button" and so forth. My implementation kind of sucks, but it's yours if you'd like it at some date as a starting point.
Posted: Wed Jul 02, 2003 10:03 pm
by Debaser
Okay, new issue:
I run the compiler today on my game, and suddenly the log is flooded with error messages, all labled "maximum dictionary limit exceeded", or something similair. Apparantly, I've got too many nouns and/or adjectives, which makes no sense, because I don't think that:
A. I'm providing a particularly amazing number of synonyms for the objects included herein.
B. I have anywhere near as many objects at this point as, say, Fallacy of Dawn.
So, anyway, I'm maybe a quarter or so of the way through the game at this point. If this is a legitimate limitation, I'm essentially screwed. But I refuse to believe it's not me doing something wrong, here.
Posted: Wed Jul 02, 2003 10:14 pm
by Ice Cream Jonsey
Hugo's limits are pretty elastic. You might be exceeding the limits of some of the smaller computers, but FoD is 699KB in size with a crapload of routines and synonyms and so forth.
Obligatory question: you didn't do something like leave a quotation mark off a custom verb or something, did you?
Here's FoD's compile stats:
Code: Select all
===============================================================================
HUGO COMPILER v3.0.01d STATISTICS FOR: dawn.hug
07/03/03 00:23:23
===============================================================================
Total lines compiled: 42206
Objects: 655 (maximum 1024) Routines: 322 (maximum 512)
Attributes: 44 (maximum 128) Events: 50 (maximum 256)
Properties: 80 (maximum 254) Labels: 10 (maximum 256)
Aliases: 41 (maximum 256) Globals: 72 (maximum 240)
Constants: 78 (maximum 256) Arrays: 25 (maximum 256)
Words in dictionary: 1749 Special words: 27 Verbs: 130
Object file: dawn.hex (715323 bytes)
List file: dawn.lst
Elapsed compile time: 2 seconds
===============================================================================
That can be generated when you do a hc -l -s gamename.hug. (It'll throw it into a text file for you if you do that.) If you get a chance, do that and paste it up here and we'll see what's what.
Posted: Wed Jul 02, 2003 10:25 pm
by Debaser
Ice Cream Jonsey wrote:Obligatory question: you didn't do something like leave a quotation mark off a custom verb or something, did you?
This is what I'm getting
after fixing all my quotes and braces and so-forth, and I don't see any similar errors in the vicinity of where the problem starts.
That can be generated when you do a hc -l -s gamename.hug. (It'll throw it into a text file for you if you do that.) If you get a chance, do that and paste it up here and we'll see what's what.
Hrm. The compiler aborts itself before those statistics come up, so no dice. The limit I'm exceeding by the way appears to be 1024. FoD apparantly has a 1749 word dictionary, which would lead me to believe I can adjust something somewhere. But that's strictly blind guessing.
Posted: Wed Jul 02, 2003 10:40 pm
by Ice Cream Jonsey
Debaser wrote:Hrm. The compiler aborts itself before those statistics come up, so no dice. The limit I'm exceeding by the way appears to be 1024. FoD apparantly has a 1749 word dictionary, which would lead me to believe I can adjust something somewhere. But that's strictly blind guessing.
If you'd like to zip up your directory and mail it to me, definitely feel free.
You're right about expanding the limits -- the very first non-comment line in Dawn is
I can't recall if 2048 is an upper bound or a hard limit. Unfortunately, I have been programming for so long that even if I could have easily made it 2000 or 3000 I probably would have selected 2048 because this is what this profession does to you -- it gets you living in a world where cavemen had 8 (or 16) fingers instead of 10.
But yeah, insert that line at the beginning of your code and let's see if that gets things to be more succulent and tempting.
Posted: Wed Jul 02, 2003 10:47 pm
by Debaser
That did her. Thanks, Robb.
Posted: Wed Jul 02, 2003 10:52 pm
by Ice Cream Jonsey
Debaser wrote:That did her. Thanks, Robb.
M-M-M-M-MONSTER KILL!!!
There is probably a list the keywords in the manual, but for what it's worth (as I have it right in front of me) the maximum routines one is "$maxroutines".
Ok, I only typed this out because I wanted to do the monster kill thing.
Posted: Thu Jul 03, 2003 1:07 pm
by Kent
Yeah, if you're using a lot of dictionary words (which can be other things than nouns/adjectives; for instance, anything where you have 'x = "some string"' is a dictionary "word"), you can overflow the limit.
The compiler's default limits are basically sufficient to compile a medium-sized game with medium-ish demands in terms of number of objects, routines, and all that good stuff. The reason for this is to allow it to run on limited memory machines (like 640KB DOS environments). This is, arguably, unnecessary these days, and part of an argument to boost the default limits.