2016-06-12 6 views
0

私は現在、Javaとゲームで非常にシンプルな2.5Dゲームエンジンを作成しています。これは基本的に単なる楽しいプロジェクトですので、機能を実装するのにかかる時間は問題ありません。私は常にそれを脇に置いて、いつでも作業できます。それで、私はカスタムの種類のスクリプティングシステムを実装する予定でした。基本的に、エンジンは2.5Dゲームのシェルであり、簡単なスクリプトで修正したり拡張することができます。これまでのところ、私はこれについてどうやって行くのかという以下の考えを持っていますが、実用的かどうかは不明です。ゲームエンジンのAPIまたはスクリプト言語を作成しますか?

  1. 非常に単純なスクリプト言語と、スクリプトのフォルダをチェックして実行する単純なパーサーを作成します。
  2. なゲーム
  3. の拡張部分のためのLUAとして非常に簡単で、既に作成された言語を使用し
  4. だけで、昔ながらのJavaを経由してクライアントとサーバー上のゲームの一部を変更することができますJavaライブラリ/ APIを作ります

私は本当に私がやりたいこととしてオプション1について考え、しかし、私は本当に誰かが私がここで何をすべきかをお勧めすることができれば、私は思っていた、そのようなことをやったことがありません。私が単純化した言葉を書いて行くのであれば、そのような話題についての資料や資料を探しているだけです。人々がどのように基本的なコンパイラ/通訳者を書いたかを見れば分かりますか?

答えて

1

短い答えは2になります。APIを使用します。これは、ゲームエンジンに機能を追加または変更する最も簡単な方法です。

独自のスクリプト言語とパーサーを作成することは、すべての開発者にとって魅力的です。素晴らしい学習体験ですが、それはまた欠点です。スクリプトの作成を開始したときに結果が期待どおりではない場合、バグがスクリプト内かパーサ内にあるかわかりません。パーサから何らかのスタックトレースを取得する必要があります。非常に単純なスクリプト言語であっても、プロジェクトを引き継ぐ可能性があります。スクリプトの作成を開始するときには、欠落している機能や、Javaコードの作成に慣れていた機能や、スクリプト言語の拡張を開始する可能性があります。

あなた自身の言語を作成する際の欠点のいくつかは、既に存在するすべての言語にも当てはまります。あなたが本当にあなたのゲームエンジンを拡張するための非常に自由な方法を必要とする場合は、その道を選ぶことができますが、私はそれをお勧めしません。あなたはまだゲームエンジンからスクリプトの実装にフォーカスを移す危険があります。

これについて考える方法の1つは、改訂者の観点からです。彼らは新しいスクリプト言語、既存のスクリプト言語、またはJavaで記述したいでしょうか?答えはおそらくJavaであり、おそらく新しい言語ではありません。

+0

ありがとうございます。あなたは実際に私の見解をこれに移しました。私は1か2の間のフェンスにいて、自分自身を書くことに傾いていましたが、あなたはいくつかの有効なポイントを持ってきます。私が限られていると感じるという事実は、私が完全に同意するものです。私は、まともに "まともな"試みをすることができるかのように感じますが、それがプロジェクトをどのように引き継いでいるかにかかわらずです。 Java APIは、私がやろうとしています何の全体のポイントでそれを行うためのより簡単で身近な方法で複数のカスタム機能を実装できるようになります。 – uncoded

+0

私は助けることができてうれしいです。あなたのプロジェクトに幸運。 –

関連する問題