gearswap スレその1 (1000レス)
上下前次1-新
このスレッドは1000を超えました。
次スレ検索 歴削→次スレ 栞削→次スレ
2(1): 2014/06/14(土)00:32 ID:DR2tRBn2(1/3) AAS
Windowerの、その他の話題はWindowe 10スレに合流でいいのかな。
3系更新されなくなったし
gearswapの話題も、Spellcastスレでも良かったのかもしれないけど
立ったのならこっちでですかね。
3: 2014/06/14(土)00:41 ID:Jgmn0/2Q(1/2) AAS
>1
スレたてありがとうございます!!
>2
スレタイと内容が異なるのは、わかりにくいし混乱の元なので、個人的には別スレ大賛成です
4(2): 2014/06/14(土)09:41 ID:P9QM87Io(1/2) AAS
gearswapモンクサンプルの事で相談したいです。
現状、WSを撃った後やエンゲージ状態に状態移行した後、sets.TP.Accにしか装備変更しません。
self_commandでモードを変更させるのだろうかと
/console gs c <toggle TP set>等を入力しても状態は変化せず。
状態を変化させるにはどうすればいいでしょうか
sets.aftercast = {}
sets.aftercast.TP = sets.TP.Acc
function self_command(command)
if command == 'toggle TP set' then
if sets.aftercast.TP == sets.TP.DD then
省10
5(1): 2014/06/14(土)13:32 ID:DR2tRBn2(2/3) AAS
>>4
function aftercast(spell)
if player.status =='Engaged' then
equip(sets.aftercast.TP)
else
equip(sets.aftercast.Idle)
end
end
こうなってるみたいだが、sets.aftercast.Idleはどうなってんの?
最終的にどういう動きにしたいか良く分からんけど…
省1
6(1): 2014/06/14(土)14:09 ID:0CuswN9U(1/37) AAS
>>4
「toggle TP set」ってコマンドは
sets.TP.DDだったらsets.TP.Soloに切り替えて、 sets.TP.Soloだったらsets.TP.DDに切り替える
ってやってるけど41行目でsets.TP.Accをセットしてるからどちらでもないから何もおこらないって
なってる。
なんでtoggle TP setを使いたいって目的なら
41行目を
sets.aftercast.TP =sets.TP.DD
に直したら動くんじゃないかな。
toggle TP setってコマンドは通常の殴り装備を変更するみたいだけど
省2
7(1): 2014/06/14(土)14:50 ID:P9QM87Io(2/2) AAS
>>5
>>6
ありがとうございます。
現在SpellCast環境から移行中で
ひとまず戦闘時にマルチアタック装備、命中装備、カット装備への切り替えと各装備時のWS装備切り替え
ができるようになれば、とサンプルと格闘しています。
SpellCast時は、各モードの切り替えを//sc s で切り替えながらやっていました。
<group name="Default" default="yes">
<set name="normal">
マルチアタック装備
省27
8(1): 2014/06/14(土)17:15 ID:0CuswN9U(2/37) AAS
AA省
9(1): 2014/06/14(土)19:41 ID:V1PaVQUk(1/2) AAS
AA省
10: 2014/06/14(土)20:42 ID:0CuswN9U(3/37) AAS
>>8
windower.add_to_chatだけど、日本語は変換必要ないみたい
11(1): 2014/06/14(土)20:52 ID:0CuswN9U(4/37) AAS
AA省
12(1): 2014/06/15(日)03:05 ID:V1PaVQUk(2/2) AAS
>>11
if T{'Idle','Resting'}:contains(new) then
のところにunexpected symbol エラーが出てしまい上手く動きませんでした…
見た限りいけそうな感じはしたんですが!
レスくださってありがとうございました。
13(1): 2014/06/15(日)08:53 ID:0CuswN9U(5/37) AAS
>>12
↑のってインデントつけるために全角スペースつかってるけど、そのまま貼り付けるとそのエラーになるので
全角スペースは半角スペースかタブに変換してね。
14: 2014/06/16(月)13:49 ID:KfjsAWI2(1) AAS
書き方がおかしくてもエラーが親切だからわかりやすいね!
で、苦労の末に書き上がったんだけど着替えないというオチ。
まあ少しずつやってくかね〜
15: 2014/06/16(月)19:51 ID:2rQR8QpM(1) AAS
アドオンのPet Fixでペットを帰還させたときに落ちやすいのを治せるのかな?
16(1): 2014/06/17(火)14:00 ID:JU3477fc(1) AAS
Mote-include使ってる人っていますかね?
これのtown.gearって街に入ったら自動で着替えてくれそうだけど、
どうにも動いてくれなくてよくわからない…
17(1): 2014/06/18(水)06:33 ID:0CuswN9U(6/37) AAS
>>16
つかってないけど、街の中ようの着替えセットを用意しておくと着替えを実行したときに
その着替えセットが使用されるんじゃないかな。
それとこのライブラリが英語前提で書かれてるから、そこを日本語化しないとうごかないんじゃないだろうか。
あとMote-documentation.txtに作者の公開してるドキュメントのURLが書いてあって
そこにジョブごとのサンプルも公開されてるみたいだね。
18(2): 2014/06/20(金)20:02 ID:Jgmn0/2Q(2/2) AAS
spellcastにあった「コマンドに変数を展開する機能」がgearswapにないのが、移行の最大の壁になってる…
ここで全然話題になってないけど、あの機能ってみんな使ってなかったのかなぁ?
いまはとりあえずaliasで代用する方向で悪戦苦闘してるけど、自前で似たような機能のaddon作った方が早い気がしてたw
19: 2014/06/20(金)20:34 ID:4pBxFuvg(1/2) AAS
納刀、抜刀、ヒーリングで着替えて
precast スペル、アビにあわせて実行前に着替える、
midcast コマンド送信後着替える
aftercast 実行後に着替える
これだけで十分な人が大半ってことですかねぇ
20: 2014/06/20(金)21:39 ID:kPcP6RmA(1) AAS
>>13
今日帰って試したらばっちり動きました!
全角スペースのせいだったんですね。
ありがとう!
ありがとうございます!
21: 2014/06/20(金)22:57 ID:nUJY9RTI(1/3) AAS
>>18
変数自体をコマンドにしたいってこと?それともコマンドの引数にしたいってこと?
外部コマンドなら..でつないでできるけど、内部の関数を呼び出すのは大変かもね。
うちでは関数の引数にして関数内で展開したり、テーブルに登録してそこで展開してる。
22(1): 2014/06/23(月)21:47 ID:4pBxFuvg(2/2) AAS
公式の装備セットマクロ着替え8月めどの開発状況らしいね
オグメに対応してるかどうかでgearswapもいらないこになってしまうのだろうか・・・
23: 2014/06/24(火)00:23 ID:DR2tRBn2(3/3) AAS
>>22
そんな気の利いたもの作るわけがないw
24: 2014/06/24(火)13:46 ID:i8W6C2AE(1) AAS
公式がBuffで判別して最適な装備に着替えるぐらいの機能を実装したらそうなるだろな
25(1): 2014/06/25(水)00:19 ID:/u/mvgKE(1) AAS
みなさんself_commandってどのように活用してますでしょうか?
私はモンクの命中装備とマルチアタック装備の切り替えとか、
友人にいきなりWS装備見せてって言われた時用にequipだけ実行する時くらいしか使っていません。
何か便利な使い方があれば教えて欲しいです。
26: 2014/06/29(日)10:15 ID:nUJY9RTI(2/3) AAS
>>25
青とか赤で装備のセットを魔攻重視、殴り重視、ダメージカット何かをセットしてコマンドで切り替えてる。
シチュエーションに合わせて一瞬で着替えられるのが重宝してる。
それからI系魔法を連続で唱えたりにつかってるよ。
それよりwait文に相当するコマンドが無いのが痛いなぁ。
27(1): 2014/06/29(日)10:31 ID:etqBrjAQ(1) AAS
ほー そこで魔法連打する発想はなかったわ〜
こんな感じでやっとるんかな?
while loopflg do
windower.send_command(windower.to_shift_jis("input /ma ストーン <t>"))
coroutine.sleep( 4 )
end
28: 2014/06/30(月)14:06 ID:6NLBB3Kw(1/3) AAS
いらんかもしれないけど装備一式の置換操作を簡略にする方法
spellcast のセット一式をgearswapフォーマットに置換する正規表現
検索条件、正規表現チェック
<([\w]*)>([\w\W]*)</([\w]*)>
置換後の書式
\1="\2",
29: 2014/07/01(火)20:54 ID:nUJY9RTI(3/3) AAS
AA省
30: 2014/07/02(水)00:17 ID:ffWRR7lc(1) AAS
ウチでも素で使うとエラーですね。
windowerじゃなくてcoroutineの括りになってる処を見ると、子プロセスの内部でしか使えないとか。
libs\functions.luaで一箇所使われるみたいですが、そっちを見てもそんな感じがします。
31: 2014/07/02(水)15:24 ID:yLUk0Ia.(1) AAS
scのときと違って何が書いてあるのかサッパリわからんw
32(1): 2014/07/04(金)13:42 ID:6NLBB3Kw(2/3) AAS
SCは装備セットの記述を先に書く、ルールに魔法やアビをトリガーにしてプレキャスト→ミッドキャスト→アフターキャストって並びだったけど
GSは先に装備セット記述(アビや魔法ごとに、precast,midcast,aftercastの装備セット記述)
デフォルト装備セットをEquipSet.template、
FC、ステアップ、効果アップ装備をsets.xxx.zzzが装備セットの記述にある{}間は直接装備記述してる
set_combine()でマージしてるやつはSCのName="xxx"のパターンだね
ここは、魔法属性ごとに書式作ったりできるのもSCと同じだと思うけど・・
その下に
function precast(spell)
spell → アビ、魔法名称が入る
if分で条件記述して equip(sets.precast.xxx)
省11
33: 2014/07/05(土)10:09 ID:ejAT7mM.(1) AAS
>>32
横からだけどありがとう!気を取り直してもう一度がんばってみるわ。
34: 2014/07/11(金)12:05 ID:wJnscP06(1) AAS
解説してくださったかた、日本語化してくださったかた。
ありがとうございました!
コピペ移植したら無事動きました。
35: 2014/07/21(月)04:45 ID:ApeMDv5E(1/2) AAS
spellcastはwikiで解説されてたんで複雑なの書けたがこれはなかなか苦戦するな
簡単なのは何とかなるが学者用がむずかしい
36(1): 2014/07/21(月)19:03 ID:lLeRtGaM(1/5) AAS
学者どこで詰まってる?自分は章の有無判定がダメだ
令狸執鼠の章の場合 buffactive.perpetuance とか buffactive['Perpetuance']
さらにはbuffactive['令狸執鼠の章'] とかやってみたけどダメ
37: 2014/07/21(月)19:16 ID:lLeRtGaM(2/5) AAS
ごめんできたわ 頭にSVブレーサー+2装備しようとしてた\(^o^)/
ちなみにbuffactive.perpetuance と buffactive['Perpetuance'] はやっぱりダメで
buffactive['令狸執鼠の章']でうまくいった
38: 2014/07/22(火)20:09 ID:ApeMDv5E(2/2) AAS
>>36
まさにその章の有無判定とかがまったくです
出来ればファイルをサンプルであげていただければ助かります
39(1): 2014/07/22(火)21:13 ID:0CuswN9U(7/37) AAS
buffactive['xxxx'] で判定するxxxxの部分って〜windower\res\buffs.luaをみれば書いてあったと思う
それから↓みたいなのでxxxxの部分がログにでるよ。弱体とかも全部でるけど
function buff_change(buff, gain)
windower.add_to_chat(123, buff..tostring(gain))
end
>38
36の人じゃないけど、こんな感じでいけるんじゃないだろうか(全角スペースはタブかスペースに変換してね)
if spell.name == 'スタン' then
if buffactive['疾風迅雷の章'] then
equip(sets.precast['スタン'], {feet="PDローファー+1",})
省4
40(1): 2014/07/22(火)21:59 ID:lLeRtGaM(3/5) AAS
自分も絶賛テスト中なので落ち着いたらファイル上げようかと思う
本体付属のサンプルがそのままじゃ動かないのはちょい不便だよなぁ
>>39
フォローありがとう。そんな感じで動いてる。
とりあえず強化延長する例とか
function midcast(spell)
if spell.skill == '強化魔法' then
if buffactive['令狸執鼠の章'] then
equip({hands="SVブレーサー+2"})
end
省2
41: 2014/07/23(水)00:30 ID:0CuswN9U(8/37) AAS
>>40
サンプルかあ。確かにあったほうがいいよね。
学者は自分も一応動いてるけど、あんまり使い込んでないってレベルだなあ。
もうちょっと使い込んで落ち着いたらアップロードしてみようかな。
あとはギャッラルなしの3曲詩人用とかなら・・って感じかな。需要あるんだろうか
42(1): 2014/07/24(木)22:27 ID:lLeRtGaM(4/5) AAS
詩人用もきっと需要あるよ
ギャッラル無しからギャッラル有りに変更するのはきっと簡単だし
3曲対応(下地歌を考慮したスクリプト)なら4曲対応もそのまま出来るはず
43(2): 2014/07/26(土)00:03 ID:0CuswN9U(9/37) AAS
>>42
需要あるかわからないけどアップロードしてみた。
44: 2014/07/29(火)07:30 ID:aSQFdgAA(1/2) AAS
サルベージで装備解除された瞬間自動で装備装着するけどこれ大丈夫?
45: 2014/08/01(金)21:48 ID:a1tZX45A(1) AAS
海外だともう何ヶ月も前から使ってるみたいだし平気なんじゃないかな。
46(1): 2014/08/02(土)20:23 ID:lLeRtGaM(5/5) AAS
>>43
参考になった
ちなみに自分も楽器はFF側のマクロで着替えてる
下地歌は「楽器がダウルかテルパン」で判定するか
self_commandで専用のスクリプト書こうかと思ったけど
結局歌限定にしちゃったほうが使いやすいのかな〜
47(1): 2014/08/06(水)07:00 ID:l8NIT2Qo(1) AAS
>>43
かなり参考になりました。
日本人でここまでやれる人がいるのかと驚きましたw
勉強させていただきます。
48: 2014/08/06(水)20:18 ID:0CuswN9U(10/37) AAS
>>46
いままで下地はピーアンに固定してたのと、歌ごとに楽器変えなきゃいけないくてマクロ
足りないから、固定のままにしてたんだよね。
self_commandを使うなら、歌維持モードと歌維持モード切り替えのコマンド用意して
歌維持モードなら効果アップ楽器装備して、下地モードならダウル・テルパン装備
ってやればマクロも足りるかなあ。
49: 2014/08/06(水)20:21 ID:0CuswN9U(11/37) AAS
>>47
参考にしてもらえたようでなによりですw
日本語のサンプルはまだ少ないから、外人の書いたの参考にするしかなくて
なかなか大変だよね。
50(1): 2014/08/11(月)19:46 ID:Od3tQ2GM(1) AAS
スナップ着替えをGearswapでやろとしていますがうまくいきません。
スナップ着替えだけならできるのですがmidcastで命中着替えをしようとすると
スナップ着替えもしなくなってしまいます。
同じ症状のかたいますか?
51(2): 2014/08/12(火)01:23 ID:0CuswN9U(12/37) AAS
狩はやってないから、ちゃんと確認できないんだけど、
precastにスナップ着替えを書いて、midcastに命中着替えを書いたら
スナップ着替えが有効な間隔では撃てなかったってことなら
以下のは無視してほしいんだけど
precastとmidcast両方に着替えを書いていると1回しか点滅しないとおもうけどちゃんと
precastとmidcastが実行されてるはずなんでスナップ着替えが有効な間隔で撃ててるか確認してみてほしい。
それから着替えが実行されてるかはチャットから//gs showswapsってコマンドを打つと、ログに着替えの内容
が表示されるはずなんで、これで実行されてるか確認できるよ。
下のスクリプトをつくって遠隔コマンドでprecastとmidcastの着替えが実行されることは確認した
ただしスナップ着替えじゃないんで、スナップ着替えの効果がちゃんと出るのかは未確認。
省15
52: 2014/08/12(火)16:34 ID:uqChyJso(1) AAS
Tparty Infobar あたり 死んだね
53: 2014/08/12(火)17:17 ID:TjghycYg(1) AAS
Tparty今おちてきた
54: 2014/08/12(火)23:07 ID:xeLQhmQI(1) AAS
>>51
レスありがとうございます。
どうやらVUでGSが動かないみたいなのでまた後日確認してみます!
55: 2014/08/13(水)18:06 ID:E9MZIaU2(1) AAS
>>51
自分の環境だとアドチャットは動くのですが着替えはできていないような感じでした。
いろいろググってみたのですがこれが関係するのかなと思ったりしました。
外部リンク:github.com
素人でいろいろごちゃごちゃになっているので一度狩用のファイルを移植させてもらって試してみようかなと思います。
レスありがとうございました。
56: 2014/08/15(金)14:21 ID:h5UPh//A(1) AAS
試行錯誤でなんとか吟用が出来た。
spellとかのメンバ変数はどこかにヘルプ的なものないかねー
57(2): 2014/08/15(金)19:00 ID:F4s7eHVY(1) AAS
サンプルが入ってるフォルダにファンクションとか変数の一覧が書いてあるエクセルファイルがある
58: 2014/08/15(金)20:35 ID:e9QAlFTc(1) AAS
>>57
あざす。調べます。
autocontrolアドイン入れてるとマニューバした時に死ぬんだけど、同じ症状出てる人いますか?
59: 2014/08/18(月)02:48 ID:EOmv6NgQ(1) AAS
どなたか赤魔のサンプル上げて下さいませんか?
60(1): 2014/08/18(月)04:55 ID:pno23NnI(1/3) AAS
公式くらい見ような
チュートリアル
外部リンク[php]:wiki.windower.net
リファレンス
外部リンク[php]:wiki.windower.net
サンプル
外部リンク:www.bluegartr.com
英語は気合で読むんだ
61: 2014/08/18(月)05:22 ID:pno23NnI(2/3) AAS
>>18 亀レスだが、spellcastのvar setって事なら
function var_set (command)
hoge = {}
i = string.find(command, '=')
if i then
key = string.sub(command, 1, (i-1))
val = string.sub(command, (i+1), -1)
if tonumber(val) == nil then
hoge[key] = val
else
省8
62: 2014/08/18(月)05:28 ID:pno23NnI(3/3) AAS
ごめん、hoge = {}はget_sets()内に書いてくれ
63: 2014/08/18(月)09:32 ID:XUyYpLJg(1) AAS
ついでに他のアドオン/プラグインに変数渡して使ってるとか。AutoexecでEchoにsc変数渡すとか3の頃は結構メジャーでしたよね。
アドオンはどーにでもなるとして、プラグインは程々に面倒そう。
でもそーゆー、scにあってgsに無い機能の話だとscスレか本スレが適当かも。私もですねハイ。比較論だと思えばアリでしょうか?
64(2): 2014/08/28(木)02:04 ID:HC5b6.Qw(1) AAS
>>50
スナップ着替えの件、解決しましたか?
if sets.precast[spell.name] then
equip(sets.precast[spell.name])
end
他アビは問題なく動いているけど、遠隔攻撃が動いていません。
.nameで遠隔攻撃を指定しても動かないんですが、どなたか原因わかりますか?
65(2): 2014/08/28(木)12:59 ID:MAPk3EPg(1) AAS
>>64
spell.name に何が入っているのか確認してから、出直しておいで
66(1): 2014/08/28(木)22:01 ID:nxoNWGmI(1) AAS
>>65
spell.nameには'遠隔攻撃'を指定しています。
事前にspell.typeも指定する必要があったりしますか?
67(2): 2014/08/29(金)01:10 ID:0CuswN9U(13/37) AAS
>>66
↓みたいなコード書いて遠隔撃ったら着替えなかったっていってるのかな?
function get_sets()
set_language('japanese')
sets.precast = {}
sets.precast['遠隔攻撃'] = {head="ブロンズキャップ",}
end
function precast(spell)
windower.add_to_chat(123, 'name='..spell.name)
if sets.precast[spell.name] then
省9
68: 2014/08/29(金)11:51 ID:O/ZhRfSE(1) AAS
>>64
解決してません。最近狩人やっていないので…
わたしはspell.english='ranged'でやってたけど
>>67さんのいうとおりタイプでやってるひともいるので
こっちで試してみるといいかもですね。
また時間を見て試してみます。
67氏ありがとうございました。
69(1): 2014/08/29(金)21:12 ID:bxZWF8Kw(1) AAS
spell.name == '飛び道具'で自分のは動いてるな
70: 2014/08/30(土)14:30 ID:4YYamg.s(1) AAS
>>69
結局>>65のような基本的なこと確認してないからダメなんだろうね
>>67でも突っ込まれてるけど
71: 2014/08/31(日)14:39 ID:zKlGjyLk(1/2) AAS
ぐだぐたうるさいよ。
エスパーしてすぐに答えろよ。
使えるとそんなに偉いのか?
72: 2014/08/31(日)19:04 ID:KHWW7mXo(1) AAS
>71 偉いに決まってんだろ。
おまえリアルでも「使えないやつ」って言われてるだろw
73: 2014/08/31(日)21:34 ID:NO9fqX.c(1) AAS
リアルで使えないアホほどドヤ顔で空気を悪くするんだよねえw
幼稚すぎて馬鹿馬鹿しい。
74: 2014/09/01(月)00:16 ID:zKlGjyLk(2/2) AAS
痛いなぁ。
ニートは言うことまで痛いなぁ。
75: 2014/09/01(月)23:56 ID:iDTSLE0M(1) AAS
ぎりぎり夏休みですね
76: 2014/09/09(火)22:37 ID:aSQFdgAA(2/2) AAS
文字化け
はぁ
明日には直るかな
77: 2014/09/10(水)21:44 ID:n0bqyMSc(1/6) AAS
大分前だけど、GearSwapのサンプルに付属で公開してくれてたcounter_action.lua使ってみた。
ソロメリポしながら、オートで嫌な技にVフラできたり、結構便利に使わせてもらってます。
78(4): 2014/09/13(土)22:23 ID:2zmu17BU(1/2) AAS
みんなウェイトをはさみたい時ってどうしてる?
send_commandの中にwaitを挟んでいるんだけど、関数中に入れたいときに困ってるんだわ
今は関数をわざわざ分けてself_commandを使ってff11から呼び出しているんだけど、なんかいいアイデアない?
79(1): 2014/09/14(日)17:56 ID:n0bqyMSc(2/6) AAS
>>78
lua にはその手の機能が無いらしい。
ググった結果、出てきたので自分用メモ
function wait( wait_sec )
local t0 = os.clock()
while os.clock() - t0 <= wait_sec do end
end
80: 2014/09/14(日)19:13 ID:2zmu17BU(2/2) AAS
>>79
やっぱりうまい方法はないんかなぁ・・・
coroutine.sleepも子プロセスの中でしか動かないみたいだし
ちなみにそれやると、FF11自体whileの間止まってたいへんw
# VBのdoeventsに相当するコマンドがあればいいのかな?
81: 2014/09/14(日)20:00 ID:9y7KR/a.(1/5) AAS
確かwaitとlua関数直接コールを続けてチャットラインに投げてたアドオンがどこかにあったんですが、
方法が普通だったかどうかが思い出せない…普通に;区切りで投げて待ちましたっけか。
82: 2014/09/14(日)20:21 ID:9y7KR/a.(2/5) AAS
連投失礼。
それらしいのを見つけました。今の版には入ってないbuffduration(バフ専timers?)でした。
チャットラインは勘違いでした。そういえばコンソールコマンドにもwaitありましたね。それを使っているようです。
書き方古いですが、send_command('wait .1;lua c 自アドオン名 関数名…)みたいな感じですね。今の書き方に変えれば使えると思います。
83: 2014/09/14(日)20:24 ID:9y7KR/a.(3/5) AAS
って今はコレを使ってるって話っすね。連投スレ汚しすいませんでした。 orz
84: 2014/09/14(日)21:17 ID:9y7KR/a.(4/5) AAS
恥のかきついで
無限ループコードでFF11自体が止まってしまう話とcoroutine.sleepが子プロセスの中でしか動かないのが同源だとすれば、
必要最小限だけでも子プロセスに突っ込むしかないのではないでしょうか。
85(2): sage 2014/09/20(土)13:32 ID:fFPUdkA2(1/4) AAS
>>78
関数のために分けてるの?
local command = "ケアル"
send_command(windower.to_shift_jis('wait 1;input /ma '..command..' <me>'))
分けなくてもいけるかと
86(5): 78 2014/09/22(月)22:23 ID:1Txh9fUU(1) AAS
>>85
今読み返したら訳わからん文章だわ
例えばだけど、ケアルしてHPが全開していなければリジェネを使うルーチンを考えると(aftercast使わずにね)
ケアル→キャスト終了までwait→HP=100?→リジェネ
send_commandでケアル送ったあと、次の行のHPの判断までにウェイトを挟めないかなって事なんだけどね
今は
send_command("/ma ケアル <t>;wait 3;gs c HP_handan")
みたいにして関数を分けてるって意味
無駄に行数が増える以外は問題無いんだけどね
87(1): 2014/09/22(月)23:06 ID:n0bqyMSc(3/6) AAS
>>86
一例として挙げた動作だから、他にもやりたいことあってfunction中のwaitなのかもだが
それなら、ケアルしたときのaftercastでHP判断してリジェネ使わせればいいいんじゃね?
aftercastの時点だとまだHPの増減が反映されてないのかな
88(1): 2014/09/23(火)01:26 ID:9y7KR/a.(5/5) AAS
オマエガイウナーですがaftercast使わずにって書いてるやん。
でも使わない理由はあった方が検討はしやすいかもですね。
89: 85 2014/09/23(火)01:35 ID:fFPUdkA2(2/4) AAS
>>86
その方法が一番かな
他の案を絞り出すと、aftercastで、ダミーのスペル(使わない青魔法など)を詠唱させて、precastで、ダミースペルだったらHPを判定させるようにし、延々ループさせるとかかな
負荷キツそうだけど
90: 2014/09/23(火)03:56 ID:n0bqyMSc(4/6) AAS
>>88
aftercastが実行される時点でまだモーション実行中なので、結局どこかでモーションが終わるのを待たないとダメだね
>>87を自分で試してみたら、waitなしだとリジェネが詠唱できなかった
そうすると結局waitしたいってのが復活してしまうので、>>87は解決になってなかった。すまない
ループでwaitするのは、(おそらく)gearswapがFFのパケットを横取りしてるのでクライアントが固まるからNG
FFのメインループが止まってるんじゃないかな〜
結局、間にWindowerのコマンドでのwaitを挟んで実行するしか手が無いってことになると思う
91(1): 2014/09/23(火)08:01 ID:0CuswN9U(14/37) AAS
AA省
92: 78 2014/09/24(水)00:13 ID:Yozmmbbs(1/2) AAS
みんな、ありがとう
やっぱり、いろいろな場面でウェイトを挟みたいのが出てくるんだよね〜
魔法の後もそうだし、獣の汁とか餌とか、ちょこちょこあるんだよね
>> 91
一つの関数でループをかけるのもいいかも
修正の時にあちこち探さないでいいのは楽かも
いずれにしても致命的ってわけでもないんでいろいろいじってみます
93: 2014/09/24(水)22:46 ID:n0bqyMSc(5/6) AAS
/item ヴェルクの箱 <me>が動かなくて変だと思ったら、GearSwapのせいだった
94(1): 2014/09/25(木)09:23 ID:RiYgz55I(1/2) AAS
アビセアで箱空けに鍵使うところで/item 禁断の・・・ やってると
GearSwapが 赤字メッセだしまくるの何とかならんだろうか・・・
95(2): 2014/09/25(木)11:33 ID:ikz5VhqM(1) AAS
今、試せないんだけど、
/target <st>
/item アイテム名 <lastst>
で回避出来ないかねぇ?
96: 2014/09/25(木)19:55 ID:0CuswN9U(15/37) AAS
>>94
helper_functions.luaの447行目でエラーがでてるんだけど、
categoryが数値を期待してるのにnilになってるから落ちてるみたい。
↓みたいに落ちる直前でreturnするようにしたらエラーはでなくなった。特に問題はなさそうにみえるけど
なにか副作用があるかもしれない・・・。
if category == nil then
return
end
>>95
でも回避できるのかな。あとでやってみよう
97: 2014/09/25(木)23:53 ID:0CuswN9U(16/37) AAS
>>95
箱開けはこの方法で回避できるみたいだった
98(2): 2014/09/27(土)02:09 ID:fFPUdkA2(3/4) AAS
>>86
coroutine.schedule(fn, time)
fn function - Function to be scheduled
time number - Integer time in seconds when fn is supposed to be run
Executes fn delayed by time seconds. Returns the scheduled coroutine.
試してないけど多分使える
指定秒遅らせて、fnで指定した動作を実行させるとある
コルーチンっぽいから固まることもなさそうに思える
99(3): 2014/09/27(土)08:24 ID:0CuswN9U(17/37) AAS
>>98
つかえた。coroutineは自分も調べたことはあるんだけど、
こういう使い方はできなんだと思い込んでた。ありがとう
↓ので4秒おきにストーン打つようになるし固まったりしないね。
function get_sets()
set_language('japanese')
end
function _co_f()
windower.add_to_chat(123,'function() start')
while flag do
省20
100: 2014/09/27(土)16:29 ID:fFPUdkA2(4/4) AAS
キャスト時間で判定させてる箇所がおかしな動作をするな?と思っていたら、 こいつキャスト時間を4倍の値で取得してやがった。
adonのリソースの中身が4倍値になってるから当然なんだが、何故4倍値にする必要があるんだ?
101: 2014/09/27(土)19:53 ID:n0bqyMSc(6/6) AAS
resource/spells.xml 見ると0.25sec刻みになってるぽいから、datにはその4倍が整数で入ってるのかもしれんね。
1/4して格納しといてよって思うのは分かるけども
102: 86 2014/10/01(水)20:31 ID:Yozmmbbs(2/2) AAS
>>98
ありがトン
coroutineって使えるのね・・・。
自分もこうゆう使い方はできないと信じきってた。
家に帰ったら早速試してみるわ
103: 2014/10/12(日)00:20 ID:0CuswN9U(18/37) AAS
coroutine使ってインカージョンの箱開けするスクリプトを書いてみた
アップローダーにあげたんで、よかったら使ってみて
104: 2014/10/13(月)10:22 ID:AP97C.Ug(1/4) AAS
>>99
さっそくスキル上げで使わせていただきます。ありがとうございます。
>>91
ケアル垢があると便利そうですね。
105(1): 2014/10/13(月)14:50 ID:AP97C.Ug(2/4) AAS
>>99さんのプログラムを複数の魔法を交互に詠唱するようにしようと思ったのですが変なエラーばかり出てまともにロードできません。
基礎から勉強したいのですがLUAのプログラムって何言語で書かれているか教えていただけないでしょうか?
106: 2014/10/13(月)14:55 ID:fJS39leo(1) AAS
lua
107: 2014/10/13(月)14:55 ID:AP97C.Ug(3/4) AAS
自己レスです。Luaですね。すみません。
108(1): 2014/10/13(月)19:15 ID:0CuswN9U(19/37) AAS
>>105
一応動くのは確認して貼り付けたので、全角スペースを変換してないか、漢字コードがUTF-8に
なってないせいかなあ。もうちょっと詳しく教えてほしいんだけで下のどちらかの現象かな?
1.ロードできないっていうのがwindowerのコンソール(コマンド実行したら一瞬赤字で表示される感じのやつ)
にunexpected symbol near…みたいなのがでてる
2.実行すると文字化けしたメッセージがFF11のログにでて動かない
1ならなら全角スペースをタブまたはスペースに変換すれば解決するはず
2なら文字コードの指定が間違ってると思うから、文字コードをUTF-8に指定して保存してみて
109: 2014/10/13(月)21:28 ID:AP97C.Ug(4/4) AAS
>>108
自前で追加したif文の条件のところでif hoge=0 thenって書いてたのが原因でした。
正しくはif (hoge==0) thenのようで;;
プログラムも素人なのでウェブで勉強中ですw
レスありがとうございました。
110: 2014/11/04(火)18:30 ID:6NLBB3Kw(3/3) AAS
GearswapでCUT、ACC、MAでコマンド着替えはできるようにしたんですけど
一度CUTにしたら戦闘終わるまでアビ、ws着替え→CUT装備に戻すようにしたいんだよね
ローカル変数みたいなのに着替えモードセットしてずっとその装備にするって可能かしら?
111: 2014/11/04(火)18:48 ID:UOLd3Nkk(1/2) AAS
ざっくりだけどこんな感じでどうか。
初期装備でACC装備でコマンドで選択
構え終了するとACC装備に戻る
function get_sets()
sets.ACC ={装備}
sets.CUT ={装備}
sets.ATK = sets.ACC
end
function aftercast(spell)
equip(sets.ATK)
省13
112: 2014/11/04(火)22:22 ID:RiYgz55I(2/2) AAS
戦闘中のSets内容をコマンド入力時に書き換えちゃう方法ですね
今日はログインできないので帰ってから確認します。
ありがとうございました。
113(1): 2014/11/20(木)13:35 ID:xgjyqRVE(1/3) AAS
モンクでリキャスト毎にインピタス(効果時間3分リキャスト5分)を自動的に使うようにしたいのですが
よい方法はないでしょうか?
本家のリファレンスも見てみたのですがアビリティの正否を判断するような機能はないようで。
precastのところに入れておけばできると思いますがログが酷くなるのでできればうまくやりたいと思っています。
お時間ありましたお力添えいただけると嬉しいです。
よろしくお願いします。
114(1): 2014/11/20(木)15:17 ID:ni79TrWU(1) AAS
>>113
手抜きで良ければ、こんな方法はどうだろう
Windowerマクロで、120秒のウェイト後にインピを使うのを作っておく
autoexec のlosebuffでそのマクロを実行する
gearswapのchangestatusで上記のイベントの有効無効を切り替える(戦闘中のみ有効にしておく)
武器構えたらインピを使うようにしておけば、ほぼ自動化出来るかも
115: 2014/11/20(木)15:51 ID:xgjyqRVE(2/3) AAS
>>114
ありがとうございます。
早速参考にさせていただきまする。
116(2): 2014/11/26(水)17:38 ID:u2Mpbr0Y(1) AAS
日本語で使えなくなってない?
117(1): 2014/11/26(水)19:00 ID:aRSquKg6(1/2) AAS
>>116
version 0.893にもどしてください。issue投げてあります
118(2): 2014/11/26(水)19:12 ID:aRSquKg6(2/2) AAS
日本語環境で正常に動くようにgithubで協議中。
Mote-libs使うとスーパー便利なので自分でステータス判定したりコマンド切ったりしない方がいいけど、各種変数や引数が日本語だったり英語だったりしてややこしいのでその辺も調整してまとめます。
日本語でコレが動かないってのあったら言ってください。v0.894はそもそも動かんので除外で
119: 2014/11/26(水)19:45 ID:xgjyqRVE(3/3) AAS
>>118
カッコエェ!そんなことをやってる方がいるとは。
こういう人のおかげで日本語環境が発展しているんだなと実感。
感謝感謝であります!
120: 2014/11/26(水)19:50 ID:0CuswN9U(20/37) AAS
>>116
2chでもちょっと話題になってたけどspell.nameがシフトJISになってる。
どうもgithubのissue#326の修正ミスっぽいね。
それにaftercastが対象が遠すぎたり移動で魔法発動しなかったときだけしか
実行されなくなってるっぽい。敵倒した時だけaftercastで着替えてたから変だな
とはおもってたんだけど。
自分は一つ前のバージョンのバックアップがあったからそっちにもどした。
121(1): 2014/11/26(水)20:21 ID:0CuswN9U(21/37) AAS
>>118
Mote-libsって日本語環境でも動くんだね。知らなかった。
自分はもうかなり作りこんじゃったから、ちょっと乗り換えるのはおっくうだなぁ。
でも、がんばってください。
自分でつかってて日本語で動かないってのはaddonコマンドのequipくらいかな
こっちは2番目のパラメータをシフトJISからUTF-8に変換したら動いたから
それでごまかしてるけど。
122(1): 2014/11/27(木)00:35 ID:0CuswN9U(22/37) AAS
なんかgithubの#329でmote-libsのためにset_language('japanese')したときも
英語環境と同じ値を返すようにしようって議論をしてるようにみえるんだが・・・。
変えられると今使ってるスクリプトが全部ご破算になっちゃうんでかなり困るな。
123: 2014/11/27(木)10:37 ID:gDSFn/IA(1/2) AAS
>>121
報告済みです。昔SJISのダメ文字がAPIで変換できなかった記憶があるからそれをなんとかできないか試したいけど時間がない
>>122
元々の提案は、スペル名、buff、属性とかが日本語英語入り乱れてたから統一してくれってことだったんだけど、gs equip 日本語がきかないから英語がいいって言った。
そこが治るなら全部日本語でもいいとは言ったけど、名前はresources から引いてたりspellMap は英語ハードコードだったりで技術的にどちらに統一できるかは作者次第かな。
どちらにしても英語ドキュメントを隅々まで読んでも結局ソース読まないといけないし、現状変数の言語とかは試すしかないから、なんとかして誰でも使えるようにしたい。
その過程で多少、セット名とかの翻訳作業は必要になるかもだけど、機械的にできるはずなので許してほしいです。
124: 2014/11/27(木)10:57 ID:gDSFn/IA(2/2) AAS
あとライブラリのためってのは正しくないな。Gearswap 自体でやろうとしてることは各種IDを取得する手段を作ろうって話。
環境によって一つしかない変数の値が変わるとライブラリ作れなくなっちゃうからね
125(1): 2014/11/27(木)19:43 ID:5bw9SKFI(1) AAS
普通にmote-libsとやらが使いたかったらset_language('english')にすればいいのでは…?
126: 2014/11/27(木)19:56 ID:rd6UAeIw(1/2) AAS
>>125
日本語クライアントでそれはできない仕様。
/ma Cure <me> が動くFFがあるならいいけど
127: 2014/11/27(木)20:02 ID:rd6UAeIw(2/2) AAS
あと日本語クライアントでもMote-libsは修正なしで基本的に動く。
ただしわかりくいのとutilityの一部関数がダメなだけ
128: 2014/11/27(木)21:03 ID:ZGsulBBA(1/2) AAS
>>117
> >>116
> version 0.893にもどしてください。issue投げてあります
修正を期待して 待っていたのですが、aftercastが動かない問題を
含む様々な不具合が出ていて今までのscriptが使い物にならない。
どなたか バックアップあればver0.893をアップしてもらえないでしょうか。
上下前次1-新書関写板覧索設栞歴
あと 872 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.495s*