intfiction.org

The Interactive Fiction Community Forum
It is currently Thu Jun 20, 2013 1:16 am

All times are UTC - 6 hours [ DST ]




Post new topic Reply to topic  [ 47 posts ]  Go to page Previous  1, 2, 3, 4, 5  Next
Author Message
PostPosted: Fri Oct 29, 2010 9:09 am 
Offline

Joined: Thu Oct 28, 2010 9:21 pm
Posts: 19
George wrote:
One refinement might be to take the topic matching code and abstract it, so from this:

Code:
...


to something like this (not tested):

Code:
...


And you would then define the appropriate properties on the rooms. Might be easier to manage once you had a bunch of rooms.



Thanks again, George. And that was exactly the path (pardon the pun) I was already going down. I've got the core of the logic working just fine now, however I feel it's a bit clunky. I will continue refining it and then post here for all to use.


Top
 Profile Send private message  
 
PostPosted: Fri Oct 29, 2010 9:21 am 
Offline

Joined: Thu Oct 28, 2010 9:21 pm
Posts: 19
Ron Newcomb wrote:
Tigger31337 wrote:
Not quite. Remember that my story path is completely linear. There will be no forking or choosing of paths.

Eh? One path goes forward, the other loops back with a hint...



Hehe. Nice try, but no.
That's not what most people refer to when they say "CYOA".
My "plot-line" (if you can call it that) cannot get any more linear. I am not looking to choose-your-own-anything. In case my first post wasn't clear, the player is to flow from one room to the next. The outcome of the game is fixed.

Displaying a 1-line hint (which is not a requirement, by the way) while within a room does not count as "looping back". Looping back implies that you have already left the room.


Top
 Profile Send private message  
 
PostPosted: Fri Oct 29, 2010 9:41 am 
Offline

Joined: Thu Oct 28, 2010 9:21 pm
Posts: 19
Laroquod wrote:
I'd probably approach this by finding the part in the manual that identifies how to define a new cardinal direction (I remember seeing it somewhere, probably next to the part where they explained how to cancel the old cardinal directions). Then you can name new exits anything you wish. You can name 13 new exits and definre each of those for each room as leading to the next in the sequence. In other words, one exit per room, named after the answer to its riddle. So for example if the answer to room 1's riddle is 'yes' then you can use 'Room 2 is yes of Room 1' instead of, say, west of Room 1. But you would have to define yes as a new direction, first, which unfortunately I can't give you code for off the top of my head, but I remember it seemed pretty simple. I still kinda think in MUD-brain, where defining any text you wish as an exit verb is a trivial operation; it's more unusual in Inform but I think it'd work fine for a standalone quiz game unless you had hundreds of rooms or something.

P.


I started off doing the exact same thing (which is why I included the reference to N/E/S/W in my original post). But, I found it awkward to code because it wasn't intuitive for me to think about "solutions" as "cardinal directions". (There will be approx. 40 rooms in total, so you can see this getting convoluted pretty fast. For example, a player might re-use a previous answer (direction) incorrectly, but still be able to exit the room because it matches the cardinal direction that the current room expects.) Overall, having the interpreter parse a correct answer as a spatial direction just doesn't smell right to me. :) However, it's still a valid idea and worth revisiting if nothing else proves more elegant.

Thanks.


Top
 Profile Send private message  
 
PostPosted: Fri Oct 29, 2010 10:24 am 
Offline

Joined: Thu Oct 28, 2010 9:21 pm
Posts: 19
Juhana wrote:
It also seems like an IF language might not be the best choice of tool for this kind of game, unless you have some other reasons to use one. You could make a trivia game like that with a few lines of HTML and JavaScript.



I wanted to retain the rich and lavish features of the IF experience, that only Inform can provide :) (shameless plug).

You're right - it can be done, simply, with HTML and JavaScript (hell.. with DOS batch files!)... but "simple" is not the final look of the game that I'm after. I would still like to code objects, people, and interactions in the game - just at a simpler level. Because the plot is weak (non-existent, actually) then I am relying heavily on scenery descriptions, dialogue, characters, etc... things that Inform does well. All the same, each room (it might be better to call it a "scene", perhaps) will be self-contained and you can only progress from one to the next by suppling a short (sometimes 1-word, sometimes not) answer to the room's riddle.

Seems to me that a decent IF compiler is still "the right man for the job".


Top
 Profile Send private message  
 
PostPosted: Fri Oct 29, 2010 10:35 am 
Offline

Joined: Thu Oct 28, 2010 9:21 pm
Posts: 19
katz wrote:
... I think the absolute simplest way to do it would just be to make every room have no exits and then change them to have appropriate exits:

...


I like that a lot, actually. It seems the code would give me tighter control over the flow from one room to the next, yet easily modifiable.

katz wrote:
This is automatically a one-way connection (you can't return to room 1), which is probably what you want.


Correct. Except, in your code, the movement from one scene to the next is still an active task (the player has to move himself through the door, for example). I'd prefer it if, once the riddle was solved, you are automatically ushered into the next scene. It seems like a simple enough programming task, so I'll just look that one up myself.

katz wrote:
As for interface, I'd put a person in the room who asks you the riddle and to whom you reply the answer:


Staying true to my favourite text-adventure game's style (HHGTTG), I will be narrating this entirely in the 3rd person.

Thanks, Katz, for the inspiration!


Top
 Profile Send private message  
 
PostPosted: Fri Oct 29, 2010 12:39 pm 
Offline

Joined: Thu May 20, 2010 9:33 pm
Posts: 483
Tigger31337 wrote:
Ron Newcomb wrote:
Eh? One path goes forward, the other loops back with a hint...

Hehe. Nice try, but no.
That's not what most people refer to when they say "CYOA".


I don't think he's "trying" anything. Your objective may not be exactly what most people mean when they say CYOA (no spaceships or pirates), but it has more in common structurally with CYOA than it does with world-modeled IF. In any given room -- which cannot be re-visited after exiting, even -- there is a "choice": the correct answer, or any of the wrong ones. This is true even if you haven't listed the answers out ("1. Banana 2. Apple 3. Orangutan"). The correct answer takes you forward, and the wrong answer keeps you in place (or "loops back" to... exactly where you are). Without that loop, you'd have a game that allows the player to progress regardless of what answer they give, and that doesn't sound like what you're thinking of.


Top
 Profile Send private message  
 
PostPosted: Fri Oct 29, 2010 12:44 pm 
Offline

Joined: Thu May 20, 2010 9:33 pm
Posts: 483
Tigger31337 wrote:
Staying true to my favourite text-adventure game's style (HHGTTG), I will be narrating this entirely in the 3rd person.


What? Not to nitpick, but:
HHGTTG wrote:
You wake up. The room is spinning very gently round your head. Or at least it would be if you could see it which you can’t.


Top
 Profile Send private message  
 
PostPosted: Fri Oct 29, 2010 1:53 pm 
Offline

Joined: Tue Mar 09, 2010 2:34 pm
Posts: 2140
Location: Burlington, VT
tove wrote:
Tigger31337 wrote:
Ron Newcomb wrote:
Eh? One path goes forward, the other loops back with a hint...

Hehe. Nice try, but no.
That's not what most people refer to when they say "CYOA".


I don't think he's "trying" anything. Your objective may not be exactly what most people mean when they say CYOA (no spaceships or pirates), but it has more in common structurally with CYOA than it does with world-modeled IF. In any given room -- which cannot be re-visited after exiting, even -- there is a "choice": the correct answer, or any of the wrong ones. This is true even if you haven't listed the answers out ("1. Banana 2. Apple 3. Orangutan"). The correct answer takes you forward, and the wrong answer keeps you in place (or "loops back" to... exactly where you are). Without that loop, you'd have a game that allows the player to progress regardless of what answer they give, and that doesn't sound like what you're thinking of.


I respectfully disagree on the CYOA question. When I think CYOA I think multiple explicitly given choices with some branching (even if most of the branches terminate quickly); definitely not of things that loop you back till you get the right answer. The game Tigger is describing seems most like "The Grand Quest" or "Gleaming the Verb" from the 2009 comp, both of which had strictly linear progression through a series of puzzles; in The Grand Quest you were gated through a series of rooms, in Gleaming the Verb as soon as you answered a puzzle you got the next clue. But they wouldn't have worked as CYOAs, because the puzzle was to guess the answer, as a riddle; if the choices had been given explicitly the answer probably wouldn't have been obvious.

Anyway, to the original question, why not just automatically move the player from one room to the next, if that's what you want to do? If you want them to automatically move from one room to the next you don't actually need to implement a connection. I think something like "Now the player is in (whatever the next room is)" will work, with appropriate conditions and text about the player going in the next room. (Don't have time to check the exact syntax.)


Top
 Profile Send private message  
 
PostPosted: Fri Oct 29, 2010 2:05 pm 
Offline

Joined: Thu Oct 28, 2010 9:21 pm
Posts: 19
tove wrote:
What? Not to nitpick, but:
HHGTTG wrote:
You wake up. The room is spinning very gently round your head. Or at least it would be if you could see it which you can’t.



Oops. Brain-fart. I meant to say 2nd-person, not 3rd-person.
If you read the description of "Room1" (in my original post) you'll see the narrative is in 2nd-person, just like HHGTTG.


Top
 Profile Send private message  
 
PostPosted: Fri Oct 29, 2010 2:16 pm 
Offline

Joined: Thu Oct 28, 2010 9:21 pm
Posts: 19
tove wrote:
Tigger31337 wrote:
Ron Newcomb wrote:
Eh? One path goes forward, the other loops back with a hint...

Hehe. Nice try, but no.
That's not what most people refer to when they say "CYOA".


I don't think he's "trying" anything.


He's trying to insist that my game style is that of a CYOA. However, he is mistaken.

tove wrote:
Your objective may not be exactly what most people mean when they say CYOA (no spaceships or pirates), but it has more in common structurally with CYOA than it does with world-modeled IF. In any given room -- which cannot be re-visited after exiting, even -- there is a "choice": the correct answer, or any of the wrong ones. This is true even if you haven't listed the answers out ("1. Banana 2. Apple 3. Orangutan"). The correct answer takes you forward, and the wrong answer keeps you in place (or "loops back" to... exactly where you are). Without that loop, you'd have a game that allows the player to progress regardless of what answer they give, and that doesn't sound like what you're thinking of.



It seems that you, too, have misunderstood the objective of my game.
In no way, whatever, is it accurate to describe it as a CYOA, nor is it appropriate to use a CYOA-style of logic when coding this particular game.

There are no "choices" to be made, here. The player examines a richly-detailed room (possibly containing objects, characters, dialogue, etc.) but the player has exactly ONE move to make: answer the riddle. You either pass, or fail. If fail, stay where you are. If pass, move on to the next room/scene/riddle. The entire plot (if you want to call it that) is PRE-DETERMINED. Indeed, my work is the exact opposite of CYOA.


Top
 Profile Send private message  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 47 posts ]  Go to page Previous  1, 2, 3, 4, 5  Next

All times are UTC - 6 hours [ DST ]


Who is online

Users browsing this forum: No registered users and 0 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group