Thread idea

OurJud
Just wanted to run this by the mods and admin before creating it, to see if it's worth doing.

Unless one already exists, how about a thread for hints/tips/hacks/methods and any other effective ways designers have found to do things in a game?

Ideally it wouldn't drift into 'code' territory, unless explicit instructions were included on how to implement it; exactly how and where to add the code, etc.

Mainly it would be methods and ideas explained in plain English - what scripts to add, where, how, etc, using the UI.

I thought of one in bed last night, for creating a night level, but am hesitant in case someone more skilled comes along and says, "That's ridiculous, you'd just do it like this..." or "There's already a script specially designed to do that..."

Anyway, your thoughts would be appreciated.

Silver
The problem with having a chat thread for hints and tips is a lot of good info gets buried in potentially hundreds of pages which makes it harder to locate at a later juncture.

I had an idea for a chat thread called 'what are you doing on your game today?' to serve as a bit of a craic but also to keep me focused and stop me procrastinating on here. Use it to set goals etc.

OurJud
Yes, I was only thinking the same thing on reflection. Perhaps such an idea would require it's own sub forum so that each topic/idea has it's own thread.

george
OJ, the Quest sub-forum basically is that forum. I think the problem you're highlighting is that most of the experienced Quest users tend to express their answers in code, because it's so much faster than writing out the steps to go through the UI. It's just one of the fundamental issues of a tool like Quest that uses a GUI.

Silver, I like that idea, you should start that thread :)

ejm29
It would be handy to have things explained im normal terms, rather than a bunch of numbers, I always struggle to get any info from the forum as the amount of answers that I have no idea how to do, or how to even start following their instruction is more often than not. :)

OurJud
Well, I wasn't thinking so much of a question and answers forum - that's what the main forum is for as george says. My idea was for people to post ideas and methods they've discovered for doing a particular thing, i.e. an effective way to use a mobile/cell phone, a new combat system, etc, etc.

jaynabonne
I think that's what the Libraries and Code Samples forum is for. It doesn't have to be "code" in the literal sense. It could be code techniques as well (where what you do in the GUI could fall under "code" in a loose sense).

HegemonKhan
I think OurJud is asking for (correct me if wrong):

additional design and~or methods of doing various things (whether via code or GUI~Editor or conceptually)

for two simple pretend examples:

Question 1: "I know how to use the 'get input' Script to use a game player's typed-in inputs, but is there any other way to use a game player's typed-in inputs?"

Answer 1: "there's also Commands that you can use."

Question 2: "What are the ways to deal with multiple cases?"

Answer 2: "if~else if~else", 'switch', and 'firsttime~otherwise" Scripts

Question 3: "What are the ways to implement combat?"

Answer 3: 'Pixie's Simple Combat Library", "quest wiki's 'how to' page's combat links", "Pertex' Combat Lbrary", "HK's variation of Pertex' Combat Library".

OurJud
HegemonKhan wrote:I think OurJud is asking for (correct me if wrong):

Well, not really, HK.

It's more, "I've been working on a system where the player is able to... blah blah blah, and have finally found a really good way of doing it. First, create an object called... blah blah blah, and give that object a list of commands, such as blah blah blah..."

HegemonKhan
we're thinking the same thing, I am understanding what you're wanting, but I was just lazy and giving really simple examples, as opposed to your more complex example of getting help:

here's a way and step by step guide of how I did it (instruction in either via GUI~Editor, Code, or both).

here's an example of what you want:

Question~Request: I don't like using the popup 'show menus', nor the Verbs~buttons and hyperlinks, I want everything to be by input, and (mostly) entirely on the left side's large text box, so how would I do character creation, without using the 'show menu' Scripts?

Answer~Response:

<game name="xxx">
<gameid>xxx</gameid>
<version>1.0</version>
<author>HegemonKhan</author>
<attr name="class_stringlist" type="simplestringlist">warrior;knight;paladin;berserker;barbarian;ranger;marksman;thief;rogue;wizard;mage;cleric;druid;necromancer;valkyrie;exorcist;assassin;amazon;magician;alchemist;summoner;bard</attr>
<start type="script">
class_function
</start>
</game>

<function name="class_function"><![CDATA[
msg ("What class are you?")
DisplayList (game.class_stringlist, true)
if (IsNumeric (result) = true) {
if (ToInt (result) >= 1 and ToInt (result) <= ToInt (ListCount (game.class_stringlist))) {
player.class_string = ToString (StringListItem (game.class_stringlist, ToInt (result) - 1))
ClearScreen
} else {
ClearScreen
class_function
}
} else if (IsNumeric (result) = false) {
ClearScreen
class_function
}
]]></function>

OurJud
HegemonKhan wrote:we're thinking the same thing, I am understanding what you're wanting, but I was just lazy and giving really simple examples, as opposed to your more complex example of getting help

:shock: I'm sorry, HK, but we're clearly not thinking the same thing, as indicated by your last reply.

I'm not talking about getting help in any way shape or form - that's what the main Quest forum is for. I'm simply talking about having a thread where people can go and post examples of how they've done a particular thing, i.e. a unique combat system, teleportation, driving a car, implementing a transport system....

It wouldn't be a Q&A type thing, it would be:

1st post: "Here's my method of implementing a transport system into your game...."
2nd post: "That's really cool, I'm definitely going to use this. Thanks for sharing."
3rd post: "I developed a really efficient and simple way to control a player's hunger levels...."

And so on.

HegemonKhan
err... my post should've looked like this (we really are thinking the same, I do understand you, but I just can't type the same as our two minds, lol. Hopefully this post finally conveys my understanding of you, hehe):

here's a way to do selection of your class using the left side's large text box without hyperlinks, but just a simple input of the corresponding number of the class that you want:

(this is just an example, to show that I do understand you, as obviously this is just a single part of 'character creation', as it's missing: name, gender, race, age, etc etc etc)

<game name="xxx">
<gameid>xxx</gameid>
<version>1.0</version>
<author>HegemonKhan</author>
<attr name="class_stringlist" type="simplestringlist">warrior;knight;paladin;berserker;barbarian;ranger;marksman;thief;rogue;wizard;mage;cleric;druid;necromancer;valkyrie;exorcist;assassin;amazon;magician;alchemist;summoner;bard</attr>
<start type="script">
class_function
</start>
</game>

<function name="class_function"><![CDATA[
msg ("What class are you?")
DisplayList (game.class_stringlist, true)
if (IsNumeric (result) = true) {
if (ToInt (result) >= 1 and ToInt (result) <= ToInt (ListCount (game.class_stringlist))) {
player.class_string = ToString (StringListItem (game.class_stringlist, ToInt (result) - 1))
ClearScreen
} else {
ClearScreen
class_function
}
} else if (IsNumeric (result) = false) {
ClearScreen
class_function
}
]]></function>


----------------------------------------

a method of transportation (Game Design: you need to 'explore' to discover new areas to be able to travel to, and then you can travel to those areas):

my 'explore' and 'travel' code:

<asl version="540">
<include ref="English.aslx" />
<include ref="Core.aslx" />
<game name="Testing Game Stuff">
<gameid>eef801a1-4e6b-4b0a-bdbf-8f3ecfa8389c</gameid>
<version>1.0</version>
<firstpublished>2013</firstpublished>
<turns type="int">0</turns>
<statusattributes type="simplestringdictionary">turns=</statusattributes>
<start type="script">
msg ("Important Note:")
msg ("Type in: help")
</start>
</game>
<object name="homeland">
<inherit name="editor_room" />
<object name="player">
<inherit name="editor_object" />
<inherit name="editor_player" />
</object>
</object>
<object name="grassland">
<inherit name="editor_room" />
</object>
<object name="plains">
<inherit name="editor_room" />
</object>
<object name="desert">
<inherit name="editor_room" />
</object>
<object name="tundra">
<inherit name="editor_room" />
</object>
<object name="swampland">
<inherit name="editor_room" />
</object>
<object name="mountains">
<inherit name="editor_room" />
</object>
<object name="forest">
<inherit name="editor_room" />
</object>
<object name="wasteland">
<inherit name="editor_room" />
</object>
<object name="coastland">
<inherit name="editor_room" />
</object>
<object name="hills">
<inherit name="editor_room" />
</object>
<command name="help_command">
<pattern>help</pattern>
<script>
help_function
</script>
</command>
<command name="explore_command">
<pattern>explore</pattern>
<script>
explore_function
</script>
</command>
<command name="travel_command">
<pattern>travel</pattern>
<script>
travel_function
</script>
</command>
<object name="data_object">
<inherit name="editor_object" />
<travel_string_list type="simplestringlist">homeland</travel_string_list>
<homeland_events_string_list type="simplestringlist">grassland_discovery;plains_discovery;desert_discovery;tundra_discovery;swampland_discovery;forest_discovery;mountains_discovery;hills_discovery;wasteland_discovery;coastland_discovery</homeland_events_string_list>
<homeland_events_script_dictionary type="scriptdictionary">
<item key="grassland_discovery">
list add (data_object.travel_string_list, "grassland")
msg ("You've discovered the grassland! Now, you can travel to the grassland and explore it!")
</item>
<item key="plains_discovery">
list add (data_object.travel_string_list, "plains")
msg ("You've discovered the plains! Now, you can travel to the plains and explore it!")
</item>
<item key="desert_discovery">
list add (data_object.travel_string_list, "desert")
msg ("You've discovered the desert! Now, you can travel to the desert and explore it!")
</item>
<item key="tundra_discovery">
list add (data_object.travel_string_list, "tundra")
msg ("You've discovered the tundra! Now, you can travel to the tundra and explore it!")
</item>
<item key="swampland_discovery">
list add (data_object.travel_string_list, "swampland")
msg ("You've discovered the swampland! Now, you can travel to the swampland and explore it!")
</item>
<item key="forest_discovery">
list add (data_object.travel_string_list, "forest")
msg ("You've discovered the forest! Now, you can travel to the forest and explore it!")
</item>
<item key="mountains_discovery">
list add (data_object.travel_string_list, "mountains")
msg ("You've discovered the mountains! Now, you can travel to the mountains and explore it!")
</item>
<item key="hills_discovery">
list add (data_object.travel_string_list, "hills")
msg ("You've discovered the hills! Now, you can travel to the hills and explore it!")
</item>
<item key="wasteland_discovery">
list add (data_object.travel_string_list, "wasteland")
msg ("You've discovered the wasteland! Now, you can travel to the wasteland and explore it!")
</item>
<item key="coastland_discovery">
list add (data_object.travel_string_list, "coastland")
msg ("You've discovered the coastland! Now, you can travel to the coastland and explore it!")
</item>
</homeland_events_script_dictionary>
</object>
<turnscript name="global_turnscript">
<enabled />
<script>
game.turns = game.turns + 1
</script>
</turnscript>
<function name="help_function">
msg ("Type 'explore' to explore your area.")
msg ("Type 'travel' to travel to different areas.")
</function>
<function name="explore_function"><![CDATA[
switch (game.pov.parent) {
case (homeland) {
result_1 = ListCount (data_object.homeland_events_string_list) - 1
if (result_1 >= 0) {
result_2 = StringListItem (data_object.homeland_events_string_list,GetRandomInt(0,result_1))
invoke (ScriptDictionaryItem (data_object.homeland_events_script_dictionary,result_2))
on ready {
foreach (item_x, split ("grassland_discovery;plains_discovery;desert_discovery;tundra_discovery;swampland_discovery;forest_discovery;mountains_discovery;hills_discovery;wasteland_discovery;coastland_discovery",";")) {
if (result_2 = item_x) {
list remove (data_object.homeland_events_string_list, result_2)
}
}
}
} else {
msg ("There seemingly is nothing left to explore in this area.")
}
}
}
]]></function>
<function name="travel_function">
show menu ("Where do you wish to travel?",data_object.travel_string_list,false) {
if (not game.pov.parent = GetObject (result)) {
game.pov.parent = GetObject (result)
} else {
msg ("You are already at this area.")
ask ("Try again?") {
if (result=true) {
travel_function
} else {
msg ("You realize that you need to discover a new area to travel to first, before you can travel to that place.")
}
}
}
}
</function>
</asl>


----------------------

Sgrieg's Follower Code:

<object name="player">
<attr name="changedparent" type="script">
if (not party_member_1.parent = player.parent) {
party_member_1.parent = player.parent
}
</attr>
</object>


HK's slight addition to it:

<object name="player">
<attr name="party_member_objectlist" type="objectlist">xxx1;xxx2;xxx3;xxx4</attr>
<attr name="changedparent" type="script">
foreach (party_member_x, player.party_member_objectlist) {
if (not party_member_x.parent = player.parent) {
party_member_x.parent = player.parent
}
}
</attr>
</object>

<object name="xxx1">
</object>

<object name="xxx2">
</object>

<object name="xxx3">
</object>

<object name="xxx4">
</object>

OurJud
:lol: I give up!

This thread was only intended for discussing the idea of such a thread. I'm not actually looking for examples.

HegemonKhan
oh wait... I thought this was the actual thread... haha... MY BAD! (err, I need to look up the smiley faces, don't know how to do yours with the laughing, hehe)

OurJud
HegemonKhan wrote:oh wait... I thought this was the actual thread... haha... MY BAD! (err, I need to look up the smiley faces, don't know how to do yours with the laughing, hehe)

You need to switch to 'full editor' rather than using the quick reply. Either that or just use .lol. - replacing the full stops/periods with colons :

This topic is now closed. Topics are closed after 60 days of inactivity.

Support

Forums