Dangers In Lands Deemed Obscene (Need programming help!)

yugijak
Hi, my name is Yugijak, and I'm creating a game called Dangers In Lands Deemed Obscene, a Corruption of Champions inspired text adventure game that, while it does have some roots there, has a unique style and universe to it.


The plot of the game it thus:
You and your partner, both of which can be customized in appearance (and hopefully even relationship) at the beginning of the plague, are the victims of something known as The Plight. Over the course of the adventure you will attempt to survive the world, find crafting tools, face down brutal challenges, and recover your strength in order to destroy the Plight on the day it returns to your homeland.

Dangers operates on a similar 'timer' system to Corruption of Champions, only instead of hours, it goes by days. You only get so many days you can scrounge around, explore, level up, and get new things before you have to decide whether to challenge the Plight or to hide. There will be creatable items in the game, as well as several other things.

Here's what I'm asking.

I have NO IDEA HOW TO PROGRAM ANY OF THIS.

I can write plenty well enough, but I need some MAJOR help with coding all this stuff. If anyone can give me ideas on how to implement this, I will be eternally grateful. Here's a list of ideas for what I plan on doing in the game:

-

A working Player Partner (a character you start with that can be interacted with, traded with, battled against/aside, sexed, and so on)

The ability to customize your Player Partner at the beginning of the game and at points throughout it.

Item crafting (for healing items, potions, maybe spell scrolls and so on)

Multiple areas (a forest, a small town, an abandoned castle, and so on)

Plight Counter System (so that you can see how much time is left until the Plight returns at any time)

More characters to interact with

Battle system abilities (spells, special attacks, etcetera)

-

I'll probably add more as they come to light, but this is what I have right now. Again, any help is appreciated. Thank you.

HegemonKhan
take a look at the discussion forum (quest forum), the quest wiki pages (especially the tutorial there), the 'libraries and code' forum, and post your questions in the discussion forum (quest forum).

do you have any coding knowledge ability, or are you totally new to coding ??? do you want to create your game via just using quest's GUI~Editor, or do you want to learn to code with quest? regardless, both take some time to learn how to do, as does any game making software, and game making itself, isn't easy either, lol. The things you want, are not simple things to do in game making and nor in coding.

sent you a pm too, take a look at it.

yugijak
HegemonKhan wrote:take a look at the discussion forum (quest forum), the quest wiki pages (especially the tutorial there), the 'libraries and code' forum, and post your questions in the discussion forum (quest forum).

do you have any coding knowledge ability, or are you totally new to coding ??? do you want to create your game via just using quest's GUI~Editor, or do you want to learn to code with quest? regardless, both take some time to learn how to do, as does any game making software, and game making itself, isn't easy either, lol. The things you want, are not simple things to do in game making and nor in coding.

sent you a pm too, take a look at it.



I saw the PM. And here's my answer:

I have some practice with coding, but it's been a few years since I opened up the coder's page. And I didn't really catch everything I was taught, though I did apparently have talent for it.

I don't know much about the GUI Editor. Personally, I feel like I'm going to go for a mix of the game book and text adventure approaches, again like CoC did. Thankfully I have a good amount of time to learn.

In addition I'm going to make a game book of the project as a sort of reference guide for the things I plan on doing. Probably not going to be too good, a basic map of the different things you'll encounter in the game, but it's better than nothing, right?

Nothing worth having is ever simple. It is how it is.

HegemonKhan
some useful links:

1. http://quest5.net/wiki/Category:All_Fun ... t_Commands (page 1, range: A-S)
2. http://quest5.net/w/index.php?title=Cat ... t#mw-pages (page 2, range: S-Z)
3. http://quest5.net/wiki/Main_Page
4. http://quest5.net/wiki/Tutorial
5. http://quest5.net/wiki/How_to (guides)
6. http://quest5.net/wiki/Object_element
7. http://quest5.net/wiki/Attribute_Types
8. http://quest5.net/wiki/ASLX_Elements
9. http://quest5.net/wiki/Category:ASLX_Elements
10. viewforum.php?f=18 (guides)
11. viewforum.php?f=20 (text adventure game design)

for character creation:

http://quest5.net/wiki/Character_Creation

leveling up stat selection:

viewtopic.php?f=18&t=4057

Equipment:

1. viewtopic.php?f=18&t=2901
2. viewtopic.php?f=18&t=2660
3. http://quest5.net/wiki/Simple_Combat_System_(Advanced)

Combat:

1. viewtopic.php?f=18&t=2660
2. http://quest5.net/wiki/Simple_Combat_System_(Advanced)

my old combat code (credit goes to Pertex and his Combat code):

<asl version="530">
<include ref="English.aslx" />
<include ref="Core.aslx" />
<game name="Testing Game Stuff">
<gameid>d83ba5bb-2e3c-4f31-80c9-3e88a2dc082c</gameid>
<version>1.0</version>
<pov type="object">player</pov>
<start type="script">
cc
</start>
<turns type="int">0</turns>
<statusattributes type="stringdictionary">turns = </statusattributes>
</game>
<object name="room">
<inherit name="editor_room" />
<object name="player">
<inherit name="defaultplayer" />
<inherit name="pc" />
<cur_hp type="int">999</cur_hp>
<max_hp type="int">999</max_hp>
<str type="int">100</str>
<end type="int">100</end>
<dex type="int">100</dex>
<agi type="int">100</agi>
<spd type="int">100</spd>
<hc type="int">100</hc>
<pd type="int">100</pd>
<pr type="int">100</pr>
</object>
<object name="orc1">
<inherit name="editor_object" />
<inherit name="npc" />
<hostile type="boolean">true</hostile>
<dead type="boolean">false</dead>
<alias>orc</alias>
<cur_hp type="int">999</cur_hp>
<max_hp type="int">999</max_hp>
<str type="int">25</str>
<end type="int">25</end>
<dex type="int">25</dex>
<agi type="int">25</agi>
<spd type="int">25</spd>
<hc type="int">25</hc>
<pd type="int">25</pd>
<pr type="int">25</pr>
</object>
</object>
<turnscript name="game_turns">
<enabled />
<script>
sa
game.turns = game.turns + 1
</script>
</turnscript>
<command name="fight">
<pattern>fight #text#</pattern>
<script>
battle_system (game.pov,text)
</script>
</command>
<type name="char">
<cur_hp type="int">0</cur_hp>
<drop type="boolean">false</drop>
<defending type="boolean">false</defending>
<max_hp type="int">0</max_hp>
<str type="int">0</str>
<end type="int">0</end>
<dex type="int">0</dex>
<agi type="int">0</agi>
<spd type="int">0</spd>
<hp type="int">0</hp>
<hc type="int">0</hc>
<pd type="int">0</pd>
<pr type="int">0</pr>
</type>
<type name="pc">
<inherit name="char" />
<statusattributes type="stringdictionary">hp = ;str = ;end = ;dex = ;agi = ;spd = ;hc = ;pd = ;pr = </statusattributes>
</type>
<type name="npc">
<inherit name="char" />
<dead type="boolean">false</dead>
<hostile type="boolean">false</hostile>
<displayverbs type="list">Look at; Talk; Fight</displayverbs>
</type>
<function name="cc">
msg ("What is your name?")
get input {
game.pov.alias = result
msg (" - " + game.pov.alias)
show menu ("What is your gender?", split ("male;female" , ";"), false) {
game.pov.gender = result
show menu ("What is your race?", split ("human;dwarf;elf" , ";"), false) {
game.pov.race = result
show menu ("What is your class?", split ("warrior;cleric;mage;thief" , ";"), false) {
game.pov.class = result
msg (game.pov.alias + " is a " + game.pov.gender + " " + game.pov.race + " " + game.pov.class + ".")
wait {
ClearScreen
}
}
}
}
}
</function>
<function name="sa">
game.pov.hp = game.pov.cur_hp + " / " + game.pov.max_hp
</function>
<function name="battle_system" parameters="self,text" type="boolean">
first_value = false
enemy = GetObject (text)
if (enemy = null) {
foreach (obj,AllObjects()) {
if (obj.alias=text) {
enemy = obj
}
}
}
if (enemy = null) {
msg ("There is no " + text + " here.")
first_value = false
}
else if (not Doesinherit (enemy,"npc")) {
msg ("You can not battle that!")
first_value = false
}
else if (not npc_reachable (enemy)) {
msg ("There is no " + enemy.alias + " in your vicinity.")
first_value = false
}
else if (GetBoolean (enemy,"dead") = true) {
msg (enemy.alias + " is already dead.")
first_value = false
}
else if (GetBoolean (enemy,"hostile") = false) {
msg (enemy.alias + " is not hostile.")
first_value = false
}
else if (battle_sequence (self,enemy) = true) {
msg ("The battle is over.")
first_value = true
}
return (first_value)
</function>
<function name="battle_sequence" parameters="self,enemy" type="boolean"><![CDATA[
second_value = false
if (enemy.dead = false) {
if (GetInt (self,"spd") > GetInt (enemy,"spd")) {
on ready {
msg ("You get to go first for this round")
if (self_battle_turn (self,enemy) = true) {
battle_sequence (self,enemy)
}
}
on ready {
if (enemy.dead = false) {
if (enemy_battle_turn (self,enemy) = true) {
msg ("The round has ended.")
}
}
}
on ready {
battle_sequence (self,enemy)
}
}
else if (GetInt (self,"spd") < GetInt (enemy,"spd")) {
on ready {
msg (enemy.alias + " gets to go first for this round.")
if (enemy_battle_turn (self,enemy) = true) {
msg ("It is now your turn.")
}
}
on ready {
if (self_battle_turn (self,enemy) = true) {
battle_sequence (self,enemy)
}
else {
msg ("The round has ended.")
}
}
on ready {
battle_sequence (self,enemy)
}
}
else if (GetInt (self,"spd") = GetInt (enemy,"spd")) {
if (RandomChance (50) = true) {
on ready {
msg ("You get to go first for this round")
if (self_battle_turn (self,enemy) = true) {
battle_sequence (self,enemy)
}
}
on ready {
if (enemy_battle_turn (self,enemy) = true) {
msg ("The round has ended.")
}
}
on ready {
battle_sequence (self,enemy)
}
}
else {
on ready {
msg (enemy.alias + " gets to go first for this round.")
if (enemy_battle_turn (self,enemy) = true) {
msg ("It is now your turn.")
}
}
on ready {
if (self_battle_turn (self,enemy) = true) {
battle_sequence (self,enemy)
}
else {
msg ("The round has ended.")
}
}
on ready {
battle_sequence (self,enemy)
}
}
}
}
else {
second_value = true
}
return (second_value)
]]></function>
<function name="self_battle_turn" parameters="self,enemy" type="boolean"><![CDATA[
third_value = false
msg (self.alias + " has " + self.cur_hp + " HP left.")
msg (enemy.alias + " has " + enemy.cur_hp + " HP left.")
wait {
show menu ("What is your battle choice?", split ("Attack;Defend;Cast;Item;Run", ";"), false) {
switch (result) {
case ("Attack") {
fourth_value = false
if (RandomChance (GetInt (enemy,"agi") - GetInt (self,"spd")) = true) {
msg (enemy.alias + "evaded your attack!")
fourth_value = true
}
else if (RandomChance (GetInt (enemy,"Dex") - GetInt (self,"agi")) = true) {
msg (enemy.alias + "parried your attack!")
fourth_value = true
}
else if (RandomChance (GetInt (enemy,"agi") - GetInt (self,"dex")) = true) {
msg (enemy.alias + "blocked your attack!")
fourth_value = true
}
else if (RandomChance (GetInt (self,"dex") - GetInt (enemy,"spd")) = false) {
msg ("Your attack missed " + enemy.alias +"!")
fourth_value = true
}
else if (RandomChance (GetInt (enemy,"pr") - GetInt (self,"hc")) = true) {
msg ("Your attack got resisted by " + enemy.alias +"!")
fourth_value = true
}
else if (fourth_value = false) {
if (self.defending = true and enemy.defending = true) {
enemy.cur_hp = enemy.cur_hp - (crit_hit (self) * 2 * GetInt (self,"pd") / 2 + GetInt (self,"pd") * (GetInt (self,"str") - GetInt (enemy,"end")) / 100)
msg (enemy.alias + " has " + enemy.cur_hp + " HP left.")
self.defending = false
}
else if (self.defending = true and enemy.defending = false) {
enemy.cur_hp = enemy.cur_hp - (crit_hit (self) * 2 * GetInt (self,"pd") + GetInt (self,"pd") * (GetInt (self,"str") - GetInt (enemy,"end")) / 100)
msg (enemy.alias + " has " + enemy.cur_hp + " HP left.")
self.defending = false
}
else if (self.defending = false and enemy.defending = true) {
enemy.cur_hp = enemy.cur_hp - (crit_hit (self) * GetInt (self,"pd") / 2 + GetInt (self,"pd") * (GetInt (self,"str") - GetInt (enemy,"end")) / 100)
msg (enemy.alias + " has " + enemy.cur_hp + " HP left.")
}
else if (self.defending = false and enemy.defending = false) {
enemy.cur_hp = enemy.cur_hp - (crit_hit (self) * GetInt (self,"pd") + GetInt (self,"pd") * (GetInt (self,"str") - GetInt (enemy,"end")) / 100)
msg (enemy.alias + " has " + enemy.cur_hp + " HP left.")
}
}
}
case ("Defend") {
if (self.defending = false) {
self.defending = true
}
}
case ("Cast") {
self.defending = false
}
case ("Item") {
self.defending = false
}
case ("Run") {
self.defending = false
}
}
if (GetInt (enemy,"cur_hp") > 0) {
if (RandomChance (GetInt (self,"spd") - GetInt (enemy,"spd")) = true) {
msg ("You get an extra battle turn!")
self_battle_turn (self,enemy)
}
else {
msg ("Your battle turn is over.")
third_value = false
}
}
else if (GetInt (enemy,"cur_hp") <= 0) {
msg (enemy.alias + " is dead.")
msg ("You have won the battle!")
enemy.defending = false
enemy.dead = true
third_value = true
wait {
ClearScreen
}
}
}
}
return (third_value)
]]></function>
<function name="enemy_battle_turn" parameters="self,enemy" type="boolean"><![CDATA[
fifth_value = false
msg (self.alias + " has " + self.cur_hp + " HP left.")
msg (enemy.alias + " has " + enemy.cur_hp + " HP left.")
result = GetRandomInt (1,3)
switch (result) {
case (1) {
sixth_value = false
if (RandomChance (GetInt (self,"agi") - GetInt (enemy,"spd")) = true) {
msg ("You have evaded the attack!")
sixth_value = true
}
else if (RandomChance (GetInt (self,"dex") - GetInt (enemy,"agi")) = true) {
msg ("You have parried the attack!")
sixth_value = true
}
else if (RandomChance (GetInt (self,"agi") - GetInt (enemy,"dex")) = true) {
msg ("You have blocked the attack!")
sixth_value = true
}
else if (RandomChance (GetInt (enemy,"dex") - GetInt (self,"spd")) = false) {
msg (enemy.alias +"'s attack missed!")
sixth_value = true
}
else if (RandomChance (GetInt (self,"pr") - GetInt (enemy,"hc")) = true) {
msg ("You resisted the attack!")
sixth_value = true
}
else if (sixth_value = false) {
if (enemy.defending = true and self.defending = true) {
self.cur_hp = self.cur_hp - (crit_hit (enemy) * 2 * GetInt (enemy,"pd") / 2 + GetInt (enemy,"pd") * (GetInt (enemy,"str") - GetInt (self,"end")) / 100)
msg (self.alias + " has " + self.cur_hp + " HP left.")
enemy.defending = false
}
else if (enemy.defending = true and self.defending = false) {
self.cur_hp = self.cur_hp - (crit_hit (enemy) * 2 * GetInt (enemy,"pd") + GetInt (enemy,"pd") * (GetInt (enemy,"str") - GetInt (self,"end")) / 100)
msg (self.alias + " has " + self.cur_hp + " HP left.")
enemy.defending = false
}
else if (enemy.defending = false and self.defending = true) {
self.cur_hp = self.cur_hp - (crit_hit (enemy) * GetInt (enemy,"pd") / 2 + GetInt (enemy,"pd") * (GetInt (enemy,"str") - GetInt (self,"end")) / 100)
msg (self.alias + " has " + self.cur_hp + " HP left.")
}
else if (enemy.defending = false and self.defending = false) {
self.cur_hp = self.cur_hp - (crit_hit (enemy) * GetInt (enemy,"pd") + GetInt (enemy,"pd") * (GetInt (enemy,"str") - GetInt (self,"end")) / 100)
msg (self.alias + " has " + self.cur_hp + " HP left.")
}
}
}
case (2) {
if (enemy.defending = false) {
msg (enemy.alias + " has choosen to defend itself.")
enemy.defending = true
}
}
case (3) {
enemy.defending = false
msg ("Cast")
}
}
if (GetInt (self,"cur_hp") > 0) {
if (RandomChance (GetInt (enemy,"spd") - GetInt (self,"spd")) = true) {
msg (enemy.alias + " gets an extra battle turn!")
wait {
enemy_battle_turn (self,enemy)
}
}
else {
msg (enemy.alias + " 's battle turn is over.")
fifth_value = true
}
}
else if (GetInt (self,"cur_hp") <= 0) {
msg (self.alias + " has died.")
msg ("GAME OVER")
finish
}
return (fifth_value)
]]></function>
<function name="npc_reachable" parameters="object" type="boolean">
value = false
foreach (x,ScopeReachableNotHeld ()) {
if (x=object) {
value = true
}
}
return (value)
</function>
<function name="crit_hit" parameters="object" type="int">
if (RandomChance (GetInt (object,"luck")) = true) {
value = 2
}
else {
value = 1
}
return (value)
</function>
</asl>


and sorry about the abrevs, here's the key~legend for them:

01. cc = character creation function
02. sa = status attributes (mainly for implementing/displaying of ' cur / max ' stats) function
03. char = character object type ("pcs", "npcs", "monsters", etc., so, not a room, item, equipment, spell, etc)
04. pc = playable character object type ("player" characters / game.povs)
05. npc = non-playable character ("people", "monsters", and etc, so not a "player" character / not a game.pov, I'm going to have a hostility system, so any npc can be friendly or hostile, instead of having an actual "monster/enemy" type set aside)
06. hp = hit points (life) stat attribute
07. mp = mana points (magic) stat attribute
08. str = strength (physical damage, carry weight / equipment requirement, etc) stat attribute
09. end = endurance (physical defense, and etc) stat attribute
10. dex = dexterity (weapon~attack skill, think of this as "if your attack connects or not, do you 'whiff' or not", so not to gete confused with hc, and etc) stat attribute
11. agi = agility (dodging/evading, and etc) stat attribute
12. spd = speed (who goes first in battle, extra battle turns, escaping from battle, and etc) stat attribute
13. hc = hit chance (think of this more as piercing their armor or not, so not to get confused with dex, and etc) stat attribute
14. pd = physical damage stat attribute
15. fp = fire damage stat attribute
16. wp = water damage stat attribute
17. ap = air damage stat attribute
18. ed = earth damage stat attribute
19. ld = light damage stat attribute
20. dd = dark damage stat attribute
21. pr = physical resistance stat attribute
22. fr = fire resistance stat attribute
23. wr = water resistance stat attribute
24. ar = air resistance stat attribute
25. er = earth resistance stat attribute
26. lr = light resistance stat attribute
27. dr = dark resistance stat attribute
28. defending = boolean (reduces damage done for that character and increases the damage done by that character, if they chosoe to attack on the next turn)
29. escaped = boolean, run from battle (not completed/implemented yet)
30. hostile = boolean, any npc can be friendly or a(n) "monster/enemy", based upon a hostility scale (0-100), but not completed
31. dead = boolean
32. crit_hit = critical hit (bonus damage based upon luck)
33. luck = luck stat attribute
34. lvl = level stat attribute
35. exp = experience stat attribute
36. cash = cash stat attribute (currency)
37. lvlup = level up function


Shopping:

viewtopic.php?f=18&t=2557

Items:

viewtopic.php?f=18&t=3515

Date and Time:

viewtopic.php?f=18&t=2580

my explore and travel example 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>


Magic:

http://quest5.net/wiki/Using_Types_and_Tabs_(Advanced) (scroll down, and especially to the bottom for the game file+code links)

and etc game aspects and their links

yugijak
...

Wow...that's...a lot of code.

I'll be sure to look this over and try it out. I still need to figure out WHAT I'm doing, but I'm building a map of sorts using the game book, and it's actually coming along fairly well.

Haven't quite got to the actual MAP...map yet but I will!

HegemonKhan
ya, writing code is fun (as you can see, it takes many more lines~characters to tell the comp~quest, ie code, to do something, than it does a person):

non-code:

HK is a male human warrior.

in-code:

msg (player.alias + " is a " + player.gender_string + " " + player.race + " " + player.class + ".")

// actually you got to code in a bit more stuff too, for this to work, laughs. This is just the direct sentence~line~character comparison, between normal human language, and (quest's) programming~coding language.

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

your computer Operating Systems (win xp, win 7, win 8, mac os, etc etc), can easily have at least 20 million lines of coding

(and you can't have even a single typo...)

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

as for learning to code in quest:

first, go through the tutorial in full, as this gives you a basic understanding of quest and an intro into coding logic~mentality.

second, start with the 'character creation' coding.

third, slowly start to try other simple codes, one at a time, slowly building up your coding knowledge~ability and also your coding logic~mentality.

and here's my own progress, going from knowing nothing with coding, to getting my old combat code functional, hehe. (I've been at this now for like 1-3 years ~ too lazy to look at when I joined the site, laughs. It took me a long time to learn to code with quest, not something you can learn overnight, if you are totally new to coding, so just be patient and take your time, you'll learn as quest has the most noob-friendly coding I've seen of the coding languages):

viewtopic.php?f=10&t=3348&hilit=hk+noob+help+me+thread

you can laugh at how stupid I was, it's funny how I was just so confused and overwhelmed by all the terms when I first started, laughs.

yugijak
HegemonKhan wrote:ya, writing code is fun (as you can see, it takes many more lines~characters to tell the comp~quest, ie code, to do something, than it does a person):

non-code:

HK is a male human warrior.

in-code:

msg (player.alias + " is a " + player.gender_string + " " + player.race + " " + player.class + ".")

// actually you got to code in a bit more stuff too, for this to work, laughs. This is just the direct sentence~line~character comparison, between normal human language, and (quest's) programming~coding language.

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

your computer Operating Systems (win xp, win 7, win 8, mac os, etc etc), can easily have at least 20 million lines of coding

(and you can't have even a single typo...)

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

as for learning to code in quest:

first, go through the tutorial in full, as this gives you a basic understanding of quest and an intro into coding logic~mentality.

second, start with the 'character creation' coding.

third, slowly start to try other simple codes, one at a time, slowly building up your coding knowledge~ability and also your coding logic~mentality.

and here's my own progress, going from knowing nothing with coding, to getting my old combat code functional, hehe. (I've been at this now for like 1-3 years ~ too lazy to look at when I joined the site, laughs. It took me a long time to learn to code with quest, not something you can learn overnight, if you are totally new to coding, so just be patient and take your time, you'll learn as quest has the most noob-friendly coding I've seen of the coding languages):

viewtopic.php?f=10&t=3348&hilit=hk+noob+help+me+thread

you can laugh at how stupid I was, it's funny how I was just so confused and overwhelmed by all the terms when I first started, laughs.





Um...you kind of overwhelmed me...lol.

Anyway, I still think that the more important priority is KNOWING WHAT THINGS I WANT TO PROGRAM IN. I'm probably going to make a couple new races and so on, but if I don't know what I have, I have nothing to program in the first place, right?

I'm going to probably throw in a temple for the various demi-gods so I can help keep their character's pinned down and have something for testing interactions.

Oh, did you hear, apparently one of Fenoxo's friends is making a game called Tactical Elements. There's a link to it in his blog.

HegemonKhan
oh, I know you're still brainstorming your game and ideas for it, as game design, ain't easy either, laughs. It's hard to decide on what you want in your game and what you want to do in your game. I spend just as much time on brainstorming my game, as I do in trying to code it, as I do in trying to figure out my game mechanic equations, laughs. Game making is a massive endeavor!, as I haven't even tried to do any of my story~plot and dialogue writing yet for it at all, lol!

if you want to take a look I started a thread for documenting all the different rpg stuff of what I've seen in all the games I've played, but I haven't worked on it in a long time, real life ~ no free time, sighs, anyways here's the link:

viewtopic.php?f=20&t=3876

hope this helps at all with your game design brainstorming, hehe :D

yugijak
You sir are a freaking godsend. I can't thank you enough for all you're doing to help me.

Of course I may decide to publish the 'map' at some point as well. Can't hurt, right? Might even help me! Kind of wish I knew how to show you what I have so far, which admittedly isn't much.

...

!

Idea!

Again, I know it isn't much right now, but I'll give you an attachment with the Quest file for D.I.L.D.O's game book. I have only two pages done, but I've typed more and all I really need to do I think is get to the meat of it and it'll expand a good bit. Of course there's the temple and such I should probably implement too when I do that.

Here

yugijak
FINALLY GOT TO THE MEAT OF THE GAME!

I'm still writing a lot of it, but at least I've gotten to the ACTUAL EXPLORATION bit.

Attached is the file you can use to look at it.

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

Support

Forums