Herausfinden mit welcher Programmiersprache ein Spiel geschrieben wurde?

5 Antworten

Da der ausführbare Code maschinenlesbar ist, kann man den Quelltext hier natürlich nicht wiederfinden. (Bei Skripten ist das natürlich was anderes - das Wort "Skript" beinhaltet ja, dass der Code in menschenlesbarer Form vorliegt.)

Aber verschiedene Kompilatoren haben charakteristische Eigenheiten, wie sie bestimmte wiederkehrende Programmstrukturen in Maschinensprache darstellen. Von daher kann man recht gut abschätzen, womit das Programm übersetzt worden ist. Vom Compiler aus kann man in der Regel auf die Sprache zurückschließen.

Eine andere Methode ist, auf der Website des Herstellers nachzusehen, welche Programmiersprache(n) jemand beherrschen sollte, der dort einen Job sucht.

Woher ich das weiß:Berufserfahrung – Software-Entwickler

In Hinsicht auf deine Fragestellung müsstest du zuerst einmal zwischen Entwicklungsphase und Build unterscheiden.

Während der Entwicklungsphase könnten Skriptsprachen zum Einsatz gekommen sein (Python, Mono C#, Lua, JavaScript, UnityScript, Boo, ...), die on top zu einem Framework / einer Game Engine verwendet wurden. Die Game Engine wiederum könnte aus einem Gemisch verschiedener Sprachen (z.B. Python + C oder C++ und C) bestehen.

Die Sprache, die letztendlich kompiliert wird, muss also nicht die sein, mit der die Entwickler selbst in direkten Kontakt gekommen sind.

Um herauszufinden, welche Sprache gebaut wurde, gibt es einige Ansatzpunkte:

  • jar-Dateien: Java
  • auf Compiler-Besonderheiten in der ausführbaren Datei achten
  • spezielle, mitgelieferte Bibliotheken (dll's, ...), die über den Namen identifizierbar sind (z.B. SDL, XNA, usw. ...)
  • Informationen über den Hersteller (Welche Game Engine nutzt der Hersteller, Was für Entwickler(-Kenntnisse) sucht er?)
  • Informationen im Spiel selbst (bspw. über das genutzte Framework, o.a.)

Manchmal klappt das - einfach eine der ausführbaren Dateien im Texteditor öffnen und schauen, was so alles im Klartext lesbar drinsteht.

Wenn darin z.B. die Zeichenkette "Microsoft Visual C++ Runtime Library" auftaucht, wird es sehr wahrscheinlich in C++ geschrieben sein.

Spiele werden meistens in C++ geschrieben.

Wenn es .exe ist, dann ist es C++, oder C#, vielleicht C, aber wahrscheinlich C++.

Wenn es .jar ist, dann ist es Java.

Wenn es in deinem Browser gespielt wird, dann ist es wahrscheinlich Javascript.

UbuLin  01.01.2017, 23:58

naja stimmt nicht ganz ein Großteil aller Android Spiele sind in Java programmiert

0

Das ist so gut wie bei keinem halbwegs bekannten Spiel möglich.