In welcher Sprache wurde Starcraft II geschrieben?

7

Totale Neulingsfrage, aber welche Sprache wurde von Blizzard verwendet, um das Starcraft II-Gameplay zu erstellen? Ich spiele es seit ein paar Tagen und bin immer wieder erstaunt über die Komplexität und Leistung des Spiels. Handelt es sich um eine interne Sprache, oder verwenden sie den Geschmack einer bekannten Sprache?

yossi.ittach
quelle
5
Aus den FAQ ( gamedev.stackexchange.com/faq#dontask ): "Sie sollten nur praktische, beantwortbare Fragen stellen, die auf tatsächlichen Problemen basieren, mit denen Sie konfrontiert sind."
Trevor Powell

Antworten:

4

Das eigentliche Spiel selbst verwendet eine Kombination aus C, C ++ und XML (für Metadaten).

Die verwendete Skriptsprache heißt "Galaxy". Es ist eine C-basierte Sprache, die in die Spiel-Engine integriert ist.
Es wird in der Kampagne und in benutzerdefinierten Karten verwendet.

Alexander
quelle
11

Im Karteneditor kommt 'Galaxy' (Galaxy Editor). Es ist ein datengesteuerter Editor, mit dem Sie Aktionen aus englischen Anweisungen zusammenstellen können, was wirklich eine unglaubliche Menge an Möglichkeiten eröffnet. Zum Beispiel ist das Anbringen von Thor-Kanonen an einem Hydralisk einfach kitschig.

  • Erstellen Sie ein Hydralisk-Objekt und ändern Sie die Attribute, um ihm die gewünschten Fähigkeiten zu verleihen
  • Auslöser - 'Erstellen Sie 1 Hydralisk für Spieler 1 mit der Standardverkleidung'

Schauen Sie sich dieses Video-Tutorial an, das den Trigger-Editor zeigt . Hier sind einige gute Tutorials, um Ihnen den Einstieg zu erleichtern.

Das Spiel selbst wurde in C / C ++ geschrieben.

David McGraw
quelle
1
Nur zur Anmerkung: Der Galaxy-Editor erfordert keine Programmiererfahrung und generiert Skripte für Sie. Die Skripte selbst sind in einer benutzerdefinierten C-basierten Skriptsprache namens Galaxy geschrieben. Ich weiß nicht von irgendwelchen Beispielen für etwas , das muss in Galaxy geschrieben werden (dh., Die nicht aus dem Editor durchgeführt werden), aber es ist möglich Galaxy - Skripte zu schreiben , wenn man will.
BlueRaja - Danny Pflughoeft
8

Ich nehme an, Sie meinten Skriptsprache ? (Da ich sprachlich programmiert habe, wäre ich sehr überrascht, wenn sie nicht C ++ verwenden würden ...)

Ein kurzes Google-ing stellte dies fest :

"StarCraft II verwendet eine völlig neue Skriptsprache, die wir Galaxy genannt haben. Diese Sprache ist C sehr ähnlich, und jeder, der mit dem Programmieren in C vertraut ist, wird keine Probleme haben, sie zu erlernen."

Riley Adams
quelle
7
Keine Beleidigung für irgendjemanden, aber ist Galaxy ein schlimmer Fall von "The Not Invented Here Syndrome"? Ich sag bloß'. :-)
JustBoo
@ JustBoo - Haben Sie einen Verweis auf etwas, das zeigt, dass Galaxy im Wesentlichen mit einer vorhandenen Sprache identisch ist? Wenn nicht, könnte es sein, dass Blizzard etwas brauchte, das noch nicht angeboten wurde.
Kylotan
2
Wenn das Produkt erfolgreich ist, heißt es nicht NIH, sondern "Wettbewerbsvorteil".
@Boo: Sie haben diese Sprache erstellt, weil sie einfach und designerfreundlich ist: Sehen Sie sich dieses Tutorial an, zum Beispiel: forums.sc2mapster.com/development/tutorials/… Timer - Lava-Timer-Fenstersound zerstören - Alert_BaseUnderAttackKlaxon für (alle Spieler) abspielen (at 100,0% Volumen, überspringen Sie die ersten 0,0 Sekunden) Das ist die Sprache. Sehr englisch - zu ausführlich für einen Programmierer, funktioniert aber gut in einem Editor, denke ich.
Jacmoe
1
@jacmoe Galaxy sieht nicht wie Ihr Beispiel aus. Das ist ihre Trigger-Benutzeroberfläche, die Galaxy in Ihrem Namen generiert (ähnlich der WC3 / JASS-Story).
Jonathan Dickinson