過去ログ

ブログ一覧

 

 


ブログ変更
新年明けましておめでとうございます。

正月からこちらにサイトを変更。
久しぶりに時間が取れたのでサイトでも作るか!と思い、ドリームウィーバーを部屋中探したけど、どこにもないのであきらめてホームページビルダー20を買ってきた。
慣れてくるとHPが楽に作れたので買ってよかった。
本当はドリームウィーバーの方がいいけどあれは値段が高いので、作者が何度も買える物ではありません。

 


2016年01月01日
Clickteam Fusion 2.5 DeveloperとGameMaker: Studio
正月にセールで半額くらいになってたのでClickteam Fusion 2.5 DeveloperとGameMaker: Studio Professionalを買ってみました。
両方ともたまにもっと安く販売される事があるのを知っていたけど、ちょうど気がつかないタイミングでいつも激安販売されていたので今回は半額で買いました。

そして試しにキャラを一万人生成するように組んで、ビルドしてみたところ…
驚愕の処理の早さ。
これは連邦の白いモビルスーツか!と一瞬思ったほど。
Clickteam Fusion 2.5 Developerは使える新機能も増えてるし、GameMaker: Studio Professionalではコメント欄に外人が、いつのかはわかんないけど、セレロンCPUでオブジェクト400個が動くって書いてあった。
凄まじい速さです。

アンドロイドとHTML5で開発出来るDLCもついでに買ったけど、これはとりあえずは動くようにはしたけど細かい勉強が永遠に出来そうにない。
勉強しないまま作ると修正出来ないバグが生まれそうです。
これらのDLCは学習時間がとれないので積んでおく事になりました。

GameMaker: Studio無料版の方はあんまり触った事が無いのでProfessionalでどれだけ早くなったのかは良くわからない。
しかしClickteam Fusion 2.5通常版だと重くなる位のオブジェクトや背景をGameMakerで並べても驚きの軽さだった。
CF 2.5 Developerの方はInfinite Life RepeatedでNPC500人生成するよりCF2.5 DeveloperでNPC一万人生成するほうが高速であります。
本当にびっくりするくらい早い。
クルセイダーの時は1200人生成してたけどそれも問題にはならない。
今までは処理時間問題で泣く泣く色々と削ってたのに…

ユニティだともっとはやいかも!と思ってプロ版の値段を見に行ったけど、とてもお値段が高い…
18万円か、月に9000円。
これは試すのは無理ぜ…
作者は2Dゲームしか作れないのにユニティに18万突っ込むことは永遠にありえません。

あと、GGmakerというツールも安かったので買ってみたけど日本語情報があまりにも少なく、作者には使用不能でした。
宣伝などでは一番よさそうなツールであり、期待もあったので少しはなんとかしようと頑張ったけど、英語の壁は厚かった…日本語情報も極端に少ない。

ツクールMVは仕様をみて永遠に積む事が決定しているのでまったく触っていません。

こんな感じで作者の正月休みは消費されていきました。

それと最後にInfinite Life Repeatedについては作者の都合により現在サポート不能になっています。
更新とバグ確認とその修正は一体化しているので、更新をすると一定期間作者が拘束されてしまうので今は何も出来ません。気合では今回はちょっと乗り越えられませんでした。すみません。
メッセージについてはメールに届くので拝見させて頂いてました。
とても励みになりました。ありがとうございます。
ご意見やご要望、その他報告などは今後の課題や方向性などに活かしていきたいと思っています。
とりあえずはクルセイダーより劣った部分があったので、クルセイダーを全ての面で確実に超えるのを目標にして、
活動再開時にはまた取り組んでみようと思います。

とりあえず作者のリアル環境が改善されるまではしばらく製作活動は休止します。
だけどこのHPは少しずつ作っていきます。
活動再開時には完成するといいなあ位のスピードで。
ではまたね。





2016年01月03日
Clickteam Fusion 2.5 DeveloperとGameMaker: Studio Professional続き
今日は新年会だった。
明日からまた地獄の日々が始まるのだろう。
もう勘弁してほしい…

さて、Clickteam Fusion 2.5 Developerの話を2日前にしたけど、もう少し詳しく書いておく事にします。
まずは処理速度の話の前に、便利な追加要素で、公式HPに書かれていない機能としてフォルダが使えるようになるというのがある。
これは色々な素材をまとめておける機能で、チュートリアルや外人作成の動画でフォルダが出てきていたけど、どうやってフォルダを出すんだろう?と今までは思っていました。
でもDeveloper版を購入して初めて気がついたけど、実はこれはデベロッパー版の機能だった。
どこかに書いておいてくれたらもう少し早くデベロッパー版を買ってたのに!
ノーマル版はフォルダが使えないので、1フレームに素材が大量にあるとうんざりする。
フォルダがあるのとないのとではまったく製作意欲が変わってくるのだ。
と思ってたけどヘルプには普通に書いてたw
もしかしたら作者が気がつかなかっただけかもしれない。

他にもいくつか差異や使えるようになる新機能もあるけど、すべて公式HPに掲載されているのでここでは紹介しません。

しかし、10000キャラ生成ではデータグリッドを使用しているので、その説明だけはここでやっておきます。
データグリッドとはエクセルみたいなマス目にデータをテキストで書き込んだり内容をイベントで生成していきます。
特に列挙は使える機能で、多分だけど、一マスずつ順に処理していく機能です。
左から順に列挙されていくようです。
0行目は列タイトルなので、1行目の一番左のマスから処理していき、一番右まで列挙されるとつきの行の一番左からまた列挙されていきます。






こんな感じで適当にパラメーターを作って、列はおよそ60項目。
文字列で記録されているので書き込み動作60万回、配列読み込みなどで5万回程度。
変数への代入が15万回程度。
計算プラス変数代入の計算は一行に10回くらい?多分。だから10万回程度。もしかしたらもっとあるかもしれないけど、計算しやすく10万とする。
テキスト書き込みと変数代入の処理速度の差まではまったく調べていないのでここでは同じ物として扱います。
それと計算して変数に入れるのも速度の差はしらべてません。

その計測結果は、NPC1万人トータル80万回の処理で、およそ10秒。
8000人で8秒、5000人で5秒だったので、1秒当たり1000人生成できる事になる。
この速度はリピーテッドはもちろんHSPで作った初代インフィニットライフや二代目クルセイダーをぶっちぎっております。
多分思いっきりPC依存の速度で処理できるので、この速度なんだろうと思う。
Clickteam Fusion 2.5アクションゲームが作りやすく出来ているので、内部処理は結構無理が利く速度がでるみたいだった。
GameMaker: Studio Professionalはあきらかにグラフィックスで無理が利く、というかたくさん出せるし動かせて軽い。
しかしどちらがいいのかは個人の好みによると思う。
ウディタとツクールみたいな関係だと思う。

今回キャラ生成でコード?は115行使用した。↓


でもGameMaker: Studioで普通のRPGを作ること自体の難易度はウディタを基本システム無しで作る以上に難しいと思っていいと思います。
Clickteam Fusion 2.5は日本語化されているのでゲームメーカーよりもRPGをつくるのは容易ですが、(日本語で作れるので敷居が低いだけですが)もともとそんなものを作りやすいようには出来ていないので推して知るべしです。
そんな二つのソフトですが、ローグライクならアクション系なので結構作りやすい。
ゼルダ系とかも。
クリックストアとか、マーケットプレイスなどにそれ系の素材やチュートリアルが無料だったり有料だったりではあるけどあるにはありますしね。

ツクール系RPGならツクールやウディタを使ったほうが良い。これはまちがいありません。

でも、これから日本人が新しいゲームを一から作るならClickteam Fusion系かGameMaker: Studio系かユニティ系の三択になっていくと思う。

英語がわかればまだ選択肢は増えますけどね。
しかしユニティプロ版18万は高いので選択肢に本当には入らないかもしれない。

GGmakerもすごそうだけど、完璧に英語情報しかないのでなにげによくわからない。おまけにもう返品しておいたので二度と買うことはないだろうと思う。

作者のお勧めはGameMaker: Studioです。
スクリプトで若干不自由な面があるけど、ゲームで使いそうな関数というか機能が最初から実装されているので、敵の動きはどうにかなる。経路探索系とかでも何種類も最初からあるようだし。(使ったことはないですがヘルプファイルをHTMLに分解して機械翻訳後読んでみた。)
ただ、勉強する量と試行錯誤する量は半端ではないです。
Clickteam Fusionも勉強量と試作量は莫大です。

こんかいはClickteam Fusion 2.5のデータグリッドのヘルプに、列挙を使用する場合、試しに自分でやってみて動作を確認しろというメッセージで締めくくられていたので、少しでも誰かのヒントになればなと画像を掲載してみました。
列挙機能はかなり早いよということで今日はここまでです。

ブログの方は暇があるときに、普通のブログページを実装しようと思っています。
その時この記事はコピペしてそちらに移植します。
明日からまた作者のライフは0になるのでいつになるのかはよくわかりませんが…

ではまたね。

2016年01月05日
新生
 paradoxtail、これは作者の作品の著作表示に使っている名前です。
作者はスウェーデンのパラドックスインタラクティブというゲーム会社の信者なので、
パラドックスのシッポですよという意味もこめてパラドックステイルと名づけていたんですが…
ゲームの内容的に全然パラドックステイルを名乗って良い歴史ゲームなどではありませんでした。
作者の作品の方向性はどちらかというと、ライトノベルの内容でよくあるような状況を、再現できるシミュレーターのようなRPGを目指している部分が非常に大きいです。
作品の方向性と製作チーム名をある程度揃えたいと思ったので、今後パラドックステイルは
作者名”パラドックステイル=のら123”だけに残し、チーム名は変更します。
これは文豪?にちなんだ名前になる予定です。

時間さえかければなんでも作るのは可能。しかし製作プラス管理となるとこれはもう無理であります。
ですのでこれからは極少人数のチームを編成して製作するスタンスに変更したいと思います。
その変化の目安としてもチーム名を変更します。

チーム化計画はまず、作者がゲームをある程度作った後(リピーテッドの拡大発展版、大規模戦闘システム込み)、メンバー募集し初シェアウェア化、まず販売数2本を目指す。これは一本は作者が買って動作を確認するので2本を目指します。

最初は知らない者同士で一からゲームを作ったりはしません。

2作目以降はゲームを一からチームで作る。
こんな流れでやりたいと思います。

2作目以降の内容は未定。
しかし、あまり難しいものは作れないのでそれなりの物を作っていくことになります。
難しい物とは何か?と具体的に例を上げるのは難しいけど、ハーツオブアイアンの進行経路を表す矢印とかは難しいですw

作るなら○○のアトリエみたいなシミュレーションかRPGかです。
今はまだ計画だけの絵に描いた餅、取らぬたぬきのなんとやらですが、毎日作者の時間がまとまって取れる状態になったら実行します。

眠いので今日はこの辺で・・・
ではまたね。

2016年01月09日
Clickteam Fusion 2.5 データグリッド
毎日毎日本当に大変。
みなさまも毎日本当にお疲れ様です。

元々テレビすら見ず使用できる時間をギリギリまで使用してゲームを作ってたので、ゲームを作る作業がなくなっただけなんだけどね。

ただもう作っていない期間が数ヶ月にもなるので、そろそろ製作技術が劣化する頃であります。
劣化というか、少しずつ忘れていくと言うか…
やればまた思い出すんだけど、思いだすまでに時間がまたかかる。
ちなみに初代と二代目はHSPで作ったけど、もう言語の仕様なんかは全て忘れました。
ウディタは簡単なので、忘れることはないと思うけど。
ウディタは本当に素晴らしいツールだなと思う。
なんでも作れる感が半端ではないし、実際なんでも作れる。
仮に2480円くらいで売ってたとしても普通に沢山売れてしまうレベルだと個人的には思います。

話は少しそれたけど、作者の問題点は、

・技術はやらないと忘れる。
・今後ゲーム製作に使える時間は、作者の環境が改善されても減少する。

大きなところだとこの二つ。
一つ目はしょうがないとして、
二つ目を解決するためには高速で試作出来る環境が必要で、しかもインフィニットライフは特にデータ量と処理量が多い為処理も早いほうが良い。

そのために正月セールでゲームメーカープロフェッショナルとインディーゲームクリエーターデベロッパーを買って調べてみたところ、どちらも早い。
ゲームメーカープロフェッショナルのノーマル版はあまり触ったことが無いので、差がわかんないけどゲーム自体の処理は早い。ヨーヨーコンパイラというのが早いのかな?まあ早い。

インディーゲームクリエイターの方はデベロッパーを買うと、もう通常版では起動できないのでこれもまた差がわからない。
作者はsteam版を買ったので他のバージョンだと違うのかもしれないけど、とりあえずsteam版ではそう。
でも起動は早いと思う。かなり。
インディーゲームクリエーターは日本語で作れるので、こちらを先に調べる。それにテスト結果がよければ慣れているのでこっちで作りたい。
ノーマル版は結構やったので調べることは新機能くらいしかないけどね。

デベロッパー版のデータグリッドも早いしリストビューも早い。
ただ、データグリッドに関しては最初から1000行とかそれ以上に設定するとバグなのかどうかよくわかんないけど、1行になってしまう。作者のPC環境のせいかもしれないしよくわからないが、最初に100行に設定すると100行だけど、どこからかのラインでバグって一行になる。
とりあえず1000行とか500行では一行になってしまった。
なので10000行はどうやっても無理かと思ったら、一行ずつ生成していったら出来た。
行生成はそれなりに時間がかかる。
多分一瞬でデータは出来てるのに。。



一万行を生成した後、71項目のデータ列挙機能で一万人分作成、Direct3D 9環境時にトータルで7.68秒だった。

それとは別にテストで、一万人それぞれに12回(一万人でトータル12万回の処理)のなんらかの処理を加え、高速ループの処理時間を計測してみると、100分の1秒以下で終了しているので計測不能だった。

データグリッドでキャラ作成の時、バグ(仕様?)回避の為に一行ずつ1万行までイベントで増やしてから、データを作っているのでその処理はさすがに重い。
行の幅とか列の幅とかを変更するのも結構重いようだった。今回は使用してはいないけど確認はしてみた。

しかし列挙は楽にデータが作れるのでこれは今のところ仕方ない。
いつか最初から一万行で設置できるようになる日が来ることを祈っておこうと思う。

この部分は、データを作成するときはそりゃあ重いよとみんな思うはずなので、重くても大丈夫だと思う。
環境や状況によるけど多分10秒前後でキャラ作成は終わる。
多分毎日一回、国民一人になんらかの処理を加えても一瞬で終了する。
たとえ年末処理でもたいしたことは無いだろうとおもう。
データグリッドでデータを作成し、後は配列で処理するようにすればなにも問題はない。
デバッグ用にデータグリッドをつねに潜ませておくのも手であります。

そしてリストビューは完璧な高速ソートがあるので非常に使える。
これらウィンドウズの機能に頼ったUIは非の打ち所が無いのでそのまま使えばかなり製作高速化につながるだろう。
そもそも一万人規模を楽に操作閲覧するにはこれらの機能に頼りきったほうが楽です。
別に一万人にしなくてもいいんだけどねw
これらはテストということで、仮の話という前提で記事を書いてます。

でも一万人という設定が出来れば、各年代人口比率が均等だとして、14歳くらいから成人、50歳で寿命で死んでしまうと仮定した場合、約7千人位が自由に動ける。
そのうちの10分の一が冒険者や傭兵、又は兵士だとした場合、その人数約700人。
まあ、全員が冒険者や傭兵、又は兵士でもまったくかまわないんだけど。
冒険者や傭兵や兵士でNO1を目指してもよし、
プレイヤーが冒険者を支え、必要な物資やサービスを提供できる側にもなれるんですよ!
という物が出来れば良いと思っていたので、そこまで作れたら作者はもう灰になっても文句は無い。
基本的にいままでとあまり変わんないんだけど、これから作るならお店プレイを重視したい。
そのためのお客様として、パートナーとして、または従業員として1万人は作者の目には魅力的に写ります。


2016年01月11日
プロトタイプ
 作者はゲームを作るとき、設計図とか企画書なんかはまったく用意しません。
思いついたらおもむろに作り始めます。
まず試作からですけどね。
思いついたものを片っ端から試作していき、面白いと思った物だけ残します。
作った機能が蛇足だなと思ったり、つまらなかったらどれだけ苦労して作ろうが切り捨てます。
でも、最近は暇が無く、試作の計画すらなかなか立てられなかったけど。

 しかしどうしても試作したい案があり、技術的にも可能だろうと思うので、それを作ってみたい。
それはどういう物かというとね、あなたは(プレイヤー)どれだけ国に貢献していますかオンラインシステムの実装です。
別に日本の事ではなくて、もちろんゲームの中だけの話でね。

国家アンケートによる国家方針を民主主義的オンライン投票で決め、当然税金も徴収します。
またそれにともない、帝国の侵略による冒険範囲の拡大をもシステムに組み込む。
(※税金は冒険してなんとか頑張って稼ぐよ。)
それに軍事力が低いと冒険するところが無くなるみたいなのね。
まあ、オンラインランキングはこのサイトで見れるようにするつもりだったので、
オンラインランキングの時についでに税金と国家方針の意見も送ってみてよというところです。

本当は常時接続で作りたいけど、常時接続が何人規模になるかもわからないし、そもそも何人で何バイトのデータの送受信くらいならOKとかもわからない。
ならないと断言出来ますが同時接続数千人規模になるとアウトであります。
素晴らしい機能を持ったサーバーも作者が独自に用意出来ればいいけど、それもなかなか難しい。
今作者に出来るのは10秒に一回とか30秒に一回接続するのを想定した構成でやるしかない。
ワールドチャットにしても完全なリアルタイムは難しい。
一対一ならリアルタイムでもなんでも大丈夫なんだけど、よく考えたら一対一の対話が可能にすると、嫌がらせなんかの対策でキックとかミュートとかも必要なので一対一チャットは作らないと今決めた。
ワールドチャットでみんなで仲良く会話してもらえるようしたい。

というわけで趣味の範囲で作るオンラインゲームを目指したい。
しかしオフラインでも普通に遊べるようにします。
実行ファイルを二つ作る感じでセーブファイルはオンライン版とオフライン版は互換しないように。

オンラインを目指すのが今後の目標の一つ。
そしてもうひとつが、今までは(インフィニットライフシリーズの事)メモリリークが怖くてやらなかった作りこみを強化すること。
クルセイダーでは製作途中メモリリークに苦しみ、あまり作りこみませんでした。
そしてそれ以来ミスったらメモリリークしそうな機能はあまり作らなくなっていました。
詳しく説明すると長くなるので簡単にですがメモリリークとは何かというと使用メモリが増えていく状態です。
これは基本的に作者が間違ってて不具合が起こってます。
いままでは広く浅く作る方針だったけど、次回以降は狭く深く作る方針に変更していきます。
今まではNPCが沢山いるので余計な処理を増やすと大変な目にあってた><;ので、
ゲーム内のNPCは出会って仲間になった人だけを生成して、その人しかプレイヤーは知らないしゲームの中にはその人しか居ないようにして処理の負荷を軽減する。
最初から不老の人は生成しておいて、永久にどこかにいるけど。

NPCの処理を減らす代わりにアイテム処理を強化します。
武器と防具の種類はかなり減りますが、鉄の剣が100本あったら100本全てが違うようにする感じ。
別に名前が変わったりしません。
次回以降はNPCの生成を抑える代わりに、アイテムを生成するのです。
そう、いままではNPCが多すぎて、生成アイテムを持たせるのがとても嫌でした。
もし、NPCが消える時に生成アイテムを消し忘れたら、メモリが増大してしまう!これがいままでは恐怖だった。
基本的に消し忘れはやばいです。
これは限界生成数を決めて、その範囲でやりくりするなら結構安全だけど、特に決めない場合、あぶない。
気をつけてたら大丈夫という訳でもない。失敗はやる時はやるのだ。

でもNPC数の制限なんかは特に設けないので、何人でも自分の傭兵部隊に入れられる。
傭兵隊を運営出来る範囲でね。
ひよっこを一人前に育てて数々の依頼に送り込み(任務完了まで何日か居なくなる感じの処理を組む。これでNPCが勝手に育つ)、自分はもっとも危険な依頼を受け、突撃する傭兵隊長になるのだ。
そして依頼をただ受けるのではなくて、依頼の申し込みがある組織となる。
主人公が依頼斡旋所になる感じと言えばいいかもしれない。

それにアイテムを一つずつ生成するので、当然耐久度もつけます。
作者はランダムエンチャントを面白いと思ったことは無くて、耐久度が面白いのです。
というか雰囲気が出るし、敵がランダムエンチャントの何かを落とすより村正や君主の聖衣などといった固定名アイテムを落としたほうがいいと個人的には思ってます。
各、同一装備に若干差異を設けるつもりですが、中世に均一な製品はないだろうという事で微妙な誤差を設定し、生成、たまにすごい鉄の剣がまざってたりしても面白いかなと思ったのが最初です。
初期に拾ったすごい鉄の剣を鍛冶屋で打ち直してもらってさらに強化する。
これはロマンがあります。
鍛冶屋は当然傭兵隊で雇いえます!とかもね。

仲間の装備の修理費も当然主人公持ち。というか負担は全部主人公持ち。
オンラインだと主人公が税金も払う。
魔物が出る世界の傭兵隊経営シミュレーション+RPG。
いままでは完全にRPGだったけど、シミュレーション方向にシフトしていきます。

シナリオ1で英雄になってもなにもなくそのままだったので、英雄になったら領地をもらえる風にもしたいと思う。
ティエルンは弱いから簡単だけど、無印の時から弱かったのでまあしょうがない。
それまでの傭兵隊のメンバーを領地経営にも派遣出来るなどなど。
というわけで基本的には試作はシナリオ2相当になりますが、完全なシステムの変更を行います。
いままで召喚出来てた亜人は、戦闘で捕らえる捕虜扱いにし、奴隷として売り払うか戦闘奴隷にするか選択制に。
ゴーストやスケルトンを捕虜…というのはかなり微妙だけどゲーム的には問題ない。
次回はちゃんと傭兵隊を経営する、敵を捕虜にする、アイテムを生成する、NPCは少ししか生成しない、オンライン対応を出来るだけやってみる。
今回は、オンラインとアイテム生成だけを試作するわけでは無く全体として試作します。
特にオンライン機能だけはどこまでやるかにもよりますが、本格運用となると結構お金をかけないといけないかもしれないのであくまでも完全なる試作です。
作者の経験値上げです。

戦闘システムは変更。でもTRPGを参考にした計算式。
ただ、レベルアップはより大変にして、攻撃回数アップ開始レベルとアップする間隔を変更する。
レベル2で2回攻撃、レベル4で3回、レベル8で4回攻撃。レベル16で~という具合に。
時間は1時間単位に。
ダンジョンを変更。主に見た目。3Dをより進化させるか、それとも2D表現の新システムに変更するか?


それと全体として試作というのは、全体を大まかに作ってみる感じで、バグはガン無視で作ります。
普通は作りながら不具合を取り除きながら作るけど、試作は、まあ最低限動けばよしでやります。
メモリリークしそうなところは最初からきちんとやらないと後で泣くのでそこだけはキチンとやる。
これで試作して面白いと思えば製作開始します。

今の状態だと試作ですら数ヶ月かかると思うけど、オンライン機能を作ってみたいしね。
オンライン機能をどう実装するか?でも色々なやり方があって、まだ悩んでるし。

今日はこんなところです。
ではまたね。
2016年01月24日
試作


↑画面試作
ざっとやってみたけど、コマンド枠が足りないので分割しないとどうしようもない感じ。
それかもうコマンド全部をアイコンにしてしまうか・・・

マップは完全なる地図に。
このマップ上でパーティユニットを動かすようにしたい。
さらにハーツオブアイアンを参考に進行を表す矢印が出るようにも多分ギリギリで出来る。
大変なのでどうしようかなとも思うけど、今回は技術的な試作であるので頑張れるだけ頑張ろうと思う。

世界観的に今まで登場した全地域を登場させ、どこの国からでもスタートできて、
スタート国にティエルンは絶対居るし、領地もスタート国でだけもらえるようにしたい。
そして地図上ではポーランドだけど、ここは魔族に占領されている事にします。
ここより東側にはもう人間は生き残ってない世界です。ずっとそうだったけど。

領地システムが使えるようになって初めてここからが本当の戦いだ!になるように。
ティエルンを倒すと英雄になって領地をもらえるようにしていきます。

領地は技術開発で武器と防具を作ったり、魔法を開発したりとかもやりたいというのはあるけど、
もっともやりたいのは後進の育成です。
内政もやりますけどね。
学校を作れるようにして、子供を鍛えて大人になったら主人公部隊に編入したり、役人などになってもらいたいのだ。
内容がサカつく感覚になりつつあるけどだいたいこんな感じです。
多分これは中世ヨーロッパ風サカつく感覚シミュレーションRPGになる。
でも、ここまでになるとRPGと名づけて良いものかどうかも結構あやしい。

最終的に装備の鎧は戦車、武器は120mm滑腔砲とかにしてもいい。。
もはや筋力に何の意味も無い強力な武器と、体力など誤差にしかすぎない頑丈な防具。
これらはゲーム内で1000年技術開発だけをやって、やっと到達出来る極致としたい。

しかし、今回はとりあえず試作。
やりたいことと技術的な山がいくつもあるので、まずその山を越えられるのかどうかを調べるのが一番の目的です。
今日はこんな感じです。
ではまたね。




2016年02月01日
試作2

移動の基本システムっぽいものは出来た。
矢印を出そうと思ってたけど、作ると実際大変なのでやる気が出ない…
時間もかかるのでという事で、矢印を作るのはまとまった時間があるときにやってみようと思う。



そしてまず、仲間生成場所として酒場を作ってみた。
ここまで作ったところで職業縛りは無くす事に決定。
職業しばりをなくして、みんななんでも出来るようにしたほうが、作るのが楽なのです。
今回は訓練所で覚えたいスキルを自由に選べるようにする。
能力値が足りて入ればだけど。

最初は覚えるスキルなんかほとんど無い。
武器も防具もアクセサリも技も魔法もほとんどない。

最初からある最強の武器は鉄の剣、防具は革の鎧。
技はなにもない。魔法は単体攻撃と単体回復が一種類ずつだけ。
武器も防具も道具も魔法も技も開発して初めて増える。
それまではなにもない。

こんな状態で始まるのに魔法使いとか僧侶などを用意してもあまり意味が無い。
今回は人類一万年の歴史を今回は追体験?とまではいかないけどそんな感じにしたい。
CIVみたいな感じでね。

今回の試作は色々試すのもあるけど、内容としてはシミュレーションRPGというよりもシミュレーションとRPGの融合。
でも、試作してみてつまんなかったりしたら大幅に変更されたり無かったことになります。
アイデアとしてはいいと思うけど、実際は作ってみないとわからない。

画像も用意せず、バグがあってもガン無視で動けば良しで作るので、それなりに早いけど(数分で一個の機能が出来る)色々な面でどうしよう・・・と考えないといけない部分が結構ある。
主に仕様の面で。
魔法を開発するのでも、オブリビオンとかスカイリムみたいに自分で数値を決めるのか、それとも最初から用意しておくかとか。

それに地図画面が出来た時点で戦略シミュレーションがすぐにも作れる状態になってしまったので、作者がその誘惑に耐えられるのかも疑問である。
地図画面は良い出来に仕上がったしね…

ゲーム内容としては、キャラ作成と戦闘画面が出来たら後はどうとでもなると思う。
というかなればいいな・・・

戦闘はもう初期ウィザードリィリスペクトでやるか、全自動見るだけ戦闘にするかでまだ迷いがある。
仮に全自動戦闘だと大人数で戦う機能実装はなんとかなる見通しはある。
しかしウィズリスペクト戦闘の場合は大人数操作の場合だと、コマンドを選ぶのが大変になってしまう。
当初の予定は完全自動戦闘だったけど、戦闘システムを頭の中でシミュレートしてみたところ全自動だと面白くなさそうなので、さてどうするか…となってしまったのです。
戦闘はウィズリスペクトとは言っても見た目だけを真似るだけなんですけどね。

戦闘部分は試作とはいってもきちんと作らないと大変な目にあうので、目に付くバグは取り除きつつしっかり作らなければならない。

それ以外のゲーム内容の部分は本当に簡単に出来るので(試作だとね)結構どうでもいいのだ。
オンライン実験ではどういう内容にするかとか、方法などでかなり試行錯誤や考えないといけないことが多く、とても時間がかかると思う。
問題は戦闘とオンライン試験なのです。



今日はこんなところです。
ではまたね。



2016年02月03日
試作3
戦闘システムをどうするかで悩んだ結果、意味もなく経路探索で、追いかけっこ?するシステムを組んでみた。
それを遊んでみた結果、どうやろうが変に戦闘システムを作るより、そのままフィールドで戦ったほうが面白いとの結論が出た。
ウィザードリィの戦闘システムも捨てがたいけど…
それに、数百人とか数十人とかでチーム組んで作れるなら話は別よ?

初期ウルティマ型の戦闘?というかターンの概念はなく、自分以外はAIで動くようにしたい。
ある程度の敵の数を出せて、ある程度の速度で動くように組めるようなら戦闘はフィールド画面で戦おうと思う。
ローグ系みたいだけどターンなどなく、リアルタイムでずっと動いてる感じ。
それはアクションRPGだと思うだろけど、作者想定している状態はアクションRPGかどうか微妙な所。
前に近いシステムは何度も試作してるけど、完全に作者の想定通りに作るのはとても時間がかかりそうだったから今まではあきらめてた。

でもやっぱり面白いと思うので、大人数が動くようになるまで今回は頑張ってみようと思う。
とりあえず今回は自分一人と敵100匹位をまた目指す。
今回は本気で無理だと悟るか出来るまでやめない。
今までは敵30匹くらいまででそれ以上は動作が重くなってたので、作者にとってかなりハードルは高い。
まあ、30匹でも十分なんだけどね。
それに経路探索無しだったら余裕でいけそうだけど…

試作しつつ色々試して、動作が軽くなるのを最優先事項としてやってみようと思います。
戦士系以外は近づくだけで、経路探索までは要らないんじゃないか?などね。

ではまたね。





2016年02月07日
試作4
敵100匹を目指すにあたり、そういえばgamemakerだと400匹出しても大丈夫だよHAHAHAという外人のコメントを見た記憶があったので、gamemakerでどのくらいなのか調べてみる。
高速化の肝となるヨーヨーコンパイラを使用可能にして早速組んでみることにした。
この機能はHTML5出力だと使えないんだけどね。

スクリプトの文法的には作者の習得している系の物なのでさくさくいける…と思ってた。
それはある問題で立ち止まる事になったのだけど…
さくさくいけるといっても、さすがに関数を調べるのには時間がかかる。
日本語wikiも参考にしているけど、しかし関数の量が多いのでまだまだ関数の記載が完全ではないので、どうしても公式リファレンスに目を通さないといけない。
最初はウィキだけ見て作ってて、目的の関数が無くてしょうがなく自力で機能を実装した後に、公式リファレンスを見たらその機能がすでにあった…とかあったのでそんなときはとても疲れる。
でも問題はこれではない。
作者は一応全部の機能を一通り簡単に組みながら進んでいた。
そして名前入力欄で問題が発生したのだ。
日本語表示は全部出来るんだけど、キーボードの入力文字の記憶領域にどうやっても”名”という漢字が記憶されない。
今回発見したのは”名”という文字で、表示は出来るけど、入力文字記憶領域に記憶されないのでキーボード入力は出来ない。
一個見つけたからには多分他にもある可能性が高い。キーボードで入力出来ない文字がね。
gamemaker初心者の作者にこの問題解決は非常に厳しい!

でもまあ、表示は出来るから、名前入力問題さえどうにかなれば先にすすめるんだけどね…
ドラクエ式名前入力システムを作るしかないかな…
簡単なやつ…
カタカナだけにしても文字数が英語に比べて多いから大変よね。
外人は楽だな~っていつも思う。

それにインディーゲームクリエイターに慣れてしまうともうスクリプト書きたくなくなるw
スパゲッティーコードだろうがなんだろうがインディーゲームクリエイターは非常に楽でよいのだ。

でもレベルエディタ(マップエディタ)はGAMEMAKERの方が少しは楽というジレンマがある。どちらも厳しいことには変わりはないけども。
ツクールのマップエディタが一番いいんだけどね。素材も多いし。

でもまあある程度まではすこしずつ頑張って試作していこ。
キャラ作成まではインディーゲームクリエイターでもすでに組んでいるので、
ここが終わったらフィールド画面で敵を沢山出してみる事になる。

ちゃんとまともに動けばいいけど…
ではまたね。





2016年02月09日
試作5

↑試作画面

gamemakerは特にデバッグシステムが優秀だった。
見たいものがすぐ見れるようになっている。
画面上じゃ5種類しか子ウィンドウがでていないけど、子ウィンドウのタイトルバーをを右クリックすると他にも選べたりする。

今日まででGAME MAKERもだいたい把握できた様に思う。
これはかなり良い。
ただ、製作速度が上がるのか?と言われるとよくわからない。
アクションや何かのツールを作るならインディーゲームクリエイターの方が早く作れるだろう。
CF2.5のツールを作れる速度は半端ではなく、もはや神がかっていると言っても過言ではない。
なにか簡単なツールを作って~と作者が言われた場合は、間違いなくインディーゲームクリエイターで作る。

では、GAMEMAKERは何が良いのか?
デバッガが良いのは置いておいて、頑張れば何でも作れるのが一番良い。
HSPとかと一緒。
クリックだけで作れる部分も多いし、管理もそれなりにしやすいようになってる。
それと、何でも作れる敷居が低い。ということ。
ツクールとか、ウディタではRPG以外を作るのは結構大変であります。
アドベンチャーとかなら同じような仕組みなのでなんとかなるけどね。
インディーゲームクリエイターもアクションやツール以外だと生産性はかなり下がります。
しかし、GAMEMAKERの生産性は常に一定。
動きや表示に関しては最初から組み込まれているからその部分に関してはすぐできる。
2Dゲーム製作に必要な機能はほとんど用意されています。
ただ、あれ?この関数無いのか?と思うこともたまにあるけど。
それならないなら無くても別に良い物だったりするしね。
作者としてはインディーゲームクリエイターのウィンドウズのAPIに頼ったシステムとGAMEMAKERがくっつけば最強なんだけどね。
それは Visual Studioなんだけど、書かないといけない文章がやたら長いので作者は絶対いや。
コード補助があっても嫌。
頑張って使えるようになったけど、文章長すぎで投げました。
それに高いし・・・
無料版でやると上位版の機能が使いたくてたまらなった思い出があります。

しかしゲームメーカーの方もそれなりに難しい。
変数の管理とか、何から何まで普通にそこらへんの言語と一緒だから初心者がやってみよう!と思ってコードだけで組もうとすると、かなりのストレスだと思う。
クリックだけでも作れるけど、日本語情報が圧倒的に少なく、それを乗り越えるのも大変><;
コードで組む場合はWIKIにある程度の情報は載ってるし、そこに無くてしょうがなく公式リファレンスを見ることになっても、引数と戻り値さえわかればなんとかなるのだ。

作者は英語が読めないけどそれは翻訳とか、普通にだいたいの意味がわかったりするのでなんとなくどうにかなる。
だけど言語を覚え始めのストレスは覚えてるし、トラウマになりそうな苦しみも覚えているので、初心者がコードで組む場合、絶望を味わうだろうと思う。
ただね、これは年季が解決してくれる。
1~2年もやれば無双出来るようになるはず。
わかんなくてもやり続ける根性があれば出来るようになる。間違いなく。
書く量も少ないしね。HSPとかも書く量はすくないのでそこはオススメです。

習得難易度でゲーム製作環境を作るジャンルにこだわらず作者が判断した難易度はこんな感じ。
LV1 ツクール ウディタ インディーゲームクリエイター(CF2.5)
LV3 ゲームメーカー 英語情報を結構調べる機会が多い為。それがなかったらLV2
LV3 HSP
ユニティはしばらく触っていないので今はちょっとわかんない。
複雑なシステムを作ろうと思えばどのツールでも作れるけど、簡単なものを作る場合の話としてね。
このツールでこんなシステムよく作れるな、と作者が思う物を作る人は沢山いるのだ。
HSPはそれなりに難しいけど、日本語情報は沢山あるし、わからなかったら公式掲示板もある。
インディーゲームクリエイターもそう。公式ブログで聞けば教えてくれる。

こうして総合的に考えるとインディーゲームクリエイターはそうとう優秀だと思う。
言語無しでなんでも作れるし(ツールまで簡単に作れる)、スクリプト言語のLUAも使おうと思えば使える。

作者は、はじめからCF2.5系かGAMEMAKERのどちらかを勉強していたら良かったと思う。
すごく…
それくらいCF2.5とGAMEMAKERは良い。
何かを1から作る場合はだけどね。
凝った物を作りたい場合はGAMEMAKERの方が多少作りやすいかもしれない。

さて、ここまではつらつらと書きたいことを書きましたが、ここからは話は変わって試作の方ですがまだキャラのデータをどれだけ保存しようか…
とかいう部分はまだまったく決まっていません。
とりあえず当初の目標は敵を出して戦うところまでやってみる!ということなのであんまり細かいところは決めてないのです。
しかし、なにを作るにしろ、システムに関してはもうなんでも大丈夫なので、敵の数がどこまで出せるかわからないけど目標を戦闘だけから、。技術の習得と経験の蓄積に変更しようかなと思う
時間があって組めるなら少しでも組む、時間が無くて組めないならリファレンスを見る。
こんな感じで敵はあまり重視せず、このままGAMEMAKERだけで試作を作っていこうと思います。
作って公開してみたいツールもあるのでそれはCF2.5で作りたいとか思ってたりもするけど、ツールはCF2.5で作って、ゲームはシステムによって作りやすい方で作る方針にしたいと思います。
いつ作れるかはわかりませんけどね。

ではまたね。




2016年02月10日
800
実験的に敵を大量に登場させてみた。
EXEの方は800匹がおよそ限界。
HTML5出力の方は400でもう無理だった。。
いまの実験場では200しか出していないけど、まだ減らしたほうがいいかもしれない。
だけどHTML5で200が経路探索しつつまともに動くのは凄い。
PCの実行ファイルでは600でも余裕だった。
ただ、実行ファイル作成の時、ヨーヨーコンパイラと通常出力ではどれだけ差異があるのか?は、体感出来なかった。
計算が多少正確になってる感じはあったような気がする…と思うくらいにとどまった。
でも、凄い力技で処理負荷軽減を何も考えずに組んでこれだけ動いたら、
2Dのマウントアンドブレードが作れるぜ。マジでwそれは常に経路探索し続ける以上に重い処理なんて、少なくとも作者の作るゲームには登場しないからです。
いままではどうやっても作者じゃまともに動かすのは無理だった処理量なのに、動いたのだ。まともに。処理遅延もなく。動くぞ!こいつ!みたいな。
HTML5のJSファイルの中身どうなってんだろう?と見てみたら技術レベルが違いすぎて解読不能だったし。
敵が大量に出せる事を前提にこれからはシステムを考えられるし、裏で恐ろしい回数のリピートを回しても余裕で一瞬だったので、これ以外の開発環境はもう考えられない。
そうとはいってもやっぱりマシンパワーがものを言うので、登場キャラMAXは200くらいがいいだろうと思う。HTML5出力だとMAX100くらいかな?若干抑え気味を心がけたい。とりあえず作者の家にある古いノートパソコンでギリギリ動く位が丁度良いだろうと思う。
スーパーPCを持ってる人用に、その辺は調整出来る様にしてもいいかもしれない。
ノーマル100匹まで、ハード200匹まで、スーパーハード400匹、ヘル800匹とかね。
いまは主人公と敵しかいないけど、仲間とかNPCが増えると処理量も増えて重くなるから、これくらいにしといたほうがいいと思う。
ただ、今は勉強中というか試作中なのでこのまま作るというわけにはいかない。まだ最初なので最適な組み方がまだわかりません。適当には組めるんだけど…
とりあえず良く使いそうな関数は全部使い、関数のスペルを最初の3文字位までは最低でも覚えたい。(入力補完があるので最初の数文字覚えておけばなんとかなる。)逆に入力補完があると作者は完全には覚えない…うろ覚えで組むよ。
いつもはだいたい良く使うやつだけ覚えて、あとは調べながら組むので完全に覚えたことは今まで一度もありませんし。
作者が時間が取れるようになったら、ちゃんとシステムを設計して最初から組みたいと思います。
ただ、処理速度に関しては本当に無料版EXEとプロ版コンパイラ使用EXEの差が良くわからないレベルだったので、そのうちきちんと調べてみたい。が、まずは説明書をよく読んでみようと思う。ちなみにHTML5と実行EXEだとHTML5の方が格段に処理は重いよ。それでも凄い速度で動くけど。そしてさらに無料版EXEでもこの処理速度出すか…とびびりまくりです。連邦の白いやつだよGAMEMAKERは。
次はキャラが服を着るようにする事と、裏の処理系を作ってみます。服の方は多少データを加工しないといけないので結構時間がかかります。ゲームメーカーは画像データを用意するときに個性的な横一列のアニメ画像を用意しないといけないし、名前にもあるワードを入れないとめんどい事になります。だからそれはもう本当に大変。
ただ、服や装備の画像データは正式にくみ出した時もそのまま使うので無駄な労力ではないのが救いです。
今日はこんなところです。
ではまたね。

追記 実験場はIEだと重いです。クロームかファイアフォックスだと大丈夫なんですが・・・
2016年02月12日
試作6
プレイヤーキャラの動きはまあこんなものだろう…と思うくらいには何かに引っかかったりしてぎこちない部分はほぼ無くなった。
こんな細かいところほど、試行錯誤で大丈夫なやり方を見つけるのは結構大変だ。
NPCは絶対に引っかかったりしないので楽なんだけども。
それに画面も若干軽くなった。

気になる所はだいたいなんとかなったので、次の段階に進もうと思う。
次は服や武器、盾を拾ったら装備する機能を作ってみる。

とりあえず男女5個づつ鎧を準備したんだけど、その時、加工に10分くらいかかるかな?と思ってたのが、実際は2時間かかった…
単純なミスを連発しまくって、もうね作者がその作業を見てて、別の人がその作業でミスを連発をしてたら作者が大激怒しそうな勢いでミスりまくった。
それは本当にありえないレベルでした。
疲れてるけど、面白いので頑張ってたら実際は限界が来てたらしい。

まあでも本当に面白いよgamemakerは。
ユニティも面白かった記憶があるけど、3Dの素材が作者にはまったく作れなかったのでここまで面白くは無かった。

ユニティも大概色々出来ますけどね。

開発環境の仕様で出来ないとか、難しいとかがほとんどないのが最高に良い。
逆に一定の難易度で全てが難しいと言ってもいいかもしれないけど…
でもアイコンクリックというかドラッグ&ドロップだけでも結構作りこめるし、アイコンを覚えたら関数も似た名前と機能なので言語の方も覚えやすいと思う。

本当に最初からgamemakerやっとけば良かったよ。

試作の方もキャラ動作の方面ではかなり進んだけど、このままいきあたりばったりで作っていって、必要な物、準備しないといけない物を洗い出していきます。
このままいけば仲間を沢山引き連れた場合のイースみたいな感じになる。
間違いなく。
仲間の命令はマウントアンドブレードみたいにファンクションキーで操作することを想定しています。
仲間の操作と敵2~3種類との戦闘を行うまで出来たら、作るのに必要な機能が分かると思うので、そこまでやったら完全に設計出切るようになってると思います。
さらに仕様を決める時間も必要ですしね。

今日はこんなところです。
ではまたね。


2016年02月13日
試作7 データベース
さて、装備する機能を作ってみよう!
というところで、データベース無しでこのまま作り続けるのは無理と判断し、データベース構築をまずはじめることにする。

csvを配列に読み込んで使用出来たら一番いいけど、そんな機能はなかった。
探しきれていないだけかもしれないけど…
gamemakerのマーケットをみたら2種類だったか?有料で置いてあった。
4~500円で…
それをみてお金がもったいないので自分で作ることにした。
自分が使いやすいように作れるので、作れるのなら自分で作ったほうがいい。
まず、CSVからデータを取り込んで、グリッドと呼ばれる二次元配列みたいなものに入れる機能を製作。


↑このようなデータを

グリットのデータに文字列は文字列のまま、数字は数字として読み込む

完成したのでつぎはMAPという連想配列みたいな形式にCSVファイルを読み込む機能も作る。

↑このようなデータを

MAP配列のキーと値に分けて取り込む、もちろん数字は数字、文字は文字で、csvの一行目はその列の説明が入っているので、2行目から読み込んでいくように。
これでデータ取り込みは完了した。
連想配列(MAP)の方は言語データとしてそのまま使うのでもうこれ以上やることはないけど、グリッドの方は一行削除などのデータ管理を今回は作らないといけない。
RPGなどを作る場合は、このような機能は確実に必要になるのでHSPでやってたときはこんな機能は山ほど作ってました。
しかしgamemakerは文字列操作に強いとは言えず、あるもので(関数)やりくりして作る感じだった。
でもまあこれだけあれば何でも作れるよってくらいはあるので、十分といえば十分です。

データの管理はまだどんな機能が必要なのかわかんないので作れないけど、とりあえずこれで装備のデータは取ってこれるようになったので、ようやくキャラが装備したら画像が変わる機能を作れるようになった。
いままでもやれたけど、それだとあまりにも場当たりすぎて後でなんの役にも立たないので作った訳だけど、一度作るとずっと使えるので、こういう機能は基本的に使わなくても少しずつ作っていきます。
今は勉強中なんだけど、今のうちにゲーム製作に必要なライブラリを自前で揃える感じになってます。
gamemakerのマーケットに有料や無料で素材や機能が色々と置いてあるので、そこでいいものがあればそちらも使って行きたい。
今日はこんなところ。

ではまたね。



2016年02月16日
不調
PCが不調です・・・
前から若干CPU温度が高くて、夏までにどうにかしたらいいか…
と思ってたら急にPCが落ちるようになった。
気になってた温度を調べてみると、アイドル時70度以上w

gamemakerをビルドする時は、コアを全部使うので強烈な熱を発してた。
CPUがすぐ限界の熱さに到達するので、これをどうにかするまではあまり何も出来ない。
CPUクーラーが軽く外れてる…とかならいいけど。
いや、良くはないんだけど、くっつけたら直ると思うし。
とりあえずグリスなどメンテ用品を買って来るまでは、超低電圧で稼動させつつ動画でも見ておくしかなくなった。(多少壊れていようが動かします)
それで復活すればいいけど、復活しなければマザーボードとCPUを交換しようと思う。
なんだか不調だけど、夏まで位は持つだろと思ったけどなー。
今日はこんなところです。


ではまたね。





2016年02月17日
クリーニング完了!
グリスとか、エアダスターなどpc清掃用品を買ってきて、pcを盛大にばらして掃除。
cpuクーラーもバラしてきれいに。
どうみてもホコリが焦げてこびりついているような物も削り落としました。
その後、起動してみると通常時20度位にまで温度が下がった。
高負荷でも人肌程度、35~6度までしか上がらない。
うちの部屋、まだ寒いのにcpu温度が70度まで上がってたのはよっぽど限界だったんだろうな。

これでまた色々できるぞ!
というか壊れてること前提で、新マザーボードとCPUも買ってきたんだけど、どうすればいいんだろうこれは…
若干性能が良くなるかもしれない程度の差しかないので、わざわざマザーボードを外したくはない。
メモリとかなら嬉々として挿すんだけど…
そのうち似たような性能のPCが一台爆誕するのだろう。きっと。

さてPCは一段落したので、ここからはgamemakerの話をしようと思う。

 作者は毎日リファレンスを見続けて、どんなものがあるかと、よく使いそうなものを試して、高度なデータ構造も試してみた。
ただ、キューとスタックは使い慣れてないので使い道が思いつかない…
それと、ネット通信関係をまだ使っていないので、そこまで使いこなせるようにならなければならない。
実際に使うかどうかはわからないにしても一通り使いこなせるようになっておかないとアイデアも浮かばないしね。

作者はGAMEMAKERでHTML5出力可能にしてあって、それだとHTML5の機能でサーバー通信は鬼のように容易だけど、基本はウィンドウズの実行ファイルで作ります。
ウィンドウズの実行ファイル形式での通信試作。

たとえば、お店の在庫の共有実験?とか。
鉱山で鉄鉱石5個を掘ってきて、それを売るとみんなのお店の鉄鉱石の在庫も5個増えるみたいなね。
実際はお店までは作らず、実験なので在庫の共有化の試作と確認だけなんだけども。

しばらくは暇があるときに試作を積み重ねていきます。
ではまたね。



  2016年02月19日

 

2016年02月23日