スキップしてメイン コンテンツに移動

投稿

10月, 2015の投稿を表示しています

ハロウィンゲームをハロウィン当日ぎりぎりリリース(・`ω・´)

急に冷えてきてもう眠いけど ハロウィンのうちにブログを書きたいので頑張ります(´ぅω・`) 先月下旬あたりから作り始めたゲームをついにリリースできました! タイトルは「胡桃坂(くるみざか)ハロウィンパーティ」です。 胡桃坂ハロウィンパーティ:無料ゲーム配信中! [ふりーむ!] 【ニコニコ動画】【探索&着せ替え】胡桃坂ハロウィンパーティ【HSP】 いつものようにBGMと効果音は「 フリー音楽素材/魔王魂 」様の素材を利用させていただきました。 特にメインのBGMがすごくハロウィンっぽい雰囲気を出してくれています。 先月からのブログを見ている方には見慣れた画面かもしれませんが、このラスト10日間で劇的な速さで実装が進んだ気がします。 システムを使うためのデータ作り キャラの描画やマップ移動のシステムが大事なように、話したりアイテムをくれたりするNPCの設定も大事です。 矛盾がないようにフラグを管理しながら、NPCを追加していきました。 衣装を細かいものまで数えたら53種類になっていましたが、それをどのように配置するかなども悩みました。 そのためのクエストやミニゲームへの自然な流れなども作っては少し修正して作りました。 プログラミングとは違った難しさがありましたが、短いストーリーを考えるのも楽しい気がします。 にぎやかしのNPCの配置 某人探しのカリスマ的な絵本「○oー○ーを探せ」とまではいきませんでしたが、各マップに40体のエキストラ的なNPCを配置しました。 このNPCはにぎやかさと人探しのゲームのために配置しているので、話したりはしません。 それでもいろいろな衣装をつけて配置するのは、割と気合と時間がかかりました。 ミニゲーム「魔女のゲーム」の実装 ミニゲームは以前のブログでも追加したいといっていたのですが、実装したのはリリースの3日前くらいです。 半ば諦めていたのですが、勝手に脳内でこんなん作りたいと仕様が少しずつ固まってきていたのでほぼ1日で作ることができました。 基本的なシステムは通常のマップと同じですが、マップの雰囲気やリアクション(話しかけるとAIがランダムから一定の場所に向かうようになる)の変化という末端の部分の追加だけですんだのもスムーズにいった要因だと思います。 列

ハロウィンに間に合いたいHSPゲ製の経過報告

先月始めたころは、1ヶ月あるから何とかなるでしょうと思ってたけど ハロウィンまであと10日を切ってしまいました。 ここ10日間くらいは、ブログを書く余裕もない感じでした。 そもそも、まだキャラの素材がぜんぜん足りてなかったり、マップも調整必須な状況です。 でも、21:30を過ぎるとプログラミングの速度がものすごく低下することが最近わかってきたので、 その時間を有効利用してブログを書こうと思います。₍₍ (ง ˘ω˘ )ว ⁾⁾ #明日のこの時間はFFの新作アプリが出るからそっちをやりたい。。。 進捗報告 製作途中ですが、動画をとったので宜しければご覧ください。 テキストで説明するよりも、どんな感じに作っているかがわかりやすいと思います。 音楽と効果音は「 フリー音楽素材/魔王魂 」様の素材を利用させていただいています。 いつも思いますが、音楽をいれるとゲームの雰囲気が格段にあがります。 動画のとおりですが、次のような実装をしました。 ・PC(プレイアブルキャラクター)のほかのNPCを配置して勝手に移動するようにした。 ・HSP3Dish 対応をした。 ・マップを4つ作った。 ・マップに配置したポータルで他のマップへ移動できるようにした。 ・花火のエフェクトを追加した。 NPCを移動させるのは、スプライトを表示する機能を前回の段階で実装していたので簡単にできました。 移動とはいっても、ランダムな方向に毎回1歩進むだけです。 PCと同じように移動できるかどうかの衝突判定をしています。 HSP3Dish 対応 HSP3Dish 対応は、なんで最初からやらなかったのヽ(`Д´#)ノ ムキー!!という感じになりました。 HSP3Dish でリリースしたいという人は、最初から #include "hsp3dish.as" をいれて開発するといいかもしれません。 主に困ったのは画像の扱いです。 HSP3Dish でない場合は、アルファチャンネル付きの画像を描画するときに、アルファチャンネル用の画像をRGBの画像の隣に配置して gmode 7 で転送します。 これが、HSP3Dish では便利になって、 png の アルフ

HSPでマップをスクロールさせてみた

先日は、アニメーションするスプライトを作ってマップをうろちょろさせました。 今回は、そのマップをスクロールする機能を実装しました。 テスト用のアプリケーションでは、スプライトではなく円を塗りつぶしたものを移動させています。 そんなに大きくないマップですが、スクロールすると広く感じたり探検気分がでてきた気がします。 スクロールってわくわくするね₍₍ (ง `・ω・´ )ว ⁾⁾ スクロールの処理の概要 赤線の枠は、フレームと呼んでいます。 フレームはスクロール機能の設定値で、この枠からはみ出す場合にスクロールします。 追跡対象が枠の中で移動している間はスクロールはしません。 ただし、スクロールの範囲はマップ画像の範囲内です。 描画処理は前回書いたとおり、背景、キャラ、前景の順番で描いています。 描画のあとで、キー入力に応じて、キャラの移動先を決めます。 障害物があれば移動はしません。 障害物の判定 障害物の判定は、次のような当たり判定用の画像の色情報で決めています。 移動先の座標の色を取得して、色が黒でなければ移動します。 HSP には pget という色を取得する関数がありますが、 それより高速に行う方法が紹介されていたので、そちらを試してみました。 参照: buffer上の特定の1色の座標(1点)の高速検索方法は? - HSPTV!掲示板 mref bufVram, 66 で、変数に操作中のウィンドウの画像が割り当てられます。 あとは、 peek を使って bufVram の色情報へアクセスします。 idxVram = ((heightBuffer - y - 1) * widthBuffer + x) * 3 _b = peek(bufVram, idxVram + 0) _g = peek(bufVram, idxVram + 1) _r = peek(bufVram, idxVram + 2) widthBuffer, heightBuffer はウィンドウのサイズです。 VRAM はボトムアップの 24bit ビットマップ形式になっています。  参照: VRAMデータについて -

HSPで作っているゲームでキャラが動くようになったよ!

ノーベル賞すごいね! 昨日と今日と続けて日本人がノーベル賞に選ばれていて、ニュースが楽しい。 世界の多くの人類や家畜を救う研究とか知らなかっただけですごい人が日本にいるんだなぁ。 ニュートリノに重さがあったとか、その分野の人にとっては大ニュースなんだろうなぁ。 ヒッグス粒子が重さの粒子とか聞いた気がするけど、それと関係あるのかな? 科学番組は好きだけど、 結局なんとなくしかわからない SakuraCrowd です。₍₍ (ง ˘ω˘ )ว ⁾⁾ 進捗報告 先月下旬から作っているゲームなんですが、 マップの上をちょこまかとキャラが移動する仮組みを作ることができました! ヽ( ´¬`)ノ ワ~イ !! やしの木とかの前景にはキャラが隠れるようにしました。 あと、おおざっぱですが当たり判定をいれて、障害物がある場所は通れないようにしています。 移動は上下左右にななめを加えて8方向に対応しました。 パソコンもソフトウェアも進化しているらしく、高速化を意識していない処理でもさくさく動きます。ヽ( ´¬`)ノ ワ~イ !! とはいっても、あからさまに無駄な処理はしないように注意しながら作りました。 おおざっぱな流れをいうと、 背景画像を描く キャラクタを描く 前景画像を描く 矢印キーの入力を調べて、キャラクタの向きと位置を変えたりする。 一定間隔でキャラクタのアニメーションのフレームを切り替える この繰り返しです。 キャラクタは先日のブログに書いた方法で、パーツを重ねて描いています。 前景画像もキャラクタと基本的な処理は同じです。 入力処理 入力処理についてだけ、新しく追加したのでコードを抜粋します。 // 矢印キーにより移動させる stick key, 15 dx = 0: dy = 0 if key&1 : dx -= 8 if key&4 : dx += 8 if key&2 : dy -= 8 if key&8 : dy += 8 if (dx != 0 or dy != 0) { ScSpriteMoveBy IDX_SPRITE0, dx, dy, 1, idxP