2008年02月28日

RacerAI version 1.2

変更履歴
・自動安息を削除しました。
・スキル使用SPチェックなどを簡略化しました。

正式版ダウンロード:
RacerAI version 1.2
解説書:
AI詳細/RacerAI - AI機能比較表

自動安息を削除し他の処理も見直した結果、ソースコードは262行から226行と短くなりました。
緊急回避の後は手動で安息を使ってください。

自動安息が使えた最終バージョンは1.1となります。
これにより、ライブラリでプレイヤースキルを使う部分は全ての各種AI最新版から無くなりました。

※ケミスキル「安息」がホムAIから使えなくなりました。
以前のバージョンを試したい方はRacerAI version 1.0か。RacerAI version 1.1をお使いください。
posted by silica at 21:04| Comment(0) | TrackBack(0) | RacerAI | このブログの読者になる | 更新情報をチェックする

2007年07月30日

QM鎧考察そのに。

ダメージ受けるとQMを出す方は実は鎧ではなく「肩」装備だと知りました;

実際のレーサーの話によると、速度減少受けてもASPD189維持できる時はあえてQM肩装備して、攻撃受けると巻き込むようにしている人もいるそうです。
ホムレーサーの利点は、ホムがQMの範囲外に移動可能なことなので
ハリネズミのように自衛手段として持つといいかもしれません。
シーズモードでホムにQMの効果が掛かるかはまだ確認してませんが。

ホムンクルスの攻撃射程は、実は2あるようです。
これを利用すると…

★:エンペリウム
◆:ホムンクルス
■:プレイヤー
◇:QM鎧のQM範囲

◆□□□□
□◇◇◇◇
□◇★◇◇
□◇◇■◇
□◇◇◇◇

さらにプレイヤーとホムの位置を対称形にすると。

◆□◆□□
□◇◇◇◇
◆◇★■◇
□◇■■◇
□◇◇◇◇

他の方向はこれを90の整数倍回転させるだけですね。
この位置からでもホムはエンペを攻撃出来るのです。

レーサーAIの基本はすでに完成しているので、あとはQM肩を考慮した自動移動を追加する程度です。
といっても結構処理する内容が多いため、自動移動を実装するためには100~200行さらに追加しないといけない予感。
posted by silica at 22:29| Comment(0) | TrackBack(0) | RacerAI | このブログの読者になる | 更新情報をチェックする

2007年07月23日

ホムレーサー考察。

レーサーAIでのブレイクを軽くまとめました。

青いリボンで結びます - ソロケミストがレースの常識を覆したとき…より:

World: Lydia
Date: 2007/07/22

[AIてすと中by青リボン] (8)
20:04:28 - 20:08:27 (0:03:59) Britoniah Guild 4
20:12:03 - 20:20:35 (0:08:32) Luina Guild 4
20:19:01 - 20:21:06 (0:02:05) Britoniah Guild 4
20:45:29 - 20:47:46 (0:02:17) Britoniah Guild 4
21:12:42 - 21:14:48 (0:02:06) Luina Guild 2
21:23:42 - 21:25:06 (0:01:24) Luina Guild 2
21:28:13 - 21:29:56 (0:01:43) Luina Guild 2
21:58:54 - 22:00:00 (0:01:06) Valkyrie Realms 5
※()内は防衛時間

ソロレーサーの割には、防衛時間が少し長いですね。
最短ですら1分以上。平均2分程度、つまりブレイクしてから1分は
誰も来ていないことになります。
レポートを見るとこの時大体は競合相手がいない、つまりアナウンスが流れて初めてレーサーが来る、という状態のようです。
気づいて砦前に来るまでに約1分あると。

続きを読む
posted by silica at 19:53| Comment(5) | TrackBack(0) | RacerAI | このブログの読者になる | 更新情報をチェックする

RacerAI version 1.0

今回より、正式版となります。

変更履歴
・緊急回避のLvを設定できるようにしました。
・解説書へのリンクを追加しました。

正式版ダウンロード:
RacerAI version 1.0
解説書:
AI詳細/RacerAI - AI機能比較表
使用レポート:
青いリボンで結びます - ソロケミストがレースの常識を覆したとき…
続きを読む
posted by silica at 19:15| Comment(1) | TrackBack(0) | RacerAI | このブログの読者になる | 更新情報をチェックする

2007年07月21日

RacerAI version 0.8

変更履歴
・モーションキャンセルとゼロ移動キャンセルの同時使用時、モーションキャンセルを優先させるようになります。。
・モーションキャンセル使用SPチェックを修正しました。
・敵死亡時自動安息のチェックを修正しました。
・ソースコードの変数などを見直しました。

ダウンロード:RacerAI version 0.8

多重攻撃でモーションキャンセルを使うと高確率でラグ発生します。
攻城戦では重い鯖では使わない方がいいと思います。

・多重攻撃
最初は5周期に1回へと、抑制するようにしました。
Alt+Tを押すことで攻撃回数が上がります。
ずっと押すと、攻撃命令が処理されずにたまるため、
ラグに応じて、たとえば1秒おきに押したり押さなかったりしてみましょう。

・モーションキャンセル
1. SPが一定以下ならゼロ移動キャンセルでSP回復
2. ゼロ移動キャンセルと同時併用の場合、モーションキャンセルを優先

・ゼロ移動キャンセル
モーションキャンセルと比べて移動命令送信が半分のため、ラグに比較的強い。

現在確認している点
モーションキャンセルを有効にしていると、敵死亡を確認できずに自動安息してくれない。
→多分移動パケで処理がたまってるから死亡確認が間に合わない。
設定を変えて多重攻撃なしのモーションキャンセルにすると、敵死亡をちゃんと認識してくれました。
posted by silica at 12:21| Comment(0) | TrackBack(0) | RacerAI | このブログの読者になる | 更新情報をチェックする

2007年07月17日

RacerAI version 0.7

変更履歴
・自動安息出来ないバグを修正しました。
・モーションキャンセルをサポートしました。(初回限定AIより)
・ゼロ移動キャンセルをサポートしました。(初回限定AIより)
・多重攻撃をサポートしました。

ダウンロード:RacerAI version 0.7

多重攻撃は、何回でも出来るように設計してありますが、
パケット詰まりによるラグを防ぐために最大は3までを目安に。
モーションキャンセルと、ゼロ移動キャンセルの違いと意味がようやくわかりました。
これが安定したら、工体AI私的修正版に反映させることができます。

ヒントを下さった初回限定様どうもありがとうございました。
posted by silica at 20:33| Comment(0) | TrackBack(0) | RacerAI | このブログの読者になる | 更新情報をチェックする

2007年07月16日

RacerAI version 0.6

変更履歴
・Alt+Tで攻撃速度加速(通常状態へ戻す)
・攻撃にモーションキャンセルオプションを追加(初回限定AIより)
・ターゲットが死亡したらすぐ安息する

ダウンロード:RacerAI version 0.6

※Alt+Tを押し続けている間、攻撃速度が通常に戻ります。

Alt+Tに攻撃速度を通常へ、Alt+Shift+Tにゼロ移動キャンセルを
割り当てようとしました。
しかし、アルケミテンプレの以下の二つを見て出来ない理由がわかりました。
GetMsg
GetResMsg

今後の予定
・モーションキャンセルの動作が適切か?
・攻撃モードを付ける。
ラグ対策・通常・モーションキャンセルの3種類を予定。

posted by silica at 19:16| Comment(0) | TrackBack(0) | RacerAI | このブログの読者になる | 更新情報をチェックする

2007年02月24日

RacerAI version 0.4

変更履歴
・SPが切れる前にメンタルチェンジで自動回復
・TraceAI全廃止
・mathライブラリ全廃止
・エンペ発見判定範囲を円から方形に変更

ダウンロード:RacerAI version 0.4

リーフスキルはテストできないためテストに1日くらいかかります。
(これはリーフでの動作をまだ確認してないので仮のものです。)

特徴:
・AIの機能と仕様を確認しつつ最初から書き上げています。
(標準AIの設計は全てゴミ箱に投げ捨てました)
・スキルを使う関数自身がHP/SPチェック機能を持っています。(ver0.2から)
・敵のタイプIDを複数指定、優先度の設定が出来ます。
・「目標の存在」や「目標との距離」の状態で行動が変わります。
(標準AIの「遷移状態」に相当するものです)
・Alt+Tをデバッグ情報出力に割り当てています。他の行動への発動用に変更可能です。

簡易機能AIを作る時の参考にもどうぞ。

Special Thanks: ちずきち様(青いリボンで結びます
posted by silica at 13:14| Comment(0) | TrackBack(0) | RacerAI | このブログの読者になる | 更新情報をチェックする

2007年02月21日

Luaでおぶじぇくと思考。

RacerAIは、スキルを使用する関数をオブジェクト(=抽象的な実体)と
見なして記述しています。

このスキル関数は、外から必要最低限の情報を与えるだけでokです。
それ以外のことは関数が全て自分で考えてチェックしてくれます。
この場合SPチェック・対象チェックなどは関数が「暗黙の了解」として処理してくれると言うことです。

なので、スキル名と対象相手だけあればスキルを使ってくれるようになります。
他に追加するのは、「スキルレベル」でこれも何も言わなければ最大レベルを使ってほしいのだと暗黙の了解として理解します。
勉強用メモ。
posted by silica at 23:21| Comment(0) | TrackBack(0) | RacerAI | このブログの読者になる | 更新情報をチェックする

2007年01月31日

RacerAI version 0.3

変更履歴
・タイプIDを複数指定、優先度の設定が出来るようにしました。
・Alt+Tをデバッグ情報出力に割り当てました。

ダウンロード:RacerAI version 0.3

特徴:
・AIの機能と仕様を確認しつつ最初から書き上げています。
(標準AIの設計は全てゴミ箱に投げ捨てました)
・スキルを使う関数自身がHP/SPチェック機能を持っています。(ver0.2から)
・「目標の存在」や「目標との距離」の状態で行動が変わります。
(標準AIの「遷移状態」に相当するものです)

簡易機能AIを作る時の参考にもどうぞ。

Special Thanks: ちずきち様(青いリボンで結びます
posted by silica at 22:40| Comment(0) | TrackBack(0) | RacerAI | このブログの読者になる | 更新情報をチェックする

2007年01月27日

RacerAI version 0.2

変更履歴
・AI.lua:単体で動きます。(Const.lua, Util.luaがなくても大丈夫です。)
・行動割り込み:ホムに対する他の命令を割り込み可能にしました。
・ステータスチェック:スキルを使う前にホムと主人のHP/SPをチェックします。
・ラグ対策:移動・攻撃の時、AI()関数の処理を指定回数スキップします。
・移動:ターゲットと同じ座標に移動します。
・攻撃:ターゲットに対して、隣接だけでなく1セル離れていても攻撃可能になりました。

ダウンロード:RacerAI version 0.2

Special Thanks: ちずきち様(青いリボンで結びます - 検証レースですよ

ID識別ライブラリ version 0.7
・NPC/ObjectのIDリストを追加しました。

ダウンロード:discriminator.lua version0.7
解説:AI資料/ID識別ライブラリ - AI機能比較表
posted by silica at 17:41| Comment(0) | TrackBack(0) | RacerAI | このブログの読者になる | 更新情報をチェックする

2007年01月22日

れーさーAIの検証。

とある方にレーサーAIを試してもらったのですが、
AIの一周期一回攻撃でも4〜5秒止まるようです。

二〜五周期に一回だけ攻撃するようにしたほうがいいのでしょうか。
そもそも、ラグや過負荷による止まりがGvG時間以外で再現できないと
対処方法を考えることすら難しく感じました。
GvAIを参考にしてみるものの、結局はラグに合わせて秒当りの攻撃回数を
調整しなければならないのでしょうか…

ラグっているという状態をAIでどのように検知しましょうね…。
単に周期を見て、間隔が300-500msを超えたら次の攻撃回数を減らすという
調整方法がいいのかなー?
posted by silica at 20:55| Comment(1) | TrackBack(0) | RacerAI | このブログの読者になる | 更新情報をチェックする

2007年01月21日

RacerAI version 0.1

RacerAIをダウンロードしてAI.luaにりねーむするだけです。

・リーフ専用。
・エンペリウムなどのターゲットが固定。
・ターゲットが画面内にいなければ自動安息します。
・安息する前にリーフがケミやクリエに緊急回避を掛けてくれます。
・ターゲットから5セル以内であればメンタルチェンジして攻撃します。
・ターゲットTypeIDを変えればそれをターゲットにします。
・複数のターゲットIDの場合、どれを先に狙うか分かりません。
(スドリMAPの赤きのこ群生で試した時は、MAP内のきのこの選択順番が決まってる模様。
どうやら、きのこは場所によってIDは決まってるらしい?)

ホムがリーフの人に実際に試してもらう予定です。
posted by silica at 18:45| Comment(0) | TrackBack(0) | RacerAI | このブログの読者になる | 更新情報をチェックする

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。


×

この広告は1年以上新しい記事の投稿がないブログに表示されております。