A number of questions regarding Quest

DivinityOne
08 May 2012, 08:53
I have played around with quest a bit and so far have been quite impressed, however there are a number of things I've yet to figure out or discover. Hopefully with some answers I'll be able to get started on the project I have in mind.

Computer Interface Style: Is there a way to format the text returned to mimic that of a computer directory? All i can seem to do is list items as "You see a Dir1 a Dir2 a Dir3" etc. What i would ideally like to do is have a vertical list with an entry on each line.

Ex:
Dir1
Dir2
Dir3

I want to mimic a computer interface for part of my games puzzle solving involved a little hacking mini-game and clue finding.

Hide-able web interface status bar/header:
I have learned to resize the interface to match my blog theme, but i still have two issues. The first is the blue header clash's painfully with my website, if I could change the color of it to match it would be fine, removing it all together might be preferred however. The second is the save button, since I am linking through my blog I don't know how people will be able to save or resume a save since I am not using textadventures.co.uk as a portal. Each time a person revisits the game it will reset the game for them, having no option to actually load a save. Is there a way around this without an account on, and launching the game from, textadventures.co.uk?

Expressions in description text: Is there a way to dynamically link expressions in description text without making it a script? Some of my description's may run rather long (multiple pages for certain documents) and only need a few specific words/instances changed. Things such as the players name, gender, age, etc. Is an expression script the only way, or is there another method to make hot swapped words/phrases in normal text descriptions?

NPC AI: Fairly simple question, can i make a none player character object have a certain measure of intelligence. Able to randomly move about the world and when encountering the player in the same location events happen. I know this is likely possible with java script, but I'm no programmer. Is there a way to do it with through the script editor?

Combat:
Similar to AI, I know I can make and alter attributes for combat stats, but can I make a combat simulator with random encounters? I figure I'd have to use a timer, or turn end script to maybe force an interaction, but after that stage I'd need to make an AI to actually challenge the player with logical reactions.

Custom Side Menu:
Is it possible to make a custom side menu like the status and inventory ones, but with interaction or commands? My first thought go's to a simple combat interface, attack, flee, use item, etc.

That's all for now, thanks for any help you can provide.

sgreig
08 May 2012, 19:46

Computer Interface Style: Is there a way to format the text returned to mimic that of a computer directory? All i can seem to do is list items as "You see a Dir1 a Dir2 a Dir3" etc. What i would ideally like to do is have a vertical list with an entry on each line...



There are a lot of ways you could do this, so I guess it depends how you plan on using them. Before I start giving suggestions for this, perhaps you could explain how you want this part of the game to work?

Hide-able web interface status bar/header: I have learned to resize the interface to match my blog theme, but i still have two issues. The first is the blue header clash's painfully with my website, if I could change the color of it to match it would be fine...



I don't know whether the status bar is part of the core.aslx file or if it's written into the actual application itself, so Alex or even perhaps Pertex could clarify that. As far as the save button goes, I'm also not sure if that's something that can be done or not. Likely it's possible, but I don't know how difficult it would be. In terms of you embedding the game on your site (I'm assuming through an iframe) you are still using the textadventures.co.uk site, even though you're making it look like it's on your site. If the visitor had a textadventures.co.uk account they would be able to save and load as usual. The only way to enable saving/loading on your server would be to install the web player on your own server (assuming it's a Windows server with ASP.NET). The only other thing you could do would be to just offer up the game as a download and have people install Quest on their computers to play offline.

Expressions in description text: Is there a way to dynamically link expressions in description text without making it a script? Some of my description's may run rather long (multiple pages for certain documents) and only need a few specific words/instances changed. Things such as the players name, gender, age, etc. Is an expression script the only way, or is there another method to make hot swapped words/phrases in normal text descriptions?



If you mean that you have sections of text where you want certain variables placed, like the player's name, gender, etc. then it's pretty easy. I don't know what you mean by "expression script", but pretty much everything you do in Quest uses scripts so I guess if that's what you mean, then yes it's the only way. All you need to do is select "expression" from the dropdown menu on a Print Message command instead of "Text", and then you'd write the text something like this:

"Welcome "+variableforplayersname+"! You are a "+variableforplayersage+" year old "+variableforplayersgender+"!"


Of course, you'd place the actual variables in those places.

NPC AI: Fairly simple question, can i make a none player character object have a certain measure of intelligence. Able to randomly move about the world and when encountering the player in the same location events happen. I know this is likely possible with java script, but I'm no programmer. Is there a way to do it with through the script editor?



You would not use Javascript for this. You would do it with the regular game scripting. However, explaining how to write AI is going way beyond the scope here. Suffice it to say that it can definitely be done, but it's a more advanced subject so you should get to a point where you're very comfortable with scripting in Quest and you should be able to figure it out from there.

Combat: Similar to AI, I know I can make and alter attributes for combat stats, but can I make a combat simulator with random encounters...



Same as above. It can be done, but would require advanced scripting skills to do it properly.

Custom Side Menu: Is it possible to make a custom side menu like the status and inventory ones, but with interaction or commands? My first thought go's to a simple combat interface, attack, flee, use item, etc.



There is possibly a way to do this, but like with the other interface questions I'm not sure how to go about it, or how easy it would be to do. It's also possible that this can't be done in Quest yet.

Pertex
09 May 2012, 06:55

Hide-able web interface status bar/header: I have learned to resize the interface to match my blog theme, but i still have two issues. The first is the blue header clash's painfully with my website, if I could change the color of it to match it would be fine...



No, I dont' think you can change the colour. But you can remove the complete header in your game.

Each time a person revisits the game it will reset the game for them, having no option to actually load a save. Is there a way around this without an account on, and launching the game from, textadventures.co.uk?



I think you can do this but then you have to provide the same functionality on your server as textadventures.co.uk does.


[quote]Custom Side Menu: Is it possible to make a custom side menu like the status and inventory ones, but with interaction or commands? My first thought go's to a simple combat interface, attack, flee, use item, etc.



There is possibly a way to do this, but like with the other interface questions I'm not sure how to go about it, or how easy it would be to do. It's also possible that this can't be done in Quest yet.[/quote]

At the moment only Alex would be able to do something like this :-) But there is an entry in the issue tracker for this http://quest.codeplex.com/workitem/1036