UnityでMMO作りたいけどどうする!?(^^ [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
2017/07/16(日) 15:50:08.98ID:wWznjvX2
サーバー代とかはあとで考えまひょう(^^
今はちまちま作りまふ(^^
2017/07/16(日) 15:53:05.66ID:wWznjvX2
僕にできるもの(^^
3Dモデリング
ちょっとのC#
Unityを少々
Unity3Dでは何の役にも立たないドット絵技術
イラスト
さてさてここからどうしまひょうか?(^^
今のところNavmeshAgentでマウスクリックで移動と右クリックで画面回転までできてまふ(^^
僕は本気で作りたいので(^^
ボッキング!(^^
2017/07/16(日) 16:26:51.94ID:0nB2ZewC
まず、具体的にどんなシステムと規模感のものを作りたいのか、簡潔に書きたまえ
くだらん設定だのストーリーだの書いたら粗ちんへし折る
2017/07/16(日) 17:25:59.06ID:e7vF+DU4
アセットを買えばいいと思いますよ
5名無し@キムチ
垢版 |
2017/07/16(日) 18:15:22.49ID:nlNc/6v0
MMOって何ですか?
それはすでにあるものですか、それとも貴方が初めて考案してものですか?
それならわかりますが、すでにあるものをつくりたいというのならば、不可解ですね。
2017/07/16(日) 18:52:24.01ID:wWznjvX2
作りたいものはもう配信終了したエターナルカオスというゲームに似せたものでふ(^^
初期も初期のMMOなのでひて(^^
これなら僕にも作れるんじゃないかと思いまひた(^^
と言ってもフィールドのモデリングとかは一人だととんでもない作業になりそうでふが(^^
あと思い出深いので再現してみたい所が多くありまふ(^^
2017/07/16(日) 19:26:12.96ID:0nB2ZewC
既存mmoの焼き直しとか
挫折一直線の超モチベ下がりやすいパターンだな笑
2017/07/16(日) 19:28:22.25ID:wWznjvX2
何年も前からずっと作ってみたかった夢なんでふ(^^
モチベは下がりまふぇんよ(^^
ボッキング!(^^
2017/07/16(日) 20:25:31.03ID:Zfy7kJD2
迷子にならない奴は人に道を聞かなくても勝手に到達する
その段階で終わってんだよ
2017/07/16(日) 20:29:43.03ID:uDcFP9Rx
何でまだ完成してないのか理解出来ん
2017/07/16(日) 20:50:41.10ID:GDPNdJor
エターナルファンタジーX
〜終わらない物語が、今始まらなかったけどどうする?〜
2017/07/16(日) 22:22:23.37ID:p++G5eqZ
ではとりあえずやるべき事リスト書き出してみれ
2017/07/16(日) 22:49:39.53ID:wWznjvX2
アイテムを拾う
敵を倒してアイテムを落とす
装備
装備によって見た目が変わる
経験値でレベ上げ
アイテム消費
HPMPなどなど・・・
とかやりたいことは山積みでふ(^^
2017/07/17(月) 01:31:42.20ID:nHqJZ8Q9
乞食が正体現し始めたな
2017/07/17(月) 01:46:43.51ID:9YERIW4A
元々現してる正体に今更気づくって遅すぎない貝?(^^
2017/07/17(月) 04:37:33.30ID:+OnxJd6v
アイテム、装備周りはインベントリの処理に骨が折れるので
バトル周りを実装する

まずは妄想上の敵への攻撃を実装したまえ
システムがさっぱりわからんが
攻撃ボタン押したら攻撃モーション実行
みたいなことをするだけでよい
2017/07/17(月) 04:55:25.06ID:9YERIW4A
ありがとうございまんこ(^^
Unityというよりプログラミングは初心者なものでよくわかりまふぇんが(^^
クリックで敵に接近して隣接した判定を得るにはどうすれば?(^^
攻撃そのものは敵の体力変数が0になるまで攻撃アニメーションと変数削りを繰り返すだけってわかるのでふが(^^
2017/07/17(月) 05:40:01.20ID:+OnxJd6v
まず隣接してるものとして実装したまえ
hp周りはまだてをつけなくてよい

隣接は距離が一定以内かどうか調べるだけだがそれもあとでよい
2017/07/17(月) 05:47:10.98ID:9YERIW4A
出来まひた(^^
お次はどうすれば?(^^
2017/07/17(月) 07:00:28.46ID:+OnxJd6v
仮の敵としてカカシ配置しれ

カカシのtagをenemyにして
クリックしたポイントのオブジェクトのタグがenemyなら
targetにそのオブジェクトを設定
距離が一定以下になったらagent.ResetPathで移動をとめる
2017/07/17(月) 07:01:45.00ID:+OnxJd6v
クリックした場所に敵がいるなら
その敵をGameObject targetとして保管しておいて
近くに移動したら止まる

を実装する
2017/07/17(月) 07:02:43.38ID:+OnxJd6v
とりあえず距離の調べ方

http://blog.livedoor.jp/bribser_dev/archives/4230746.html
2017/07/17(月) 07:06:18.88ID:+OnxJd6v
GameObject targetは敵でないものをクリックしたらぬるっときなさい

そこまでできたら
targetがぬるでなく、距離が一定以内ならさっき実装した攻撃モーションを延々実施
まで実装
2017/07/17(月) 07:09:56.27ID:+OnxJd6v
あとtargetが設定されたときは
debug.log("ボッキング!!!(^^");
て書いときなさい
気分の問題
これ大事
2017/07/17(月) 07:46:26.91ID:+OnxJd6v
さらにそこまでできたら
enemyにhpとダメージを受けてhp減らすメソッド、
playerに攻撃して与ダメージ算出するメソッド用意て


攻撃発生したら

target.damage( this.attack() );

みたいに使うんだぞ

んでカカシのhpが0になったらragdollだか、倒されモーションだかして
tagをenemyから除外すとけ
それから
その場に四角でいいから謎のアイテムポップさせてモンスターは適当にけす
アイテムクリックしたらアイテム消す

ここまでやったらだいたい完成だろ
ボッキング(^^ !!
26名無し@キムチ
垢版 |
2017/07/17(月) 09:59:28.42ID:xg7soj0w
ほう、きみたちはゲームをつくっているのか?
だったらゲームの作り方の教科書を読んで、その通りにつくりなさい。
どうせオリジナリティなんてないんだから、そのほうがいい!!
2017/07/17(月) 10:02:55.31ID:f4888I36
うっせえおまえはヒザごんごんでもアップデートしてろ!!
ボッキング!!(^^
2017/07/17(月) 15:55:14.35ID:9YERIW4A
ごめんなふぁい(^^
寝てまひた(^^
色々アドバイスありがとうございまふ(^^
2017/07/17(月) 19:35:15.11ID:TRWJWifB
まだできんのか
よくわからんことがあるなら正直に言いたまえ
横柄な態度で補足しちやるよってに
2017/07/17(月) 20:02:04.30ID:9YERIW4A
ちょっと待ってくらふぁい(^^
情報が多すぎてちょっと理解が追い付かないのでひとつづつやっていきまふ(^^
2017/07/17(月) 20:05:16.76ID:9YERIW4A
クリックしたポイントのオブジェクトタグを取得する方法に手こずってるのでしばしおまちを(^^
ボッキング!(^^
2017/07/17(月) 20:21:50.58ID:9YERIW4A
タグ取得できるようになりまひた(^^
2017/07/17(月) 20:26:23.78ID:TRWJWifB
ちっと整理したる、たぐokか、一番むずいのタグのしゅとくだから
あと10秒ぐらいで全部作れや

@仮の敵を配置する、これは動かないので以降かかしくんと呼ぶ、四角でもなんでもよい
Aかかしくんに敵をあらわすタグenemyをつける
Bクリックされたのがかかしくんであるかどうか、phisics.raycastのパラメータでタグを 調べる
CついでにこのgameObject、つまりかかしくんをtargetという変数を用意して保存する
Dクリックしたのがenemyでないならtargetはnullをいれておく
E移動しつつtargetとの距離を調べ、一定距離になったらagent.Resetpathで停止させる

これで接敵っぽいことはできる
2017/07/17(月) 20:33:36.19ID:TRWJWifB
ボッキング(^^ てちゃんとログだしとけ、全然意味ないけど

こっから攻撃
F接敵しているなら攻撃アニメをばしばし再生する
Gかかしくんにhpと、ダメージを受けたときによばれるメソッドを用意する

ちょっとここで訂正とお詫びがございます
>>25

>攻撃発生したら

>target.damage( this.attack() );

>みたいに使うんだぞ

とか書いてしまいましたが、これは誤りです。おまえのせいです。

正しくは、

Hボッキングに攻撃するメソッドを用意する、このメソッドはtargetのダメージメソッドを呼ぶ

です。おまえのせいで間違えました。ふざけんな
2017/07/17(月) 20:34:44.52ID:9YERIW4A
よくわかりまふぇんが(^^
Cのオブジェクトを保存するのはこうでいいでふか?(^^
string target = hit.collider.gameObject;
2017/07/17(月) 20:35:11.84ID:TRWJWifB
あれ、あってるか、よくわかんなくなっちゃてへぺろ

なんかうまいことやってくれw
2017/07/17(月) 20:36:14.20ID:TRWJWifB
ちげええ

なんでゲームオブジェクトだってわかってんのにstringにいれてんだ
ひっこぬくぞ
2017/07/17(月) 20:41:13.16ID:9YERIW4A
C#は素人なので難しいでふ(^^
もうちょっとググって調べてみまふね(^^
グーグル先生は偉大でふ(^^
ボッキング!(^^
2017/07/17(月) 20:47:18.01ID:TRWJWifB
ぐぐってなんぼがわかっただけでも大したもんだよ

続き

Ihp削って、0以下になったらenemyタグは消す、というかデフォのタグで上書きしとく

11の丸バージョンがねぇじゃんけ…
11:倒されたかかしくんを消す処理、めんどかったらとりあえずdestroyとかでもいい
ただし、これは本人に判断させる、ボッキングが判断したらダメ

以降は作りたいゲームの仕様がわからんのでとりあえずその場にアイテム出す処理
この先はやらなくてもいい

ちなみにかかしくんのdestroyの前にやっとかんと座標まわりがめんどいことになる

12:同じ場所にアイテムポップさせる
13:アイテムタグつけといてこれがクリックされたら消す処理(アイテムげっとした風)

以上、ゲーム完成、スレ削除依頼しとくわ、単発スレたててんじゃねーぞこら
2017/07/17(月) 20:58:27.26ID:TRWJWifB
11を補足

かかしくんのダメージメソッドの中で生死判定、つまりhpまだ残ってるかしらを調べる
死亡処理(destroyとか死亡アニメ再生とかアイテムポップとかタグ消しとかまぁ死亡時に必要なこと、あとから増えたりする)も
メソッドにしてまとめておく

0以下になってたらそのメソッドを、ああC#って関数っていうんだっけ?
まぁその死亡関数を呼ぶという形式にしておく
本人の判断と責任で後処理する、これオブジェクト恥垢の基本
2017/07/17(月) 21:03:31.38ID:9YERIW4A
色々とありがとうございまふ(^^
分からない所はググりながらまったり作っていきたいと思いまふ(^^
ボッキング!(^^
42名前は開発中のものです。
垢版 |
2017/07/17(月) 21:11:26.21ID:TRWJWifB
しゃあないなあ
>>35はぐぐりようないだろうから答えな

player(ボッキング)の変数として上の方にGameObject target;

raycast使ってタグ調べたついでにそれがかかしくんなら
target = hit;
そうでなければ
target = null;
2017/07/17(月) 21:12:21.70ID:TRWJWifB
ああ、あげちまった><

しかもまちがえた
target = hit.collider.gameObject;
2017/07/18(火) 05:20:41.75ID:LFAHK9mb
質問がありまふ(^^
主人公とモンスターの距離を測るところなんでふが(^^
複数のモンスターとの距離を測りたい場合はどうすればよいのでひょうか?(^^
2017/07/18(火) 06:36:53.14ID:iiR7lCMv
複数を同時にターゲットすることがありえるわけ?
中間地点に向かうのか?
2017/07/18(火) 06:44:20.69ID:iiR7lCMv
aoeのこと言ってるなら中心座標だろうけど
ちょっと言ってる意味がわからん
2017/07/18(火) 12:45:12.67ID:CZ0VnC0S
>>44
GameObject.FindGameObjectsWithTag("タグ名") で配列で全部の敵オブジェクト取って
アレコレすればいいよ
2017/07/18(火) 13:50:41.80ID:tBTR5Ytb
>>47
そんなことやったら
フィールド上のタグもってる全てが無差別にヒットすんじゃねーか

そもそもそういうこと言ってるわけじゃないだろ
2017/07/18(火) 17:38:02.40ID:v2/ZooZ+
>>47
手法としては間違ってないがMMOだと真っ正直にやると負荷がやばいぞと
フィールドをグリッドで切ってプレイヤーの存在するグリッドと隣接するグリッドしか見ないとかなんらか負荷軽減策を仕込んでおかないと厳しいと思う
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況