|
Related Topics:
| Newbie question - dreamhold walkthrough? - Hi all, I have recently IF, and have the Now I'm stuck and the hints provided in the game don't seem to help me. I tried to find a to help me go further but couldn't find one, I guess I didn't look in the..
Graphics in IF - How many people like some kind of graphics in their IF? Do you like the graphics and text to be in resizable frames?
Stuck in Chancellor - Help! S P O I L E R S P A C E .. .. .. .. .. .. .. .. I'm stuck on the I think I'm near the end. The lowest storey has perhaps because the real world has managed to partly reassert itself. There's a lot of wind - can't make..
"Computer Games" Article on IF - Just an FYI: The latest issue of Computer Games magazine (April 2006) contains a piece on IF. It covers the and comes all the way to the present, with on Inform, TADS, and Hugo; the Annual IF Comp, Baf's Guide, and a bunch more. ..
Dean Kamen and the Ginger Project - A tale. In 1999, Dean Kamen took a lot of the money he had earned inventing things and started a new project called Ginger. He spent several years working on it in very hush-hush he told a few people, mostly..
|
|
| Author |
Message |
External

Since: Mar 07, 2006 Posts: 3
|
(Msg. 1) Posted: Mon Mar 06, 2006 6:55 pm
Post subject: TADS 3 Newbie questions Archived from groups: rec>games>int-fiction (more info?)
|
|
|
During the History and Literature lessons I teach to 6 grade international
kids we've become hooked on ADRIFT. Then at some point I felt like moving
on and started browsing through IBG and Tads tutorials. Right now I have
several very tempting plot designs which I'd like to try my hands on. (a
little previous programming experience in Java) Something (mostly Emily
Short's recommendations) pointed me towards TADS 3 (NPC agenda,
ActorState, conversation capabilities). Hence the couple of questions.
1. (a silly one) Is it possible to make a sort of trick used at the end of
"Shrapnel" by Adam Cadre, where whatever you type produces RESTART in the
command line?
2. I'd like to write in my native language for a change (Russian). How do
I define new verbs for "look", "look in/search", "take" etc.? Prepositions
instead of "with", "on" etc.?
3. In my game I'd like to be able to choose the "viewpoint" of any NPC at
any time and see the surroundings with "the eyes" of selected character.
(type "I JOHN" or "I JANE" to select the viewpoint) Some of them can see
something, some of them not. Background color change would also be nice.
How do I go about organizing this kind of code?
4. Is it at all worth starting with TADS 3 without going through TADS 2
with all its manual and stuff? (if advised otherwise, I'd really like to
know how do I answer the questions above for the TADS 2?) I am slowly and
steadily moving through TADS 2 manual along with GettingStarted with TADS
3 document, so right now its all kind of jumbled in my head. Or would you
recommend waiting until Inform 7 as a Plan B?
Thank you in advance. >> Stay informed about: TADS 3 Newbie questions |
|
| Back to top |
|
 |  |
External

Since: Aug 07, 2005 Posts: 4
|
(Msg. 2) Posted: Mon Mar 06, 2006 6:55 pm
Post subject: Re: TADS 3 Newbie questions [Login to view extended thread Info.] Archived from groups: per prev. post (more info?)
|
|
|
Goodness, that's a lot to ask. And I'm no expert in TADS 3 _at all_.
Um. In any event, you're going to want to read over the library files
that come with TADS 3 and look at the sample programs, and read Eric
Eve's guide. TADS 3 has a steep learning curve and no official manual,
so it will be a challenge. The reward if you can climb this Mt Everest
of Everests is that you'll be able to do almost anything you want in an
IF game, since every part of TADS 3 is customizable.
1. I'm sure the Shrapnel trick is possible in TADS 3, but I haven't the
foggiest clue how.
2. Translating TADS 3 into Russian or any other language is a huge
topic, but in general, defining new verbs isn't difficult. All the
English-specific code is abstracted into the files in the
\lib\adv3\en_us directory. You would need to create a \lib\adv3\ru
directory and translate the files over. The English verbs are defined
in \lib\adv3\en_us\en_us.t; you'd create the Russian version at
\lib\adv3\ru\ru.t.
3. Moving the PC into a different body should be trivial. In the sample
games, there's a line in mainCommon() that reads gPlayerChar = me;.So
there should be no trouble with doing gPlayerChar = John or gPlayerChar
= Jane to change the viewpoint. All the fancy NPC stuff is in actor.t.
(Also, personally, I'd make the verb "AS JOHN" or "BECOME JOHN", not "I
JOHN" since "I" already means "INVENTORY".)
I assume changing the screen color is also trivial, but I've not done
this yet. I note that in banner.t that the BannerWindow class has a
setScreenColor property function, though.
4. Although I'm sure knowing TADS 2 helps with TADS 3 for learning some
of the basic concepts and strategies, I don't know if it's strictly
necessary. Like, I don't know TADS 2, but I know some concepts like
"mix-in class" carried over. And, I wouldn't wait for Inform 7; we know
too little about it to make any recommendations with it. As I
understand it (and I don't really know, just guessing from what's been
said), Inform 7 doesn't extend Inform 6's capabilites per se, it just
makes the authoring of it easier.
-- David Welbourn >> Stay informed about: TADS 3 Newbie questions |
|
| Back to top |
|
 |  |
External

Since: Mar 07, 2006 Posts: 3
|
(Msg. 3) Posted: Tue Mar 07, 2006 2:55 am
Post subject: Re: TADS 3 Newbie questions [Login to view extended thread Info.] Archived from groups: per prev. post (more info?)
|
|
|
Thanks a lot! That's reassuring.
I took a look at Russian libraries of TADS 2, the translator had some
issues with proper character set. Do I need to generate Russian charset
and #INCLUDE something like RU instead of EN_US?
Still I would like to know how to do that Shrapnel trick. Even in Inform
for that matter! After playing so many IF I still regard Shrapnel and
Shade among the craziest and most breathtaking reading material. >> Stay informed about: TADS 3 Newbie questions |
|
| Back to top |
|
 |  |
External

Since: Jul 25, 2004 Posts: 28
|
(Msg. 4) Posted: Tue Mar 07, 2006 4:55 am
Post subject: Re: TADS 3 Newbie questions [Login to view extended thread Info.] Archived from groups: per prev. post (more info?)
|
|
|
"Dan Shiovitz" <dbs.TakeThisOut@cs.wisc.edu> wrote in message
news:dujbj4$u56$1@cascadia.drizzle.com...
> In article <op.s5029hapdgxazm.TakeThisOut@h204.246.159.dialup.iptcom.net>,
> Oleksa Babansky <oleksus.TakeThisOut@i.com.ua> wrote:
> [..]
>>Still I would like to know how to do that Shrapnel trick. Even in
>>Inform
>>for that matter! After playing so many IF I still regard Shrapnel
>>and
>>Shade among the craziest and most breathtaking reading material.
>
> The Shrapnel thing is just done by printing a > prompt but not
> having
> it really be one -- just print a > character and then repeatedly
> read a key in from the player, and display 'r', 'e', 's', 't', etc
> as
> they type. You can do it in TADS, too -- in both languages the
> trick
> is just to format it right so it looks like typed-in input.
Right: use "\b>"; or "\b>" to display what looks like a prompt on
a new line. Then use the <.inputline> tag to start the display of
'r', 'e', 's' etc, and <./inputline> to end it. Use
inputManager.getKey(nil, nil) to return each keystroke actually
displayed by the player, something like:
fakeInput(resp)
{
"\b><.inputline>";
for(local i=1; i<= resp.length(); i ++)
{
local k = inputManager.getKey(nil, nil);
say(resp.substr(i,1));
}
"<./inputline>\b";
}
Note, I haven't tested the above, so it's not guaranteed and you may
have to tweak it a bit. The idea is that you can invoke it with
fakeInput('restore') or with any other string you like.
HTH,
Eric >> Stay informed about: TADS 3 Newbie questions |
|
| Back to top |
|
 |  |
External

Since: Jul 25, 2004 Posts: 28
|
(Msg. 5) Posted: Tue Mar 07, 2006 6:55 am
Post subject: Re: TADS 3 Newbie questions [Login to view extended thread Info.] Archived from groups: per prev. post (more info?)
|
|
|
"David Welbourn" <dswxyz RemoveThis @look.ca> wrote in message
news:1141690481.829676.218650@v46g2000cwv.googlegroups.com...
>
> 2. Translating TADS 3 into Russian or any other language is a huge
> topic, but in general, defining new verbs isn't difficult. All the
> English-specific code is abstracted into the files in the
> \lib\adv3\en_us directory. You would need to create a \lib\adv3\ru
> directory and translate the files over. The English verbs are
> defined
> in \lib\adv3\en_us\en_us.t; you'd create the Russian version at
> \lib\adv3\ru\ru.t.
You'd also need to translate msg_neu.t. Note that it's not simply a
question of translating text; the English-language version contains
substitution parameters like {you/he} and {the dobj/him} and you'd
have to work out how you wanted the Russian equivalents to work, and
then implement your own parameter substitution scheme if you wanted
to use one.
Again, it wouldn't just be a question of translating en_us.t, you'd
have do decide how you wanted to implement Russian grammar (for
player input) and devise the grammar rules in en_us.t accordingly.
I'm not sure I'd know how to got about it in detail, and the subject
is far too big for a usenet post. The good news is that at least
TADS 3 isolates all the language-specific stuff in two files.
> 3. Moving the PC into a different body should be trivial. In the
> sample
> games, there's a line in mainCommon() that reads gPlayerChar =
> me;.So
> there should be no trouble with doing gPlayerChar = John or
> gPlayerChar
> = Jane to change the viewpoint. All the fancy NPC stuff is in
> actor.t.
> (Also, personally, I'd make the verb "AS JOHN" or "BECOME JOHN",
> not "I
> JOHN" since "I" already means "INVENTORY".)
You should actually use the setPlayer() function to change the
player character e.g. setPlayer(John); or setPlayer(Jane); but yes,
it should be easy enough to do.
> 4. Although I'm sure knowing TADS 2 helps with TADS 3 for learning
> some
> of the basic concepts and strategies, I don't know if it's
> strictly
> necessary. Like, I don't know TADS 2, but I know some concepts
> like
> "mix-in class" carried over.
Right; you don't need to learn TADS 2 to learn TADS 3 (I didn't; I
looked at TADS 2 briefly but I never got into it in depth). For some
purposes, however, it can be useful to have the TADS 2 documentation
to hand, since there are some aspects of the language (e.g.
programming loops) for which the existing TADS 3 language
documentation presupposes knowledge of TADS 2 (though this doesn't
occur very often). There's certainly no point in trying to learn
TADS 2 in depth if your goal is to learn TADS 3.
> And, I wouldn't wait for Inform 7; we know
> too little about it to make any recommendations with it. As I
> understand it (and I don't really know, just guessing from what's
> been
> said), Inform 7 doesn't extend Inform 6's capabilites per se, it
> just
> makes the authoring of it easier.
That's my impression too, though I know no more about it than you do
(and maybe less!)
-- Eric >> Stay informed about: TADS 3 Newbie questions |
|
| Back to top |
|
 |  |
External

Since: Mar 07, 2006 Posts: 3
|
(Msg. 6) Posted: Thu Mar 09, 2006 2:55 am
Post subject: Re: TADS 3 Newbie questions [Login to view extended thread Info.] Archived from groups: per prev. post (more info?)
|
|
|
|
|
| Back to top |
|
 |  |
External

Since: Jul 25, 2004 Posts: 28
|
(Msg. 7) Posted: Fri Mar 10, 2006 3:55 am
Post subject: Re: TADS 3 Newbie questions [Login to view extended thread Info.] Archived from groups: per prev. post (more info?)
|
|
|
"Oleksa Babansky" <oleksus DeleteThis @i.com.ua> wrote in message
news:op.s56no5pwdgxazm@h127.246.159.dialup.iptcom.net...
> On Thu, 09 Mar 2006 10:43:18 +0300, Eric Eve
> <eric.eve DeleteThis @NOSPAMhmc.ox.ac.uk> wrote:
> There is a nice thing you describe called ShuffledList. I'd like
> to use such shuffledList of descriptions for every location and
> every object (I really like to avoid repetitions of any kind,
> even for "You can't see any such thing" phrase). How should I
> implement it if I need a location to have, say, three
> descriptions which are shuffled to be displayed every time I type
> "look"?
You could do this either with a ShuffledList, or with a
ShuffledEventList. With a ShuffledList you'd do something like this:
myRoom: Room 'A Room'
desc() { say(descList.getNextValue(); }
descList: ShuffledList {
valueList = [
'This is the first description. ',
'This is another one. ',
'And this is yet another. '
]
}
;
With a ShufflledEventList you'd do something similar:
myRoom: Room 'A Room'
desc() { descList.doScript(); }
descList: ShuffledEventList {
[
'This is the first description. ',
'This is another one. ',
'And this is yet another. '
]
}
;
> And I'd also like three variations of each description of each
> ActorState and Object. How would it look in a code?
You'd use exactly the same coding pattern. On objects (I assume you
mean Things) you'd define the desc property in precisely the same
way the room's desc paper was defined above. On ActorState you'd
apply the same principle to the specialDesc and or stateDesc
properties.
-- Eric >> Stay informed about: TADS 3 Newbie questions |
|
| Back to top |
|
 |  |
External

Since: Jul 25, 2004 Posts: 28
|
(Msg. 8) Posted: Sun Mar 26, 2006 1:55 pm
Post subject: Re: TADS 3 Newbie questions [Login to view extended thread Info.] Archived from groups: per prev. post (more info?)
|
|
|
"Oleksa Babansky" <oleksus RemoveThis @i.com.ua> wrote in message
news:op.s6032goldgxazm@h235.246.159.dialup.iptcom.net...
> If I intend to shuffle every default phrase in TADS3 (even "You
> can't see any such thing") to be randomly chosen from a short
> list (the way you kindly pointed out before, thank you so much
> again!) - should I implement the same code in the standard advr.t
> files as well? Just like that? Or should I somehow do that from
> inside the game code?
I don't know what you mean by the "standard advr.t file", since this
has no clear reference in a TADS 3 context, but you should do what
your trying to do from within your game code, probably by modifying
the appropriate library object(s) using the modify command in your
own code. To do this for *every* default phrase will be quite an
undertaking, however!
-- Eric >> Stay informed about: TADS 3 Newbie questions |
|
| Back to top |
|
 |  |
|