MAMEなblog ~絵描きな戦記~
下手の横好きで迷走するM∀MEのブログ. ブルブラ攻略有り(なぜ?).オリジナル小説もあります. 絵を載せるために始めたブログだったはずなのだが・・・. 今はもっぱらゲーム製作.

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

ただひとつの愛を今 歌いたい

今日も王子でバイトでしたのよ.
気が付けば4連休のハズが,初日と最終日バイトでなんだか普通に2連休じゃんっていう.
まあお小遣いに変換されてはいるのですが.
世の中等価交換だ.
考えてみれば初日の早朝4時頃にはもう4連休計画はつまずいていたわけですね.
 
と,言いつつ本日は夕方出勤だったのでレポートを1つ済ませつつさらにプログラムを作れるくらいの余裕があったわけですよ.
なんという充実した休日であったことか.
そもそもあんな朝早くから起きてること自体が珍しい.
そんなわけで今日も吉里吉里マイだったわけですが見た目的には進展なし.
昨日載せたプログラムを汎用型に改造してました.
というのも,昨日の時点では,「フェイト」と表記させるために「フェイト」と打ち込んでました.
それじゃあフェイトが出ないときはどうすんねんということで,事前にステージ情報を専用ファイルから読み込んだ後に出撃準備プログラムに移行するようにしました.
ここをいじれば名前だけこっそり「なのは」にすることも…….
ステージ情報ファイルにはついでに敵の出撃情報も書き込んであります.
その情報も使って戦闘画面の最初は作成.
とりあえず選択した味方が配置した場所に表示されつつ,敵側も表示されるとこまで.
あとは,素早さ順に行動させたいので,素早さ判定ルーチンを思考.
したんだけど僕の頭脳では限界っぽかったのでまたも友人のS君の力を借りました.
S君の守備範囲はサハラ砂漠よりも広大です.
そんなわけでなんとなく目処はたちつつも,ユニット全員分の素早さをspeed配列に入れていかなければならない事実が発覚.
そこいらを書いて今日は終わりな感じです.
 
学んだこと
実は大変な発見がありまして.
最初の参考資料には
ゲーム変数f.は吉里吉里を再起動したときには読み込まれない.
とあったので,それはまずくねーということでほとんどの変数をシステム変数sf.で定義していたのですが.
実は僕の勘違いで,システム変数は吉里吉里起動時に読み込む変数.ゲーム変数はデータロード時に読み込む変数.という意味だったようです.
つまり1周目かどうかなどのセーブデータを超えた情報はシステム変数に.
セーブデータごとの好感度などはゲーム変数に.
一瞬の計算だけに使う変数は一時変数tf.に.
ということらしい.
まあ普通はそれくらい理解して使っているとは思いますが…….
 
では,見切り発車は怖いと痛感しつつ今日はこの辺で
水樹奈々で「SEVEN」を聞きながら
 
スポンサーサイト

きっと終止符のない この旅路

現在朝の5時半ですが.
出撃準備画面のプログラムが終わったっぽいです.
全部で空行・コメント行含めて282行.
まあそれなりにスマートにできたかなとM∀ME的には好評価です.
そんなわけでしてゲーム画面を初公開.
いるかわからんけど,似たようなものを作ろうかと思っている方のためにソースも中途半端に公開.
そもそも参考にできるほど綺麗かどうかは知らん.
ひょっとしたら吉里吉里じゃない方が(ry
※画面は開発中のものであり,実物とはかなり異なります.
 というか出てる人とかなんの関係もありません.
 
game1

 ユニット選択画面
 
とてもシュールな数字が並んでいますがこれは試作だからですよ?
まずはここでユニットを選択します.
いきなり 出撃 とか選択しちゃだめです.
ユニット名の文字がリンクになっているので,マウスでクリックできます.
[link exp=f.pilot='sinjyo',f.name='新庄・運切',f.Unum=0 target=*santaku]新庄・運切[endlink][r]
[link exp=f.pilot='fate',f.name='フェイト',f.Unum=1 target=*santaku]フェイト[endlink][r]
ついでにいろいろな変数に値をいれときます.
でもこの通り,誰を選んでも飛ぶ先は *santaku です.
 
game2

 三択画面
 
選んだユニットを配置するのか能力を確認したいのかはたまた前の画面に戻りたいのかを選択します.
ラベル名もずばり *santaku .
ここのちっこい窓に名前を出したいが為に,前の画面で f.name='新庄・運切' とかやってます.
でもいまいちシナリオ変数を使えばいいのか一時変数を使えばいいのかわからん.
まあどっちだから困るってことはないんだけど.
とりあえずシステム変数以外はロードで読み込まれないってだけ押さえておけば.
ここも文字がリンクです.
すでに配置済みの場合 配置 の変わりに 取消 が表示されます.
そういや配置取りやめコマンドがないなーと思って表示されるようにしたのですが,かわりに表示されるようにしたお陰で,ついでに二重配置も防止できてしまったという棚ぼた仕様.
あと少しで防止プログラムを書くところだったのは秘密.
 
game3

 ステータス表示画面
 
能力もといステータス画面が見られます.
や,べつに言い直したことに意味はないですけど.
顔絵が上も下も一緒なのはパイロットとユニットが一緒だから.
新庄は尻神様であっても人間ですので.
実際はロボット物なので別々になります.
攻撃力等は別ファイルで定義しておいた sf.sinjyo_kogeki=110 とかから呼びだして表示してます.
技とか特殊能力とか精神コマンドは別ファイルから call を使って表示させてます.
あ,右側の1段目が技,2段目が特殊能力,3段目が精神コマンドです.
特殊能力ってのは,配置場所によって発動する能力です.
特殊能力と精神コマンドは,名前だけじゃ効果がわからないのでカーソルを乗せると効果が表示されるようになってます.
[link hint="攻撃力上昇"]【後】根性シューター[endlink]
な感じです.
要は飛ぶ先が設定されていないリンクにヒントを追加してあるだけです.
この画面だとカーソルが消えてるけど 【後】根性シューター の効果が表示されてますね.
つまり新庄君は 後衛に配置されると攻撃力が上がる ということです.
後衛とは7~9番です.
 
game4

 ユニット配置画面
 
シュールな数字をクリックすると配置されます.
2には既にフェイトを配置済み.
この画面だとカーソルが消えてるけど,色が変わってる8に乗ってます.
絵を押せるってことはグラフィカルボタン機能を使ってる(クリッカブルマップはここでは不向き)わけですが.
シュールな数字達は100×100の画像です.
本来なら画像を3つつなげて300×100にしとかないといけなところですが.
上に幅100までは透明,幅101~300は半透明の画像をグラフィカルボタンとして置いているので,シュールな数字達がボタンのように見えるわけです.
[image storage="masu_1.png" layer=0 page=fore left=240 top=16]
[layopt layer=0 page=fore visible=true]
[layopt layer=message9 page=fore visible=true]
[position layer=message9 page=fore left=0 top=0 width=800 height=600 marginl=0 margint=0 marginr=0 marginb=0 color=0xffffff opacity=0]
[current layer=message9 page=fore]
[locate x=240 y=16]
[button graphic="button.png" exp="f.haichizumi[f.Unum]=1,f.layer=0" clickse="ピコ2.wav" target=*umekomi]
こんな感じで.
clickse="ピコ2.wav" があるので押すと初音ミクの声で ぴこ♪ って言います.
友人のS君が作ってくれました.(S君ありがとう)
ちなみにボタン画像はメッセージレイヤに乗るので,この場合は専用の透明メッセージレイヤを用意する必要があります.
で,押すと *umekomi に飛んで画像が埋め込まれます.
その際に配置済みフラグ(配列) f.haichizumi[f.Unum] に配置したマスの数字を入れておきます.
これを使って三択に 配置 の変わりに 取消 を表示させたり,その 取消 を選んだときにどこにある画像を数字に戻せばいいか判断したりしてます.
ただこのままだと,配置場所選択でフェイトの場所に新庄を上書きしたあとにフェイトの三択画面にいくと 配置 が 取消 と表示されてしまう(新庄の配置済みフラグ f.haichizumi[0] が0以外の数字になったままの為)ので,*umekomi の際に毎回
[iscript]
var damy, i;
damy=f.haichizumi[f.Unum]; //配置済みフラグをダミーに受け渡し

for(i=0; i<=1; i++)
{
if(f.haichizumi[i]==f.layer+1)
f.haichizumi[i]=0;
}

f.haichizumi[f.Unum]=damy; //ダミーから配置済みフラグを戻す
[endscript]
こんな感じで上書きされたのかどうかを判定してます.(上書きされてたら配置済みフラグを0に)
ちなみに[iscript]と[endscript]に囲まれた場所はKAGではなくTJSを書き込みます.
一応説明しますと,吉里吉里はKAGという言語で書かれたシナリオファイルを再生しますが,KAGはTJSという言語で作られています.
そんなわけで吉里吉里はTJSも読めるのですというかコンフィグとか基本設定とかはTJSです.
そしてKAGにはif文がないので,for文を使うにはTJSで書き込むしかないという…….
ここでは i<1 の間しか繰り返してないけどこれはユニットが2体しかいなから.
ユニット数にあわせるので,将来的にはここも変数かなあとか.
 
 
とまあ,本日は60%は吉里吉里知ってる人にしかわからず,10%は本人にしかわからないんじゃないかという内容でお送りしました.
では,でもそんなの気にせず今日はこの辺で
水樹奈々で「Sing Forever」を聞きながら
 

テーマ:日記 - ジャンル:アニメ・コミック

昨夜の出来事.

時は丑三つ時もとうにすぎた深夜4時過ぎ.
僕はパソコンに向かっていた.
父「まだ起きてるのか?」
M∀ME「ああ」
父「課題がまだ終わらないの?」
M「別にそんなことはないけど.明日大学休みだから」
父「はあ!? 聞いてないぞ」
M(いや,言ってな……)
父「だったら明日働け.だから早く寝ろ」
M「何ですとー!?」
 
というわけで家族の一方的な愛に包まれて今日は王子でバイトでしたのよっていうか3時間くらいしか寝られなかったっちゅーねん.
大学休みだとか言わなきゃよかった.
 
そんなことがありまして,昨日更新するはずだった吉里吉里関係.
といってもなんだかどこまでやったのかうろ覚え…….
ユニット選択→ステータス表示を完成させたはず.
そこで
学んだこと
エンティティ
 タグの属性値をTJS式で表す機能をエンティティと呼ぶ.
 &TJS式 と表記する.
 TJS式ってのはつまり計算式.従って,属性値に1つの数を書くことろを計算式にしたいときに使う機能です.
 数式を入れられるということは変数が使えるということで.
 変数1つでも計算式なので,属性値に変数の中身を使うことができたわけです.
 つまるところラベル名に変数を入れてジャンプすることが可能だったのですよ.
 これで構想がいろいろ実現しましたよって.
 メデタシメデタシ.
 
 
では,なんかあまり休めそうもない連休に絶望しつつ今日はこの辺で
CLANNADで泣きそうな夜に
 

テーマ:日記 - ジャンル:アニメ・コミック

伝えたい音ならいつでも 此処に用意してあるから

今日は高尾山を登ってきました.
意味なんて微塵もないんだぜ.
人間は無意味なことに喜びを覚える生き物なのである.
まあ無意味でも有意義あるいは有意味な場合に限りですが.
今回が有意義だったかどうかは秘密だ.
2時間ほど食べ歩きながら山頂へ.
なんつーか人が多すぎて自然と戯れちゃったぜ感は少なかった.
帰りはリフトで.
べ,別に疲れたからとかじゃないんだからねっ.
乗ってみたかっただけです.
しかしながら乗ってみるとこれがセーフティーバーなしベルトなしの絶叫マシンでした.
自分の高所恐怖症っぷりを再確認した12分間でした.
 
帰ってからはゲーム製作.
戦闘システムを変えたのでほとんど作り直しorz
見切り発車はやめようなっ.
今まではユニットがスパロボ的に増える予定でしたが,MAX7人に変更.
まあストーリーが全然違うわけですが.
要は作るゲームを変えたんだな.
理由はまあ……ね.ほら,ユニット沢山つくるのメンドイし…….
 
そんなわけでシステムは9対9と見せかけて自軍は頑張っても7体しか出せないシステムです.
自軍は3*3=9マスに自由に配置します.
1列目は前衛,2列目は中衛,3列目は後衛役です.
配置場所によって能力が上がったり下がったり.
敵は9マスフルに埋めてたり埋めてなかったり.
 
今日やったことは主に戦闘前のインターバル作成.
ユニットをマスのどこに配置するかを決めたり,ユニットの能力を確認したりするところですね.
ユニットを選択→配置orステータスor戻るの三択画面→ステータス→三択画面に戻る→ユニット選択に戻る
の手順ができるようになった感じ.
ステータスにはまだ情報を表示させてないけど.
今後はステータス画面に体裁はともかく情報をすべて表示させるのを目標に.
それが終わったら配置選択かな.
 
学んだこと
変数に文字列を入れるときは’’でくくる.
 C言語的には””なんだけど,””を使うとif文内でその文字列を評価するときに””が被ってエラーが出る.
 入れた文字列を評価とかせずに,ただ表示させたりするだけなら’’すらいらないんだけどね.さすがはタイプルーズ言語と言ったところか.
変数をラベル名としてジャンプさせることはできない.
 や,ひょっとしたらできるのかもしれませんが.僕が手を尽くした限りは無理かと.
 これができるといろいろ楽なんだけどなあ.
 
 
では,プレゼンの原稿が微塵もできていない現実から目を背けつつ今日はこの辺で
水樹奈々で「Bring it on!」を聞きながら
 

テーマ:日記 - ジャンル:アニメ・コミック

どんな綺麗な空より 君のピアノが好きだった

今日明日は課題の修羅場だぜっ.
というわけで(?)買い物行ってきました.
 
今日の戦利品
とある化学の超電磁砲01
 美琴が主人公だけに,僕の一押しキャラ白井黒子の出番満載!
 やっぱ黒子はいいキャラだー.
 もういっそ黒子メインで「とある学園の風紀委員ジャッジメント」とかどうでしょう.
とある魔術の禁書目録1[漫画]
 当初は超電磁砲しか買う予定はなかったんですけども.
 まあ小説自体は持ってるわけじゃないからいいかな的な.
WORKING4
 いつの間にか出てた.
 や,出てすぐの頃は出たの知ってたんだけど.
 完全に忘れてた.
灼眼のシャナXVI
 今度こそ本編だぜっ.
GREAT ACTIVITY(水樹奈々)
 待ってました!
 本日の目玉商品.
 ぶっちゃけ他の買い物はオマケ(ぇ
 とりあえず帰ってからずっとヘビーローテンション中.
 今日も明日もエンドレスループ.
 これで課題を乗り切るぜっ.
 
 
では,現実逃避をここらで切り上げるので今日はこの辺で
水樹奈々で「Orchestral Fantasia」を聞きながら
 

テーマ:日記 - ジャンル:アニメ・コミック

この世に生まれてきた印を地球のどこかにラクガキしたい

自動車工学の講師が今日から変わってた.
先週までの講師が好きだからという理由で履修していただけに,どうなることかと思ったけどわりとよさそうな人で安心した.
これなら来週以降も続けられそうだよハニー.
 
efの主題歌「euphoric field」を略すと「ef」になることに今更気付いた.
そもそもefってどんな意味なんだろう?
まあ調べる気力はないんですけども.
ていうかですね,課題に追われすぎてて明日C++の中間試験なのを失念していたのですよ.
わはー.
どうする俺.
まあ基礎的なことはなんとかなると思うけど.
型の利用可能範囲の桁数とか基礎過ぎることは覚えてないというか覚える意味あるのか.
あとはポインタの細かいとことかクラスとかわりとピンチ.
しかもあの先生,それはなぞなぞだよっていうレベルの問題だしてくるからなあ.
そうなったらお手上げだぜっ.
 
 
では,間違って吉里吉里のタグを書かないことを祈りつつ今日はこの辺で
unicorn tableで「FLY AWAY」を聞きながら
 

テーマ:ef -a tale of memories- - ジャンル:アニメ・コミック

迷路の果てまで探していたものは胸の奥に

昨日のバイトはH大学で照明のお手伝いでした.
敷地内にトンネルから吊り橋まで持つH大学の巨大さに感動した.

1つでも課題を減らしていくことが求められているわけですが集中力など持ち合わせているはずもなく.
合間にプログラム製作.
 
今日やったこと
・メッセージ履歴の調整
発言キャラ名とその台詞が繋がって表示されていたことが判明.
というか今日初めて履歴見た.
メッセージレイヤをわけている以上綺麗な解決法がないので対処療法的にテキトーに修正.
・シナリオファイルの分割
戦闘用のプログラムが長くなるので挑戦.
[call]タグではなく[jump]タグを採用.
理由は[call]だと[return]とかあってメンドそうだったから.
戦闘会話とか設定するためには,戦闘ごとにファイルを作らないといけない気がしてきた…….
・ステータスの呼びだし
あらかじめ設定しておいたHPなどのステータスをキャラごとに呼びだして表示することに成功.
まあ設定できたんだから読み出せるのは当たり前だけど.
 
今日学んだこと
・メッセージ履歴への出力停止
[history output=false]でこのタグ以降のメッセージを履歴に残さなくなる.
むしろこのタグを忘れていた自分に驚愕.
htmlみたいに終了タグがないので気が付いたら履歴に何も残ってないとかありそうで怖い.
・コメントタグ
シナリオファイル内ではC言語のように/*~*/で囲ってもコメントにならない.
50行くらいまとめてコメントにしようかと思ったけど1行ずつ頭に ; を付けないといけないとは…….
とても不便です.
 
今は呼びだしたステータス,つまり能力値をどうやって表示させるか検討中.
こういうのって普通は攻撃力とかだけじゃなくて特殊能力とか所持アイテムとかそんなのも表示させないとですよね.
となるとやっぱ画面全部を使わないとダメかー.
とか.
そもそも所持アイテムの情報とかどこで管理すんねん.
とか.
アイテムなどの情報含め,全ステータス情報を別ファイルで管理するのが近道のようなそうでもないような.
かと言って戦闘用プログラムの先頭にそこらの情報を書いちゃうとソースがえらい長くなるし.
うーむ.
 
 
では,減らない課題(当たり前)におののきつつ今日はこの辺で
田村ゆかりで「Beautiful Amulet」を聞きながら
 

テーマ:日記 - ジャンル:アニメ・コミック

今日も

懲りずにプログラミング.
 
今日やったこと
文字がおかしな位置から始まる問題の解消
アドベンチャーパートの試作
 
昨日の文字がおかしな位置から始まるという問題点はとりあえず解決.
原因はConfig.tjsの方の設定で,シナリオ解析モードがfalseになってたことでした.
trueにしたら治ったけどなぜかはわからん.
そしてtrueにした副作用として改行タグが必要になりました.
うーむ.
アドベンチャーパートっぽいものも完成.
手順としては
1.キャラ名表示用のメッセージレイヤ増設.
2.キャラ名を中央寄せで表示.
3.立ち絵表示.
4.台詞出力.
中央寄せは[nowait]タグを使わないと表示のされ方が大変なことになることが判明.
多分表示させっぱなしのところじゃないと使えない.
立ち絵はテキトーな絵です.αチャンネル保存してないのでちょっと残念な感じ.
まあ拘るのは後回しってことで.
 
次は戦闘パートに戻って,3対3,つまり6キャラ分のステータスウインドウを表示させるあたりを.
って言っても誰にも伝わらないのが悲しいところ.
形になったらキャプチャーします.
 
 
課題のこと
やっぱり書いてどうなるわけじゃないけど戒めのために.
授業のレポートと期末考査代わりのレポートとテクニカルでコミュニケーションなレポートの提出が15日に.
インターンシップのプレゼンテーションの提出日が16日に迫っております.
1日1つのペースで終わらせないと間に合わん.
ちなみに10日(土)はバイトですあわわ.
 
 
では,これのせいで最近勉強していない現実に恐怖しながら今日はこの辺で
あれ? 俺マジでヤバくね?
 

テーマ:日記 - ジャンル:アニメ・コミック

想いを込めても 言葉はときに無力で

とりあえずマジでゲームのプログラムを書き始めてみた.
使用するのは吉里吉里に決定.別に深い意味はないんだけど,情報が多そうだったから.あと手元にあったから.
ゲームの形式はADV風のノベルパートとテキトーな戦闘パート.
3人1組のパーティを次々に入れ替えて戦闘させようかと.
わざわざ吉里吉里で戦闘するのもどうかと思うけど.
 
今日やったこと
ウインドウの基本設定
戦闘パートの作成
  背景の表示
  メッセージレイヤーの表示
 
これだけ…….
これだけでわりとかかったというかほとんどメッセージレイヤーのせいですな.
ひたすら2枚目のメッセージレイヤーが表示されない.
散々試行錯誤した挙げ句,こんなソースになりました.
 
[layopt layer=message0 page=fore visible=true]
[layopt layer=message1 page=fore visible=true]
[position layer=message1 page=fore left=634 top=16 width=150 height=100 marginl=5 margint=5 marginr=5 marginb=5 color=0x000000 opacity=255]
[current layer=message0 page=fore]
 戦闘開始![p]
[current layer=message1 page=fore]
[font size=10]
新庄・運切  Lv.10
HP:3000/3000
EN:200/200
[resetfont]
 
手順としては
1.layoptでメッセージレイヤー1と2を全面に設定及び可視化.
2.Config.tjsで設定していないメッセージレイヤー2を詳細設定.
3.currentで作業するメッセージレイヤーを指定して文字を出力.
です.
layoptに辿り着くまでに凄いかかったのですよ.position以下だけで動くと思ったんだけど.
うーむ.
メッセージレイヤー1は普段の会話,2は戦闘時にユニットの状態を表示します.
最終的には3対3の戦闘になるので,2のような小型メッセージレイヤーが6枚になります.
ちなみにこのソースで表示させている文字に深い意味はありません.
 
そして現在の問題はなぜか文字の表示され始める位置がおかしいこと.
すごい下の方から出るのですよ.マージンには問題ないんだけど.
うーむ.
 
 
では,メッセージレイヤーごときに苦戦する自分に絶望しつつ今日はこの辺で
霜月はるか†Revoで「Schwarzweis ~霧の向こうに繋がる世界~」を聞きながら
 

テーマ:日記 - ジャンル:アニメ・コミック

君が流す涙 拭うためだけに僕はここにいるよ

自宅の目の前の踏切で電車5本分待たされたM∀MEです.
開かずの踏切怖い.
 
最近夕食後に異常に眠くなる.
食事の後に眠くなるのは生物として正常な反応だとは思うけど,わりと生活に支障が出るくらい眠くなるてか寝ちゃうんだぜ.
お陰でいろいろ時間が足りない.
せっぱ詰まった課題を片づけるだけで日々が過ぎてゆく.
何か時間を有効に使う術はないものか(寝なければいいという意見は却下).
 
アニメのこと
ガンダムOOがいろいろと.
強化人間デザインベイビーとかいう単語が出てきたり,そのデザインベイビーである少尉が出てきたり,その彼女のザクがルナマリアピンクだったり,アレルヤが二重人格だったり,人格が入れ替わると髪の分け目が左右入れ替わったり,左右で目の色が違ったり,デザインベイビーの彼女と感応したり,その彼女とキレたときの人格の目(右目)の色が同じ金色だったり.アレルヤもデザインベイビーとかなのかしらん.てか金色で強化人間ってどこのルリルリ…….
 
今日の名言
「駅前休学。」
  AERA

AERAという雑誌は毎号時事ダジャレの見出し語が付く.んで,今回のがこれ.
一言でここまで的確に言い表せるってのは凄いと思うのですよ.
 
 
では,ゲーム製作についてつらつらと思案しながら今日はこの辺で
坂本真綾で「tune the rainbow」を聞きながら
 

テーマ:機動戦士ガンダムOO - ジャンル:アニメ・コミック

プロフィール

M∀ME

Author:M∀ME
・職業
学生(医療関係のロボットを日々研究中)
・趣味
お絵かき,アニメ鑑賞,読書
・苦手なもの
早起き,勉強,トマト
・好きな言葉
刹那主義(今が楽しければいーじゃん)
・好きな小説
終わりのクロニクル,空の境界,グインサーガ
・好きな歌手
水樹奈々,カーペンターズ,ビートルズ

最近の記事

最近のコメント

カテゴリー

回る~回ってく♪

ツ・ナ・ガ・ル!

月別アーカイブ

ラッセン美術館

ブログ内検索

最近のトラックバック

RSSフィード

ブロとも申請フォーム

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。