忍者ブログ
  • 2024.10«
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • » 2024.12
[PR]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

【2024/11/22 17:15 】 |
年末から年始にかけては
貧乏暇なしとはよくいったもので
ナニする暇もナッシング

たまさか時間が空いても
初詣やら歳末正月バーゲンやらであぼん

で、やっと一息ついて
なにげにブクマの整理がてらむか~し作って放置したブログ見たら
なんかアクセスが400やら800やらあってびびったたじろいだ

更新も無いのになんで?
と思ったらrokuitiroとか和尚のアレで検索に引っかかるのね

正直それらのブログはQMAやら他の趣味も晒してたので
内容が散漫になるのとちまちま更新したとこでROMしかないのに絶望したwので
半閉鎖という形にしたわけです

というわけで上記2つのブログは改めて現在アクセスできないようにしました
まぁキャッシュとか残ってるかもだけど
別に大した内容でもないので未見の人は気にしなくとも結構です
コメントもついてなかったしw
あ、唯一カンフーメンに触れたとこでコメがあったので
亀レスですがここで

カンフーメンがとても気に入ってていつも使わせてもらってます
watchモードでも他のキャラとよく戦わせてます

ところで、カンフーマン(に限らず何のキャラでも)をカンフーメンのように多人数かつ一人だけ操作できるようなキャラを公開するためでなく個人的な趣味として作りたいのですが、参考になりそうな解説サイトはありませんでしょうか?


カンフーメンに関してはイロイロなところからツギハギで組んだのが正直なところ
サイトで解説しているところはちょっと当方もわかりませんが
参考にしたキャラは
kengang
と某スレで実験的にうpられた某カンフーマン

前者はヘルパーの独自AIで、相手に近づいて(歩きor遠ければダッシュ)攻撃(ランダム)

後者は試合開始時、所定の位置に分身を配置
なお、この某カンフーマンというのは本来、多人数キャラで一番プレイヤーに近いキャラに常に振り向く仕組みを考察するために実験的に作られたキャラで分身が勝手に動いたりはできず、一番近い分身を操作するという実験的キャラで、今は入手できません

当方がしたのはそれらを合成し、試合開始時にはるか上方にヘルパーを生み出し、演出的効果を加味したぐらいで
あとはヘルパーの体色調整、ダメージくらうとダメージステートへ飛ぶが退場はしないw、
といった調整あたり?
あとヘルパーのダメージを少なくしたり、体力低下で増殖(オプション)とかでちょこちょこ手を入れていったという感じでしょうか?

そんな感じなので、ヘルパーが時折「死んで」起き上がってこない仕組みが自分でもよくわかってなかったりw(gethitvarのダメージ量?)

とまれ、原理をざっと解説すると
1・試合開始時にヘルパーを複数生み出し
2・それらはメインプレイヤーキャラと共通の画像、アニメで(いわば分身)
3・独自の行動、攻撃ステートを持ち(ヘルパー共通)
攻撃を食らうとダメージに応じて独自のダメージステートへ飛び(ヘルパー共通)
4・メインプレイヤーキャラが死ぬとヘルパーも死ぬ

1についてはkfm.cnsの下の方
;@@@@~
以下が大体そう

2についてはヘルパーのステートkfmen.cns、kfmencommon1.cnsにおいてカンフーマンと共通のanimを使用、判定、フレームなどそっくり同じ、要するにカンフーマンの殆どコピペ

3についてはkfmen.cnsにて攻撃、kfmencommon1.cnsにて基本行動、および敵との距離をトリガーにした行動選択
ダメージ食らいについてはkfm.cnsの下方、;@@@@~以下のヘルパー記述部分のなかの
[State 6000, 4]
type = HitOverride
trigger1 = 1
attr = SCA, AA, AT, AP
stateno = 105000
time = -1
forceair = 1

4についてはkfmencommon1.cnsの上の方
[State 0, 4] ;Are you dead?
type = ChangeState
;trigger1 =Parent,alive != 1
trigger1 =Parent,life <= 0
value = 105050

[State 0, 4] ;Are you lose?
type = ChangeState
trigger1 =Parent,stateno = 170
value = 170

などtriggerにParent(=ヘルパーを生み出した親キャラ=メインキャラ)の状態に応じた記述がある部分

といったところが参考になるかと

各ステートの記述の意味などを細かく解説するには到底時間も文字量もアレなので

ステートコントローラー内容
http://homotaro.s44.xrea.com/sctrlref.htm

トリガー内容
http://homotaro.s44.xrea.com/triggerref.htm
などを参考にしてみてください


各ヘルパーの行動は一律、メインカンフーマンのstatenoに100000を足しダメージ調整をした以外は殆どカンフーマンのコピペなので(だので無駄な記述も多いw)
手間的にはそれほどのものでもなかったり
ゆえに手慰みというw
PR
【2008/01/08 21:42 】 | mugen | トラックバック()
虎カムバック
トラックバックURL

前ページ | ホーム | 次ページ

忍者ブログ [PR]