質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

88.23%

プログラムが分からない人でもプログラムを打てるようなシステムを作るには?

解決済

回答 6

投稿

  • 評価
  • クリップ 2
  • VIEW 2,491

KureteRubyLua

score 194

ゲーム制作ソフトを作っており、「プログラムが苦手な人や分からない人でもゲームのシステムを作れる機能を作ろう」と考えたのですが、どうすれば出来るのか分からず行き詰まりました。

今までのシステムで一番分かりやすいとされてきたのはツクールのイベントコマンドで、確かに分かりやすいとは思うんですが、プログラム言語と比べると一々打つのが面倒で入力速度や自由度がかなり劣ります。

おそらく、プログラムが苦手な人や分からない人の気持ちに合わせ、それに対処していくようなシステムになるだと考えています。
ですが、失礼な物言いになるかもしれませんが、そもそも、プログラムを打っていて苦労した事が殆どないので、どうもプログラムが出来ない人の気持が良く分かりません。
C言語のポインタやオブジェクト指向もそこまで苦労せずに理解出来て、少なくとも自分が考えている限りは大方使いこなせています。
逆に「何故これを理解できない人がいるんだろうか」と分からないレベルです。

その上でどうすればプログラムが分からない人でもゲームのシステム、差し引いてはプログラムが打てるようなシステムを作れるのでしょうか?
出来れば初心者でもプログラムを打つ並に早い入力ができて、さらにオブジェクト指向を扱えるような仕組みを作れれば良いのですが・・・・。

よろしくお願いします。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 6

+12

そりゃ無理ってもんですよ。
世のプログラマー全員がプログラミング言語を使ってシステムを動かすということで、
これが最善という構図は既に出来上がっています。

私も生産性を上げる為にVimを苦労して覚えたのに、
非エンジニアが簡単に使えて同程度の生産性を確保出来るGUIエディタとか開発した日にはノーベル賞ものでしょう!
世のエンジニア全員は質問者さんの作ったエディタのラッパー作りはじめますよ!

RPGツクールでは作者達の要望に応え続ける事はできず、
最終的にRubyやJavaScriptのエンジン乗せておいて、
システムの根幹はこういうRubyのコードだから勝手に弄り倒してね!
…という方法で解決しています。

これで良いんじゃないですかね?
私も最初はCGIゲームの挙動を改良するという感じでコピペで修正していきながら覚えたものです。

因みに言語としてRubyが初心者に親しみやすそうですが、
これぞという言語があればそちらを採用してはどうでしょうか?
RPGツクールはVXかVX ACEあたりがRuby、MVがJavaScriptを採用していますので、
体験版を落として使ってみると良いかもしれませんね。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

checkベストアンサー

+4

こんにちは。

ゲーム制作ソフトを作っており、「プログラムが苦手な人や分からない人でもゲームのシステムを作れる機能を作ろう」と考えたのですが、どうすれば出来るのか分からず行き詰まりました。

例えば掛け算の九九を知らない人でも電卓があれば基本的な計算はできるようになりますね。
しかし、電卓を使って同じ手順の計算を繰り返し行いたい時があります。その手順は一種のプログラムです。
そのような自分のやりたいことを手順として記述することがプログラミングの始まりです。

手順は単純なものから複雑なものまで様々です。より複雑な手順を矛盾なく作成できる人程、より高度なプログラムを開発できます。しかし、そもそも複雑な手順を書けない人にどんなツールを提供しても永遠に複雑な手順は書けないと思います。
優秀なプログラミング・ツールにできることは、複雑な手順を矛盾なく作成することをより短期間で行えるようにサポートするだけと思います。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

+4

https://scratch.mit.edu/
ここにScratchという、MIT(マサチューセッツ工科大学)が作った「ブロックをくっつけていってプログラミングする言語」があります。ここで公開されているプロジェクトにはそこそこゲームとして成り立っているものも多数存在します。ここで適当なものを作って遊ぶことにより、プログラミングの中でもとくに「アルゴリズムの構築」に関する苦手意識は薄れるかと思います。

さすがにポインタとかの概念はここでは覚えられませんが、オブジェクト指向はちゃんとScratchにもありますので、まずは「プログラミングになれさせる」という段階では十分なものかと思います。
最初から「このツールを使えばプログラミングが苦手なやつでもゲームが作れる」ではなく、「ゲームが作れるレベルまでプログラミングを習得させる」ほうが良いかと思います。前者の場合、「このツールじゃないとプログラミングできない」といった環境に依存してしまうプログラマが出来上がりますが、後者ならどこでもやっていけるプログラマに成長します。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

+3

プログラムが「分からない人」と「苦手な人」をわけて考えた方がいいでしょう。

「分からない人」には簡易言語、問題向き言語を使ってもらいます。私はゲームを作ったことがないのでゲーム向き言語にどのようなものがあるのか分かりませんが、質問者さんが「ゲームのシステムを作れる機能を作ろう」と考えているのであれば、質問者さんが考えているゲームに適した言語を作ったらどうでしょう?
「言語」まで行かなくても、パラメータを記述したらゲームの大まかな枠組みを生成してくれるようなものです。

「苦手な人」に対しては経験上、「打つ手」がありません。
まずは、論理的な考えを身につけてもらう必要がありますが、(これも、経験上)簡単なプログラムを作ってもらことが、論理的思考方法を学ぶには適しているとおもいます。(でも、苦手な人って、それができないんですよね)

「苦手な人」に対しては試作品に対して、テストデータやテスト環境を作ってもらうとか、テストをしてもらったらどうでしょう?
「苦手な人」を一人前にしようとするのは不毛な努力のように思っています。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

+2

ここでプログラミング苦手な人の質問に答えていけばその気持ちがわかるかもしれません。
私は、苦手な人は能力が低いのではなく、プログラミングが嫌いなんだと思っています。

プログラミングが嫌いな人に無理やりやらせるゲームを作る必要はないでしょう。
であれば、プログラミングが好きな人は存分にカスタマイズでき、苦手な人はしなくて済むようなシステムがいいのではないかと思います。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/03/24 09:05 編集

    つまり、一からゲームを作れる UNITY と Visual Studio だけを売るのではなく、それを使って作った完成品をソース付きで売ったらどうかということです。

    その場合、ゲーム中にワンクリックで IDE を起動でき、起動したらまずは各種設定を記述したソースが開かれ、そこをいじるだけでかなりのカスタマイズができるということであれば、ハードルは随分と下がると思います。

    言語は一から作らなくても C# や Python など無料で使えるものを使えば開発費用が抑えられるでしょう。

    C# なら、編集時にどのような振る舞いをするかはコンポーネントが知っていますし、設定ファイルをいじるのもソースを直接書き換えるのではなく、貼り付けたコンポーネントのプロパティをいじったりイベントハンドラを書き換えたりするだけでできそうです。

    キャンセル

+1

DXRubyは分かりやすいとプログラミング初心者の私は感じました。
参考になるかどうか分かりませんが。

公式サイト
リファレンス

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 88.23%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る