素人がゲームを作る#1

いきなり真面目ネタを言い出しおって、気が狂ったのか?

僕もそう思う。

とはいえ学部が情報系なもんで、座学で聞いたり課題をやるだけじゃなくて自分で考えて手を動かして何か作るのも勉強になるのではとか勉強とか抜きにとにかく何かやってみない事には何も始まらないのではとか、そんなことを考えるわけで。

要するに、実際にモノを作れて、尚且つ制作のコストが0に近い(PCさえあればいい)というITの特性故の学習上のメリットを生かさない訳にはいかんでしょうと。(何なら作る事が学習まである)

つーわけで

とりあえず一つゲームを作ってみよう。うん。

制作物として考えるとゲーム以外にも数多くの選択肢があって、web系の勉強をしたければECサイトとか会員登録制のサイトとかそんなものが候補に挙がるし、AIだとかまあなんでも色々あるわけだけど、今回は僕の脳のキャパ的にギリギリ処理できる範囲でやれそうなものって事でゲームです。

使うもの(開発環境?)

使用言語:Python
今学習している言語がそれなので、という安直な理由。

ゲームエンジン:pyxel
デフォルトのPythonだと素人がゲームを作るにはハードすぎるので(というかデフォの状態でグラフィック有のゲームって作れるの?)、pyxelというゲームエンジンを使用します。これは2Dレトロゲーを作るためのエンジンです。リアルな3Dモデルをゴリゴリ動かすようなものでは無いです。はい。

いかに初心者にとっつきやすくするかという点をかなり重視している様で、僕みたいな人間でもイけそうな感じがするってのが決め手。
このエンジンの凄いところは制作支援ツールとしてドット絵や音楽を作成するツールが同梱してあるところ。これによって、外部ソフトに頼ることなくゲームの部品を作り上げられるのだ!(∩´∀`)∩ワーイ。

Pyxelの詳細→https://github.com/kitao/pyxel

取り敢えず上記の2つでゲーム製作の大半は何とかなりそう。

何作ろう

さて、ゲームといっても様々あるわけで。
シューティングとかパズルとかジャンルを数えていったらきりがない。

そんな中で、今回はオープンワールドサバイバルゲームを作ろうと思う。

最近ハマっているゲームに"The Long Dark"ってのがあって、「雪山に飛行機が墜落した。何日間生き延びられますか?」という内容。

https://store.steampowered.com/app/305/The_Long_Dark/

基本的な体力管理などの仕組みはできるだけ模倣して、見た目(グラフィック)の所というよりも、内部システムにこだわってみようと思う。

ゲームの中身

もしかしたらフォーマットがあるのかもしれないけど、とりあえず自分で分かればいいやという事でだいぶ大雑把。

ゲームジャンル
オープンワールドサバイバル

概要
・1日目の12時をスタートとし、7日目の12時まで生存していればクリア
・体力/気力/空腹度などの可変要素がある。
・セーブは常時可能。
・体力が0になると死亡。コンティニューは無し。
・すべての行動に時間経過が伴う。

・・・ここまで書いてめんどくさくなってきた。殆どThe Long Darkのパク○なので気になる人は実況動画でも見て欲しい。

ちなみに今ならセールで多少お安くなってる上に要求スペックがそれほど高くないので万人にお勧めできるゲームです。はい。

備忘録

pyxelエディターの使い方

普通のpythonの場合
コマンドプロンプトで↓


pyxel edit ファイルを置きたい場所のパス

Anaconda環境の場合
Anaconda navigator起動→Enviroments→base(root)みたいなやつがあるのでそこにカーソルを合わせると三角マークが表示されてそれを押してopen terminalであとは普通のpythonの場合と同じコマンドで使用できるはず。

pyxel.load(ファイル名)
pyxelエディターで作成したデータの読み込み

pyxel.bltm(A,B,C,D,E,F,G)
→描画の基準は画面の(A,B)座標であり、タイルパレットはCを選択。選択したタイルパレットの(D,E)座標からx方向Fピクセル、y方向Gピクセルを取得して画面に描画する。

この記事が気に入ったらサポートをしてみませんか?