Quest vs The Big Three: TADS, Inform and Hugo
Chuck
14 Sept 2003, 13:57As I've struggled to shift from a green weenie beginnger to a green beginner (with the help of many here), I have been impressed with the power of Quest to help me program virtually anything I want into my story.
So... that makes the condescending attitude of the IF elitists on rec.arts.in-fiction hard to stomach. Why does the community feel this way? Well, for one, few if any have looked past QDK to see the power of the underlying Quest engine. Those who have learned to program in one of The Big Three engines have quite an investment of time in those programs and don't really want to see an upstart gain favor. And most importantly, no Quest story has ever been rated in the top thirty of the rec.arts.int-fiction competitions. In fact, Baf's Guide to the IF Archive includes only two entries (Blade Sentinal, 38th place). So, to get respect, we have to EARN respect.
The reason for this post is to learn from those of you who have at least a working knowledge of any of The Big Three (TBT):
What can a writer/programmer achieve using any of TBT that one CANNOT achieve with Quest? Other than its narrow Windows platform, what are its limitations compared to TBT? I'm curious what this might be. If you have a working knowledge of TADS, Inform, or Hugo, please post your comments in this thread.
I would like to have the facts so I can properly stand up for Quest on that newsgroup.
Thanks!
Chuck
So... that makes the condescending attitude of the IF elitists on rec.arts.in-fiction hard to stomach. Why does the community feel this way? Well, for one, few if any have looked past QDK to see the power of the underlying Quest engine. Those who have learned to program in one of The Big Three engines have quite an investment of time in those programs and don't really want to see an upstart gain favor. And most importantly, no Quest story has ever been rated in the top thirty of the rec.arts.int-fiction competitions. In fact, Baf's Guide to the IF Archive includes only two entries (Blade Sentinal, 38th place). So, to get respect, we have to EARN respect.
The reason for this post is to learn from those of you who have at least a working knowledge of any of The Big Three (TBT):
What can a writer/programmer achieve using any of TBT that one CANNOT achieve with Quest? Other than its narrow Windows platform, what are its limitations compared to TBT? I'm curious what this might be. If you have a working knowledge of TADS, Inform, or Hugo, please post your comments in this thread.
I would like to have the facts so I can properly stand up for Quest on that newsgroup.
Thanks!
Chuck
davidw
14 Sept 2003, 14:48And most importantly, no Quest story has ever been rated in the top thirty of the rec.arts.int-fiction competitions.
You've hit the nail on the head there. No one will ever take Quest seriously until someone comes along and writes a truly great game with it. And entering dire, buggy games - Blade Sentinel take a bow - in the IFComp isn't doing Quest any favours either.
People tend to judge a system like this on the results it produces and, so far, there hasn't been a single Quest game that anyone outside the Quest community thinks is any good.
paul_one
14 Sept 2003, 18:45Could I ask a question on the IF competitions...
I know that you can't release your game before/while the game is being judged, but what about PARTS of your code - certain aspects etc...
I probably won't release any of my code until AFTER the contest anyway but this is just incase...
_________________
Computer Whizz
==Insert Sig Here!==
Currently Listening To :
NO SONG
Using Winamp.
I know that you can't release your game before/while the game is being judged, but what about PARTS of your code - certain aspects etc...
I probably won't release any of my code until AFTER the contest anyway but this is just incase...
_________________
Computer Whizz
==Insert Sig Here!==
Currently Listening To :
NO SONG
Using Winamp.
Chuck
15 Sept 2003, 21:51davidw wrote:People tend to judge a system like this on the results it produces and, so far, there hasn't been a single Quest game that anyone outside the Quest community thinks is any good.
What if someone says that no one has written a great game because Quest is not an effective tool for creating a great game?
I'm not sure anyone can really answer this question because apparently no one who frequents this board knows what The Big Three are capable of producing. I'd like to think that Quest can do anything worthwhile that The Big Three can do... but that's only a hunch without specific facts.
Chuck
paul_one
15 Sept 2003, 22:38I have fooled around with TADS - I personally haven't bothered trying to program since it would involve me having to figure out how to compile this and mix it with that etc...
I stand by what I've always said - the best text adventure game *I* have played to date is Unkoolian Unventure 1 & 2... It was funny in places, and the scenario wasn't that bad either.
There are OK games out there for these systems, but still Quest *IS* capable of good games, it's just there's no good game writers willing to get down and write on the system.
I may not know the true power of these systems, but I had a taste of TADS and Quest could easily achieve that. Inform I just plainly disliked and I haven't even heard of Hugo!!
_________________
Computer Whizz
==Insert Sig Here!==
Currently Listening To :
Barenaked Ladies - Pinch Me
Using Winamp.
I stand by what I've always said - the best text adventure game *I* have played to date is Unkoolian Unventure 1 & 2... It was funny in places, and the scenario wasn't that bad either.
There are OK games out there for these systems, but still Quest *IS* capable of good games, it's just there's no good game writers willing to get down and write on the system.
I may not know the true power of these systems, but I had a taste of TADS and Quest could easily achieve that. Inform I just plainly disliked and I haven't even heard of Hugo!!
_________________
Computer Whizz
==Insert Sig Here!==
Currently Listening To :
Barenaked Ladies - Pinch Me
Using Winamp.
Farvardin
15 Sept 2003, 22:45There are better features in Inform (I don't know Tads and others), while others are better in Quest. By better I mean "easier to program".
Things I find easier / better in Inform :
- I find it's more flexible to be able to create objects aside of rooms, while for Quest you must put them in one room from the beginning (you can have objects wherever in the code, and group objects by use of them.
- The classes in Inform are usefull.
- the use of "self" instead of object ex :
(easier to re-use the code)
also some pre built commands such as "hasnt visited", so you don't need to configure flags to do the same effect in Quest.
- Creation of new verbs, and especially the use of them inside the game :
so "FireAt" can be used with an object to "lauch" this command :
- multiple parenthesis for disambiguity :
if ( Claudine in Location && i<1 && (habits_urbains has worn || habits_campagne has worn ))
etc...
- it's easier to debug in Inform, ( in spite of some good features in Quest on the other hand, like the variable windows etc.)
for ex. it's possible to go directly to a place with the debug in Inform, to grab some objects out of sight etc.
- Some good interpreters for inform, like WinFrotz, are only 175 ko or less <-> 2 Mb for Quest because of VB. So it's easier to distribe a game with interpreter that fit on a floppy
On the contrary, I like much the compass and object lists in Quest, 1st I liked it less, but now I think it's very conveniant.
In Quest :
- to modify properties during the game. Probably it's as simple in Inform, but so far I hadn't used the feature.
- the ability to clone objects. It's very good, and I wouldn't know how to do it with Inform (it's probably possible too)
ex :
- on the opposite to Inform / Glulx, it's very easy to include sounds and images. More formats are also supported.
I won't make more comparison, I think I like both system all in all.
Inform seems more "powerfull" because it's closer to a language such a C, and it's also possible to really program with it, for ex I wanted to solve a problem I had, it's for finding how many soldiers they are in an army, when we know that they must be in equal rows, and some others soldiers are arriving late and they must be added to the rows, and those must remain equal etc.
I solved it easily with this in Inform :
It's not a hard critic, as I said before I think most critics against Quest from some users of rec.arts.in-fiction are not fair at all. I just think they believe the language in itself it's not as powerfull as it is in reality, and they also don't like it's not open source as other languages (and then easily portable).
So far the thing I dislike the most in Quest, when I'm designing my game, is to think it's limited to MSWindows. I hope to change O/S in the future, and I prefer to have a 'portable' game. And it's not the supposed limitations because I can design it almost as I wish, except I can't configure the colours of display in the sources and I can't include images in the text windows.
You could read if you want an overview of some of Inform's possibilities and way of programming, to read this guide :
Inform Beginner's Guide
http://www.firthworks.com/roger/IBG.html
and study also the game tell.inf
I don't want to preach against Quest of course, but it could give some ideas for improving Quest. I wrote about this before, but I think if it was multi plateform and with some more built-in verbs by default, other if coders may consider Quest with better eyes. Thanks to the wonderful library made by MaDbRiT the system is much improved, but if only 50% of people coding new libraries for Inform would help on Quest too, it'd increase much its popularity and quality. But remember, most good IF coders are on Linux...
Two last remarks :
- I tried to look at the code of Cloak of Darkness for Quest at http://www.firthworks.com/roger/cloak/index.html Unfortunately it's now obsolete and can't be edited in the QDK. I don't find the courage or the hability to recode it myself.
- an interesting option in QDK would be to display in the boxe the normal ASL code of the game, instead of a simplified one, so one could get inspiration to code by hand more easily (instead of having to create a temp file from QDK, open it in text editor, copy the code to the ASL source etc.)
Things I find easier / better in Inform :
- I find it's more flexible to be able to create objects aside of rooms, while for Quest you must put them in one room from the beginning (you can have objects wherever in the code, and group objects by use of them.
- The classes in Inform are usefull.
- the use of "self" instead of object ex :
Talk: self.times_spoken_to = self.times_spoken_to + 1;(easier to re-use the code)
also some pre built commands such as "hasnt visited", so you don't need to configure flags to do the same effect in Quest.
Room street "A street in Altdorf"
with description [;
print "The narrow street runs north towards the town square.
Local folk are pouring into the town through the gate to the
south, shouting greetings, offering produce for sale,
exchanging news, enquiring with exaggerated disbelief about
the prices of the goods displayed by merchants whose stalls
make progress even more difficult.^";
if (self hasnt visited)
print "^~Stay close to me, son,~ you say,
~or you'll get lost among all these people.~^";
],
n_to below_square,
s_to
"The crowd, pressing north towards the square,
makes that impossible.";- Creation of new verbs, and especially the use of them inside the game :
Verb 'fire' 'shoot' 'aim'
* -> FireAt
* noun -> FireAt
* 'at' noun -> FireAt
* 'at' noun 'with' noun -> FireAt
* noun 'with' noun -> FireAt
* noun 'at' noun -> FireAt reverse;
so "FireAt" can be used with an object to "lauch" this command :
Prop "Gessler's soldiers"
with name 'soldier' 'soldiers',
description "They're uncouth violent men, not from around here.",
before [;
FireAt: print_ret "You're outnumbered many times.";
Talk: print_ret "Such scum are beneath your contempt.";
],
found_in south_square mid_square north_square marketplace,
has animate pluralname proper;- multiple parenthesis for disambiguity :
if ( Claudine in Location && i<1 && (habits_urbains has worn || habits_campagne has worn ))
etc...
- it's easier to debug in Inform, ( in spite of some good features in Quest on the other hand, like the variable windows etc.)
for ex. it's possible to go directly to a place with the debug in Inform, to grab some objects out of sight etc.
- Some good interpreters for inform, like WinFrotz, are only 175 ko or less <-> 2 Mb for Quest because of VB. So it's easier to distribe a game with interpreter that fit on a floppy
On the contrary, I like much the compass and object lists in Quest, 1st I liked it less, but now I think it's very conveniant.
In Quest :
- to modify properties during the game. Probably it's as simple in Inform, but so far I hadn't used the feature.
- the ability to clone objects. It's very good, and I wouldn't know how to do it with Inform (it's probably possible too)
ex :
define procedure <chop_branch>
if exists <branch> then clone <branch; new branch; sans_issue2>
msg <You cut some parts of the tree>
reveal <branch>
show <branch>
flag on <sap_flow>
end define- on the opposite to Inform / Glulx, it's very easy to include sounds and images. More formats are also supported.
I won't make more comparison, I think I like both system all in all.
Inform seems more "powerfull" because it's closer to a language such a C, and it's also possible to really program with it, for ex I wanted to solve a problem I had, it's for finding how many soldiers they are in an army, when we know that they must be in equal rows, and some others soldiers are arriving late and they must be added to the rows, and those must remain equal etc.
I solved it easily with this in Inform :
[ CalculerSub x ;
for (x=1: x<=50000: x++)
if (x%3==0 && (x+1)%5==0 && (x+2)%7==0 && (x+3)%9==0 && (x+4)%11==0)
{print x ; print " ^";};
];It's not a hard critic, as I said before I think most critics against Quest from some users of rec.arts.in-fiction are not fair at all. I just think they believe the language in itself it's not as powerfull as it is in reality, and they also don't like it's not open source as other languages (and then easily portable).
So far the thing I dislike the most in Quest, when I'm designing my game, is to think it's limited to MSWindows. I hope to change O/S in the future, and I prefer to have a 'portable' game. And it's not the supposed limitations because I can design it almost as I wish, except I can't configure the colours of display in the sources and I can't include images in the text windows.
You could read if you want an overview of some of Inform's possibilities and way of programming, to read this guide :
Inform Beginner's Guide
http://www.firthworks.com/roger/IBG.html
and study also the game tell.inf
I don't want to preach against Quest of course, but it could give some ideas for improving Quest. I wrote about this before, but I think if it was multi plateform and with some more built-in verbs by default, other if coders may consider Quest with better eyes. Thanks to the wonderful library made by MaDbRiT the system is much improved, but if only 50% of people coding new libraries for Inform would help on Quest too, it'd increase much its popularity and quality. But remember, most good IF coders are on Linux...
Two last remarks :
- I tried to look at the code of Cloak of Darkness for Quest at http://www.firthworks.com/roger/cloak/index.html Unfortunately it's now obsolete and can't be edited in the QDK. I don't find the courage or the hability to recode it myself.
- an interesting option in QDK would be to display in the boxe the normal ASL code of the game, instead of a simplified one, so one could get inspiration to code by hand more easily (instead of having to create a temp file from QDK, open it in text editor, copy the code to the ASL source etc.)