# BlockGame "Beta" - Leveldesign



## Fu3L (7. Sep 2011)

Hallo^^

Ich habe nun endlich meinen BreakoutKlon recht weit vollendet. Nun möchte ich euch schonmal vorab etwas zeigen. Zum einen, um Bugs zu erkennen bzw. Anregungen zu erhalten und zum anderen möchte ich um eure Mithilfe beim Leveldesign bitten:

*Leveldesign:*
Ich bräuchte eine Menge Level für die geplante "Kampagne". Wer möchte kann sein Können und seinen Namen (der Autorenname wird im Ingamemenü angezeigt) in meinem Spiel verewigen 
Der Editor ist kinderleicht zu bedienen. Wenn ihr noch eine Blockart für euer Kunstwerk braucht, schlagt sie einfach vor und wahrscheinlich werde ich sie einbauen 
Kleiner Hinweis: Prüft vorher mit ein paar Blöcken, ob das Level tatsächlich gespeichert wird, bevor ihr euer Kunstwerk beginnt. Damit gab es schon einmal Probleme.

Beispiellevel sind die Level: 
	
	
	
	





```
1
```
, 
	
	
	
	





```
3
```
, 
	
	
	
	





```
ltree
```
 und 
	
	
	
	





```
test
```
. 1 wird aufgerufen, wenn man einfach auf Play klickt und zeigt alle Blockarten (Da wo es scheint, als würden welche fehlen, sind die unsichtbaren Blöcke )

Zu den Upgrades, die man verteilen kann: Bitte nutzt dies nur sparsam, Upgrades werden auch per Zufall erzeugt. Ein Level sollte höchstens ein Life-Upgrade enthalten, je nach geschätzter Schwierigkeit auch keins.

Das Level-file könnt ihr einfach hier an einen Post anhängen. Besonders gut wäre ein Screenshot, damit andere sehen können, was es schon gibt. (Je nach dem wie viel Interesse mein Aufruf weckt^^ ). Edit: *Für Gäste:* In Code-Tags gepackt, könnte man das Level vllt auch in einem Post ohne Anhang packen. Hauptsache die Zeilenumbrüche bleiben erhalten.

*Was noch am Spiel zu tun ist:*
Was ich weiterhin für das Spiel plane bis zur Fertigstellung:

Realistischeres Verhalten flüssiger Blöcke (noch an einigen Stellen seltsam^^)
Eine Animation für Öl
Das Paddle soll per Maus gesteuert werden
Highscoreliste (offline) für den Kampagnenmodus
Man soll in der Lage sein, die Kampagne zwischendurch zu unterbrechen und später fortsetzen zu können
Schönere Menüs
Durch einen brennenden Ball sollen bei einem Treffer alle nicht abgeschirmten Öl-Blöcke sowie alle an diese angrenzenden anderen Blöcke abbrennen.
Effekte bei verbrennenden Blöcken, sodass diese nicht einfach verschwinden
Eine noch bessere Kollisionerkennung

*Erklärung einiger erklärungsbedürftiger Features:*
_Upgrades:_

Frost lässt Wasser gefrieren
Heat lässt Eis auftauen und Blätter und Grass austrocknen
Match entzündet trockene Biomasse und Öl
LostTreasures lässt Gold zu Sand werden
Hammer ermöglicht es dem Ball Eis, Stein und Granit mit einem Schlag zu zerstören

_Blöcke:_

Granit wird mit einer Wahrscheinlichkeit von 40% zerstört
Trifft ein fallender, flüssiger Block auf das Paddle, verliert man ein Leben.

Das Spiel (Leider zu groß für einen Forenanhang)


----------



## Firephoenix (7. Sep 2011)

Hi,
schaut lustig aus und spielt sich schon recht angenehm - könnte evtl schneller werden (oder habe ich das nur nicht bemerkt?)
Der Ball prallt vernünftig ab und auch die Sounds sind stimmig zu den Blöcken.
Wozu ist denn die rote fließkommazahl am linken Rand? 
Gruß


----------



## Fu3L (8. Sep 2011)

Hallo, danke fürs Spielen 
Die rote Fließkommazahl ist die Geschwindigkeit des Balls in px/ms. Kommt noch weg  
Werde deine Anmerkung aufnehmen und die Grundgeschwindigkeit des Balls schneller machen, wenn man mit der Maus steuern und damit das Paddle beliebig schnell bewegen kann


----------



## Firephoenix (8. Sep 2011)

Hi,
hab mal ein kleines Testlevel zusammengebaut (die Farbauswahl ist praktisch ),
hier ein paar Anmerkungen:
-Schließt man den Editor-Dialog einmal bekommt man ihn nur wieder, wenn man 2 mal auf ESC bzw P drückt, hier wäre ein seperater Button praktischer (alternativ könnte man das editor-menü auch in den nicht genutzten Schwarzen unteren Bereich des Levels integrieren).
-Die Farbauswahl ist gut geworden, super wäre noch, wenn man auch den Hintergrund gestalten könnte, am besten direkt im Editor.
-Ein "Kampagnen"-Modus plus Editor wäre ein weiteres schönes Feature, so dass man mehrere Level erstellen kann (z.b. l1,l2,l3) und diese dann nochmal in einer kampagnen-datei eingeben kann, in der einfach die levelabfolge steht. das programm wechselt dann nach ende des ersten levels direkt über in das nächste (evtl sogar mit fortlaufenden Punkten).
-Um die Leveldateien vor Fremdzugriffen wenigstens etwas zu schützen könnte man noch einen Coder bzw Decoder für die Leveldateien schreiben. Möglich wäre z.b. abzuwarten bis man mehr Level hat, diese dann auf die Verwendeten Blocktypen zu analysieren und das ganze durch eine Huffman-Codierung zu jagen (da könnten allerdings die Farbwerte etwas ärger machen  ), alternativ bzw zusätzlich könnte man die Level z.b. ein eine extra .jar packen 
-Teilweise hatte ich beim Spielen einen kleinen Fehler, dass das Spiel für 1-2 Sekunden einfror und dann weiterlief, konnte diesen aber noch nicht sauber reproduzieren 

So das wars erstmal mit meiner Wunschliste, ich hoffe sie hilft dir.
Gruß firephoenix


----------



## darekkay (8. Sep 2011)

Es wäre praktisch zu wissen, was die einzelnen Upgrades und Downgrades machen. Gleich am Anfang ist etwas runtergefallen, was sich kaum von der Hintergrundfarbe unterschieden hat. Ich wusste nicht, ob das gewollt war oder nicht, wollte es "aufsammeln" - und futsch war mein erstes Leben 

Und die Ballgeschwindigkeit (eventuell mit angepasster Paddle-Geschwindigkeit) muss auf jeden Fall erhöht werden, sonst braucht man ja Stunden für das erste Level  ^^


----------



## Fu3L (8. Sep 2011)

Weiteren Dank für eure Rückmeldungen 



> Gleich am Anfang ist etwas runtergefallen, was sich kaum von der Hintergrundfarbe unterschieden hat



Das war dann wohl das Testlevel mit dem Öl^^ Öl erkennt man aufgrund der fehlenden Animation momentan noch nicht so gut (Wird, wie im ersten Post erwähnt, noch geändert). Öl und Wasser sind Blöcke, die fallen, sobald sie nicht mehr eingegrenzt werden durch andere Blöcke und die haben dich dein Leben gekostet. Die Up- und Downgrades sind glaube ich relativ selbsterklärend (bis auf den Stern vielleicht, der bringt 1000 Punkte). Es sind auch immer nur Upgrades in einem Level, die auch einen Effekt haben können. Gibt es zB am Anfang keine unsichtbaren Blöcke, gibt es auch kein Upgrade, um diese sichtbar zu machen.
Eine Ingame Anleitung hatte ich aber sogar noch geplant (fehlt oben in der Liste)

Die Ballgeschwindigkeit ändere ich jetzt gleich schonmal etwas. Sollte irgendwer einen neuen Block wünschen und ich lads neu hoch, ist die dann gleich größer.



> (alternativ könnte man das editor-menü auch in den nicht genutzten Schwarzen unteren Bereich des Levels integrieren).



Die Idee klingt nicht schlecht, da bin ich gar nicht drauf gekommen^^  2x auf Esc zu drücken fand ich eigentlich recht praktisch, aber dein Vorschlag ist wirklich besser 

Bezüglich der Kampagne: Da muss ich auführlicher drüber nachdenken^^ Natürlich hätte der Editor dadurch einen noch viel größeren Nutzen, als wenn man immer nur sein Einzellevel danach starten kann. Eine große Hauptkampagne kommt aber auf jeden Fall 

Der Fremdzugriff ist mir eigentlich relativ egal, da ich ja eh nur eine offline Highscoreliste plane oder übersehe ich einen gewichtigen Punkt?


----------



## Fu3L (8. Sep 2011)

So, der Ball ist jetzt schneller, es gibt ein neues Anschauungslevel 
	
	
	
	





```
Penguin
```
 und im Editor gibt es keinen Dialog mehr, sondern ein Panel, das die Optionen beinhaltet. Je nach Auflösung sieht das Layout mehr oder weniger schön aus^^  Mein Tagwerk für heute. Der Link ist immer noch im ersten Post.


----------



## Fu3L (9. Sep 2011)

Komme mir etwas spammermäßig vor, denn ich habe heute wieder einige Sachen eingebaut. Diese sind für jemanden, der interessiert ist ein Level zu bauen, sicherlich von Nutzen:
(Beim Hintergrundbild bitte ich um Tests, ob dies wirklich auch bei anderen so klappt^^)


Leichteres Löschen und Platzieren der Blöcke im Editor durch gedrückt-lassen der Maustasten
Die Möglichkeit Hintergrundfarbe und Bilder zu setzen 
Ein Hintergrundbild wird gekachelt, sodass es alles bedeckt. Ein großes Bild ist nicht zu empfehlen, da das Spiel mit allen (außer sehr kleinen) Auflösungen funktionieren soll. Das Bild muss im Ordner "pics" liegen. Der Name muss mit Dateiendung angegeben werden und darf sich nicht mit den Namen der Blöcke und Upgrades überschneiden
Ein Problem besteht darin, dass der Ball oft schwer zu erkennen ist. Man beachte, dass Paddle (weiß und grün), Ball (weiß, dunkelgrau und rot) sowie die Lebens- und Punkteanzeige (Blau) weiter zusehen sein sollten

Im Editor wird nun nicht einfach angezeigt, dass ein Block ein Upgrade trägt, sondern auch welches dieser Block trägt.
Das Paddle lässt sich nun per Maus steuern. Der Ball kann nu auch mit der linken Maustaste abgeschossen werden.

Edit: Das Problem mit dem Hintergrund durch einen dunkelgrauen Rahmen um Paddle und Ball etwas abgemildert. Bei der Lebens- und Punkteanzeige lasse ich mir noch etwas einfallen.


----------



## Marco13 (9. Sep 2011)

Hab's gerade mal getestet, spielt sich ganz gut, könnte IMHO noch schneller sein aber das ist wohl ansichtssache. Aber als ich beim ersten Level den letzten Block getroffen habe, hat er sich aufgehängt (ging nichts mehr - nur noch über den Taskmanager killen). Für den Editor (oder auch das Spiel) wäre es wohl Cool, wenn die Level in einer Liste auswählbar wären - idealerweise natürlich nicht nur mit Namen, sondern auch mit einer Vorschau. Aber das ist vielleicht nicht so akut wichtig.


----------



## Fu3L (9. Sep 2011)

Danke für den Hinweis mit dem Aufhängen. Könnte daran liegen, dass der Robot die Maus weiterhin in die Mitte zieht^^ Muss ich mal länger testen, bisher konnte ichs leider nicht reproduzieren 

Eine Auswahlliste hatte ich mir auch überlegt, aber das ist der Luxus der zum Schluss kommt 

Ich verstehe auch noch nicht ganz, wo die von Firephoenix genannten Aussetzer herkommen, die ich auch hin und wieder habe, nachdem ichs exportiert habe. Der Ball bewegt sich weiter, also müsste irgendwas den EDT am Neuzeichnen hindern, nehme ich an? Muss ich wohl irgendwo nicht aufgepasst haben^^


----------



## Fu3L (21. Sep 2011)

So, ich bin nun endlich dazu gekommen, die Menüs und den Kampagneneditor fertig zu bauen (Mit Ausnahme des "Ingame" Menüs).
Als sehr nachträgliches Geburtstagsgeschenk für Marco gibt es sogar ein Vorschaubild der Level in den Auswahlmenüs 

Das grüne Start- und das orangene Highscorepanel sind noch Absicht, da noch nicht fertig. 

Des Weiteren gibt es nun schon eine kleine "Hauptkampagne". Meine Freundin war fleißig  (und das sind nur einige ihrer Werke)

Die Änderungen im Detail:

Neue Menüs 
Kampagneneditor
Der Kampagnenmodus ist nun so weit fertig. Man kann eine begonnene Kampagne nun jederzeit beenden und dann am Beginn des zuletzt gespielten Levels fortsetzen.
Ein neuer Block "Glowing"
Mächtiger Performancegewinn durch Vorskalierung der Bilder
Upgrades prallen nun vom Levelrand ab, anstatt das Level einfach zu verlassen.

Edit: Außerdem habe ich synchronized-Blöcke etwas verfeinert. Bisher hatte ich keine Ruckler mehr. Ich hoffe, dass das kein Zufall war^^

Edit2: Kleineren Fehler beim Anordnen der Level im Kampagneneditor behoben (hatte vergessen den Listener anzuhängen^^)


----------



## Quurks (21. Sep 2011)

Schönes Spiel.
Aber kein schönes Spiel ohne (konstruktive) Kritik:

Beim Ausführen der bat-Datei (XP):  

```
Exception in thread "main" java.lang.NoClassDefFoundError: und
Caused by: java.lang.ClassNotFoundException: und
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
Could not find the main class: und.  Program will exit.
```

Auf meinem (zugegeben steinalten Laptop) habe ich immer kleine Pausen wenn der Ball apprallt. Insbesondere beim Ersten mal. Wird da noch der Sound geladen?  Noch zum Thema Sound: imo sind die Sounds zu laut, ein bisschen leiser könnten sie sein. Oder einstellbar? Oder sind sie es schon? (Ich hab nicht danach gesucht). Eventuell wäre auch ein wenig abwechslung schön.

Ansonsten wie gesagt sehr schönes Spiel


----------



## Fu3L (21. Sep 2011)

Danke für das Lob 
Zur Exception: Liegt es in dem Ordner "Dokumente und Einstellungen" oder einem Unterordner davon? Ich dachte eigentlich, dass die Leerzeichen bei dieser batch-datei keine Probleme mehr machen -.- Vllt die falsche start.bat kopiert. Ich suche mal^^

Das mit dem Soundsladen kann sein.. Alle Sounds werden beim ersten Abspielen eines Sounds geladen (glaub ich^^  Lange nicht mehr reingesehen^^). Aber die Soundlautstärke ist bei mir ganz normal... Keine Ahnung wie man das ändert in Java  Wenn noch recht einfach wäre, würd ichs mal ausprobieren, einfach aus Übungsgründen. Mal sehen^^


----------



## Quurks (22. Sep 2011)

Ja, liegt auf dem Desktop. OT: Wie kann man auf die bescheuerte Idee kommen ein Verzeichnis "Dokumente und Einstellungen" zu nennen?

Zum Thema Sound: keine Ahnung in Java, aber wenn man die Lautstärke in Java nicht ändern kann dann fehlt irgendwas. Aber wie gesagt die Lautstärke ist rein subjektiv. Mach doch einen Regler dafür, das übt


----------



## Fu3L (22. Sep 2011)

Verdammt, die Ruckler, die du festgestellt hast, waren wohl die, die auch Firephoenix festgestellt hat, ich hatte die auch gerade wieder -.- Das wird ne fiese Fehlersuche ;(


----------

