OnRequestValues/OnGetValuesとは?
- ゴースト間で変数のやりとりをするための規格です。
ゴースト間模擬戦闘とかで使われたりします。
- 本来は同時起動中のゴーストの性別や年齢を取得し、より自然なコミュニケートを実現するために考案された仕様であり、決してゴースト同士ケンカさせるための仕様ではありません。
目次
対応法
里々
# written by Don
# Special Thanks To LR and Legokichi.
# 08/10/31更新 ssuを一切使わず高速化
@OnRequestValues
\![raiseother,(R0),OnGetValues,(FMO0name)(loop,AddRVArg,1,(Rの数))]
@AddRVArg
(call(バイト値,1)AddRVArgExist_(単語群「(R(AddRVArgカウンタ))」の存在)(バイト値,1)(R(AddRVArgカウンタ)))
@AddRVArgExist_1
,(A0)=((A0))
#変数記入例
@0name
(0キャラクター名)
@0キャラクター名
【さくら名】
@0種族
人間
@0種族タイプ
人型
@0年齢層
(0世代)
@0世代
若者
@0性別
女性
@0行動タイプ
物理攻撃
@0LIFE
10
@0STR
10
@0DEX
10
@0AGL
10
@0MIN
10
@0INT
10
@0SEN
10
@1name
(1キャラクター名)
@1キャラクター名
【うにゅう名】
@1種族
うにゅう
@1種族タイプ
獣型
@1年齢層
(1世代)
@1世代
不明
@1性別
不明
@1行動タイプ
精神攻撃
@0LIFE
10
@0STR
10
@0DEX
10
@0AGL
10
@0MIN
10
@0INT
10
@0SEN
10
文
///////// written by C.Ponapalt
OnRequestValues
{
_cname = PROPERTY_CHARACTER_NAME
_n = ARRAYSIZE(reference)
_return_script = ''
for _i = 1 ; _i < _n ; _i++ {
_result = EVAL('プロパティ' + reference[_i])
if STRLEN(_result) {
_return_script += ',"'
_return_script += reference[_i]
_return_script += '='
_return_script += _result
_return_script += '"'
}
}
if STRLEN(_return_script) {
"\C\![raiseother,%(reference0),OnGetValues,%(_cname[0,','])%(_return_script)]"
}
}
//変数記入例
#define PROPERTY_CHARACTER_NAME "【さくら名】,【うにゅう名】"
プロパティ0name
{
プロパティ0キャラクター名
}
プロパティ0キャラクター名
{
PROPERTY_CHARACTER_NAME[0,',']
}
プロパティ0年齢層
{
プロパティ0世代
}
プロパティ0世代
{
// 【入力】\hの年齢層・世代 (子供|若者|大人|老人|不明)
'若者'
}
プロパティ0性別
{
// 【入力】\hの性別 (男性|女性|雌雄同体|不明)
'女性'
}
プロパティ0種族
{
// 【入力】\hの種族
'人間'
}
プロパティ0種族タイプ
{
// 【入力】\hの種族タイプ (人型|獣型|植物型|不定形型|無機物型)
'人型'
}
//CyberSphere
//とりあえず基本的にLIFE以外を足して60前後になるように調整すると「ふつう」になる
プロパティ0行動タイプ
{
// 【入力】\hの行動タイプ(属性?) (物理攻撃|精神攻撃)
'物理攻撃'
}
プロパティ0LIFE
{
// 【入力】\hの体力。即値(int)。
10
}
プロパティ0STR
{
// 【入力】\hの腕力。物理攻撃力。即値(int)。
10
}
プロパティ0DEX
{
// 【入力】\hの器用さ。物理攻撃命中率。即値(int)。
10
}
プロパティ0AGL
{
// 【入力】\hの敏捷さ。物理攻撃回避率。即値(int)。
10
}
プロパティ0MIN
{
// 【入力】\hの精神力。精神攻撃力。即値(int)。
10
}
プロパティ0INT
{
// 【入力】\hの知力。精神攻撃命中率。即値(int)。
10
}
プロパティ0SEN
{
// 【入力】\hの感性。精神攻撃回避率。即値(int)。
10
}
プロパティ1name
{
プロパティ1キャラクター名
}
プロパティ1キャラクター名
{
PROPERTY_CHARACTER_NAME[1,',']
}
プロパティ1年齢層
{
プロパティ1世代
}
プロパティ1世代
{
// 【入力】\uの年齢層・世代 (子供|若者|大人|老人|不明)
'不明'
}
プロパティ1性別
{
// 【入力】\uの性別 (男性|女性|雌雄同体|不明)
'不明'
}
プロパティ1種族
{
// 【入力】\uの種族
'うにゅう'
}
プロパティ1種族タイプ
{
// 【入力】\uの種族タイプ (人型|獣型|植物型|不定形型|無機物型)
'獣型'
}
//CyberSphere
//とりあえず基本的にLIFE以外を足して60前後になるように調整すると「ふつう」になる
プロパティ1行動タイプ
{
// 【入力】\uの行動タイプ(属性?) (物理攻撃|精神攻撃)
'物理攻撃'
}
プロパティ1LIFE
{
// 【入力】\uの体力。即値(int)。
10
}
プロパティ1STR
{
// 【入力】\uの腕力。物理攻撃力。即値(int)。
10
}
プロパティ1DEX
{
// 【入力】\uの器用さ。物理攻撃命中率。即値(int)。
10
}
プロパティ1AGL
{
// 【入力】\uの敏捷さ。物理攻撃回避率。即値(int)。
10
}
プロパティ1MIN
{
// 【入力】\uの精神力。精神攻撃力。即値(int)。
10
}
プロパティ1INT
{
// 【入力】\uの知力。精神攻撃命中率。即値(int)。
10
}
プロパティ1SEN
{
// 【入力】\uの感性。精神攻撃回避率。即値(int)。
10
}
華和梨
# written by Don
# Special Thanks To Towa and Musouran.
event.OnRequestValues : $(
setstr @i 1;
setstr @ResponseString ${sakura.name};
while $[ ${System.Request.Reference${@i}} != $(NULL) ] $(
if $[ ${Property.${System.Request.Reference${@i}}} != $(NULL) ] $(
adddictstr @ResponseString ","${System.Request.Reference${@i}}=${Property.${System.Request.Reference${@i}}};
);
inc @i;
);
echo \![raiseother,${System.Request.Reference0},OnGetValues,$(get @ResponseString)]\e;
)
# 変数記入例
# \0\1名定義
sakura.name : 【さくら名】
kero.name : 【うにゅう名】
# 以下、各プロパティ。
Property.0name : ${Property.0キャラクター名}
Property.0キャラクター名 : ${sakura.name}
Property.0種族 : 人間
Property.0種族タイプ : 人型
Property.0年齢層 : ${Property.0世代}
Property.0世代 : 若者
Property.0性別 : 女性
Property.0行動タイプ : 物理攻撃
Property.0LIFE : 10
Property.0STR : 10
Property.0DEX : 10
Property.0AGL : 10
Property.0MIN : 10
Property.0INT : 10
Property.0SEN : 10
Property.1name : ${Property.1キャラクター名}
Property.1キャラクター名 : ${kero.name}
Property.1種族 : うにゅう
Property.1種族タイプ : 獣型
Property.1年齢層 : ${Property.0世代}
Property.1世代 : 不明
Property.1性別 : 不明
Property.1行動タイプ : 精神攻撃
Property.1LIFE : 10
Property.1STR : 10
Property.1DEX : 10
Property.1AGL : 10
Property.1MIN : 10
Property.1INT : 10
Property.1SEN : 10
その他
誰が送るのですか
- 08/02/09現在、OnRequestValuesを送信するゴースト
- ぬるぽ いんたーはい
- ごーすとじてん
- きゅーぴっど
なぜかゴースト間模擬戦闘に使われている
- 「ごーすとじてん」のゴースト間模擬戦闘機能は、現在「きゅーぴっど」に引き継がれています。
- やや仕様が変わりましたが、「ごーすとじてん」でも可能です。
歴史的経緯
コメント
- 勝手にあちこちから転載していますが、マズイ場合はこちらにコメント下さい。 -- Don