じゅんG の Game Blog: 10月 2017

YouTubeにて、アイワナ実況動画を公開しています。

YouTubeにて、アイワナ実況動画を公開しています。

※自作アイワナは、このブログの下部よりダウンロードできます。

2017年10月26日木曜日

第5作目の自作アイワナの公開、及び使用楽曲の紹介 【I wanna enjoy the JUN-G SPIKE】


前回の第4作品目のアイワナ公開からそれほど間が空いていませんが、今回第5作品目のアイワナが立て続けに完成しましたので、公開させていただきたいと思います。

タイトルは「I wanna enjoy the JUN-G SPIKE」
現在の最新は「Ver1.00」となっております。


今回の作品の概要は、

・短編針ゲ(配置を越えて即セーブ多)
・4ステージ(数マップ)+超短い耐久ボス(1体)
・難易度:中級者~上級者(中級者寄りで作りましたが、一部高難度配置有)
・セーブデータは一つ
・難易度選択なし
・隠し要素なし

となっております。

ちなみに、私が制作したステージの順番は【左上→左下→右下→右上→耐久】という流れです。

また、前回に続き、今回もこの記事内で「ゲーム内使用楽曲」を紹介させていただきたいと思います。






------以下、ネタバレ注意------


























-----------------------------

オープニング

 ⇒ Feather of the Angel/FLASH☆BEAT

ステージセレクト
 ⇒ chill the sun/gimgigam

まどかマギカステージ(1マップ目)
 ⇒ コネクト(アレンジ/Instrumental/源頼朝)

まどかマギカステージ(2マップ目)
 ⇒ Sis Puella Magica!

けものフレンズステージ(1マップ目)
 ⇒ ようこそジャパリパークへ(nmk Eurobeat mix)

けものフレンズステージ(2マップ目)
 ⇒ ぼくのフレンド(オーケストラアレンジ/Hal.N)

東方ステージ(Hiziri Room)
 ⇒ 感情の摩天楼/彩音 ~xi-on~

東方ステージ(Sanae Room)
 ⇒ 少女が見た日本の原風景/彩音 ~xi-on~

東方ステージ(Yuyuko Room)
 ⇒ 幽雅に咲かせ、墨染の桜 ~ Border of Life/=NeutraL=

ニーアオートマタステージ(1マップ目)
 ⇒ 遊園施設/NieR Automata

ニーアオートマタステージ(2マップ目)
 ⇒ 遺サレタ場所 遮光/NieR Automata

耐久ボス戦(戦闘前)
 ⇒ Your Best Friend/Undertale

耐久ボス戦(決戦)
 ⇒ Your Best Nightmare/Undertale

究極の選択
 ⇒ Fallen Down/Undertale

エンディング
 ⇒ カナリアスキップ/まんぼう二等兵

-----------------------------

~初級者の方ですと、なかなか難しい配置も多いのでしんどいかもしれませんが、それでも一つの配置を越えたらセーブ有と、わりとセーブ区間を短く作ってありますので、根気よくプレイしていけばクリアできる難易度かと・・・思います。

2017年10月25日水曜日

【第3回】エフェクト(一瞬光らせる)が出るセーブブロックを作る/キッド君の生存に応じて特定の動作(音声を流す等)をさせる【アイワナ制作備忘録】


【はじめに/注意事項など】
・使用しているGMは、Ver8.1 Liteになります。
・使用しているアイワナエンジンは、I wanna be the engine yuuutu editionです。
・自作アイワナで使用したもののみの掲載となります。
・あくまで私なりのやり方ですので、もちろんもっと簡単な方法もあるかもしれません。参考程度とご認識ください。
・だいたい1記事でメモ2個くらいの掲載で進めていきます。※更新頻度は不定期
・ご質問にも極力お答え致しますが、掲載外の質問にはお答えできません。


【メモNo.5/弾が当たったときにエフェクト(一瞬光らせる)が出るセーブブロックを作る方法】

これも自己流にはなりますが、私は以下(一例)の方法で実現させています。

まず、弾が当たったときに表示させるエフェクトのスプライト(32*32)を作ります。
そして、そのスプライトを用いたオブジェクトのイベントコードを以下のようにします。


・Create内
 image_alpha=0
 stp=0   ///これは任意の変数

・Alarm0内
 image_alpha+=0.1
 if(image_alpha=0.7){
 alarm[1]=1
 stp=1
 }
 if(image_alpha<0.7 && stp=0){   ///0.7→どこまで可視化させるかの値
 alarm[0]=1   ///可視化までのスピード値、上げれば遅くなる
 }

・Alarm1内
 image_alpha-=0.1
 if(image_alpha=0){
 stp=2
 }
 if(image_alpha>0 && stp=1){
 alarm[1]=1   ///透明化までのスピード値、上げれば遅くなる
 }

・Collision(bullet)内
 stp=0
 alarm[0]=1
 with(other){
 instance_destroy()
 }

これで弾が当たった時に予め作ったスプライトが表示され、且つ弾も消えてセーブブロックの役目も果たすというとっても素敵なオブジェクトを作ることができました。




【メモNo.6/キッド君が生きている、若しくは死んでしまった時に限って特定の動作(音声を流す等)をさせる方法】

実用的に平たく言えば、
・キッド君がもし生きていたら次のルームへ移動させる とか、
・キッド君が死んでしまったら、死亡時のオリジナルボイスを流す 等です。

このキッド君が生きて/死んでいたら~という条件式(if)は以下であらわします。

if(instance_exists(player)=0{   ///0は死んでいたら、1は生きていたら
ここに実際の条件を入れます


さて、私なりの方法にはなりますが、例えば「キッド君が死んでしまったら特定の音声を流す」という動作を実現させる場合の方法を書きたいと思います。
まず何某かのスプライト(何でもOK)を用いて、一つのオブジェクトを作ります。

そのオブジェクトのイベントコードを以下のようにします。

・Create内
 image_alpha=0   ///これでオブジェクトを透明にする
 sound_stop(任意のサウンド)   ///リスタートしたときに前音声を止める為
 stp=0   ///任意の変数

・Step内
 if(instance_exists(player)=0 && stp=0){
 sound_play(任意のサウンド)
 stp=1   ///この条件を足さないと音声が新たに再生され続けてしま
 }


これをどこか好きなルームの適当なところへ一つ配置すれば、上記動作を実現させることができます。

では、また不定期に更新していきたいと思います!!

2017年10月9日月曜日

【第2回】弾などのオブジェクトを大きく(小さく)していく/無限ジャンプをできるようにする【アイワナ制作備忘録】


まだ記憶が新しいうちに、次の記事を書いていきましょうか(^^

【はじめに/注意事項など】
・使用しているGMは、Ver8.1 Liteになります。
・使用しているアイワナエンジンは、I wanna be the engine yuuutu editionです。
・自作アイワナで使用したもののみの掲載となります。
・あくまで私なりのやり方ですので、もちろんもっと簡単な方法もあるかもしれません。参考程度とご認識ください。
・だいたい1記事でメモ2個くらいの掲載で進めていきます。※更新頻度は不定期
・ご質問にも極力お答え致しますが、掲載外の質問にはお答えできません。


【メモNo.3/弾などのオブジェクトを徐々に大きく(小さく)していく方法】

まず、オブジェクト等の画像を大きく(小さく)する変数は、

・image_xscale ///横の大きさ  1が元、0.5で半分、2で倍
・image_yscale ///縦の大きさ  1が元、0.5で半分、2で倍

になります。

これを弾のオブジェクト内に、例えば、

・Create内
 move_towards_point(player.x,player.y,3)
 alarm[0]=25

・Alarm0内
 image_xscale+=0.05
 image_yscale+=0.05
 alarm[0]=2

と記述すれば、この弾のオブジェクトが生成されたと同時にキッド君へ向かって飛んでいきつつ、一定時間で徐々に大きくなっていくという演出ができます。


※徐々に小さくしたいときは、image_xscale&image_yscaleの値を徐々にマイナスしていけばオッケーです。但し、image_scale値が0を下回ると、画像が反転し反対に大きくなっていってしまうので、徐々に小さくしたいときは、弾のオブジェクトのAlarm0内のコードを以下のようにした方がよいでしょう。

・Alarm0内
 if(image_xscale>0 && image_yscale>0){
 image_xscale-=0.02
 image_yscale-=0.02
 alarm[0]=2
 }

 if(image_xscale<=0 && image_yscale<=0){
 instance_destroy()
 }

これで、画像のサイズが0になったとき(つまり視覚から消えたとき)に対象が削除され、消えているのに当たり判定が残るという現象も回避できます。



【メモNo.4/特定のルームにおいて無限ジャンプをできるようにする方法】

これは超個人的で且つ超応急的な方法になるかもしれませんが、私は以下の方法でおこなっています。

まず、画面全体を覆うようなスプライト(画像)を作成します。(Size:800*608)


そして、これのイベントコード内に以下のように記述します。

・Create内
 image_alpha=0

・player内
 player.djump = true ///2段ジャンプが行える状態を常に真にする

・player2内
 player2.djump = true


あとは、このオブジェクトを特定のルームの最背面に配置すれば無限ジャンプができるようになります。こうすれば、特定のルームだけ無限ジャンプが行えますし、また不要になればそのオブジェクトをルームから削除すればいいだけなので、比較的簡単な方法かな~と思います。(というか、この方法しか思い付かなかっただけというww)


17/10/14 追記
若しくは、何某かのオブジェクト(32*32等)のSTEPイベント内に、

player.djump=1
player2.djump=1

-----又は、

with(player){
djump=true
}
with(player2){
djump=true
}

と記述しても、同じく動作するようです。



ということで、これにて第2回のアイワナ制作備忘録を終了したいと思います(^^

2017年10月7日土曜日

【第1回】でかいリンゴの消滅と共に拡散弾を放つ/エンドルームに入った瞬間に経過時間を止める【アイワナ制作備忘録】


自作アイワナも現時点(17/10/7)で4作品となり、その各制作過程でも「あれ、これ前回どうやって実現させたんだっけ?」と各演出や弾幕の作成で「???」となることが多く、その度に過去の作品のコードを見たり、ネットで色々と調べたりを繰り返しておりました。

そこで今回からは、私のこのブログで私なりのやり方にはなりますが、自身の備忘録として、そしてどなたかの制作過程におけるヒントになれば幸いと思い、これから少しずつにはなりますが、制作エッセンスをここに記していきたいと考えています。

【はじめに/注意事項など】
・使用しているGMは、Ver8.1 Liteになります。
・使用しているアイワナエンジンは、I wanna be the engine yuuutu editionです。
・自作アイワナで使用したもののみの掲載となります。
・あくまで私なりのやり方ですので、もちろんもっと簡単な方法もあるかもしれません。参考程度とご認識ください。
・だいたい1記事でメモ2個くらいの掲載で進めていきます。※更新頻度は不定期
・ご質問にも極力お答え致しますが、掲載外の質問にはお答えできません。



【メモNo.1/飛ばした一つのでかいリンゴが一定時間で爆発し、拡散弾(固定)を撒き散らす方法】


★用意するもの★
・でかいリンゴを飛ばす本体(ここでは、jung_bossとします)
・でかいリンゴ(ここでは、object1000_bigとします)
・でかいリンゴ爆発後に拡散するリンゴ(ここでは、object1000とします)


次に、それぞれのイベント等に以下を記述します。(速度等の数値は任意で構いません)

<jung_boss>


・Create内
 instance_create(jung_boss.x,jung_boss.y,object1000_big)
 alarm[0]=50

・Alarm0内
 instance_create(jung_boss.x,jung_boss.y,object1000_big)
 alarm[0]=50


<object1000_big>


・Create内(Set direction and speed of motion部分)
 direction: random(360)
 speed: 5

・Create内(記述部分)
 spt=0
 alarm[0]=30

・Alarm0内
 if(spt=0){
 for(i=0;i<=360;i+=20){ ///i+=○○の値を360で割り切れる数に変更すれば、拡散弾の数が変わる。
 abs=instance_create(object1000_big.x,object1000_big.y,object1000)
 abs.speed = 4
 abs.direction = i
 }
 instance_destroy()
 }
///spt、absは任意の変数


<object1000>
・特になし


どうでしょうか?
実行してみると、鬼畜花火のような弾幕が確認できるのではないでしょうか。
あとは場面に応じて、任意に数字等を調整していけばオッケーです(^^



【メモNo.2/設定したゲームのエンドルーム(最後の部屋)に入った瞬間に、経過時間(プレイタイム)を止める方法】



まず、ゲーム内でプレイ時間を進めているコードがある箇所はどこかといいますと、Objects ⇒ Player_etc ⇒ playerのイベント内、Alarm0の中にあります。


これを私なりの方法(というか、かなり応急的ww)になりますが、まず、ゲームスタートした時の最初のルームで何某かのグローバル変数を0で宣言し、ゲームクリア時の最後のルームに入った瞬間に、そのグローバル変数を1にします。
そして、上記時間を進めるコードの箇所に以下の記述を足すだけで、クリアした瞬間にゲームの経過時間を止めることができます。(ここでは、global.item[1]というグローバル変数を使っています)


if(room != rInit && room != rMenu && room != rTitle && room != rSelectStage){

if(global.item[1]=0){  ///←このあたりを追記
global.time += 1;
}


alarm[0] = room_speed;




という感じで、第1回目となる私的備忘録を終了させていただきます。

また、ちょいちょいと更新していきたいと思います(^^♪

2017年10月3日火曜日

第4作目の自作アイワナの公開、及び使用楽曲の紹介 【I Wanna be the Yuyuko】


みなさん、お久しぶりです!

ふと見てみると、前回からブログの更新がかなり空いていることに気が付きましたww
だから、というわけではないのですが、今回第4作品目となる自作アイワナが完成いたしましたので、ここに紹介させていただこうと思います。


今回の作品は「I Wanna be the Yuyuko」という名であり、東方の西行寺 幽々子をメインとした短編耐久アイワナとなっております。

他概要としては、

・ボス1体のみ
・難易度:初級者~中級者(やや中級者寄り)
・セーブデータは一つ
・難易度選択なし
・隠し要素なし

となっており、またクリア後の画面で、ちょっとしたいつもの小ネタが仕込まれていますw



また、今回このブログで使用楽曲も併せて紹介したいと思います。

-----------------------------
オープニング&エンディング ⇒ 神隠しの真相/しゃろう

耐久曲 ⇒ 桜花爛漫/東方Vocal アレンジVer.
-----------------------------

ということで、現在は最新がVer1.02となっている当作品。
みなさん、是非プレイしてみてくださいね(^^♪



じゃあまたねぇーーー!!!