[脚本教程之六]最新Sphere角色变量详细列表[55i]

Sphere基本变量格式及功能描述
我在前面的帖子中曾经详细介绍过Sphere的七种基本变量,由于这些详细的描述内容在一般的网站上可以找到,所以我在下面只是重新整理并补充一下,可能和有些网站有些出入,所以有遗漏和错误的地方大家可以提出来,我们一同修正。以下内容仅供编程时候的备查资料,适用于55i版本。
一、账号变量(Account Variables)
1、Account
格式:[指针].Account.<参数变量parameter>
功能:用于操作账号方面的相关信息或设置,可以在命令行使用,也可以在脚本中使用
属性值类型: 字符型String
参数变量列表:

(1)CHARS
格式: ACCOUNT.CHARS
例:
命令行: .xshow ACCOUNT.CHARS
脚本里: SRC.ACCOUNT.CHARS
功能描述:显示玩家角色的账号信息

(2)FIRSTCONNECTDATE
格式: ACCOUNT.FIRSTCONNECTDATE
用法:同上
功能描述:显示玩家角色的账号的第一次登陆日期

(3)LANG
格式:ACCOUNT.LANG
用法:同上
功能描述:玩家账号的语言种类

(4)LASTCHARUID
格式: ACCOUNT.LASTCHARUID
用法:同上
功能描述:显示玩家角色账号的最后一次登陆的ID

(5)LASTCONNECTDATE
格式: ACCOUNT.LASTCONNECTDATE
用法:同上
功能描述:显示玩家角色账号的上次登陆日期

(6)LASTCONNECTTIME
格式:.ACCOUNT.LASTCONNECTTIME
用法:同上
功能描述:显示玩家账号的最后一次连接时间

(7)LASTIP
格式:.ACCOUNT.LASTIP
用法:同上
功能描述:显示玩家角色的最后一次登陆IP

(8)PLEVEL
格式:SRC.ACCOUNT.PLEVEL
用法:同上
功能描述:显示玩家角色账号的权限

(9)TOTALCONNECTTIME
格式:ACCOUNT.TOTALCONNECTTIME
用法:同上
功能描述:显示账号的总连接时间

二、角色及NPC变量(Character & NPC Variables)

(1)AC
类型: 整型(Integer)
描述:适用于所有玩家及非玩家角色,表示角色的防御值?包含了未装备防御物品和装备 以后的值,游戏中不可修改。

(2)ACCOUNT
类型:字符型(String)
描述: 详细看前面的账号变量的具体参数,只适用于玩家角色

(3)ACTARG1 / ACTARG2 /ACTARG 3

类型:十六进制数(Hexadecimal)
描述: 表示确定的几个动作行为,不同的行为数值不同,如在使用魔法行为时候ACTARG1代表正在施展的魔法代号,这时候,如果使用的是召唤类魔法,则ACTARG2代表被创建的角色ID;又如在使用一些制造技能的时候,如铁匠(blacksmithing)、补锅(tailoring)等等,ACTARG1代表被创建的物品的ID;如果使用的是战斗类技能,当角色挥动武器攻击的时候,ACTARG1被设置为2;ACTARG1还可以记录UID,即角色的Layer25(坐骑),此时角色标记为040000000(注:这里和我所查阅到的资料有些出入,目前sphere99l版本是040000000,但我看到的资料里面是030000000)
PS:至于ACTARG2和ACTARG3,也是行为参数,但我不知道具体如何使用和其代表的含义
ACTARG3不怎么使用,可能会用在一些技能里面。

(4)ACTPRI
类型:十六进制数(Hexadecimal)
描述:我不知道,待查

(5)ACTION
类型:整型(Integer)
描述:玩家角色施展的技能的数编号值(不是DEFNAME值),当没有使用技能的时候ACTION值为-1。对于NPC来说,下面的列表决定了他们的行为:
063 空闲:自由状态
064 跟随: NPC跟随雇主
065 站立: 站立不动,直到更换雇主和遭到攻击
066 前往: 去指定的目的地
067 漫游: 原地无目的游荡
068 搜寻:查找搜寻?
069 逃跑: 逃命,逃跑
06a 谈话: 正和一些重要的人物谈话,hoho
06b 跟随: 正在谈话并跟随谈话的人
06c 守卫: 保护指定的目标
06d 复位: 回到GM设定的home点处
06e Fetching: 为主人采摘某个物品
06f Breathing? I’m using my breath weapon on somebody?
070 想: 当角色下线的时候
071 吃: 吃东西
072 拣: 当看到任何可以拣起来的东西的时候拣起来
073 投: 投掷石块等
074 Thinking: Eh?
075 练习: 打练习的人偶
076 纺线?Napping: Haven’t seen this do anything
077 无知觉的Unconscious: Haven’t seen this do anything
078 睡着的Sleeping: Haven’t seen this do anything
079 治疗Healing:治疗某人
07a 单击:单击模式
07b Marching: I’m following a book script
如果你希望手工设置角色的ACTION,必须先设置行为目标的UID为ACT,然后设置不同的ACTARG变量的值为当前的值。
//原文:first set ACT to the UID of the target of the action, and the various ACTARG variables to the correct values.
例如:
IF ( (<src.action> == 019) || (<eval strmatch(<src.action>,skill_magery)>) )
同: ON=@SKILLSTART

(6)AGE
变量类型:整型(Integer)
功能描述:表示角色之创建后在线的时间秒数

(7)ARMOR
变量类型:整型(Integer)
功能描述:这个变量表示了角色的自然防御等级,任何装备所增加的值都会在这个值上加

(8)AVERSIONS
变量类型:字符串型(String array)
功能描述: 表示NPC所讨厌去的地方

(9)BANKBALANCE
变量类型:整型(Integer)
功能描述: 角色银行里面的金钱总数

(10)BELLIGERENT
功能描述:Karma的参量值 一般在-6000到-2001间,在这个标准则为好战的

(11)BLOODCOLOR
功能描述:角色或怪物NPC的血的颜色

(12)BODY
变量类型:字符型(String)
功能描述: 角色的身体类型,是c_man或者是c_woman当角色死亡后,这个变量将编程设 置OBODY的值

(13)BRAIN
功能描述:角色的头脑类型怪物、动物、小偷、正常人、雇员等等,玩家角色的这个变量值被设置为brain==0
具体为:
BRAIN_NONE 0 玩家角色
BRAIN_ANIMAL 1 动物
BRAIN_HUMAN 2 人型NPC
BRAIN_HEALER 3 医生
BRAIN_GUARD 4 警卫
BRAIN_BANKER 5 银行职员
BRAIN_VENDOR 6 店员NPC
BRAIN_BEGGAR 7 乞丐
BRAIN_ANIMAL_TRAINER 8 动物寄存NPC
BRAIN_THIEF 9 小偷
BRAIN_MONSTER 10 怪物
BRAIN_BESERK 11 狂暴型怪物
BRAIN_UNDEAD 12 不死系怪物
BRAIN_DRAGON 13 龙族
BRAIN_VENDOR_OFFDUTY 14 非店员NPC
BRAIN_TOWNCRIER 2 城市基本人员

(14)CAN
变量类型:十六进制(Hexmask)
功能描述:表示角色在世界里面所具备的基本行为能力,合法的值如下:
MT_NONMOVER 0 不能移动的
MT_GHOST 01 可以象幽灵一样穿越障碍
MT_SWIM 02 可以在水上行走
MT_FIRE_IMMUNE 020 在火中不会收到伤害
MT_EQUIP 00100 可以穿戴衣服装备饰品等
MT_USEHANDS 00200 可以挥动武器,装备盾牌武器开门等
MT_MALE 00400 为男性 //99l中为0
MT_FEMALE 00800 为女性
MT_NONHUM 01000 不是人型角色
MT_RUN 02000 可以跑动
MT_FLY 090 可以飞行登攀//原始资料为010
MT_WALK 014 可以行走登攀//原始资料为04

如果设置了一个玩家角色可以具备MT_FLY或者MT_SWIM的变量,则他将没有任何效果,因为这些动画在被限制在客户端那里

(15)CHARUID
玩家的UID,用以唯一标示玩家的序列号

(16)CLIENTVER
变量类型:特定的(Special)
功能描述:客户端的版本号

(17)COLOR
变量类型:十六进制(Hexadecimal)
功能描述: 表示角色的皮肤颜色

(18)DAM
变量类型:十进制(Decimal)
功能描述:角色的伤害能力值,会自动和武器的伤害值累加

(19)DEATHS
变量类型:整型(Integer)
功能描述:角色死亡的时间

(20)DESIRES
变量类型:字符串(String Array )
功能描述: 会引起NPC注意力和吸引NPC的物品

(21)DEX
变量类型:整型(Integer)
功能描述:角色的敏捷度值,会影响到角色的攻击速度及最大耐力值(stamina),对于NPC则决定了NPC的快速移动和跑动的速度

(22)DIR
变量类型:整型(Integer)
功能描述:表示角色脸部的朝向
0 North 北面
1 Northeast 东北面
2 East 东面
3 Southeast 东南面
4 South 南面
5 Southwest 西南面
6 West 西面
7 Northwest 西北面
在游戏中实际设置中,你必须使用UPDATE来更新角色看到的画面改变

(23)EVENTS
变量类型:字符串(String Array)
功能描述:表示角色的事件的影响,消除影响用EVENTS=-事件名

(24)FAME
变量类型:整型(Integer)
功能描述:角色的名望值合法值范围是0到10000.

(25)FLAGS
变量类型:十六进制(Hexmask)
功能描述: 表示角色的标记影响效果,合法值如下:
statf_invul 000000001// 隐形的
statf_dead000000002 // 死亡的
statf_freeze000000004// 被魔法麻痹
statf_invisible000000008// 魔法隐形
statf_sleeping000000010// 睡着了看上去象个尸体
statf_war000000020// 战斗模式
statf_reactive000000040// 具备reactive armor魔法效果
statf_poisoned000000080// 中毒
statf_nightsight000000100// 夜明
statf_reflection000000200// 具备魔法防御效果
statf_polymorph000000400// 变身为另外一个外形
statf_incognito000000800// 不显示技能头衔,灰名?
statf_spiritspeak000001000// 通灵,可以听到鬼魂谈话
statf_insubstantial000002000// 隐形的鬼或者GM隐形
statf_emoteaction000004000// 宠物向主人表达心意
statf_hasshield000010000// 装备了盾牌
statf_script_play000020000// 在书写
statf_stone000040000// 石化状态
statf_script_rec000080000// 在记录
statf_fly000100000// 飞行或者跑动(anim)
statf_respawnnpc000200000// 如果死亡了会重生的NPC
statf_hallucinating000400000// 产生幻觉
statf_hidden000800000// 隐藏了 (非魔法隐藏)
statf_indoors001000000// 在屋内
statf_criminal002000000// 罪犯会被guard攻击
statf_conjured004000000// 被召唤的,死后无尸体
statf_pet008000000// 是个宠物
statf_spawned010000000// 物品再生点
statf_saveparity020000000// 生物是否被存盘?
statf_ridden040000000// 是个马?坐骑?
statf_onhorse080000000// 骑在马背上

(26)FOOD
变量类型:整型(Integer)
功能描述: 角色当前的食物养料的数量

(27)FOODTYPE
变量类型:字符串(String Array)
功能描述: 表示角色能吃的一些食物类型

(28)FONT
变量类型:整型(Integer)
功能描述: 决定了角色谈话的字体,合法取值为:
0 Like default, but larger
1 Small, with white shadowing
2 Large, with white shadowing
3 Default
4 Large, scribe
5 Small, italics
6 Small, compact
7 Small, white outline
8 Runic font (only capital letters show)
9 Small, wide

(29)GUILDABBREV
变量类型:字符型(String)
功能描述: 角色的工会缩写

(30)HEIGHT
变量类型:整型(Integer)
功能描述: NPC的高度,即Z坐标,角色当试图穿过低于这个Z坐标的设施时候,这个Z坐标将被锁定在这个标准

(31)HIREDAYWAGE
变量类型:整型(Integer)
功能描述: 决定了玩家雇佣NPC在游戏里面的每天要付给NPC的钱数

(32)HITPOINTS
变量类型:整型(Integer)
功能描述: 角色的生命点数,低于1将会死亡

(33)HITS
和HITPOINTS相同

(34)HOME
变量类型:整型数列(Integer Array)
功能描述:角色在建立时的坐标,使用格式为HOME=x,y,z.

(35)HOMEDIST
变量类型:整型(Integer)
功能描述:NPC的最大走动步数范围

(36)ID
变量类型:字符型(String)
功能描述: 在使用CHARDEF语句时候,决定了角色的基本外形的ID号,如果角色死亡了,那么他的OBODY值将设置为这个ID值

(37)INT
变量类型:整型(Integer)
功能描述: 角色的智力值(intelligence). 决定角色的魔法值MANA

(38)KARMA
变量类型:整型(Integer)
功能描述: 角色的善恶 karma,影响角色的头衔和名字颜色,合法值范围为-10000到 10000.

(39)KILLS
变量类型:整型(Integer)
功能描述: 角色的杀人数

(40)MANA
变量类型:整型(Integer)
功能描述: 角色的MANA魔法值

(41)MAXFOOD
变量类型:整型(Integer)
功能描述: 角色最大能吃下的食物量

(42)MEMORY
变量类型:十六进制(Hexmas)
功能描述: 角色的存储MEMORY标记,合法值如下:
MEMORY_SAWCRIME00001// 我在攻击罪犯,我可以呼叫卫兵来攻击这个罪犯
MEMORY_IPET00002//我是宠物,link是我的主人 (never time out)
MEMORY_FIGHT00004// 激活战斗状态,不可以受到任何伤害
MEMORY_IAGGRESSOR00008// 我是侵略者. (good or evil)
MEMORY_HARMEDBY00010// 我被它们攻击过,但它们也报复过了
MEMORY_IRRITATEDBY00020// 我看见他在偷窃我或者别人
MEMORY_SPEAK00040// 我们交谈过或被他驯服过 (NPC_MEM_ACT_TYPE)
MEMORY_AGGREIVED00080// 我受到攻击但不在一个组队中
MEMORY_GUARD00100// 守护这个物品(never time out)
MEMORY_ISPAWNED00200// 我从这个再生点重生 (never time out)
MEMORY_GUILD00400// 这是我的工会石(never time out)
MEMORY_TOWN00800// 这是我的城镇石 (never time out)
MEMORY_FOLLOW01000// 我开始跟随目标(never time out)
MEMORY_WAR_TARG02000// 这是我当前的一个攻击目标
memory_friend04000 // 这是我的朋友

(43)NAME
变量类型:字符型(String)
功能描述:表示角色的名字在打开纸人的时候后者单击角色的时候会显示

(44)NEED
变量类型:字符串(String Array)
功能描述: 表示NPC所喜欢的的物品,在55i里面不支持

(45)NPC
变量类型:整型(Integer)
功能描述: 这个变量表示NPC的”brain”类型,合法的变量值参看BRAIN 变量说明

(46)OBODY
变量类型:字符型(String)
功能描述: 角色复活后身体的ID外形,如果角色变身为其他ID,死后仍旧是原来的ID定义外形,NPC的身体外形能在游戏中修改但无效,具体请参看变量”OSKIN”

(47)OSKIN
变量类型:十六进制(Hexadecimal)
功能描述: 角色身体的皮肤颜色值,可以在游戏中进行修改,一些脚本写作者经常在写一个吸血鬼的时候用到它:当角色死后,皮肤变成了白色,复活后再恢复原来的角色。可以在游戏中设置NPC的这个变量,但没有效果。

(48)P
变量类型:整型数序列(Integer Array)
功能描述:角色的位置坐标值

(49)PROFILE
变量类型:字符型(String)
功能描述:角色的Profile的文本,在纸人里面的其中一个卷轴,这个卷轴还可以表示人型NPCs的Profile,但不能够被打开。

(50)SERIAL
变量类型:十六进制(Hexadecimal)
功能描述:这个变量保存了角色的序列号(serial number),在游戏中序列号是用来标示每一个物品和角色,具有唯一性。

(51)SKILLBEST
变量类型:整型(Integer)
功能描述:表示玩家角色的最高技能数

(52)SKILLCLASS
变量类型:字符型(String)
功能描述: 定义技能类型,在spheretable.scp中定义。

(53)SKILLTOTAL
变量类型:整型(Integer)
功能描述:角色技能点数的总数

(54)SPEECH
变量类型:字符串(String Array)
功能描述:NPC的谈话文件

(55)SPEECHCOLOR
变量类型:整型(Integer)
功能描述:NPC的谈话的颜色

(56)STAMINA
变量类型:整型(Integer)
功能描述: 角色的精力值,最大数值为角色的DEX值

(57)STR
变量类型:整型(Integer)
功能描述:角色的体力值,决定角色的生命点数及负重能力

(58)TARGTXT
变量类型:字符型(String)
功能描述:保存了最后一个SET或者X..命令的目标字符,如果你使用”.SET NAME jack”,则这个变量将会保存”NAME jack”

(59)TEVENTS
变量类型:字符串(String Array)
功能描述: NPC的事件触发,这个变量和EVENTS一样必须使用在一个CHARDEF里面的@CREATE的语句前面,不能在游戏中改变值。〕

(60)TIMER
变量类型:整型(Integer)
功能描述:用于在技能使用前的延时,在TIMER到0的时候,激活@TIMER的触发。

(61)TITLE
变量类型:字符型(String)
功能描述: 角色的头衔称谓,显示在角色纸人里面的名字后面,如果向设置某人的缺省title,则使用”.SET TITLE”命令,同样可以表示一个人型的NPCs的头衔

(62)TSPEECH
变量类型:字符串(String Array)
功能描述:NPC的谈话触发,和SPEECH一样必须使用自爱一个CHARDEF里面的@CREATE的语句前面,不能在游戏里面更改。

(63)UID
变量类型:十六进制数(Hexadecimal)
功能描述:和序列号SERIAL类似

(64)WEIGHTMAX
变量类型:整型(Integer)
功能描述:角色可以承载的最大重量,有角色的力量STR值决定。

留言

还没有留言,来坐个沙发吧。

留个言

留个言