Hallöchen Leute...
Ich arbeite wie (ich gemerkt habe) einige andere an einen Minecraft ähnlichen Spiel welches in 2D gehalten ist. Ich arbeite momentan an einen Weltengenerator es funktionierte eigentlich beim ersten Test alles fein... Die Map ist endlos groß aber was mich wundert ist die Tatsache das ich beim ersten Test an die 3000Pixel oder mehr nach rechts fliegen konnte. Jetzt aber hängt sich das Spiel immer im 900er Bereich auf ich kann einfach nicht verstehen wieso. An der Anzahl der gleichzeitig vorhandenen Objekte kann es eigentlich nicht liegen das hat das Spiel vorher auch nicht gestört. Zudem werden Objekte die garnicht mehr gebraucht werden gelöscht und Objekte die noch gebraucht werden aber zu weit weg liegen deaktiviert. Ich bin einfachmal in die Erde "geflogen" und die maximal Anzahl an gleichzeitig aktiven Instanzen war bei 1700 in der Richtung. Konstant fast (da die Blöcke ja deaktiviert werden wenn sie zu weit abseits des Spielers liegen). Aber wie gesagt jetzt kommt ich nichtmal bis zur X-Kordinate 1000 und erreiche somit garnicht erst die 1700 Blöcke (die Linke Seite würd noch nicht weiter generiert, sprich die Karte ist momentan nur nach Rechts endlos). Generiert wird die Welt nur wenn der Spieler sich zu nahe an einen neuen Chunk begibt.
Vielleicht hat jemand anhand der Erklärung eine ahnung warum das Spiel dann freezed und nur mit den Task-Manager zu schließen ist.
Zweites Problem ist (und das ist sehr merkwürdig): Bei meinen Weltengenerator brauche icht natürlich auch einige Variablen welche Biome und ähnliches festlegen. Ich habe einmal eine Variable die bestimmt was für allgemeines Biome es ist (also ob eine Wüste, ein Dschungel, Grasslandschaft, Ozean, ...), eine Variable die einen Untertypus des Biomes bestimmt (Z.b. bei Wüste eine Pyramide generiert, bei Dschungel einen Tempel und sowas) und nochmal eine Variable für den Untergrund (Ob eine Höhle generiert werden soll oder ein geschlossenes Chunk).
Die Variable wird vom Spiel erkannt wenn sie genau den Wert 2 beträgt, hat sie aber den Wert 1 oder 0 wird vom Gamemaker die Fehlermeldung ausgegeben das die Variable garnicht exestiert bzw. ungültig ist. Ich hab erst gedacht das ich mich nur verschrieben hab und habe dann einfach den Namen der Variable von Wert2 bei den andern Fällen hinein kopiert... Jedoch immernoch das selbe, es ist aber wirklich nur so wenn der Wert 0 oder 1 ist, die 2 klappt einwahnfrei. Hat da jemand eine Ahnung?
Wäre nett wenn jemand helfen könnte, die beiden Probleme hindern an ein weiter programmieren...
Edit:
Seltsam, gerade konnte ich in einen Testlauf über die 900er Grenze, seltsamerweise hat das Spiel allerdings bis zur X-Kordinate 2000 übersprungen...
Ich arbeite wie (ich gemerkt habe) einige andere an einen Minecraft ähnlichen Spiel welches in 2D gehalten ist. Ich arbeite momentan an einen Weltengenerator es funktionierte eigentlich beim ersten Test alles fein... Die Map ist endlos groß aber was mich wundert ist die Tatsache das ich beim ersten Test an die 3000Pixel oder mehr nach rechts fliegen konnte. Jetzt aber hängt sich das Spiel immer im 900er Bereich auf ich kann einfach nicht verstehen wieso. An der Anzahl der gleichzeitig vorhandenen Objekte kann es eigentlich nicht liegen das hat das Spiel vorher auch nicht gestört. Zudem werden Objekte die garnicht mehr gebraucht werden gelöscht und Objekte die noch gebraucht werden aber zu weit weg liegen deaktiviert. Ich bin einfachmal in die Erde "geflogen" und die maximal Anzahl an gleichzeitig aktiven Instanzen war bei 1700 in der Richtung. Konstant fast (da die Blöcke ja deaktiviert werden wenn sie zu weit abseits des Spielers liegen). Aber wie gesagt jetzt kommt ich nichtmal bis zur X-Kordinate 1000 und erreiche somit garnicht erst die 1700 Blöcke (die Linke Seite würd noch nicht weiter generiert, sprich die Karte ist momentan nur nach Rechts endlos). Generiert wird die Welt nur wenn der Spieler sich zu nahe an einen neuen Chunk begibt.
Vielleicht hat jemand anhand der Erklärung eine ahnung warum das Spiel dann freezed und nur mit den Task-Manager zu schließen ist.
Die Variable wird vom Spiel erkannt wenn sie genau den Wert 2 beträgt, hat sie aber den Wert 1 oder 0 wird vom Gamemaker die Fehlermeldung ausgegeben das die Variable garnicht exestiert bzw. ungültig ist. Ich hab erst gedacht das ich mich nur verschrieben hab und habe dann einfach den Namen der Variable von Wert2 bei den andern Fällen hinein kopiert... Jedoch immernoch das selbe, es ist aber wirklich nur so wenn der Wert 0 oder 1 ist, die 2 klappt einwahnfrei. Hat da jemand eine Ahnung?
Wäre nett wenn jemand helfen könnte, die beiden Probleme hindern an ein weiter programmieren...
Edit:
Seltsam, gerade konnte ich in einen Testlauf über die 900er Grenze, seltsamerweise hat das Spiel allerdings bis zur X-Kordinate 2000 übersprungen...
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von TitanKaempfer ()