Altering Character

Plainstats
Hey Nate, it's Ira! :D Did you get into coding now?

HegemonKhan
RPG aspects is very advanced stuff, unfortunately... you might want to start off much slower, but here it goes if you want to jump right into it laughs:

If you haven't even gone through the tutorial fully, I'd REQUIRE THAT, as it gets you familiar with the very basics of quest, using quest, and with coding design and logic (the 'if' code~game-making mentality). You really have to start at the tutorial, if you haven't done so. Ya, it's boring, but you really got to understand the aspects of the tutorial before you can jump into using quest (and more advanced-code stuff, especially the code-heavy RPG aspects).

though (after the tutorial), I'd recommend that you jsut start with Attributes (NOT Status Attributes ~ they are very different things), first get these down, as they're the basis for everything else. You need to understand how to do Attributes: Addition, Subtraction, Multiplication, and Division Expressions, with them first, before you try to get into all the other stuff you want to do.

I just made a post on this, try to follow it (let me know if you need help), and hopefully it'll help you (what you're asking is a bit advanced for someone new to coding logic, which is required for game making, whether you're directly using code or via the GUI~Editor), see here:

(unfortunately, I do use a lot of code, as it is far faster~easier for me to do, and while I do try to provide quick GUI~Editor help, it still is quite scary+difficult and overwhelming for new people to follow, so if you need help with anything, please ask!)

Using Attributes:

viewtopic.php?f=10&t=4946&start=15

Status Attribute guide:

viewtopic.php?f=10&t=5018&start=15#p35171

ask if you need help (understanding and~or doing) with anything!

--------

as for equipment:

you can use Pixie's Simple Combat Library, Chase's Wearables Library, and~or Pertex' Combat Library

-------

here's some links for you:

http://docs.textadventures.co.uk/quest/

http://docs.textadventures.co.uk/quest/ ... notes.html
http://docs.textadventures.co.uk/quest/ ... ments.html

http://docs.textadventures.co.uk/quest/tutorial/ (tutorial guide)
http://docs.textadventures.co.uk/quest/ ... ation.html (character creation)
http://docs.textadventures.co.uk/quest/guides/ (guides, scroll down as there's a bottom section too that can be missed by people)
viewforum.php?f=18 (guides: libraries are 'xpacs~mods~patches' that you can add to your game, adding its content to your games)

enjoy :D

Silver
In the start script add this:

player.weight = 110


Then when she eats the pie, add this script:

player.weight = player.weight + 40
msg("The pie is rich with delicious magical sugar, you feel yourself almost sink through the floor. You gain 40 pounds.")


Or whatever. You get the idea.

Silver
Plainstats wrote:
Maybe having the affect change the "look at me" part of the player as well?


You would change the normal script to something like:

msg("You're looking {if player.weight<=110:pretty good}{if player.weight>110:heavier than normal}.")

HegemonKhan
here's the code and a test game file that you can play~test (hopefully it works, lol):

(let me know if it doesn't, so I can get it working for you)

<asl version="560">
<include ref="English.aslx" />
<include ref="Core.aslx" />
<game name="testing game stuff">
<gameid>b073bbfb-0e99-45d3-9786-bb395a6bc6b0</gameid>
<version>1.0</version>
<firstpublished>2015</firstpublished>
<start type="script">
msg ("Click on the 'hamburger' Object, then click on the 'eat' Verb, and watch it change in the 'status' box.")
</start>
</game>
<object name="room">
<inherit name="editor_room" />
<object name="player">
<inherit name="editor_object" />
<inherit name="editor_player" />
<attr name="weight" type="int">100</attr>
<attr name="statusattributes" type="simplestringdictionary">weight = Weight: !</attr>
<object name="hamburger">
<inherit name="editor_object" />
<eat type="script">
player.weight = player.weight + 50
msg ("You eat the hamburger, gaining +50 lbs.")
</eat>
</object>
</object>
</object>
</asl>

HegemonKhan
if you want to implement Randomness (see examples of merely the concept of randomness below), let me know.
(this uses a bit of advanced stuff, especially for a new person, but if you want to take a shot at it, more power to you, lol)

http://docs.textadventures.co.uk/quest/ ... lists.html
http://docs.textadventures.co.uk/quest/ ... reach.html
http://docs.textadventures.co.uk/quest/scripts/for.html
http://docs.textadventures.co.uk/quest/scopes.html
http://docs.textadventures.co.uk/quest/scripts/
http://docs.textadventures.co.uk/quest/functions/ (category order) (the 'Alls', 'Gets', 'Scopes', 'Contains', 'Counts', and etc)
http://docs.textadventures.co.uk/quest/ ... tions.html (alphabetical order) (the 'Alls', 'Gets', 'Scopes', 'Contains', 'Counts', and etc)
http://docs.textadventures.co.uk/quest/ ... ttime.html

http://docs.textadventures.co.uk/quest/ ... omint.html
http://docs.textadventures.co.uk/quest/ ... ouble.html
http://docs.textadventures.co.uk/quest/ ... eroll.html

eat hamburger:
(randomly selects one of these)
1. +50 lbs
2. death (you die)
3. -50 hunger
5. etc etc etc

open chest:
1. poisoned
2. +100 gold
3. aquire claymore sword
4. get candy item (+50 hp restored, on use)
5. traps damage you (-50 hp)
6. etc etc etc

speak npc:
1. blah1
2. blah2
3. blah3
4. etc etc etc

Anonynn
Ok.

HegemonKhan
ya, sorry about the code heavy posts, it's just so much faster easier for us to write via using the code, vs trying to explain step by step via using the GUI~Editor (it's a lot more work to explain step by step through using the GUI~Editor, vs writing, copying, and pasting in the code). So, our posts are going to be confusing and non-useful for all the non-coders or noobies to coding (I'm still very much a code noobie myself).

Thanks for letting us know, as now we'll try to explain it more clearly, with less~no code usage (well hopefully I can do so, lol), for you, hehe.

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

create a new game, so I can give an example step by step guide for you to follow.

in code (just for reference to slowly make code less intimidating hehe), this is what the default new game looks like (see further below in the code box):

(in fact, you can view the HTML code for any webpage, well if it's not encrypted anways, as at the top of your browser screen is a horizontal bar, and there should be a 'view' choice, and under it should be a 'view source', which will show you the HTML of the webpage your on, or look for some similiar type of path and choices... though most computers should be very similiar to this description of its location)

In the GUI~Editor, at the top of the screen is a horizontal bar, there is a toggle button that looks like a notepaper, between the 'play' and '?-help' buttons, which toggles back and forth between the GUI~Editor view mode and the code view mode, so this is one way to see your (entire) game code.

another way to see your entire game code, is to simply open up your game file via a text software~program, such as notepad, wordpad, notepad++ ( http://notepad-plus-plus.org/ ) ~ I really like this as it's useful for code reading, writing, and troubleshooting, text editor (apple computer), and etc. If you download and use notepad++, all you got to do is at the top, in the horizontal bar is to click on 'language', and under it, select 'XML' (eXtensible Markup Language), which works for quest, as quest does use it at our surface level (along with other languages too, such as in the quest engine's underlying code, and JS works too, but I've not learned any of these other languages yet ~ everything I know is thanks to quest, laughs. I knew ZERO coding before quest, and I've come a long way for myself, but unfortunatly, it's not very far in terms of the basic coding~programming level that is yet far beyond me... laughs)

aside from seeing the entire game code, you can specifically see any specific scripting's (Functions, Verbs ~ Objects' Script Attributes, Commands, Turnscripts, Timers, and etc, via a similiar paper-lik button), which Pixie has some very good guides which probably will better explain to you how to do this stuff than I can with this post of mine (hehe):

viewtopic.php?f=18&t=4771 (this is the link I was looking for, I think... This is the one that is probably the most helpful)

viewtopic.php?f=18&t=4953
viewtopic.php?f=18&t=5023
viewtopic.php?f=18&t=5058
viewtopic.php?f=18&t=4807 (this can possibly really help you too, it is specifically about changing room descriptions, but the method is universal, as it's the code~'if' logic~mentality for~on how to change things)
viewtopic.php?f=18&t=5111 (this is a bit off-topic, and more advanced, dealing with modifying~customizing the UI using, HTML:HyperText Markup Language:web page~browser creation and JS:Java Script, code languages and etc stuff)

<asl version="560">
<include ref="English.aslx" />
<include ref="Core.aslx" />

<game name="xxx">
<gameid>xxx</gameid>
<version>1.0</version>
<firstpublished>2015</firstpublished>
</game>

<object name="room">
<inherit name="editor_room" />

<object name="player">
<inherit name="editor_object" />
<inherit name="editor_player" />
<object>

</object>

</asl>


I put in the line spaces to better show you the different tag blocks of stuff

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

with coding:

horizontal code structure (hackers ~ expert programmers can read code horizontally):

<asl version="560">(your entire mass of game code)</asl>

but we code noobs, prefer the vertical code structure (easier for us to read):

<asl version="560">
-> // your mass of game code
</asl>

the '<asl version="560">' is the beggining~start of the 'asl (your game)' tag block

the '</asl>' is the ending~finish of the 'asl (your game)' tag block

so this '<asl version="560">xxx</asl>' tag block, is your (entire) game block, so everything needs to be inside of it, which you can see, is indeed so, with your own newly created game, right?

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

all of the tag blocks in the default new game code (shown horizontally):

01. <asl version="560">xxx</asl>
02. <game name="xxx">xxx</game>
03. <object name="room">xxx</object>
04. <include ref="English.aslx" />
05. <include ref="Core.aslx" />
06. <object name="player" />
07. <inherit name="editor_room" />
08. <inherit name="editor_object" />
09. <inherit name="editor_player" />
10. <gameid>xxx</gameid>
11. <version>1.0</version>
12. <firstpublished>2015</firstpublished>

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

examples of Object-Oriented Programming Structure of 'Containment ~ Parent:global - Child:local' Heirarchy Order:

(this is only my pseodo-understanding of it, as I'm sure I'm completely wrong, but I don't know that deeper level of correct understanding of it, lol)

in Quest these are the (anything with the tags in code view):

ELEMENTS: http://docs.textadventures.co.uk/quest/elements/
+
ATTRIBUTES: http://docs.textadventures.co.uk/quest/types/

more global~parent
HK
-> pants
->-> wallet
->->-> $1
...........more local~child

more global~parent
C:\ Drive
-> Programs
->-> Quest
............more local~child

more global~parent
Earth
-> Continents
->-> Europe
->->-> Countries
->->->-> France
->->->->-> Cities
->->->->->-> Paris
->-> Asia
->-> Africa
->-> Australia
->-> North America
->-> South America
->-> Antarctica
....................................more local~child

more global~parent
asl
-> include ref="English.aslx"
-> include ref="Core.aslx"
-> game
->-> gameid
->-> firstpublished
->-> author
->-> version
-> room
->-> inherit name="editor_room"
->-> description
->-> player
->->-> inherit name="editor_object"
->->-> inherit name="editor_player"
->->-> strength
............................................more local_child

.

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

the physical game file itself however is (quest's file extension of): *.aslx

for example of my testing game files' names (lol ~ I got many many of them):

testing game stuff.aslx

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

so, do you recognize any *.aslx files within your new game's code?

<include ref="English.aslx" />
<include ref="Core.aslx" />

Alex' quest engine is actually separate code files, thus if you're a good programmer, you could create your own engine code files, using them instead of Alex's code files, having your own game engine, quest is that powerful~customizable.

If you played modern pc games, I'm sure you're familiar with 'mods', right? For example, one of the last more modern game I played was TES:Morrowind (ya, I'm old... lol), but it had a very user friendly feature (at that time) of letting you easily add~remove 'mods' to the game, and I'm sure every actual modern game has a feature like this.

Well, quest does this via 'Library Files', and is made up of Alex' own (default) Library Files (quest's 'mods'):

(Library Files are 'mods' that add code into your game file)

English.aslx ~ this provides all of the language used in and to~for quest as English.

and then the 'Core.aslx' (is actually a collection of many 'core' *.aslx files, which you can see if you open up the quest folder), which make up quest's engine.

the order (top to bottom) of these matters, as they build upon each other to make quest work correctly. so, if you ever add in others library files or you own library files, make sure they're in the proper order (which is beyond my level of programming understanding, lol).

--------

anyways, if you're interested in making~using Library Files:

instead of the '<asl version="560"></asl>' tag, you use:

<library>
-> // your mass of code
</library>

it uses the same file extension as a game file: *aslx

and to add a Library File to your game (your game file):

you need the library files to be in the same folder as your 'quest.exe' file, and then in your game's (your game file's) code, you do this (pseudo-examples):

<asl version="560">
<include ref="English.aslx" />
<include ref="Core.aslx" />
<include ref="Chase's Wearables (equipment) Library File.aslx" />
<include ref="Sora's Stackable (item) Library File.aslx" />
<include ref="Pixie's Simple Combat Library File.aslx" />
<include ref="Jaynnebonne's Dialogue Library File.aslx" />

<game name="xxx">
<gameid>xxx</gameid>
<version>1.0</version>
<firstpublished>2015</firstpublished>
</game>

<object name="room">
<inherit name="editor_room" />

<object name="player">
<inherit name="editor_object" />
<inherit name="editor_player" />
<object>

</object>

</asl>


-----------

anyways, back to the new game code:

the:

<game name="xxx">
-> // blah Attributes
</game>

tag block corresponds to the GUI~Editor's:

'game' Object -> (its various Tabs) -> (its various settings~Attributes for each of the Tabs)

this 'game' Game Object, is a special Object, which holds your game's global settings, which you can set up however you want.

So... let's test something... in the GUI~Editor, click on 'game' on the left side's 'tree of stuff' so it is highlighted. Now, on the right side, you should be on the 'Setup' Tab by default already, find the text box for 'Author', and type in your own name into it.

save your game.

now, go into (global~entire game code) code view (at the top of the screen, in the horizontal bar, click on the notepaper button), do you see a change?

our game code is now this:

<asl version="560">
<include ref="English.aslx" />
<include ref="Core.aslx" />

<game name="xxx">
<gameid>xxx</gameid>
<version>1.0</version>
<author>your_name</author> // see here, a new code line, an additional Attribute has been added to the 'game' Game Object
<firstpublished>2015</firstpublished>
</game>

<object name="room">
<inherit name="editor_room" />

<object name="player">
<inherit name="editor_object" />
<inherit name="editor_player" />
<object>

</object>

</asl>


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

let's now try giving a description to our 'room' Room Object now:

go back into GUI~Editor view mode (again at the top of the screen, in the horizontal bar, click on the notepaper like button)

click on 'room' on the left side's 'tree of stuff' now, so it is highlighted, click on the 'Room' Tab this time, and type in something to the 'Description' big text box.

save game.

go back into code view, and see if you can spot the change on your own.

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

Everything that you do in the GUI~Editor, corresponds to a specific 'tag block' in code (and vice versa ~ if you create a tag block in code, it'll show up in the GUI~Editor too)

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

now, for one last time, go give your 'player' Object an Attribute via the GUI~Editor:

'player' Object -> 'Attributes' Tab -> Attributes (NOT Status Attributes) -> Add -> (see below)

(Object Name: player)
Attribute Name: strength
Attribute Type: int (Integer)
Attribute Value: 50

and go see what happens in code (remember to save your game before you switch to code view).

it should look like this now:

<asl version="560">
<include ref="English.aslx" />
<include ref="Core.aslx" />
<game name="xxx">
<gameid>xxx</gameid>
<version>1.0</version>
<author>xxx</author>
<firstpublished>2015</firstpublished>
</game>
<object name="room">
<inherit name="editor_room" /
<description>xxx</description>
<object name="player">
<inherit name="editor_object" />
<inherit name="editor_player" />
<attr name="strength" type="int">50</attr>
<object>
</object>
</asl>


correct? does your game code match up with mine? (ignore the vertical placement of things ~ so long as they are within the correct blocks of course, as the vertical placement ONLY matters with with 'include ref~library files', however, the horizontal placement, the indenting~nesting, MATTERS big time!)

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

see if you can kind of get this...

if you can, then I'll go on to doing the rest (the actual) of guide for you. if not, let me know, and we'll work on understanding this first.

the reason, is if you can get this, you'll understand better with where to specifically place (and how to place) the code people post~provide here, hehe.

and also, in the meantime, use Pixie's links that I provide here, as they are guides to doing this specific placement of code. If you're still having trouble, then let me know, and I'll finish up doing the rest (actual) guide for you.

I'm just tired right now... (just this took much longer than I thought it would, lol).

Anonynn
Thanks!

HegemonKhan
well, I never got around to a specific guide step by step... took too long doing this 'explanation' of code, lol

I'm just too tired right now... in a few days, I'll write~post up an actual step by step guide for you, in setting up a very basic example of doing the stuff you want (Attributes, Status Attributes, and etc).

-------

ah, learning quest and its code...

here's my own struggling progression in it (if you want a laugh ~ I was so overwhelmed+confused just by all of the terms once I got outside of the tutorial's step by step help, lol):

viewtopic.php?t=3348

this, is what I would recommend in trying to learn quest and its code:

1. tutorial ( http://docs.textadventures.co.uk/quest/tutorial/ ), go through it fully (well you can skip the JS section and a few other advanced stuff), trying to do everything successfully. Yes, a lot of it is very boring (and seemingly) simple, but it really helps you get a basic understanding of quest, and a start into understanding 'code~if logic' (which you need, even if you never use code, using only the GUI~Editor, as it's how you create actions~events~conditionals: if this, then do this, else if that then do that, else, do blah, and etc stuff that you got to train your brain into doing, hehe

2. character creation ( http://docs.textadventures.co.uk/quest/ ... ation.html ), as this gives a guide step by step GUI~Editor guide to get started more into scripting.

3. after these 2 preliminaries, first you need to learn about Attributes:

-- understanding the Types of Attributes ( http://docs.textadventures.co.uk/quest/types/ )

-- computation expressions with the Attributes (Addition, Subtraction, Division, and Multiplication), such as for example 'buying' and 'selling' features.

-- how to set, re-set, alter~change them ( http://docs.textadventures.co.uk/quest/scripts/set.html ), and~or in scripting, understanding my usage of:

Object_name.Attribute_name = Value_or_Expression

4. the 'if' Script ( http://docs.textadventures.co.uk/quest/scripts/if.html ) ~ code~'if' logic mentality

3+4. when you understand Attributes and the 'if' Script, when used together, you can do 90% of everything that you want to do~put into your game!

5. get more familiar with all of the code stuff you can do, and also start looking~studying at all of the guides (slowly, one at a time), grow your basic quest+code knowledge base:

http://docs.textadventures.co.uk/quest/

http://docs.textadventures.co.uk/quest/ ... notes.html

http://docs.textadventures.co.uk/quest/ ... essor.html

http://docs.textadventures.co.uk/quest/ ... ments.html
http://docs.textadventures.co.uk/quest/ ... quest.html

http://docs.textadventures.co.uk/quest/elements/
http://docs.textadventures.co.uk/quest/types/
http://docs.textadventures.co.uk/quest/functions/ (category order: "Quest's Code Bible", as I dub it, hehe. Well, actually the entire wiki is the "Quest Code Bible", but meh)
http://docs.textadventures.co.uk/quest/ ... tions.html (alphabetical order: "Quest's Code Bible", as I dub it, hehe. Well, actually the entire wiki is the "Quest Code Bible", but meh)
http://docs.textadventures.co.uk/quest/scripts/ ( "Quest's Code Bible", as I dub it, hehe. Well, actually the entire wiki is the "Quest Code Bible", but meh)

http://docs.textadventures.co.uk/quest/ ... lists.html
http://docs.textadventures.co.uk/quest/ ... aries.html
http://docs.textadventures.co.uk/quest/ ... reach.html
http://docs.textadventures.co.uk/quest/scripts/for.html
http://docs.textadventures.co.uk/quest/scopes.html
and also see the 'Gets' and 'Alls' Functions (see the Function section in the wiki, or click on the Function section links above)

http://docs.textadventures.co.uk/quest/ ... arent.html
http://docs.textadventures.co.uk/quest/ ... ttime.html
http://docs.textadventures.co.uk/quest/ ... _menu.html
http://docs.textadventures.co.uk/quest/ ... input.html
http://docs.textadventures.co.uk/quest/ ... witch.html

http://docs.textadventures.co.uk/quest/ ... eroll.html
http://docs.textadventures.co.uk/quest/ ... hance.html
http://docs.textadventures.co.uk/quest/ ... omint.html
http://docs.textadventures.co.uk/quest/ ... ouble.html

the guides:

http://docs.textadventures.co.uk/quest/guides/
viewforum.php?f=18 (more guides: Libraries and Code Samples)

6. I would next dive into learning to use Functions ( http://docs.textadventures.co.uk/quest/ ... ction.html ), as they're really quite simple... though they may seem daunting~confusing~scary, and they're really useful as well.

7. I would then learn to using Commands ( http://docs.textadventures.co.uk/quest/ ... mmand.html ), as they're very useful too, but a bit more difficult to learn, compared to functions.

8. after this... then try to learn to use Lists, though this is a bit of a jump up in difficulty. but hopefully, you should be ready able to do so, at this point.

9. then move onto Dictionaries, which are a bit more confusing~difficult than lists.

10. after that... go back and study more of the advanced guides... and beyond... lol. You could try to craft a combat system (simple or very advanced~complex depending on how good you got at coding, I've only been able to do a basic~simple damage dealing part of a combat system)

... (This is where I'm at, pretty much, lol)...

or work with learning to do 'equipment', 'items', 'magic', 'dialogue', 'stealth~thievery', and~or etc RPG systems~aspects, lol.

11. ask the good coders here (the site's moderators and some of the normal users too ~ though they at least haven't posted in the forums in a long time ~ maybe they're helping Alex with Quest's development, or maybe they're just busy making super awesome games, or... they're gone, sighs), for help on their advanced code abilities to try to learn and~or look~study at their guides, more advanced 'string parsing~concatinating script creation', and whatever cool stuff they can do that I'm not even aware of exists with coding, laughs.

Silver
This thread by The Pixie might be useful:

viewtopic.php?f=18&t=4771

Anonynn
Hello again, HK.

I followed your advice and grabbed the Notepad ++ --- and I followed your instructions with the coding itself. Still a bit confusing, but I was able to follow what you've said so far. Thank you again for explaining all that in that much detail. There was one weird thing, I had version 550, and you have version 560, so some of the things were swapped but other than that, it was the same.

HegemonKhan
ya, I think the version="560" is still a beta download, whereas the normal download is still version="550", I myself am using v550 too, but I had accidentally ussumed that the v560 was the most recent version that most people use, but it seems v550 is the one that presumably most people are using.

the '<asl version="###"></asl> needs to match up with the version of your 'quest.exe' (the quest you downloaded and installed), for it to work (and also, if you were using older versions, you may need to alter some code lines that got changed in the newer versions of quest, but this is more for the people who have been using quest for while, not new people. So if any code~file is not working with quest, that can be fixed ~ converted, so if you get any issues with a file or code not working, let us know, as we can go and look at it and update its code lines to work with the current version of quest. Sometimes the code lines are fine, and you just need to change the '<asl version="###"></asl>' single line at the top of file~code to the currect version, for it to work)

I'll get a guide posted for you within 3 days, (I'm just still a bit busy right now and will need to sleep, but then I'll get the guide done for you). Sorry, for the bit of waiting.

Anonynn
Looking forward to it. I've been watching.

https://www.youtube.com/watch?v=yUw-aTOwAw8 and taking notes. It's learning XML basic programming language. And this is what I have so far.

Real life format
There is a Cat with name Tiger
There is a Dog with name Spooky
There is a Hamster with name Fluffy
There is a Snake with name Ozzy
^ data
XML format
<?xml version = "1.0" encoding="ISO-8859-1"?>
<Homepets> - this is root element
<Cat>Tiger</Cat> - this is child element
<Dog>Spooky</Dog>
<Hamster>Fluffy</Hamster>
<Snake>Ozzy</Snake>
</Homepets>
* THESE ARE ALWAYS CASE SENSITIVE
HTML IS NOT
* XML tags (elements) must be present in pairs - opening and closing tags (elements)! (must be identical)
Missing root element example
<?xml version = "1.0" encoding="ISO-8859-1"?>
<!-- no root element> <---- Homepets.
<!-- <Homepets> -- > <---- browser will ignore this but you can leave it in the document incase you don't want to get rid of it.
Terminology
<?xml version = "1.0" encoding="ISO-8859-1"?> is XML declaration - defines the XML version and the character encoding used in the document.
<Homepets> - this is root element (the parent) (there can be only ONE of these in the document, otherwise there will be an error.
<Cat>Tiger</Cat> - this is child element to root and sibling to element.
<Dog>Spooky</Dog>
<Hamster>Fluffy</Hamster>
<Snake>Ozzy</Snake>
Snake is element name. Ozzy is element value.
</Homepets>
Element Naming
* Names can contain letters, numbers, and other characters, but they cannot start with a number or punctuation character.
* Names cannot start with the letters xml (or XML, or Xml, etc)
* Names cannot contain spaces.
Examples
<first_name>, <last_name> OK!
<Un-installed_time>, <Re-build_cause> not good. Do not use dashes in element names. Try not to use dashes even though they are allowed!
<our_customer_first_name>,
<customer_id_provided_at_registration>. Not good. Name is too long.
*Avoid using non_English letters like eoa (with accents). Though XML syntax allows their use application utilitzing XML might not.
* The ":". This is reserved character.
Try Yourself
<?xml version="1.0" encoding="ISo-8859-1"?>
<Close Relatives>
<Blahs>
<first_name>Petey</first_name>,
<last_name>Doodyface</last_name>,
<age>21</age>
<occupation>Tutor</occupation>,
<where_person_lives>Pooptown</where_person_lives>
</Blahs>
<BlarghBlurg>
<first_name>MotherofMonsters</first_name>,
<last_name>Darling</last_name>,
<age>109</age>
<occupation>InsuranceSpecialist</occupation>,
<where_person_lives>Hell</where_person_lives>
</BlarghBlurg>
</Close Relatives>
If you didn't want to include someone's AGE for example, you could write this...
<Age></Age>
Or use shortcut
<Age/> <--- more commonly used in professional documents.

I know this is really simply stuff, but it's helped me understand a little bit more.

HegemonKhan
laughs, I need to watch that video and learn XML too... I only know it in regards to using it within quest, lol.

-----------

I've been working on a guide... but I realized that I'm a bit lost in exactly what you want with the guide, lol.

if you could maybe give me some information on what you want the guide to be on, then I could write one more easily.

---------

for now... I think this may help you a bit:

in real life (and human language), we got:

1. Matter~physical things (nouns~subjects)
2. Energy~forces~waves (verbs~actions)
3. Traits~Data (adjectives+adverbs)

in quest coding, we got the same thing:

1. ELEMENTS: http://docs.textadventures.co.uk/quest/elements/
2. Scriptings: Verbs (Object's Script Attributes), Functions, Commands, Turnscripts, Timers, and etc
3. Attributes: http://docs.textadventures.co.uk/quest/types/

an example of 'physical things' in quest~code:

Objects can hold other Objects and Attributes:

<object name="player">
<alias>HK</alias>
<attr name="sex" type="string">male</attr>
<object name="sword">
<alias>claymore</alias>
<attr name="damage" type="int">50</attr>
</object>
</object>


Verbs (Object's Script Attributes), Functions, Commands, Turnscripts, Timers, and etc holds Attributes and scripting (action) code lines:

an example of an 'action~event' (scripting) in quest~code:

<turnscript name="global_turnscript">
<enabled />
<script>
leveling_function
game.turns = game.turns + 1
</script>
</turnscript>

<function name="leveling_function"><![CDATA[
if (player.experience >= player.level * 100 + 100) {
player.experience = player.experience - (player.level * 100 + 100)
player.level = player.level + 1
leveling_function
}
</function>


and another example that combines all 3 (ELEMENT+SCRIPTINGS+ATTRIBUTES) of them:

<object name="orc">
<attr name="dead" type="boolean">false</attr>
<attr name="life" type="int">200</attr>
<attr name="cash" type="int">50</attr>
<attr name="experience" type="int">100</attr>
<attr name="damage" type="int">10</attr>
<fight type="script><![CDATA[
// this 'fight' Script Attribute is the 'orc' Object's added Verb in the GUI~Editor, and its 'fight' button during game play
if (orc.dead) {
firsttime {
player.cash = player.cash + orc.cash
msg ("You loot the dead orc's corpse, taking its gold.")
} otherwise {
msg ("The orc is dead, and you already looted its corpse.")
}
} else {
msg ("You attack the orc!")
orc.life = orc.life - player.damage
if (orc.life <= 0) {
orc.dead = true
player.experience = player.experience + orc.experience
msg ("You delivered a fatal strike, killing the orc.")
} else {
msg ("The orc attacks you!")
player.life = player.life - orc.damage
if (player.life <= 0) {
msg ("The orc has killed you...")
msg ("GAME OVER")
finish
}
}
}
]]></fight>
</object>

Anonynn
I guess I would want to try and figure out how to incorporate.

1. Transformations. Like as a result of a battle-loss something happens to the player's character by a trap or enemy.
2. Items that can cause the same thing to happen.
3. How to do equipment that you can equip. I checked out the extended library that you linked on it, but it wasn't very helpful as it didn't go into a lot of depth (and if it did I didn't understand it).
4. Simple combat system would be nice too.
5. Character Creation --- but have it apply to not only the character but the "look at character" descriptions too. Though this isn't my priority. This one is more like if I figure out how to do the other three than I'll mess with this.

I think those are the major four for the time being.

HegemonKhan
don't worry...

it's taken me 2-3 years to get where I am now... I didn't learn quest's code in a day or a week, like you're trying to do, lol

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

let's do each, one at a time, okay? (it'll make it easier for both of us, lol)

1. 'Transformations' would just be the use of Attributes, for examples:
+
2. 'Transformation' Items (Objects), for examples:

----------

player.body_type_string = "human"
~VS~
player.body_type_string = "vampire"

msg ("You are a " + player.body_type_string + ".")
// outputs: You are a human.
// ~OR~
// outputs: You are a vampire.

if (player.body_type_string = "human") {
// conceptual 'string matching' via algebraic substitution: if ("human" = "human") {
-> player.strength_integer = 5
} else if (player.body_type_string = "vampire") {
// conceptual 'string matching' via algebraic substitution: if ("vampire" = "vampire") {
-> player.strength_integer = 10
}

using the GUI~Editor to do this stuff:

initial setting of Attribute via adding the Attribute to an Object:

'player' Object -> Attributes Tab -> Attributes -> Add -> (see below)

(Object Name: player)
Attribute Name: body_type_string
Attribute Type: string
Attribute Value: human

now, add a new Object, Name: vampire_blood

and add the built-in 'Drink' Verb (which will have scripting that 're-sets or changes' the Attribute to now being: player.body_type_string = "vampire") to it:

'vampire_blood' Object -> 'Verb' Tab -> Add -> Drink -> (see below)

run as script -> variables -> set a variable or attribute -> (I don't know the GUI~Editor's options that well, so I just do this to manually~directly write~code in the scripting code line): [EXPRESSION] -> (see below)

player.body_type_string = "vampire"

add a script -> output -> print a message -> [EXPRESSION] -> (see below)

msg ("You drink the vampire blood, changing you into a " + player.body_type_string + ".")

thus, this scripting's location in this example was the 'player' Object's 'drink' Verb

and to adjust the 'player' Object's 'strength' Attribute, we're going to use a global Turnscript, as the location for our scripting that will do this:

click on the upper left most 'object' in the left side's tree of stuff, so it is highlighted. This is my way of ensuring that the Turnscript we're going to add~create is a global Turnscript, which will apply where ever the 'player' Object is during actual game play, as opposed to a local Turnscript that only applies to a single specific room (thus only applies when the 'player' Object is inside that room during game play).

now, to add~create our Turnscript, at the top of the screen in the horizontal bar, under 'add', choose 'Turnscript', and see below:

Turnscript Name: global_turnscript

'Enabled' check box: we want this to be checked in, as this is a setting of if it's activated at the beginning of the game or not. We want this global Turnscript to be activated at game start, so have this 'enabled' check box, checked in!

Script: (see below)

add new script -> scripts -> 'if' Script -> [EXPRESSION] -> player.body_type_string = "human"
-> then, -> add a script -> variable -> set a variable or attribute -> [EXPRESSION] -> player.strength_integer = 5
else if -> [EXPRESSION] -> player.body_type_string = "vampire"
-> then, -> add a script -> variable -> set a variable or attribute -> [EXPRESSION] -> player.strength_integer = 10

-------

msg ("You are a " + player.body_type_string + ".")
// outputs: You are a human.
// outputs: You are a vampire.

A location for this would be your 'player' Object's 'Player' Tab (but you got to do some prelim work to get this to show up and set up properly):

(due to having some many Tab~Options, the GUI~Editor was getting to crowded, so with quest v550, toggles were made, which you check or uncheck as to what Tabs~options you want displayed in the GUI~Editor, so we got to toggle on these Tabs~options that we need to set up for this, so some extra work to be done)

'game' Object -> 'Player' Tab -> Player Object: player

'player' Object -> 'Features' Tab -> 'Player: player can become this object' check box -> check it in~on

'player' Object -> 'Player' Tab (it now shows up due to the above) -> 'Look at' object description -> [RUN SCRIPT] -> (see below)

I'm actually having a bit of trouble in figuring out how the GUI~Editor + Quest's built-in features work... haven't figured out yet how~why it's not displaying the 'lookat' (pov_look) description... grr... Anyways, you get the idea (for rooms, doing the 'room description' is much more simple)

The point was just to show an example location (Room Object: description, or Non-room Object: look~lookat, or Player Object: pov_look) for such an example scripting as:

msg ("You are a " + player.body_type_string + ".")
// outputs: You are a human.
// ~OR~
// outputs: You are a vampire.

---------

does this make sense for you? Are you able to follow it, and make your own test game of it working?

if you're able to do this successfully in the GUI~EDitor, then I'll show you how to do it in code (how the GUI~Editor matches up with the code).

The Pixie
I am not sure what HK has already pointed you to, but take a look at this library:
viewtopic.php?f=18&t=4886

Installation instructions are in the thread, and the download includes a read-me file which explains how to do much of what you ask.

Anonynn
HegemonKhan wrote:don't worry...

it's taken me 2-3 years to get where I am now... I didn't learn quest's code in a day or a week, like you're trying to do, lol

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

let's do each, one at a time, okay? (it'll make it easier for both of us, lol)

1. 'Transformations' would just be the use of Attributes, for examples:
+
2. 'Transformation' Items (Objects), for examples:

----------

player.body_type_string = "human"
~VS~
player.body_type_string = "vampire"

msg ("You are a " + player.body_type_string + ".")
// outputs: You are a human.
// ~OR~
// outputs: You are a vampire.

if (player.body_type_string = "human") {
// conceptual 'string matching' via algebraic substitution: if ("human" = "human") {
-> player.strength_integer = 5
} else if (player.body_type_string = "vampire") {
// conceptual 'string matching' via algebraic substitution: if ("vampire" = "vampire") {
-> player.strength_integer = 10
}

using the GUI~Editor to do this stuff:

initial setting of Attribute via adding the Attribute to an Object:

'player' Object -> Attributes Tab -> Attributes -> Add -> (see below)

(Object Name: player)
Attribute Name: body_type_string
Attribute Type: string
Attribute Value: human

now, add a new Object, Name: vampire_blood

and add the built-in 'Drink' Verb (which will have scripting that 're-sets or changes' the Attribute to now being: player.body_type_string = "vampire") to it:

'vampire_blood' Object -> 'Verb' Tab -> Add -> Drink -> (see below)

run as script -> variables -> set a variable or attribute -> (I don't know the GUI~Editor's options that well, so I just do this to manually~directly write~code in the scripting code line): [EXPRESSION] -> (see below)

player.body_type_string = "vampire"

add a script -> output -> print a message -> [EXPRESSION] -> (see below)

msg ("You drink the vampire blood, changing you into a " + player.body_type_string + ".")

thus, this scripting's location in this example was the 'player' Object's 'drink' Verb

and to adjust the 'player' Object's 'strength' Attribute, we're going to use a global Turnscript, as the location for our scripting that will do this:

click on the upper left most 'object' in the left side's tree of stuff, so it is highlighted. This is my way of ensuring that the Turnscript we're going to add~create is a global Turnscript, which will apply where ever the 'player' Object is during actual game play, as opposed to a local Turnscript that only applies to a single specific room (thus only applies when the 'player' Object is inside that room during game play).

now, to add~create our Turnscript, at the top of the screen in the horizontal bar, under 'add', choose 'Turnscript', and see below:

Turnscript Name: global_turnscript

'Enabled' check box: we want this to be checked in, as this is a setting of if it's activated at the beginning of the game or not. We want this global Turnscript to be activated at game start, so have this 'enabled' check box, checked in!

Script: (see below)

add new script -> scripts -> 'if' Script -> [EXPRESSION] -> player.body_type_string = "human"
-> then, -> add a script -> variable -> set a variable or attribute -> [EXPRESSION] -> player.strength_integer = 5
else if -> [EXPRESSION] -> player.body_type_string = "vampire"
-> then, -> add a script -> variable -> set a variable or attribute -> [EXPRESSION] -> player.strength_integer = 10

-------

msg ("You are a " + player.body_type_string + ".")
// outputs: You are a human.
// outputs: You are a vampire.

A location for this would be your 'player' Object's 'Player' Tab (but you got to do some prelim work to get this to show up and set up properly):

(due to having some many Tab~Options, the GUI~Editor was getting to crowded, so with quest v550, toggles were made, which you check or uncheck as to what Tabs~options you want displayed in the GUI~Editor, so we got to toggle on these Tabs~options that we need to set up for this, so some extra work to be done)

'game' Object -> 'Player' Tab -> Player Object: player

'player' Object -> 'Features' Tab -> 'Player: player can become this object' check box -> check it in~on

'player' Object -> 'Player' Tab (it now shows up due to the above) -> 'Look at' object description -> [RUN SCRIPT] -> (see below)

I'm actually having a bit of trouble in figuring out how the GUI~Editor + Quest's built-in features work... haven't figured out yet how~why it's not displaying the 'lookat' (pov_look) description... grr... Anyways, you get the idea (for rooms, doing the 'room description' is much more simple)

The point was just to show an example location (Room Object: description, or Non-room Object: look~lookat, or Player Object: pov_look) for such an example scripting as:

msg ("You are a " + player.body_type_string + ".")
// outputs: You are a human.
// ~OR~
// outputs: You are a vampire.

---------

does this make sense for you? Are you able to follow it, and make your own test game of it working?

if you're able to do this successfully in the GUI~EDitor, then I'll show you how to do it in code (how the GUI~Editor matches up with the code).


Alright.

Anonynn
The Pixie wrote:I am not sure what HK has already pointed you to, but take a look at this library:
http://forum.textadventures.co.uk/viewt ... =18&t=4886

Installation instructions are in the thread, and the download includes a read-me file which explains how to do much of what you ask.



Thank you very much Pixie.

HegemonKhan
neonayon wrote:Oh boy! I'll run through this and see if I can weave it in there and get it to work. I was hoping that instant of instant transformations for example that some of them would either sometimes give you a +5 to strength or -2 to height....or cause something to actually physically change like....drinking vampire blood suddenly you grow fangs but aren't a vampire yet etc. Like for example, you have one head, two arms, two legs...and ....drinking a "Cat potion" or something would randomly give you a stat change ---- or possibly make you grow claws on your hands or change them into paws. Etc. And if you get enough of those drinks or items or lose enough combat against that creature your "human" status changes to "Neko" or whatever xD If all of that makes sense. Is there a way to do something like that as well?


oh, all of that can certainly be done, hehe. I was just giving the briefest of an example. Though it'll ultimately just be displayed as text (unless you're a great artist and draw tons of combinations of body tranformations), lol. It's a lot of coding though, and not simple, either. We can most certainly do the randomization of effects that you want upon consumption (a 'drink~eat' Verb~Command) of an item (Object), and the different body part transformations that you want done.

now, there's many many many ways of doing all of these things that you want, using Lists + dictionaries would be best (for my level of coding knowledge), but they're quite a step up to learn, if you're still just starting to learn coding. You could do this stuff using some basic code stuff (lots of 'if' scriptings), but that would be quite some volume of coding~writing you'd ahve to do (compared to less by using Lists+Dictionaries).

Anonynn
I was able to follow it...but it didn't work. I'm not sure I put things in the right place. I'll upload my "test game" if you like, if you want to check where I screwed it up.

I'm sorry it took me a couple days to respond, life has been hectic.

The Pixie
I am not too sure exactly what should happen, so may be missing something. Also I am going to type code because it is easier (wherever you can adda script to an object, there is a row of icons, the seventh icon is "Code View"; do not use Code view from the menu, it will just confuse you).

You have a turn script that will set the strength every turn. You only need to do that if it changes (. I suggest getting rid of the turn script, and instead have a start script (on the game object), that looks like this for the initial setting:
player.strength_integer = 5

Then on the vampire_blood object, add "vampire blood" (no quotes) as an alias.

The DRINK verb is set like this:
player.body_type_string = "vampire"
msg ("(\"You drink the vampire blood, changing you into a \" + player.body_type_string + \".\")")

Try this instead (setting strength, and sorting out the message printed):
player.body_type_string = "vampire"
msg ("You drink the vampire blood, changing you into a " + player.body_type_string + ".")
player.strength_integer = 10

I see you have health partly set up; I think you need to set it to something, and have a system for it to drop - but perhaps this is something you have yet to do?

By the way, it is easier for us if you can upload the game to the thread itself as an attachment.

HegemonKhan
Pixie got to it first, and from Pixie's comments, looks like you had most of it correct, only got stumped on the dynamic message scripting (which is very confused ~ it was to be expected, but I was expecting you needing help with other things first, before I was going to help you with this difficult part).

So, good job, only a few minor mistakes otherwise, you seem to be learning quickly! hehe :D

------

@Pixie+Neonayon,

he~she wanted to do Body-Part~Characteristic Tranformation effects, so I said to make a global Turnscript to do this design method (not the best, but he~she probably isn't ready to use better design methods), quick~brief example:

<turnscript name="global_turnscript">
<enabled />
<script>
transformation_function
</script>
</turnscript>

<function name="transformation_function">
if (player.body_type_string = "human") {
player.skin_type_string = "skin"
// etc characteristic changes
} else if (player.body_type_string = "werewolf") {
player.skin_type_string = "fur"
// etc characteristic changes
}
</function>


he~she still needs to set his 'body type' in the start script (do character creation), as you suggested.

The Pixie
HegemonKhan wrote:@Pixie+Neonayon,

he~she wanted to do Body-Part~Characteristic Tranformation effects, so I said to make a global Turnscript to do this design method (not the best, but he~she probably isn't ready to use better design methods), quick~brief example:

But you have done all the hard work in the function. All you need to do is call that function when player.body_type_string changes.

If offline you can use the built-in feature to do just that. Go to player, and the attributes tab, select body_type_string from the bottom list, then click on "Add change script". Then at the bottom click on "Add new script", select "Call function" and put in transformation_function.

In online it is not so slick, but anywhere you change player.body_type_string, such as the DRINK verb, add the call function script just as before.

This way Quest only needs to do the work one or twice rather than every round. Also, if stats change, say health drops when the player gets damaged, they will get reset every turn by the turn script.

HegemonKhan
oh definately, it depends what he~she wants to do in his~her game, I just mentioned the Turnscript method, as I think it's a little more 'friendly' than the obscure special 'changed' Script for people new to quest and~or coding. I have found that there seems to be some differences between the two of them, sometimes the 'changed' Script is useful, but other times, the Turnscript can be useful too. Or, his~her game will be much simplier, and he~she will only be applying the changes via Verbs, as you mention already as a possibility for his~her game.

Anonynn
Thank you! I'm glad I'm learning quickly.

HegemonKhan
Try following Pixie's instructions in his~her previous post, as I'm not familiar with exactly how to download your files... (do you have to do it via a social network) ??? (I can understand code, but I can't figure out what to click on to download your file off of that site, lol).

As Pixie mentioned, it's better to just add your files as attachments to your posts, or you can just open up your game files via a text program~software (notepad, wordpad, or notepad++), highlight your entire game code, copy it, and then paste into the post for us, and put it into the post's code box tag:

[code.](your entire game code pasted here)[/code.]

but without the dots~periods in the brackets, which will produce this:

(your entire game code pasted here)


let me, in the meantime, make a sample game for you, which you can study (looking at it in the GUI~Editor, to see how its done~looks via this way, and also in code, to see how it's done~looks via that way too).

Anonynn
I'll await your test game then and continue trying to figure out code, thanks.

HegemonKhan
sorry, I've been a bit busy with creating~writing this:

viewtopic.php?f=18&p=35563#p35563

(it was for Forgewright, due to this thread of his~hers: viewtopic.php?f=10&t=5136 )

when you're ready to tackle Lists and~or Dictionaries, hopefully this guide will be useful for you (and everyone else too!), hehe :D

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

(I'll work on getting my sample game finished up for you now, but it'll take a bit of time... I'm making it a bit bigger than neccessary for just a sample game, lol)

(I'm actually working on trying to learn to make an RPG game, so your transformations and etc questions, are on the same treck as my own work, so this is going to be good practice for me, for working towards my own game creation, lol)

it'll hopefully only take 3 days to a week (sorry, I'm still a noob coder, and this is slow~hard for me to do, so this is going to take some time for me)

HegemonKhan
Even a sample game isn't easy, as the Transformation stuff that you want isn't easy, short, nor simple to do, and I always start doing too much too (lol), and I got to think of how to best design this within my code ability. So, this is really a bit much for me to do... I'll try to get a sample game, but I may not be able to do so.

Try starting off smaller, slowly learning the basic things, I know you want to jump right into this stuff (so do I), but you got to learn how to do all the things that it requires knowledge of, before you can make a game doing~using those things.

-----

try working on understanding the basic character creation first, as this is the easiest of the things to learn:

http://docs.textadventures.co.uk/quest/ ... ation.html

----

maybe someone else can help you with the transformation and etc stuff you want, but it's a bit beyond my ability to do so, I'll still be trying... but I won't be able to get a sample game done anytime soon, I tried to bite off a bit more than I can chew. I'm just not good enough in code, that I can do this easily + quickly, if even at all.

HegemonKhan
alright, I got something going so far, laughs.

Obviously, your game would be much more extensive, and I'd have to re-design my code to handle that greater complexity, but here's the start of a sample game working for you. I'm still working on it, I just wanted to show you that I've got some progress on it for you to take a look at while I keep working on it.

here's my progress so far, hopefully the game file will work (tell me if it doesn't):

the game file is an attachment at the bottom, and here's the game file:

<asl version="550">
<include ref="English.aslx"/>
<include ref="Core.aslx"/>
<game name="Testing Game Stuff">
<gameid>b073bbfb-0e99-45d3-9786-bb395a6bc6b0</gameid>
<version>1.0</version>
<firstpublished>2015</firstpublished>
</game>
<object name="room">
<inherit name="editor_room" />
<object name="player">
<inherit name="editor_object" />
<inherit name="editor_player" />
</object>
</object>
<object name="global_data_object">
<inherit name="editor_object" />
<neko_scriptdictionary_attribute type="scriptdictionary">
<item key="1">
if (HasString(player,"tail_type_string_attribute") and not player.tail_type_string_attribute = "cat") {
old_tail_type_variable = player.tail_type_string_attribute
player.tail_type_string_attribute = "cat"
msg ("Your " + old_tail_type_variable + " tail has changed into a cat tail.")
} else if (HasString(player,"tail_type_string_attribute") and player.tail_type_string_attribute = "cat") {
msg ("You already have a cat tail.")
} else {
set (player,"tail_type_string_attribute","cat")
msg ("You grow a cat tail.")
}
</item>
<item key="2">
if (HasString(player,"skin_type_string_attribute") and not player.skin_type_string_attribute = "fur") {
old_skin_type_variable = player.skin_type_string_attribute
player.skin_type_string_attribute = "fur"
msg ("Your " + old_skin_type_variable + " has changed into fur.")
} else if (HasString(player,"skin_type_string_attribute") and player.skin_type_string_attribute = "fur") {
msg ("You already have fur.")
} else {
set (player,"skin_type_string_attribute","fur")
msg ("You now have fur.")
}
</item>
</neko_scriptdictionary_attribute>
<human_scriptdictionary_attribute type="scriptdictionary">
<item key="1">
if (HasString(player,"tail_type_string_attribute")) {
player.tail_type_string_attribute = null
msg ("You no longer have a tail.")
} else {
msg ("You already don't have a tail.")
}
</item>
<item key="2">
if (HasString(player,"skin_type_string_attribute") and not player.skin_type_string_attribute = "skin") {
old_skin_type_variable = player.skin_type_string_attribute
player.skin_type_string_attribute = "skin"
msg ("Your " + old_skin_type_variable + " has changed into skin.")
} else if (HasString(player,"skin_type_string_attribute") and player.skin_type_string_attribute = "skin") {
msg ("You already have skin.")
} else {
set (player,"skin_type_string_attribute","skin")
msg ("You now have skin.")
}
</item>
</human_scriptdictionary_attribute>
</object>
<object name="neko_potion_object">
<inherit name="editor_object" />
<alias>neko potion</alias>
<parent type="object">room</parent>
<attr name="consume" type="script">
invoke (ScriptDictionaryItem(global_data_object.neko_scriptdictionary_attribute,ToString(GetRandomInt(1,DictionaryCount(global_data_object.neko_scriptdictionary_attribute)))))
</attr>
</object>
<object name="human_potion_object">
<inherit name="editor_object" />
<alias>human potion</alias>
<parent type="object">room</parent>
<attr name="consume" type="script">
invoke (ScriptDictionaryItem(global_data_object.human_scriptdictionary_attribute,ToString(GetRandomInt(1,DictionaryCount(global_data_object.human_scriptdictionary_attribute)))))
</attr>
</object>
<verb>
<property>consume</property>
<pattern>consume</pattern>
</verb>
</asl>

Anonynn
Thank you for working on that for me. This week has been extremely crazy for me, I feel like I have absolutely no time at all. I'll check out the sample game you've so generously made for me and then I'll check out the code and see if I can figure it out. Why don't you take some time off from helping me though, you've been putting in a ton of hours and you aren't even getting paid for it..

Once I figure all this out, I'll start up with my next batch of questions here. So unless you really wanna keep helping and don't mind, we can take it one step at a time.

HegemonKhan
It's no problem at all, it's just creating game system designs isn't easy for me, people who've had programming classes got much more code knowledge and practice in crafting game system designs, so it's easier for them. It's a good use of my time, as I need the practice, to learn, but it's just not that easy to do, and I get too side-tracked in trying to do too much (put in too much stuff) for just a sample game, laughs. The problem is that it's what I want to do in my games too, so I keep trying to put more stuff into the sample game then I should.

Don't worry about the time, we all never have enough time (unless you're rich and~or have a high paying job and only having to work 3 hrs a day), sighs.

ask if you got any questions about anything, and let me know if the game file doesn't work for you too.

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

Support

Forums