Entstehungsgeschichte
 

 
Aktualisiert: 11.12.2014, 16:47 Uhr by [GAME MASTER] ARAKIS (1) - URL: game3.stne.net/Manual.aspx?id=35


Über den Entwickler

Mein Name ist Sebastian Loncar, auch genannt Arakis, 23 Jahre alt und lebe heute in Homburg im Saarland. Zur Zeit arbeite ich freiberuflich bei der enobis GmbH(Softwareentwicklung). Dieser Beruf macht mir Spaß, ich programmiere auch in meiner Freizeit gerne. Einige nennen mich Gott, doch bin ich nur ein harmloses Geschöpf ;)

Die Herausforderung


Ich suchte eine Herausforderung. Etwas, wovon man was hat. Eine Adressverwaltung z.B. ist schnell programmiert, doch was hat man davon? Naja, man kann sie zum Download anbeiten, so wie diese hier von mir: [Link] oder Musikplayer: [Link]. In Zwischenzeit fing ich an das Spiel StarTrek Colonie 2 (STC2) zu spielen, welches mich sehr faszinierte. Ich fing an, mir Gedanken darüber zu machen, wie dieses denn wohl intern aufgebaut sei. Und da sah ich die Herausforderung: Ein Spiel wie STC2 zu programmieren, das ist eine große Herausforderung und kommt vielen zu Gute. So startete das Projekt "StarTrek: The New Empire" am 10. Okotober 2002, das urspünglichst unter dem Namen "StarTrek Colonie 3" laufen sollte. Ich nahm mir Urlaub und nahm mir vor, in den 2 Wochen STC2 "mal eben" nachzuprogrammieren und danach neue Features reinzubringen. Aus Wochen wurden Monate, aus Monaten nun fast ein Jahr. Die Meinungen über die Entwicklung von STNE gingen weit auseinander. Einige fanden es gut, da sich der Entwickler von STC2 kaum noch um sein Spiel kümmerte, und sahen in STNE die Chance, alle Features reinbringen zu lassen, die in STC2 fehlten. Andere jedoch sahen STNE immer als schwarzen Peter vor sich, nörgelten über alles was STC2 ähnlich kam. Wiederum anderen war es egal, sie wollten einfach nur spielen. So begann STNE sich immer weiter von STC2 zu distanzieren, wobei das Spielprinzip und der Grundaufbau der gleiche geblieben ist, aber im allgemeinen besser durchdacht und überarbeitet. Das Verbessern war möglich, da eng mit der entstehenden Community von STNE zusammengearbeitet und Features ausdiskutiert wurden.

STNE Heute


Heute ist aus dem Projekt STNE ein immer beliebter werdendes Onlinespiel geworden, welches eine sehr große Spieltiefe hat. Man ist kaum eingeschränkt, hat viele Freiheiten und viele Wege, um zum Ziel zu gelangen. Doch was ist das Ziel? STNE ist ein Endlos-Spiel, man kann es so lange spielen wie man Lust hat. Man kann wählen zwischen Gut und Böse - und wieder zurück. Doch STNE spiegelt in meinen Augen nicht nur ein Spiel wider - es ist die Gemeinschaft, die da darin spielt. Ein Programmierer kann sich auch noch so sehr bemühen - letzten Endes seid ihr es, die dem Spiel Leben einhauchen. Ohne eine gesunde Community ist STNE nur ein Programm, das auf einem Server läuft ;)

Hinter die Kulissen geschaut


Mal ein paar Technische Daten:
Sprache: C#

Statistik stne.dll, Stand Dezember 2014:
1233 Klassen
4370 Klassen-Variablen
282 Enumerations(Konstantenlisten)
2738 EnumerationMember(Konstanten)
15 Interfaces
51433 Funktionen
13166 Properties(Eigenschaften)
165 Quelltext-Dateien
182.000 Zeilen Quelltext stne.dll (Core)
5,56 MB Summe aller Quelltextdateien (nur stne.dll).

Plugins (2010 wurden divese Funktionen der stne.dll in separate Plugins ausgelagert):
106.000 Zeilen Quelltext stne.WebForms.dll (classic STNE GUI)
32.000 Zeilen Quelltext stne.Items.dll (Implementierung der jeweiligen Items)
34.000 Zeilen Quelltext in der neuen STNE GUI (in Entwicklung)

79.000 Zeilen Quelltext "larne.dll", eigens für STNE entwickelte Hilfslibrary (DB-Abstrahierung, Html-Generierung etc.)
11.000 Zeilen Quelltext "larne.scripting.dll", eigens für STNE entwickelte Script-Engine

Summe:
444.000 Zeilen Quelltext aller selbstgeschriebenen Quelltexte
13,94 MB Summe der Dateien



Statistik stne.dll (noch geschrieben in VB.NET, wurde 2010 nach C# portiert), Stand Juni 2006:
631 Klassen
2194 Klassen-Variablen
269 Enumerations(Konstantenlisten)
2364 EnumerationMember(Konstanten)
32 Interfaces
24233 Funktionen
6603 Properties(Eigenschaften)
4,07 MB Summe aller Quelltextdateien.
109 Quelltext-Dateien
169.000 Zeilen Quelltext



Statistik stne.dll, Stand 2003:
282 Klassen
1027 Klassen-Variablen
137 Enumerations(Konstantenlisten)
1230 EnumerationMember(Konstanten)
25 Interfaces
14822 Funktionen
3981 Properties(Eigenschaften)
1.79 MB Summe aller Quelltextdateien.
61 Quelltext-Dateien
52.000 Zeilen Quelltext

Die Größe hat sich also von 2003 bis 2006 praktisch mehr als verdoppelt.

Verwendete Bibliotheken:
OpenSMTP(Mailversand), HTTP-Komprimierung, SGML-Reader(macht aus HTML XML), mshtml-Engine(HTML-Überprüfung), SharpZipLib(ZIP-Komprimierung), ZedGraph zur Diagrammgeneration und halt das .NET-Framwork 1.1(Klassenbibliothek), was aber Bestandteil der Programmierumgebung ist.
Die Wegberechnung im Spiel wurde von Duriel ursprünglich in Delphi(Pascal) als COM-DLL entwickelt, später von Arakis zu .NET portiert.

Verwendete Programme:
Visual Studio .NET 2003 als Entwicklungsumgebung
Sql-Server 2000 / MSDE 2000 als Datenbank
Textpad als schnellen, universellen Texteditor
groups.google.de als Programmierhandbuch
mIRC zur Kommunikation
Smart-FTP als FTP-Manager
Irfvanview als Grafikkonverter

Aus einem Haufen Quelltext...


...wird ein schönes Spiel:



Top
 
Diese Seite wurde bisher 2612 mal aufgerufen.