|
JLI Spieleprogrammierung
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Vane Junior JLI'ler
Anmeldedatum: 03.11.2005 Beiträge: 70
Medaillen: Keine
|
Verfasst am: 01.12.2005, 21:32 Titel: Gebäude erstellen |
|
|
Hallo, ich wollte mal wissen wie das sofunktionieren sollte wenn ich ein Gebäude haben möchte im spiel. z.B.: ein GEbäude das Nahrung produziert, dazu benötige ich doch dann eine Klasse, aber wie funktioniert das mit den Sprites?
oder wenn ich im spiel auf das gebäude klicke das sich dann ein baumenü öffnet |
|
Nach oben |
|
|
David Super JLI'ler
Alter: 39 Anmeldedatum: 13.10.2005 Beiträge: 315
Medaillen: Keine
|
Verfasst am: 01.12.2005, 22:54 Titel: |
|
|
Hi!
Die Fragen von dir sind etwas allgemein. Eine Lösung zu beschreiben wäre kaum möglich, weil sie von vielen verschiedenen Faktoren abhängig ist.
Allgemein brauchst du eben ein Konzept für dein Spiel, ohne gehts einfach nicht. Du kannst beispielsweise für jedes Spielobjekt eine eigene Klasse erstellen oder aber du greifst auf Scriptsprachen zurück.
Jedes Objekt kann eine, oder eine Liste von Zeigern in deinen Texturmanager bekommen. Die angegebene Textur kann dann auf dein Sprite gezeichnet werden.
Für die Auswahl deiner Objekte gibt es ebenfalls zig Möglichkeiten.
Am besten wäre es, wenn du deine Frage etwas konkretisierst.
grüße |
|
Nach oben |
|
|
Vane Junior JLI'ler
Anmeldedatum: 03.11.2005 Beiträge: 70
Medaillen: Keine
|
Verfasst am: 02.12.2005, 10:55 Titel: |
|
|
Also ich wollte ein Gebäude Hütte haben, dieser produziert pro runde eine Nahrungseinheit, dazu soll sich noch auf wunsch eine Menü öffnen der infos anzeigt. |
|
Nach oben |
|
|
OLiver Super JLI'ler
Alter: 33 Anmeldedatum: 29.06.2003 Beiträge: 306 Wohnort: Jena Medaillen: Keine
|
|
Nach oben |
|
|
AFE-GmdG JLI MVP
Alter: 45 Anmeldedatum: 19.07.2002 Beiträge: 1374 Wohnort: Irgendwo im Universum... Medaillen: Keine
|
Verfasst am: 02.12.2005, 11:32 Titel: |
|
|
Das gehört zur SpieleLogik.
Du musst deinem Spiel ja beibringen, verschiedene Aktionen durchzuführen.
Bei einem Rundenbasiertem Spielprinzip sollte das ganze nicht zu kompliziert sein. Du wirst in einem solchem Spiel also nicht auf hunderte von Frames / Sekunde angewiesen sein, sondern nur wenn sich was verändert. Dafür eignet sich eine Eventbasierte Spieleschleife mit GetMessage. Auf DirectInput solltest du wahrscheinlich ganz verzichten - die DirectDraw / Direct3D-Anweisungen kannst du in die WM_PAINT-Nachricht unterbringen.
Und jetzt brauchst du nur noch verschiedene Statie, die am Besten in deinen oder zusammen mit deinen Spielobjekten gespeicert sind. Das kann z.B. "Ich bin angeklickt" oder "Der Mauscursor befindet sich über mir" sein. Diese Statie veränderst du als Reaktion auf passende achrichten, also z.B. WM_MOUSEMOVE oder WM_RBUTTONDOWN.
Ein InvalidateRect() sorgt dann für ein Neuzeichnen bei Grafikverändernden Aktionen...
Das was ich dir jetzt erzäht habe, ist Teil des Spielekonzeptes, dass du für dein Projekt anlegen solltest. In einem solchem Konzept werden alle möglichen Aktionen aufgelistet und kurz beschrieben, was daraufhin passieren soll. Auch Überlegungen zu benötigten Datenstrukturen sollten enthalten sein...
Erst danach beginnt man damit, das Grundprogramm zu programmieren und weitere Funktionalität hinzuzufügen. _________________
CPP: | float o=0.075,h=1.5,T,r,O,l,I;int _,L=80,s=3200;main(){for(;s%L||
(h-=o,T= -2),s;4 -(r=O*O)<(l=I*I)|++ _==L&&write(1,(--s%L?_<(L)?--_
%6:6:7)+\"World! \\n\",1)&&(O=I=l=_=r=0,T+=o /2))O=I*2*O+h,I=l+T-r;} |
|
|
Nach oben |
|
|
Jonathan_Klein Living Legend
Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 02.12.2005, 13:04 Titel: |
|
|
kleiner Tipp: Wenn man nicht viel erfahrung hat soll man nicht mit sowas komplizeirten anfangen.
Strategie Spiele sind schon recht komplex, wenn sich zum Beipsiel ein Info Fenster öffenen soll musste ne Fensterklasse proggen oder ein Windowsfenster erstellen, was beides nicht gerade das einfachste ist. Im allgemienen sind GUIs nicht das einfachste, weil, du wirst ja auch noch Buttons Auswahlmenüs und so weiter brauchen.
Wenn du nicht weißt, wie du alle Bestandteile deines Projektes verwalten sollst, wäre es hilfreich, wenn du die geplanten Features Detailiert schildern würdest, weil, einfach nur Haus ist sehr ungenau. _________________ https://jonathank.de/games/ |
|
Nach oben |
|
|
The Lord of Programming Living Legend
Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 02.12.2005, 13:49 Titel: |
|
|
Noch ein Tipp: Schau dir das ganze mit den Klassen noch mal an. Nimms mir bitte nicht übel, aber es wirkt so, als hättest du das noch nicht 100%-ig verstanden
Übe den Umgang mit Klassen am besten mit einfachen Beispielen in Konsolenprogrammen. Z.B. wie im Buch beschrieben eine Rechtecksklasse, mit der du Koordinaten (und evtl. andere Informationen) speichern kannst. Genauso gut kannst du dir eine Art Adressbuch zusammenwerkeln. Wenn du so übst, Klassen einzusetzen, dann solltest du keine Probleme mehr haben, eine Klasse für Gebäude in einem Strategiespiel zu erstellen oder irgendwelche dynamischen Baumenüs zu gestalten _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
|
sp3cK-r0LL3 Senior JLI'ler
Alter: 34 Anmeldedatum: 18.06.2004 Beiträge: 275
Medaillen: Keine
|
Verfasst am: 02.12.2005, 21:45 Titel: |
|
|
ich kann da ein buch empfehlen, schlagt mich wenns schrott ist, mir hats gefallen: http://www.amazon.com/gp/product/1556229224/104-0997078-7771950?v=glance&n=283155
sind tolle beispiele und eben das was du willst wird geklärt! _________________ sex is updatedb; locate; talk; date; cd; strip; look; touch; finger; unzip; uptime; gawk; head; apt-get install condom; mount; fsck; gasp; more; yes; more; umount; apt-get remove --purge condom; make clean; sleep |
|
Nach oben |
|
|
Vane Junior JLI'ler
Anmeldedatum: 03.11.2005 Beiträge: 70
Medaillen: Keine
|
Verfasst am: 04.12.2005, 14:01 Titel: |
|
|
Hi,
ich habe mir mal diese buch genauer angeschauht und muss sagen, da kann man schon mit was anfangen, bloß was mir fählt sind die Gebäude, einheiten ja alles klar ist drin und super erklärt, die grafik, wegfindung und der ganze kram, bloß was ich nicht finden kann ist, ein gebäude erstellen, recourssen sammeln... |
|
Nach oben |
|
|
OLiver Super JLI'ler
Alter: 33 Anmeldedatum: 29.06.2003 Beiträge: 306 Wohnort: Jena Medaillen: Keine
|
Verfasst am: 04.12.2005, 14:17 Titel: |
|
|
Tja, das ist ja das, was du programmieren musst. _________________ http://www.sieder25.org/ (Siedler 2 - Remake) |
|
Nach oben |
|
|
Jonathan_Klein Living Legend
Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 04.12.2005, 14:31 Titel: |
|
|
eine klasse Sammler, als Einheit, die sich den Weg zur Ressource sucht, die abbaut (ressource wird kleiner, Tank vom sammler größer), sich weg zur nächstem lager sucht hinfährt und soabld er da ist die Ressourcen aufs Spielerkonto überträgt. Ist doch kein Problem. Gebäude sind doch im Prinzip Einheiten die sich net bewegen. Wenn du das mit dne Einheiten schaffst sollten Gebäude nun kein Problem mehr sein. _________________ https://jonathank.de/games/ |
|
Nach oben |
|
|
Vane Junior JLI'ler
Anmeldedatum: 03.11.2005 Beiträge: 70
Medaillen: Keine
|
Verfasst am: 04.12.2005, 17:05 Titel: |
|
|
Ich wollte eigentlich ein StrategieSpiel im sinne von Anno 1503 oder Civ 4, programmieren, da hilft mir das buch doch eigentlich nichts, oder? |
|
Nach oben |
|
|
fast hawk Senior JLI'ler
Anmeldedatum: 15.07.2005 Beiträge: 237 Wohnort: Freiburg Medaillen: Keine
|
Verfasst am: 04.12.2005, 17:21 Titel: |
|
|
Schau dir doch mal an:
Du hast ne Einheit(Gebäude)(Hof).
Du hast ne Bedingung(10 Sekunden müssen vorbei sein).
Du hast ne Aktion(+10 Gold).
Dann sagst du dem Computer(programmierst) wenn du ein Hof hast und 10 Sekunden vorbei sind hehöherst du denn Gold Vorrat um 10 Gold.
Genau ist die Sache mit der Produzion da machen es Anno oder andere spiele auch nicht viel anders. Das ist AUCH Thema in dem Buch.
Aber mal ne so: Anno 1503 ist von VIELEN ERFAHRENDEN PROGRAMMIER(GRAFIKER) gemacht worden.Das schafft hier im Forum(glaub ich) keiner.
Mach erstmal was einfacheres.!!!
Überhaupt sind Startegie Spiel um ein VIELFACHES Aufwendiger wie RPGs.
Das macht mal nicht als Einsteiger Projekt. _________________ Jetziges Projekt: The Ring War
Status: 40%
-----------------------------------
Nicht weil es schwer ist, wagen wir es nicht, sondern weil wir es nicht wagen, ist es schwer.
--
Lucius Annaeus Seneca (4)
röm. Philosoph, Dramatiker und Staatsmann |
|
Nach oben |
|
|
Vane Junior JLI'ler
Anmeldedatum: 03.11.2005 Beiträge: 70
Medaillen: Keine
|
Verfasst am: 04.12.2005, 18:08 Titel: |
|
|
Ich weiß ich will auch nicht das nächste Anno programmiern , ich weiß meins wird abgespeckter und ds ganz dolle. Ich versuche mir ein kleines strategiespiel zusammen zu schreiben, ich hoffe es wird klappen, ist ein RPG wirklich einfacher, das stelle ich mir aber svhwerer vor...
danke für das ganze feedback |
|
Nach oben |
|
|
JkerryZ JLI Master Trainee
Anmeldedatum: 18.05.2004 Beiträge: 575 Wohnort: Wolfsburg Medaillen: Keine
|
Verfasst am: 04.12.2005, 18:30 Titel: |
|
|
Vane hat Folgendes geschrieben: | ...ist ein RPG wirklich einfacher, das stelle ich mir aber schwerer vor... |
Naja, wenn man eins mit 10 verschiedenen Klassen, 5 Rasen, 783 Möglichen Talentierungen und ner Welt von 3 Millionen Kilometern und dazu 385103 Quests baut, natürlich nicht ^^
Aber ein das das alles nicht hat sollte einfacher sein. |
|
Nach oben |
|
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
Powered by phpBB © 2001, 2005 phpBB Group Deutsche Übersetzung von phpBB.de
|