Estimate of time/how many words for a simple game?

Okay. This is completely separate from the teaching other people to code using inform 6&7 thing I had in the other thread, so keep that in mind.

I'm thinking of making a simple game involving about... fourteen "rooms" across two houses, no dialogue, plenty of explorable items to explain backstory, and, depending on how things play out, maybe one or two very simple and easy to follow "puzzles" to unlock story elements.  The goal is to make something that you can power-play and read the main story in 5-10 minutes, but who knows if I'll get it that low.

Essentially, I'm making this as A) a way to re-learn Inform 7 after being away from it for a few years, and B) to give my college portfolio a self-contained demonstration of my writing skills and versatility.

What I want to know is, essentially, how long can you expect something like this to take?  I imagine it's easier if you don't have fifty-million rooms and complex puzzles and people walking around, but specifics... I don't know about those.  Could someone give me a rough run-down of the time, or even just... I don't know, open up a game of similar scope and give me a word count, so I could maybe plan a NaNoWriMo grinding-session to victory?

Making a map in I7 can be very efficient and easy or a nightmare depending on your approach.

If you want to start with a map that you see in your head, may I recommend Trizbort? This will let you create rooms visually with drop/drag capability, connect them, and have it generate the map code for you as a text file you include in your source.

trizbort.genstein.net/

Trizbort even lets you add the descriptions if you want, then it handles the tricky map stuff.

East of Peristyle is Pergola. West of Peristyle is Bottom of Ramp. North of Bottom of Ramp is Portico West. Up of Bottom of Ramp is Top of Ramp. North of Pergola is Visitor Entrance. North of Visitor Entrance is Stable. East of Entryway is Elevated Window Passage. West of Entryway is Top of Ramp. East of Top of Ramp is nowhere. North of Stable is Stone Steps. East of Stone Steps is Hidden Statue Garden.

Room count doesn’t need to take up a lot of space depending on complexity, so word count of our source might not be the best measure of game size. The type of game you describe sounds like it would only be slightly more than your prose word count.

Trizbort works well also if you’ve written some of your room descriptions in a text processor already - you can just paste it into Trizbort.

My first parser game, Down, the Serpent and the Sun, had 13 rooms, 113 objects, and it’s around 17,000 words long. It took me about a week to write, but it wasn’t planned well and it has issues. You don’t need that many rooms to make a good small game. You definitely don’t need that many objects.

I wrote another game, What Fuwa Bansaku Found, with 9 rooms and 37 objects, which is about 9,000 words long. It took closer to three weeks to write (more accurately, to program), and it’s much better despite being much smaller.

Don’t rule out one-room games either. Those can be just as good in their own way. See: Lime Ergot. I don’t know its word count, but it was originally written in three hours for EctoComp.

Of a few of mine: Lime Ergot’s source code is 4,500 words. I’ve worked on it for probably around 10 hours at this point. Holy Robot Empire, which I think contains 13 rooms, has a source of about 18,000 words – looking back over emails it looks like I produced the first draft in 17 days, and then tested it for a few weeks before releasing it in a minicomp. (That seems very rushed to me now, but at least it’s possible.)

Thanks for the program, HanonO. I was able to make a map in about an hour, and while it isn’t perfect (specifically with doors), it definitely made things easier on me.

I don’t really plan on that – it’s just that the idea I came up with basically requires at least two rooms, and is in a house with approximately twenty. Although how I’m going to deal with having a mirror you can walk through that’s on one side of a sliding closet door is anyone’s guess.

Wow, that’s low. I think I’ll try thinking up something really small in scope next time, to see if I can make something like that.

I doubt I’ll be that quick – I’m basically learning and coding as I go – but I’m planning on writing something that might match that sort of scope in a month, testing it in the months after.

I think I’ll start at about… 500 words a day during June. That sounds reasonable. Thanks, guys!

I have an extension that can be accessed in the main IDE library called “Easy Doors” which allows a new type of moveable door that can make that easier.
[rant=how to][code]“Magic Door”

Include Easy Doors by Hanon Ondricek.

[Make sure you have downloaded and installed this extension!]

Your Bedroom is a room. “Your room is a bit cluttered as usual.”

Narnia is a room. “Whoa, what a magical place.”

your closet is an enterable, openable, closed container in Your Bedroom. “The sliding closet door jams easily if you’re not careful, so you’ve refrained from hanging the mirror until it can be fixed.”. Understand “door” and “sliding door” and “closet door” and “sliding closet door” as your closet.

A mirror is an easydoor. It is unopenable and open. It is portable. It is in closet. It leads to Narnia. The description is “Your reflection stares back. It seems to know a secret.”

The dooraction of mirror is “Curiouser and curiouser. You place your palm against the glass intending to wipe a smudge, and to your surprise, it goes right through! Since you weren’t expecting this, the lack of resistance and your lack of balance causes your entire body to fall through…”[/code]

[/rant]
The kind of structural detail of “an enterable mirror on one side of a door” is neat, but rarely worth the complication to the player that the detailed coding requires. The fewer tricky obstacles you throw in their way, the better chance they will not get frustrated and quit; especially since you intend this as an example of your writing. When in doubt how to code something, simplify it, and use the prose like a cutscene to indicate what happened.

On edit: Another suggestion that I’m not going to type out and repaste - Make sure to name the mirror “a full length mirror” and in the description note something like “It’s about the size of a narrow door that you could go through if the glass weren’t in the way…” or something like that so the player will imagine a big enough mirror to walk into.

Oh, thanks! That helps tons.

I have to wonder, though -- isn't there a way where you can have the door lead one place when it's open, and another place when it's closed?  It's a sliding door with a desk blocking part of it, so it's totally possible for the door to just... open and not be an operable mirror at the same time.  I mean, I'd at least like to give it a try, once I know what the heck I'm doing with the code.

Easy Doors allows you to make the door part of another object or inside something or on top of something, or portable if you want to carry around a magic portal. You can also change where the door leads using rules. You could totally make your mirror part of a closet door and then disallow entry based on the game state:

In this version, I just block a player trying to enter the mirror when the closet is open and described as partially obstructed by the desk.
[rant][code]“Magic Door”

Include Easy Doors by Hanon Ondricek.

Your Bedroom is a room. “Your room is a bit cluttered as usual.”

Narnia is a room. “Whoa, what a magical place.”

your closet is an enterable, openable container in your bedroom. It is lit. “[if the player is in your closet]It’s kind of cramped inside the closet.[otherwise]There is a sliding, mirrored closet door on one wall.[end if]”. The description is “[if your closet is open]The closet is currently open, both moving sections rolled aside partially behind your desk.[otherwise]The closet door is closed.[end if]”. Understand “door” and “sliding door” and “closet door” and “sliding closet door” as your closet.

Your desk is a supporter. It is in your bedroom. “Your desk sits partially in front of the closet.”. The description is “There’s not a lot of room, so the desk has to sit partially in front of the closet. Luckily you only really need the accessible half.”

A mirror is an easydoor. It is unopenable and open. It is part of closet. It leads to Narnia. The description is “Your reflection stares back. It seems to know a secret.”. Understand “full length” and “full-length” as mirror.

Before doing anything to mirror when the player is in closet:
say “The mirror is on the outside of the closet door, so you can’t see it at the moment.” instead.

Check entering mirror:
if your closet is open:
say “The mirror on the closet door is rolled aside behind your desk, and you don’t really feel like climbing over your workspace.” instead.

After opening closet:
say “You roll the door to the side[if the player is not in your closet] behind your desk[end if].”

After closing closet:
say “You carefully roll the closet door closed along its track[if the player is in your closet]. Now it is kind of dark.[otherwise], revealing the entire surface of the mirror. It almost appears that the carpet runs straight through like a portal to a backwards version of the room.[end if]”

Instead of entering your closet when your closet is closed:
try entering mirror instead.

The dooraction of mirror is “Curiouser and curiouser. You place your palm against the glass intending to wipe a smudge, and to your surprise, it goes right through! Since you weren’t expecting this, the lack of resistance and your lack of balance causes your entire body to fall through…”[/code][/rant]

If you did specifically want to change where an easydoor leads during play, you can do that also:

After examining the magic amulet: now mirror leads to Disneyland.
Or…

After entering mirror: if the player carries Mickey Mouse watch: now the player is in Disneyland; otherwise: now the player is in Universal Studios.

Or…

[code]Carry out closing your closet:
now mirror leads to New Jersey.

Carry out opening your closet:
now mirror leads to Cleveland.[/code]

I’d actually suggest not making the mirror part of the closet door at all. Easier to just make it scenery in the room, and describe it as being on the door in the appearance and description.

Another thing is that you might not even need to make the mirror a door. If you only want to make sure that the player can enter the mirror and get to the other room, you can just redirect that action:

[code]Bedroom is a room. “A plain bedroom without even a door to the outside.[first time]Wait, how’d you get in here?[only]”

Closet is a room. “This closet is entirely spartan. Not a hook, nor hanger, nor coat rod.”

The sliding closet door is an open door. It is inside from Bedroom and outside from Closet.

For writing a paragraph about the closet door when the location is Bedroom:
if the closet door is open:
say “One end of the sliding closet door peeks out from the wall. Through the doorway you can see the closet[if something is in the closet], and in it [a list of things in the closet][end if].”;
otherwise:
say “On the back of the sliding closet door you can see a [full-length mirror]. Something seems odd about it.”

For writing a paragraph about the closet door when the location is Closet:
if the closet door is open:
say “One end of the sliding closet door peeks out from the wall. Through the doorway you can see the bedroom[if something is in the bedroom], and in it [a list of things in the bedroom][end if].”;
otherwise:
say “The sliding closet door is shut, cutting you off from the bedroom. You can see its plain brown back.”

The full-length mirror is a thing. The description of the full-length mirror is “It is taller than you. In it you see yourself, as good-looking as ever–but wait! That’s not the room in its reflection! It’s a rolling verdant green herbaceous meadow! How lovely and much better than this bedroom with no furniture or exits to anything but a closet.”

Carry out closing the sliding closet door: now the full-length mirror is part of the sliding closet door.
Carry out opening the sliding closet door: now the full-length mirror is nowhere. [if there were any other way for it to become open or closed, we’d have to take care of that.]

[need some custom messages]
After closing the closet door: say “You slide the closet door shut[if the location is the bedroom]. It has a full-length mirror on it[end if].”
After opening the closet door: say “You slide the closet door open[if the location is the bedroom], hiding the mirror inside the wall[end if].”

Instead of entering the mirror:
say “You step through the mirror and into the verdant meadow!”;
move the player to Paradise.

Paradise is a room. “It really is quite green.”[/code]

In this code, when you type “enter closet” with the door shut, it first has you open the door and then go through it. (This only works because “closet” is part of the door’s name–the action that the game is trying to carry out is “entering the sliding closet door.”) In Hanon’s when you try “enter closet” with the door shut, it sends you in the mirror. Which you prefer depends on which you prefer.

Cross-posting with Draconis… we may also be envisioning the door differently, I’m thinking about a case where it goes into the wall and is concealed almost completely.

As you can see, there’s no one specific way to do something in Inform. This drives some people crazy but gives you leeway depending on how you want the player to experience your world. :slight_smile: