Stone Story RPG

Stone Story RPG

26 ratings
石之脚本指南翻译
By 0Match_Box0
http://stonestoryrpg.com/stonescript/help.txt
游戏内的石之脚本指南的翻译
本人英语水平和编程水平都很低 献丑
-----
更新到v1.9.0版本
   
Award
Favorite
Favorited
Unfavorite
翻译文本(v1.9.0)
v1.9.0 - 2019/10/24

Stonescript
石之脚本
===========
在意念之石中被用于自动化装备选择。
石之脚本非常简单,但是功能强大并且将会继续完善。
前往discord.gg/StoneStoryRPG 来寻求帮助或者协助脚本开发
一个好的脚本的目的是在不同的游戏状态选择最合适的装备
这可以像在生命危急时自动喝药一样简单,也可以复杂到将战斗把控提升到超人的水平

目录
1. 范例
2. 基础
3. 游戏状态
4. 命令
5. 比较
6. 搜索过滤器
7. 小提示
8. 默认脚本
9. roadmap(未翻译)


1. 范例
==========
// 在岩石高原装备铲子
// 在恐惧洞窟装备1号预设装备组
// 除了对抗boss的时候
// 这时装备钩爪
// 还有7星的战锤
// 在亡者之殿装备2柄魔杖
// 左手装备毒属性魔杖
// 右手装备活力属性魔杖
// 如果难度大于5星
// 装备+13的活力属性棒
// 生命值在10以下时自动喝药
?loc=rocky
equip shovel
?loc=cave
loadout 1
?foe=bolesh
equip grap
equip hammer *7 D
?loc=halls
equipL poison wand
equipR vigor wand
?loc>*5
equip vigor staff +13
?hp < 10
activate potion


2. 基础
=========
? 比较和分支逻辑(if)
// 注释
^ 换行


3. 游戏状态
=============
这些告诉了你正在发生什么和玩家面前有着什么
?loc 当前地点名称
?loc.stars 当前地点的难度星级
?foe 当前目标敌人
?foe.distance 目标敌人和玩家角色间的距离
?foe.count 距离40单位以内敌人的数量
?pickup 当前的目标可拾取物
?pickup.distance 目标可拾取物和玩家角色间的距离
?hp 玩家角色的当前生命值
?maxhp 玩家角色的最大生命值
?time 当前地点的实时帧数
?totaltime 当前地点的实时帧数,累计包括boss前的过场场景
?foe.hp 目标敌人的当前生命值
?foe.maxhp 目标敌人的最大生命值
?foe.armor 目标敌人的护甲值
?armor 玩家角色的当前护甲值
?maxarmor 玩家角色的最大护甲值
?pos.x 玩家角色当前的x轴位置
?debuffs.count 玩家角色上的debuff数量
?foe.debuffs.count 目标敌人上的debuff数量
?face 玩家角色的当前面部表情 示例: ?face =( ^^)


4. 命令
===========
这些被用来告诉游戏它应该做什么
> <str> 将一个字符串打印到屏幕顶部
equip <str> 装备一个道具,<str>字符串被限制最多有7个条件
equipL <str> 装备一个道具到左手
equipR <str> 装备一个道具到右手
loadout <n> 装备一个特定的预设装备组
activate <item> 使用特定道具,目前可使用的包括:”potion”,”p”(药水),”left”,”L”(左手道具),”right”,”R”(右手道具)
>(abcd 在玩家角色上显示一个自订表情 示例: >( OwO
>oX,Y,[#rrggbb,]<str> 相对于玩家头部位置的高级打印
>`X,Y,[#rrggbb,]<str> 相对于屏幕左上角的高级打印
>cX,Y,[#rrggbb,]<str> 相对于屏幕中心的高级打印
>fX,Y,[#rrggbb,]<str> 相对于目标敌人头部位置的高级打印
示例: ">o-6,3,#ff0000,walk forward ->"


5. 比较
==============
用于和游戏状态结合来做出决定
= 比较值相等或字符串包含
! 比较值不相等或字符串不包含 示例: "?foe!poison"
& 与 示例: "?loc=caves & foe=boss"
| 或 示例: "?foe=slow | foe.count>3"
> 大于比较值,可以用在当前位置难度等级,敌人数量,生命值等数值中
< 小于比较值


6. 搜索过滤器
=================
这些被用于评估游戏状态 示例: "?foe = insect"
poison(毒属性)
vigor(活力属性)
aether(以太属性)
fire(火属性)
air(气属性)
ice(冰属性)
arachnid(蜘蛛类敌人)
serpent(蛇类敌人)
insect(昆虫类敌人)
machine(机械类敌人)
humanoid(人形敌人)
elemental(元素敌人)
boss(boss敌人)
spawner(巢穴类敌人)
flying(飞行敌人)
slow(缓慢敌人)
ranged(远程敌人)
unpushable(不可推动)
undamageable(不受伤害)
magic_resist(魔法抗性)
magic_vulnerability(魔法弱点)
immune_to_stun(免疫晕眩)
immune_to_ranged(免疫远程)
immune_to_debuff_damage(免疫debuff伤害)
immune_to_physical(免疫物理伤害)
*[number] star level of a location or item(物品的星级)
+[number] enchantment bonus of an item(物品的+等级)


7. 提示
=======
在用于定义当前发生了什么的’?’比较中,空格(用于标识)很重要
通过按键盘上的“M”可以在运行过程中更改脚本。
意念之石右上角的电源按钮可打开/关闭脚本。
如果调用多个装备命令,则以最后者为准。
脚本每秒执行30次(每帧一次)。
如要尝试使用不同的脚本,建议将它们复制到外部文本编辑器(如记事本)中。
常用的快捷键如Ctrl + A,Ctrl + C和Ctrl + V都很有用。
在游戏中按住Tab键可以获得有关游戏状态的大量信息。
可以用’\n’来在打印指令中实现换行


8. 默认脚本
=================
?hp < 10
activate potion
loadout 1
?loc = rocky
equip shovel
?foe = poison
equipL crossbow


===========
Roadmap
===========
Things that are planned, but not yet in the game:

?ai.enabled True if the AI is ON, False if the AI is off (e.g. during a cinematic moment)

?has = potion Evaluates if there is a potion available to use
?has = <item> Evaluates if the given item is equipped
?hasL = <item> Evaluates if the given item is equipped on the Left
?hasR = <item> Evaluates if the given item is equipped on the Right

?harvest returns the current harvest object targeted by the player
?harvest.distance returns the distance between the player and the target harvest location

var a Declare a new int variable, single character. Up to 26 variables from a to z
= Assign a value to a variable

Variable Operations
+ add two variables
- subtract two variables
1 Comments
スライムシー 27 Aug, 2019 @ 9:37am 
大感谢