# Mal eine ganz Doofe Frage... verzeiht :)



## radiac (2. Aug 2009)

Ich habe ein sehr blödes Problem .


Seit Wochen plane ich ein Spiel das man später über Internet und/oder Lan spielen soll.
Natürlich soll das Spiel mit Java programmiert werden.

Werkzeuge, Ideen sind alles da...

Jetzt wollte ich anfangen und stehe vor ein Problem.

Wo, wie was???

Wo fange ich an?
Wie soll das Spiel genau funktionieren?
Was kommt wohin?


Das ist mein erstes Spiel für einen Desktop PC . Und zudem das erste Multiplayerspiel.
Habe Erfahrung mit Handyspieleprogrammierung.

Da wollte ich mal die Gamecode-Architekten fragen, wie Ihr das macht???
Am besten in Erklärung des folgenden Prinzips:

[ Anfang = JPanel]
[Danach = Serverapplikation]
[Dann = Client]

usw...

Denn ich denke immer, wenn ich mit dem SV zeug anfange muss ich das ja ab und an testen können... dann sollte man vielleicht doch erst mit dem client anfangen???

Vielleicht gibt es sogar eine Faustregel oder ein eingebürgertes System...

Bin für viele (auch doch so verschiedene Vorschläge) Dankbar .

Ps: Ich weis, das man es für sich selbst rausfinden muss... nur um das zu können, sollte man vielleicht erstmal ein paar Ideen einholen :rtfm:.

Greetz Radiac


----------



## Painii (2. Aug 2009)

Was meinst du mit "Ideen" sind da? Einfach nur "Ich will ein MMO bauen, mal schauen wie es wird" oder "Hier ist mein UML, jetzt gehts los"?
Der erste Ansatz geht meistens schief 


Sonst: MVC...

Du fängst mit dem Model an: Dein eigentliches Spiel, wie auch immer das aussieht, ganz ohne grafik dazu. Erst die einzelnen Teile, danach verbinden.
Danach kommt ein View der dir das auch mal anzeigt (für den Anfang auf die Konsole in ASCII-grafik , später mit GUI), und zum schluss dann Controller damit du auch was bewegen kannst etc.

Für mein Tetris hab ich z.b. so angefangen:

Model:
a) Eine Klasse Stein wo ich die Stein-arten habe.
b) Eine Klasse SteinContainer, wo meine Steine dann alle runterfallen können und liegen bleiben etc.

View:
c) Ein View der mir meinen SteinContainer anzeigt

Controller:
d) Ein KeyListener zum bewegen/drehen


edit: Erst mit dem Server anfangen, wenn der nicht da ist hat dein client ja nicht viel zu tun 
Zumal du dann nicht zu sehr auf den client fixiert bist und alles etwas allgemeiner halten kannst (ist so meine persönliche erfahrung)


----------



## radiac (2. Aug 2009)

Hi Painii,

Danke für deine Antwort.

Irgendwie raff ich das immer noch nicht, das man einfach so mit Java programmiert, wie man es eben will xD.

Zu dem View habe ich noch eine Frage. Ist im View die ganze Grafikpalette geladen? Inkl. Bilder...? Oder nur ein verweis der vorher geladenen? Oder machst du über view alles? Laden, als auch anzeigen.

Und zu meinem ersten Ansatz xD. Das ist jetzt schon der 4te . Mein Problem ist, das ich zwar eine UML habe(so lange das die Richtlinie ist wie man ein Spiel konstruiert [stammbaum mäßig]), aber ich die ettliche male schon umändern musste.

Naja, ich warte mal auf ne Antwort. Das Spiel selber hat gerade mal die Grafiken . Also dauert noch ne Weile . Was ich baue, verrat ich nicht .


----------



## Painii (2. Aug 2009)

> Zu dem View habe ich noch eine Frage. Ist im View die ganze Grafikpalette geladen? Inkl. Bilder...? Oder nur ein verweis der vorher geladenen? Oder machst du über view alles? Laden, als auch anzeigen.


Der View macht alles was mit Anzeigen zu tun hat - Bilder, Ton etc.
Beim Öffnen des Views(->Konstruktor) werden die Bilder geladen und danach sind die ja eigentlich immer verfügbar.
Mir persönlich gefällt es aber eh eher erstmal alles auf der konsole zu sehen statt schönen bunten bildchen... die kommen bei mir immer erst zum schluss dran.



> Und zu meinem ersten Ansatz xD. Das ist jetzt schon der 4te . Mein Problem ist, das ich zwar eine UML habe(so lange das die Richtlinie ist wie man ein Spiel konstruiert [stammbaum mäßig]), aber ich die ettliche male schon umändern musste.


UML ist ein Klassendiagram, da schreibst du erstmal auf welche Methoden+Variablen deine Klasse hat... dann musst du nicht erst den halben sourcecode durchwühlen um zu wissen was eine Klasse denn eigentlich so machen kann, und siehst auch welche Klasse am wenigsten von anderen abhängt (die solltest du dann zuerst bauen)
Das man irgendwo immer mal was ändert ist denke ich normal, es hilft aber am Anfang schonmal eine Übersicht zu haben was man so braucht.



> Was ich baue, verrat ich nicht .


Zeigst du es wenigstens wenn es fertig wird? feif:


----------



## radiac (2. Aug 2009)

Wenn das Spiel fertig ist, werde ich das sicherlich zeigen . Ich mach sogar ne Wette, das wenn es fertig ist, sich mindestens 1 Person in diesem Forum sich dem Spiel vermacht xD.

Was soviel heisst, das SPiel öfters spielt als 1 mal .

Aber wie gesagt... erstmal hinbekommen. Da ich glaube, das so ein Spiel in dieser Dimension noch nicht einmal in c++ programmiert wurde .

Ich berufe mich bei dem Spiel aber nicht um Augenschmankerl xD sondern eher um Spass + Suchtfaktor .

So, jetzt ist aber erstmal Schluss ueh:

Die Zeit für Entwicklung (nicht nur das Spiel selbst beträgt noch 5 Monate). Ich hoffe, das ich das Zeitlimit einhalten kann.

Wenn du 3d Programmieren kannst, werde ich nach dem Projekt sicherlich ein paar mehr Leute brauchen . Dann kannst du mit machen wenn du willst


----------



## faetzminator (4. Aug 2009)

also du willst sagen, dass dein Spiel grössere Dimensionen als WOW etc. hat  ?


----------



## Steev (5. Aug 2009)

radiac hat gesagt.:


> Die Zeit für Entwicklung (nicht nur das Spiel selbst beträgt noch 5 Monate). Ich hoffe, das ich das Zeitlimit einhalten kann.



Dieses Zeitlimit wirst du nicht einhalten können. Stecke dir erst einmal kleine Teilziele und prüfe, welche Teilschritte du brauchst um diese zu erreichen.


----------



## radiac (5. Aug 2009)

@ Steev

Wenn du das weist, dann weist du mehr als ich :bahnhof:.

Naja, wenn du das in Bezug auf eine Art WoW beziehst .
Dem ist aber garnicht so, da das Spiel was ich schreibe was ganz anderes ist. Es existiert meiner Meinung und Recherche nach nicht.

Und mal so ganz nebenbei... seit gestern komme ich so schnell voran, das es warscheinlich nur noch 2 Monate ungefair dauern wird.
Es gab zu beginn nur ein paar total sinnlose Probleme... .


@ faetzminator

NEIN! xD

Aber es wird hoffentlich ausreichende Dimensionen annehmen . EInfach überraschen lassen .
Im endeffekt existiert schon alles wie Forum, Page, domain usw... nur das Spiel muss noch fertig werden.


----------



## Gonzo17 (5. Aug 2009)

radiac hat gesagt.:


> Und mal so ganz nebenbei... seit gestern komme ich so schnell voran, das es warscheinlich nur noch 2 Monate ungefair dauern wird.
> Es gab zu beginn nur ein paar total sinnlose Probleme... .



Darf ich mal fragen wie du die Abschätzung machst? Ich hab selbst noch nie ein eigenes Spiel programmiert (zumindest keins, was nicht an einem Nachmittag geschrieben wäre) und musste mich daher auch noch nie mit Zeitabschätzungen beschäftigen. Und deswegen frage ich mich grade, wie so ne Abschätzung von 5 Monate auf 2 Monate schmelzen kann. :bahnhof:



radiac hat gesagt.:


> Im endeffekt existiert schon alles wie Forum, Page, domain usw... nur das Spiel muss noch fertig werden.



Forum und Homepage sind ja auch die kleinsten Probleme (meiner Meinung nach). 
Die kann man in kurzer Zeit einrichten und braucht dann "nur" noch das entsprechende Design. Aber wieso machst du überhaupt ein die Homepage für ein Spiel, das es noch nicht gibt? Wenn du das Projekt abbrichst, dann war die Arbeit für die Homepage umsonst. Achja, möchtest du uns nen Link geben?


----------



## radiac (6. Aug 2009)

nein, möchte ich nicht...

Eure Vorstellungen sind viel zu groß. Es wird doch kein neuer 3D sonstwas shooter oder so...


Das Spiel selbst ist ein minimaler Aufwand.

Es geht hier um den Spielspass. Nicht um den Aufwand.

Und wieso von 5 auf 2 Monaten geschlossen werden kann ist, das eigentlich schon alles programmiert war, nur es evt. noch angepasst werden muss. Siehe Thread über "Deutsches Porgrammierbuch". Da wird alles erläutert wieso es jetzt schneller geht.

Egal, ich schreib dazu nichts mehr... verstehen kann man es sowieso erst, wenn man es sieht.


----------

