Jump to content
  • 0

Item Scripting


WhatFT

Question


  • Group:  Members
  • Topic Count:  142
  • Topics Per Day:  0.03
  • Content Count:  511
  • Reputation:   7
  • Joined:  02/15/12
  • Last Seen:  

Anyone can help me about Item Scripting? Any Guides?

I don't know why does my script won't work... How do you guys do it?

If I'm in the wrong section, please correct me thanks !

Link to comment
Share on other sites

3 answers to this question

Recommended Posts


  • Group:  Members
  • Topic Count:  69
  • Topics Per Day:  0.02
  • Content Count:  1315
  • Reputation:   372
  • Joined:  12/10/11
  • Last Seen:  


  • Group:  Members
  • Topic Count:  142
  • Topics Per Day:  0.03
  • Content Count:  511
  • Reputation:   7
  • Joined:  02/15/12
  • Last Seen:  

Where can I see a guide that shows "What's the meaning of these variables/constants" ?

Link to comment
Share on other sites


  • Group:  Forum Moderator
  • Topic Count:  93
  • Topics Per Day:  0.02
  • Content Count:  10015
  • Reputation:   2348
  • Joined:  10/28/11
  • Last Seen:  

constant stuff you can refer here

db/cont.txt

variable..refer here

doc/script_commands.txt


Variables
---------

The meat of every programming language is variables - places where you store 
data.

In the rAthena scripting language, variable names are not case sensitive.

Variables are divided into and uniquely identified by the combination of:
prefix  - determines the scope and extent (or lifetime) of the variable
name    - an identifier consisting of '_' and alphanumeric characters
postfix - determines the type of the variable: integer or string

Scope can be:
global    - global to all servers
local     - local to the server
account   - attached to the account of the character identified by RID
character - attached to the character identified by RID
npc       - attached to the NPC
scope     - attached to the scope of the instance

Extent can be:
permanent - They still exist when the server resets.
temporary - They cease to exist when the server resets.

Prefix: scope and extent
nothing  - A permanent variable attached to the character, the default variable
          type. They are stored with all the account data in "saveathena.txt"
          in TXT versions and in the SQL versions in the `global_reg_value`
          table using type 3.
"@"      - A temporary variable attached to the character.
          SVN versions before 2094 revision and RC5 version will also treat
          'l' as a temporary variable prefix, so beware of having variable
          names starting with 'l' if you want full backward compatibility.
"$"      - A global permanent variable.
          They are stored in "savemapreg.txt" or database table `mapreg`,
          depending on server type.
"$@"     - A global temporary variable.
          This is important for scripts which are called with no RID
          attached, that is, not triggered by a specific character object.
"."      - A NPC variable.
          They exist in the NPC and disappear when the server restarts or the 
          NPC is reloaded. Can be accessed from inside the NPC or by calling 
          'getvariableofnpc'. Function objects can also have .variables which 
          are accessible from inside the function, however 'getvariableofnpc' 
          does NOT work on function objects.
".@"     - A scope variable.
          They are unique to the instance and scope. Each instance has it's 
          own scope that ends when the script ends. Calling a function with 
          callsub/callfunc starts a new scope, returning from the function 
          ends it. When a scope ends, it's variables are converted to values 
          ('return .@var;' returns a value, not a reference).
"'"      - An instance variable
          These are used with the instancing system, and are unique to each 
          party's instance.
"#"      - A permanent local account variable.
          They are stored with all the account data in "saveaccreg.txt" in
          TXT versions and in the SQL versions in the 'global_reg_value'
          table using type 2.
"##"     - A permanent global account variable stored by the login server.
          They are stored in "saveaccount.txt" and in the SQL versions in the
          'global_reg_value' table, using type 1. The only difference you will
          note from normal # variables is when you have multiple char-servers
          connected to the same login server. The # variables are unique to
          each char-server, while the ## variables are shared by all these
          char-servers.

Postfix: integer or string
nothing - integer variable, can store positive and negative numbers, but only 
         whole numbers (so don't expect to do any fractional math)
'$'     - string variable, can store text

Examples:
 name  - permanent character integer variable
 name$ - permanent character string variable
@name  - temporary character integer variable
@name$ - temporary character string variable
$name  - permanent global integer variable
$name$ - permanent global string variable
$@name  - temporary global integer variable
$@name$ - temporary global string variable
.name  - NPC integer variable
.name$ - NPC string variable
.@name  - scope integer variable
.@name$ - scope string variable
#name  - permanent local account integer variable
#name$ - permanent local account string variable
##name  - permanent global account integer variable
##name$ - permanent global account string variable

If a variable was never set, it is considered to equal zero for integer 
variables or an empty string ("", nothing between the quotes) for string 
variables. Once you set it to that, the variable is as good as forgotten 
forever, and no trace remains of it even if it was stored with character or 
account data.


Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...