Developing a Prototype of a Dynamic Text Adventure Game Fast

Questions about the LÖVE API, installing LÖVE and other support related questions go here.
Forum rules
Before you make a thread asking for help, read this.
Zun
Prole
Posts: 5
Joined: Sun Feb 27, 2011 9:30 pm

Developing a Prototype of a Dynamic Text Adventure Game Fast

Post by Zun »

I'm making a text adventure game. It's a horribly neglected medium.

Any focused tutorials concerning text and simple textual animations? I need some glow as well, have to have glow. Persistent data, obvs'. Multiple-choice and "next" is the only active player input, but I'd like to be able to determine zer approximate reading speed. Music and sound effects is secondary, but probably necessary as well. Very few icons and maybe images.
And, I need to be able to time all of this precisely.

I can cover the basics I'm missing on my own; what I need is to know where I'm heading. What specific Lua tricks do I need to have to put together this prototype?

- Text and simple textual animations (fading, floating, twitching, colors)
- Simple glow effects (from text and maybe around screen, flexible gradient, this gives breath to the display)
- Persistent data (for character, and story states)
- Multiple-choice input (faded-out options, time-limits, most of the text animation here)
- Reading speed approximation
- Music and sound effects (I've got a really good musician that is able and willing to contribute music designed specifically for the game)
- Icons and images (Got an artist as well, who should be able to make something work.)

On second thought. . . If a competent Programmer wants to work with me on this, I might be interested. I have much of the story written, the premise of which is GENIUS! and so can't be shared out of the context of the art. As far as compensation goes, the most I can offer is a partnership, because the money-market system does not like me and I don't like it; and I have very little money, none for commissions. But together! we could write, design, code and market this manifestation of creative thought plucked from the fabric of Nature Itself! pm me. . .
I'll show you some of my design and answer questions about the story. Most of it's on paper.
User avatar
Taehl
Dreaming in associative arrays
Posts: 1025
Joined: Mon Jan 11, 2010 5:07 am
Location: CA, USA
Contact:

Re: Developing a Prototype of a Dynamic Text Adventure Game

Post by Taehl »

My primary advice is to not neglect your command parser. If you have gigahertz of processor cycles and thousands of megabytes of memory at your disposal, make sure the player has no problem doing anything (or, importantly, knowing what actions are available to them). If you need help here, I have some code I can show you.

As far as Lua tricks: Learn about tables. Lua's tables are its most flexible and powerful feature. You can do a LOT with them.
Earliest Love2D supporter who can't Love anymore. Let me disable pixel shaders if I don't use them, dammit!
Lenovo Thinkpad X60 Tablet, built like a tank. But not fancy enough for Love2D 0.10.0+.
User avatar
tentus
Inner party member
Posts: 1060
Joined: Sun Oct 31, 2010 7:56 pm
Location: Appalachia
Contact:

Re: Developing a Prototype of a Dynamic Text Adventure Game

Post by tentus »

I feel like there should be a video of Sesame Street characters singing about tables in Lua. They're just that useful.

We recently had a thread about glow effects, check it out here. Timing shouldn't be bad, see http://love2d.org/wiki/love.timer

I'm not sure how appropriate icons are in a text adventure game, are you sure you want to go down that road?
Kurosuke needs beta testers
User avatar
kikito
Inner party member
Posts: 3153
Joined: Sat Oct 03, 2009 5:22 pm
Location: Madrid, Spain
Contact:

Re: Developing a Prototype of a Dynamic Text Adventure Game

Post by kikito »

I'm making a text adventure game. It's a horribly neglected medium.
Interactive Fiction isn't neglected, is just a bit more difficult to find than before.

Inform7 is today's best technology for creating it. There are several IF repositories, one of them being this one.
When I write def I mean function.
User avatar
vrld
Party member
Posts: 917
Joined: Sun Apr 04, 2010 9:14 pm
Location: Germany
Contact:

Re: Developing a Prototype of a Dynamic Text Adventure Game

Post by vrld »

Zun wrote:- Text and simple textual animations (fading, floating, twitching, colors)
EmmanuelOga wrote a tweening library that might help you with those effects. If you are looking for something more bare-bone, hump's Interpolator might be right for you.
Zun wrote:- Persistent data (for character, and story states)
As the others said, you can use tables for that. Combined with a table serializer (see also here), you can load the save-file to a variable and access it without any additional code.
Zun wrote:- Multiple-choice input (faded-out options, time-limits, most of the text animation here)
For fade-outs use the tweening library mentioned above. For time limits (or anything else having to do with time and delays), you can use hump.timer.
Note that love.timer.sleep may not work as expected: it will freeze the entire game.
Zun wrote:- Reading speed approximation
Not sure what you mean with that...
Zun wrote:- Music and sound effects (I've got a really good musician that is able and willing to contribute music designed specifically for the game)
For easier access to LÖVEs audio facilities, there are some sound managers out there: Taehls TEsound and bartbes' soundmanager.lua come to mind.
Zun wrote:- Icons and images (Got an artist as well, who should be able to make something work.)
love.graphics is your friend.


That said, LÖVE is probably not the best choice for writing a text adventure.
I have come here to chew bubblegum and kick ass... and I'm all out of bubblegum.

hump | HC | SUIT | moonshine
Zun
Prole
Posts: 5
Joined: Sun Feb 27, 2011 9:30 pm

Re: Developing a Prototype of a Dynamic Text Adventure Game

Post by Zun »

Taehl wrote:My primary advice is to not neglect your command parser. If you have gigahertz of processor cycles and thousands of megabytes of memory at your disposal, make sure the player has no problem doing anything (or, importantly, knowing what actions are available to them). If you need help here, I have some code I can show you.
I'll figure out what that advice means and then heed it.
As far as Lua tricks: Learn about tables. Lua's tables are its most flexible and powerful feature. You can do a LOT with them.
. . .
I feel like there should be a video of Sesame Street characters singing about tables in Lua. They're just that useful.
Tables, then. We like tables.
tentus wrote:I'm not sure how appropriate icons are in a text adventure game, are you sure you want to go down that road?
When I say icons, I mean Icons. Meaningful symbols, not "next" arrows or anything like that. That would make things seem more linear.
kikito wrote: Interactive Fiction isn't neglected, is just a bit more difficult to find than before.

Inform7 is today's best technology for creating it. There are several IF repositories, one of them being this one.
Okay, not "neglected"--underutilized. It's subjective, though. I poked at Inform7 and a few other similar things a month or so ago. I like where it's coming from, but no effects!, too much typing. It has a for-education background, I think, which is cool. still a neglected medium. it needs me and my tremendous ego, you see. :cool:
vrld wrote:
Zun wrote:- Text and simple textual animations (fading, floating, twitching, colors)
EmmanuelOga wrote a tweening library that might help you with those effects. If you are looking for something more bare-bone, hump's Interpolator might be right for you.
Zun wrote:- Persistent data (for character, and story states)
As the others said, you can use tables for that. Combined with a table serializer (see also here), you can load the save-file to a variable and access it without any additional code.
Zun wrote:- Multiple-choice input (faded-out options, time-limits, most of the text animation here)
For fade-outs use the tweening library mentioned above. For time limits (or anything else having to do with time and delays), you can use hump.timer.
Note that love.timer.sleep may not work as expected: it will freeze the entire game.
Zun wrote:- Reading speed approximation
Not sure what you mean with that...
Zun wrote:- Music and sound effects (I've got a really good musician that is able and willing to contribute music designed specifically for the game)
For easier access to LÖVEs audio facilities, there are some sound managers out there: Taehls TEsound and bartbes' soundmanager.lua come to mind.
Zun wrote:- Icons and images (Got an artist as well, who should be able to make something work.)
love.graphics is your friend.


That said, LÖVE is probably not the best choice for writing a text adventure.
Thanks! I'll get to all those links in turn.

By "reading speed approximation," I just mean I want the game to be able to make a reliable guess at the player's average reading speed.

And, I know LÖVE isn't made for text adventures specifically, but it's what was recommended to me, along with PyGame, for making an exceptionally dynamic one. PyGame feels more computery to me, and the little LÖVE ghosts are cute, so . . . decision made. If it doesn't work I'll go to Python. If there is pre-built kit for making text adventures with features like these, I'd love to see it.
User avatar
Taehl
Dreaming in associative arrays
Posts: 1025
Joined: Mon Jan 11, 2010 5:07 am
Location: CA, USA
Contact:

Re: Developing a Prototype of a Dynamic Text Adventure Game

Post by Taehl »

By "parser", I'm talking about your code that turns text that the player has typed into events in the game. There's nothing I (or many other people) hate more than playing hunt-the-word. Or in other words, don't let this happen:
A crappy IF game wrote: >open the chest
I don't see a "chest" here.
>open the locker
I don't see a "locker" here.
>open the casque
I don't see a "casque" here.
>OPEN THE FCKING CHEST
I don't see a "FCKING" here.
>open the trunk
I don't know how to "open" the trunk.
>DFIL'NFLSJJK;AFGBKDFJAG'NSGJN'
I don't understand that.
>QUIT
"QUIT" what?
Earliest Love2D supporter who can't Love anymore. Let me disable pixel shaders if I don't use them, dammit!
Lenovo Thinkpad X60 Tablet, built like a tank. But not fancy enough for Love2D 0.10.0+.
Zun
Prole
Posts: 5
Joined: Sun Feb 27, 2011 9:30 pm

Re: Developing a Prototype of a Dynamic Text Adventure Game

Post by Zun »

Taehl wrote:By "parser", I'm talking about your code that turns text that the player has typed into events in the game. There's nothing I (or many other people) hate more than playing hunt-the-word. Or in other words, don't let this happen:
A crappy IF game wrote: >open the chest
I don't see a "chest" here.
>open the locker
I don't see a "locker" here.
>open the casque
I don't see a "casque" here.
>OPEN THE FCKING CHEST
I don't see a "FCKING" here.
>open the trunk
I don't know how to "open" the trunk.
>DFIL'NFLSJJK;AFGBKDFJAG'NSGJN'
I don't understand that.
>QUIT
"QUIT" what?
Oh, yeah. No typing. All multiple choice. I think the appeal of that kind of game has something to do with, "Oh, groovy! Look! The computer knows what I'm saying. I dig this jazz". . . I'm trying to say it's mostly a gimmick that's outdated . . . not 70's outdated, but you get my point. It can make the story world seem more open, though, so maybe it's not just a gimmick. But even in the famous Hitchhiker's Guide to the Galaxy text adventure, it felt like a grind typing stuff in till I found a way not to die even at the very beginning of the game. It's like decryption; trying to find the different things to do, then trying to figure what things to do have effects, then trying to determine which effects are desirable. I'm not into it.

By the way, can't "interactive fiction" mean any fictitious story that the audience has some way of interacting with? It's too open a term to apply so narrowly, even to videogames in general. Text-adventure is a little narrow too. I guess just "text-based game", described further with the genre of the story told is best, sort of like it is for books. And the story doesn't even have to be truly fictitious, come to think of it. The term "interactive fiction" is presumptuous. I'm sure that if it were more popular the name would become more specific. I think the current one was chosen arbitrarily in attempts to add legitimacy.
More appealing games is what's needed to add legitimacy. . .
Zun
Prole
Posts: 5
Joined: Sun Feb 27, 2011 9:30 pm

Re: Developing a Prototype of a Dynamic Text Adventure Game

Post by Zun »

It's har-rerd!

Humans aren't supposed to think in code like this. I think can feel my brain turning into silicon. I'm going to post on craigslist for a programmer I can work with locally. . . There's lots of programmers out there with lots of free time they're willing to spend on a stranger's amateur game design for no pay, right? *sigh*, maybe I'll just save up money to hire some college student or something. :( having to apply effort to har-rerd things sucks.
Zun
Prole
Posts: 5
Joined: Sun Feb 27, 2011 9:30 pm

Re: Developing a Prototype of a Dynamic Text Adventure Game

Post by Zun »

Okay, I tried and gave up several times trying to put together something that works. (I didn't quite give up after my last post.) I can't do it. I hate the numbers and the.dots() 449.x, 72 elseif COMPUTERS ARE SUPPOSED TO SPEAK OUR LANGUAGE!!! It's 2011, where's my fucking hovering robot monkey AI to do all this stuff for me?

Annnnnyway,

Thank you, guys, for your suggestions. I hope this thread helps someone else eventually. I realized that I may not need a working prototype, I can just make a visual presentation demonstrating what I want to happen on the screen. It's not hard to make still images with basically just outlines and description text. And, if I don't have the talent to get a programmer's imagination going enough to envision this game, the game itself probably isn't very good. :o:
Post Reply

Who is online

Users browsing this forum: No registered users and 80 guests