Kartengröße, Forschungsklau &-kooperation, Minorentfernungen

Hast du eine Idee für eine neue Funktion im Spiel oder möchtest etwas am Spielablauf verbessern, so poste sie hier
Crovax
Unteroffizier
Unteroffizier
Beiträge: 75
phpbb forum styles
Registriert: Sonntag 1. November 2009, 14:28

Re: Kartengröße, Forschungsklau &-kooperation, Minorentfernungen

Beitrag von Crovax »

Ich habe gerade nen Spiel auf einer 40x30 Karte mit 6 KIs laufen, und ich schaue praktisch der Terraner KI über die Schultern.
Hätte auch gedacht, dass es langsamer ist. Die meisten Algorithmen sind ja linear in der Anzahl der Sektoren, aber bis jetzt (Runde 135 in 5-10 Minuten) dauernd eine Runde etwa 4 Sekunden.

Das mit der z-Koordinate, wie sie mal vorgeschlagen, hatte ich mir auch einmal überlegt. Also dass man 2-3 "Levels" hat. Da muss man dann wahrscheinlich relativ viel umbauen, vor allem in der KI, die Du ja nach Deinen Erfahrungen programmiert hast. Und ob der aktuelle Code sich leicht auf 2,5Dimensionen erweitern liesse, naja ;-) Von der Darstellung für den Menschen ganz zu schweigen, ja.

Die ganzen Spiele, welche angeblich so gut in 3D aussahen, kenne ich leider nicht, also kann ich nicht mitreden. Gab es da auch ein System, was man relativ leicht auf BOTE anwenden könnte, wenn man es wollen würde? Also die Grafik nur anpassen, nicht komplett neu machen?
Benutzeravatar
Malle
Großadmiral
Großadmiral
Beiträge: 6948
Registriert: Montag 13. November 2006, 15:16

Re: Kartengröße, Forschungsklau &-kooperation, Minorentfernungen

Beitrag von Malle »

3D engines benutzen ja auch eine skybox ähnlich unserem Galaxiehintergrund. Was man eben bräuchte wären 3D-Modelle von Sternen für die Sternensysteme und 3D-Flottensymbole. Der Rest erledigt die Engine automatisch.

hm, isses nu leicht oder schwer? ;)
rain hat geschrieben:Könnt ihr eine Vorsichtige Prognose abgeben ab wann man auch mit einer Kleinen Karte spielen kann.?
Oder kann man das schon einstellen ?
Sir Pustekuchen hat geschrieben:Ist im aktuellen Code relativ schwierig und damit sehr zeitaufwendig zu implementieren, da beim Start des Projektes immer von einer festen Galaxiegröße ausgegangen wurde. Ich kann dazu nur soviel sagen, dass es nicht in nächster Zeit kommen wird, egal ob größer oder kleiner.
Sir Pustekuchen hat geschrieben:Die Anzahl der Sektoren liese sich relativ schnell anpassen. Ich mache mir mehr Gedanken um die Performance und um die grafische Darstellung. Die machen eher Probleme.
Zur Not kann man ja mehrere bote.exe's kompilieren und für jede Größe eine parat haben, falls es das ist.
Crovax
Unteroffizier
Unteroffizier
Beiträge: 75
Registriert: Sonntag 1. November 2009, 14:28

Re: Kartengröße, Forschungsklau &-kooperation, Minorentfernungen

Beitrag von Crovax »

Nur zur Kartengröße:

Da ich Puste nicht reinreiten möchte, geht das Folgende auf meine Kappe. :-)

Das mit den mehreren EXEn geht. Ich habe aktuell auch drei:
BOTE.exe 749kb ist die Alpha5
BOTE_gross.exe mit einem 40x30 Feld, selbstkompiliert 1.705kb groß
und BOTE_gross_KI.exe, ebenso groß, nur da sind alle 6 Majors KIs. War zum über die Schulterschauen und ggf. optimieren der KI gedacht. Sollte man ggf. nicht nehmen, wenn man nicht wissen möchte, wie die genau spielt.

Im Code sind das 10 Zeilen Änderungen im Quelltext: 3x2 Zeilen um alte FOR-Schleifen anzupassen (die Laufweite), + 4 Zeilen in der options.h, also die Anzahl der Sektoren + die Größe der Gesamtkarte. Eine Anpassung des minimalen Zooms halte ich auch für sinnvoll :-)

Zusätzlich muss man die Galaxiehintergründe von der Größe her anpassen. Ich habs bei mir erstmal nur für die Konfed per Bildbearbeitung gemacht. Müsste man dann aber für alle Rassen machen, die man spielen möchte. Wenn die Karte die falsche Größe hat, ist das Feld immer schwarz, was ziemlich blöd ist.

Zu klein darf das Feld auch nicht sein. Bei 5x5 Feldern ist das Spiel nicht terminiert bei der Galaxyerstellung. Ich nehme mal an, dass es in der Schleife ist, wo die Rassen generiert und platziert werden, und da war nicht genügend Platz und Abstand.

Außerdem wird es zu Fehlern kommen, wenn man mit der falschen Größe einen anderen Spielstand initalisiert. Da werden die Arrays (zB Sektoren) nicht vollständig geladen, oder die Arraygrenzen werden überschrieben und das Ding stürzt ab :-)

Also für mehrere EXEn kein Problem.

Wie Du an meiner Frage gestern ggf. gemerkt hast, wollte ich das Ganze generalisieren, also alles in eine EXE. Dazu müsste man m.E. nach (puste kann mich korrigieren) drei Dinge machen:
1. Die Kartengröße müsste dynamisch beim Erstellen des Spiels eingestellt werden, und dann auch in die Savegames gespeichert werden, weil es ja bei jedem savegame variieren kann. Beim Laden muss es natürlich auch ausgelesen werden.
2. Die Galaxyhintergründe müssten dynamisch angepasst/erzeugt werden. Notfalls durch Zurechtschneiden oder sonstwas. Was puste mit Überlagerung gemeint hat, habe ich ehrlich gesagt nicht verstanden.
3. Die Größen und ein paar Werte sind aktuell über #define fest vorgegeben. Man müsste das aber dynamisch machen, also über Variablen. (die dürfte dann wahrscheinlich 'final' sein). Da hackt es bei mir im Kopf aktuell noch. Ich glaube nicht, dass man es einfach 'so' umstellen kann, da der Compiler wahrscheinlich rummeckern wird. Bzw kann ich das gesamte Projekt noch nicht genau überblicken, muss mir ggf. nochmal das Klassendiagramm anschauen. Aber vielleicht versucht mans auch einfach mal und es klappt - oder eben nicht.

Also Schritt 3 ist das Problem, der Rest ist wohl eher Fleißarbeit.

<Informatiker-blabla>
Problem ist ggf. noch das Laden von Spielen. Da sich dabei die Größen ändern können, kann man wohl doch nicht den 'final', 'static', 'const' oder sonstwas modifier nehmen, da die Dinge sich ja ändern können müssen. Oder man erzeugt sich externe Objekte, für jedes Spiel. Nur ob der Compiler das alles so schluckt?
</Informatiker-blabla>

sany
Benutzeravatar
Malle
Großadmiral
Großadmiral
Beiträge: 6948
Registriert: Montag 13. November 2006, 15:16

Re: Kartengröße, Forschungsklau &-kooperation, Minorentfernungen

Beitrag von Malle »

Ich nehme an er meint den Minimalzoom an die jpg-Größe anzupassen und das Hintergrundbild "mitlaufen" zu lassen, d.h. es gäbe dann unabhängig von der Galaxiegröße und Auflösung keine schwarzen Felder mehr. Dafür brauchts natürlich geeignete Grafiken, bei denen dieser Trick nicht so sehr auffällt.
Kiffex
Senior Kadett
Senior Kadett
Beiträge: 46
Registriert: Freitag 29. Dezember 2006, 12:48

Re: Kartengröße, Forschungsklau &-kooperation, Minorentfernu

Beitrag von Kiffex »

Gibt es eigentlich schon die möglichkeit die kartengröße zu ändern? Und wie groß soll die Größte Karte eigentlich werden?
Data: "Captain, es gibt eine grundlegende und sehr wertvolle Aussage in der Wissenschaft, sie ist ein Zeichen von Weißheit und lautet: Ich weiß es nicht."
(Illusion oder Wirklichkeit / Where Silence Has Lease)
grammaton
Kapitän
Kapitän
Beiträge: 253
Registriert: Sonntag 11. Oktober 2009, 16:08

Re: Kartengröße, Forschungsklau &-kooperation, Minorentfernu

Beitrag von grammaton »

Nein, gibt es noch nicht.
Die Kartengröße ist fix implementiert.

Ich hoffe auch das dies noch geändert wird.

Es gibt einen Mod mit dem eine größere Karte möglich ist.

mfg
Benutzeravatar
rainer
Vizeadmiral
Vizeadmiral
Beiträge: 2898
Registriert: Mittwoch 12. September 2007, 10:57

Re: Kartengröße, Forschungsklau &-kooperation, Minorentfernu

Beitrag von rainer »

DrakonAlpha
Offizier
Offizier
Beiträge: 231
Registriert: Dienstag 5. April 2011, 17:36
Kontaktdaten:

Re: Kartengröße, Forschungsklau &-kooperation, Minorentfernu

Beitrag von DrakonAlpha »

Crovax hat geschrieben:Ich glaube nicht, dass man es einfach 'so' umstellen kann, da der Compiler wahrscheinlich rummeckern wird. Bzw kann ich das gesamte Projekt noch nicht genau überblicken, muss mir ggf. nochmal das Klassendiagramm anschauen.
Es gibt ein Klassendiagramm? Wo das?
Antworten

Zurück zu „Spielfunktionen“