# Java Spiel Idee - Lust?



## Spin (16. Nov 2009)

Hi Leute , ich bin dabei mir endlich mal mein eigenes kleines Game zu programmieren.
Nun ollte ich mal fragen, ob nicht noch ein Anfänger lust dazu hätte?

Ich weiß , dass sich nun einige blöd darüber äußern werden, aber dass bin ich ja manchmal gewohnt von hier 

Die Spielidee würde ich demjenigen zu kommen lassen. Für ein Profi , ie zig unter euch, wäre dass einen acher Wert. Aber für mich schon eine riesige Herausforderung 

Ok hat wer lust? 

Wenn nicht , werd ich eh den einen oder anderen Thread aufmachen müssen XD*froh* ^^.

grüße spin


----------



## Steev (17. Nov 2009)

Und was soll das für ein kleines Game werden? Was hast du überhaupt für Java-Kenntnisse? Hast du schon ein Grobkonzept oder irgendetwas an Gedankengut?


----------



## Aldimann (17. Nov 2009)

Erzähl mal n bißchen, was du vor hast, wie deine Java Kenntnisse liege, wie der vorredner schon sagt. Damit etwaige Leute die mitmachen wollen überhaupt erstmal einstufen können ob ihnen das liegt und sie sich dafür bereit fühlen oder unterfordert


----------



## Sanix (17. Nov 2009)

Warum wollen alle immer Member suchen bevor sie ein Konzept haben? Das ist schon klar das Todesurteil für ein Projekt. Kannst ja mal die anderen Threads dazu anschauen.


----------



## Spin (18. Nov 2009)

Ohje Leute. 

Warum sollte ich ein Spiel versuchen zu entwickeln, wenn ich kein Konzept habe?
???:L???:L???:L

Ich habe so oft Pfeffer von einigen Leuten in diesem Forum bekommen, die mir ständig gesagt haben - nicht drauf los programmieren, doch irgendwie muss man ja anfangen.

Wie soll ich meine Java-Kentnisse erklären.
Ich weiß was Variablen sind und was nen Konstruktor ist XD.

Quatsch beiseite. 
Ich könnte das Projekt bis zu hälfte alleine realisieren mit sauberer Programmierung. Ich habe Erfahrung gesammelt und kenne nun einige Besonderheiten der OOP.

Kein Problem sind : Datentypen, Casten, Konstruktoren, Kontrollstrukturen, Listener, JFRame, JApplet, Vererbung, interfaces , Typische Methoden : equals , toString , Image , Datenbänke

Probleme: Layout, Bild dynamisch erweitern. Objekte random erstellen und in einem Spiel positionieren lassen.

Naja es stellen sich viele Fragen.
Ich bin bei das ganze zu Modellieren. 

Die Spielidee ist einfach und für einen Top-Progger nicht geeignet. Denn das macht der mir in zwei Tagen und ich will ja dass der eine oder andere auch was dabei ernen möchte 

Vielleicht auch nur die Teamarbeit XD.

Nun denkt euch euren Teil und schreibt per privat, wenn interesse besteht.

PS: Im Modelieren versuche ich mit Klassendiagramme und Aktivitätsdiagramme.
Manch einer ird sagen , viel zu aufwendig für so ein kleines Game, aber : Ich will ja lernen 

UND MVC werd ich nicht anwenden, auch keine Design Pattern. Vielleicht singelton oder do etwas. Doch von dem Nutzen dieser muss ich mir noch einiges anlesen.
Das implementieren ist nicht schwer, aber das ""Warum" , 



grüße spin


----------



## Quaxli (19. Nov 2009)

Du suchst also eigentlich nicht jemanden für ein Projekt, sondern jemanden, der Dir alles erklärt und Dich in 2 Wochen von "0 auf 100" bringt... 

Das wird nicht funktionieren fürchte ich. Dein Ansatz via "Programmieren lernt man durch programmieren" ist schon o.k., aber keiner hier hat das in 2 Wochen hinbekommen. Dazu gehört nämlich auch, daß man mal Fehler macht oder schlechte Lösungen realisiert. Die Spielchen, die ich vor 2 Jahren zusammen geklappert habe, haben funktioniert - auch wenn ich das heute ganz bestimmt nicht mehr so umsetzen würde, wie ich es teilweise damals gemacht habe.
Ich denke auch, daß ein Mini-Spielchen, daß ein erfahrener Programmierer in 2 Tagen hinbekommen kann, nicht oder nur bedingt für eine Zusammenarbeit geeignet ist, wie das Dir vielleicht vorschwebt.

Wenn Du das Projekt bis zur Hälft selbst realisieren kannst, rate ich Dir, es alleine zu machen. Das was Du nicht weißt kannst Du hier im Forum nachfragen und darauf aufbauend selbst eine Lösung suchen. Du wirst dabei mehr lernen, als wenn Dir jemand eine Lösung präsentiert.


----------



## ARadauer (19. Nov 2009)

Beschreib einfach mal dein Spielprinzip.
Poste mal ein paar Diagramme und dann fang an. Gewisse Teile können ja andere User hier im Forum übernehmen bzw bei Problemen können wir ja gerne helfen...


----------



## Gonzo17 (19. Nov 2009)

Ich wäre generell an sowas interessiert, allerdings würde ich natürlich auch gerne wissen, um was es sich genau dreht. Da ich nicht so wahnsinnig viel Zeit habe will ich diese freie Zeit ja nicht in etwas investieren, das ich am Ende selbst nicht mag.


----------



## Steev (19. Nov 2009)

Na ja, generell ist es natürlich interessant, im Team ein Spiel zusammen zu entwickeln. Nur macht es meist weniger Spaß wenn, das Team wissensmäßig sehr unterschiedliche Stände hat, sodass man am Ende das meiste allein machen muss.


----------



## Spin (19. Nov 2009)

Na denn werd ich mich mal alleine versuchen, soweit wie es geht.

PS: Ich dachte es wäre jemand voller Lust und Euphorie  

Achja die Spielidee: Ich mach da ja kein Geheimnis draus 
Ich hätte da aber gleich 2 Fragen 

Wie kann ich bei einem 2D Spiel das Bild verlängern, damit meine ich den Fluss, auf den mein Spieler sich befindet. Das Fenster bekommt bei mir eine Größe soll aber nicht nur von a px bis b px spielbar sein.

Ihr kennt sowas bei auto renn spielen, wo man feindliche autos ausweichen muss. Das Bild scrollt nach unten.

Wie mache ich dass?


1. Leg ich ein riesen Bild an und leg es hinter , doch der Benutzer sieh am anfang nur 1/8?
2. Mache ich 5 Bilder und lade sie jeweils rein wenn der benutzer in der mitte des fenster sich befindet?


2. Frage.

Wie kann ich bestimmen dass ein Spieler sich nicht außerhalb des Flusses bewegen darf.
Lsg.: 1 px linie am Fluss langlegen?

oder irgendwie das BIld in 1 und 0 unterteilen.? Auf den 1 darf man sich bewegen , auf den 0 nicht.


ok spielidee:

*Wasser Spiel* 

Das Spiel wird in 2D realisiert und handelt um ein Floß, welches entlang eines Flusses gesteuert werden muss. Am Ende soll es als jar-Datei ausgeführt werden können.
Weiterhin braucht das Spiel eine Datenbankanbindung.

*Spielfenster:* 400 x 600px; JFrame, Menu Spielgeschehen: JPanel

*Hintergrund:* Bilder zwischenspeichern um einen dynamischen Hintergrund zu erzeugen. 

*Spielobjekte:* Floß-Objekt, Item-Objekt, Enemy-Objekt 

*Alle Objekte:* 
- nicht aus dem Flussbereich
- Breite,Höhe,Position, Image - Reaktion auf Berührung 

_1. Floß-Objekt: _

- Bewegen durch Pfeiltasten (Key) - verbunden mit Lebensenergie - kann gold sammeln und den Highscore erhöhen
_2. Item-Objekt:_
- drehen um die eigene Achse - soll random verteilt sein im Spiel - Zwei Wertigkeiten: 5 und 10 (Gold)
_3. Enemy-Objekt_
_ - soll random verteil sein im Spiel - zwei Arten Stein und Baumstamm - wenn berührt, dann minus lebensenergie_

* Spiel beendet:* 
3 Möglichkeiten: 

- JFrame schließen - Verlust aller Lebenspunkte ->Game Over + Anzeige Highscore
 - Bestehen des Wasserparkours ->Glückwunsch + Anzeige Highscore  Menu: Game, Highscore  1. Game - Neu Starten - Pause - Highscore

- *Anzeigen  Highscore*:  

- Speichern in MySQL Datenbank
- Highscore kumuliert durch sammeln von Gold - Highscoreanzeige nach Spielende



Würde mich über offene Fragen freuen, vielleicht fehlt ja einiges. Maybe ich muss noch über einiges nachdenken, bevor ich anfange zu programmieren.
Danke ^^


----------



## javimka (19. Nov 2009)

Gehört jedenfalls zu den besten Konzepten, die ich hier schon gelesen habe 

Wenn deine Items und feindlichen Objekte zufällig verteilt sind, wirst du kaum mit grossen Bildern arbeiten können, die sich dann bewegen. Oder zumindest wäre es sehr aufwendig und möglicherweise ineffizient.
Ich würde eher empfehlen, einen Timer als Grundlage zu nehmen, der alle 25ms das Spielfeld neu berechnet und neu zeichnet. Deine Items und feindlichen Objekte haben natürlich ein Image, das ihr Aussehen beschreibt und die kannst du dann direkt ins Spielfeld an den richtigen Ort zeichnen.


----------



## Steev (19. Nov 2009)

Das Konzept hört sich doch schon mal super an :toll:

*Vorschlag:*
- Der Fluss hat auch noch eine Strömungsrichtung die das Floß unaufhaltsam in eine bestimmte Richtung treibt.
- Stromschnellen und Wasserfälle

*Tipp:*
-Ich würde das ganze als dynamische TileMap nach dem SideScrolle-Prinzip aufbauen. (http://fivedots.coe.psu.ac.th/~ad/jg/ch062/ch6-2.pdf)
-Am Anfang würde ich erst einmal einen Rechteckigen bereich definieren, den der Spieler nicht verlassen dar. Später kann man ja dann immer noch die "Spielfläche" von der Position des Flusses auf den Tiles abhängig machen.


----------



## Spin (19. Nov 2009)

Danke für Eure hilfe.

Und vielen Dank für die Lektüre. Ich liebe lesen , jetzt nur noch verstehen :rtfm:
Das mit den enemy-Objekten kann man ja später noch erweitern.

Erst einmal das scrollen klären ^^.
Ich meld mich hier wieder und habe jetzt auch schon Akti-Diagramme gemacht.


----------



## Quaxli (20. Nov 2009)

Spin hat gesagt.:


> 2. Frage.
> 
> Wie kann ich bestimmen dass ein Spieler sich nicht außerhalb des Flusses bewegen darf.
> Lsg.: 1 px linie am Fluss langlegen?
> ...



Du könntest für einige wenige Pixel die Bildfarbe prüfen. Das sollte machbar sein ohne spürbar Performance einzubüßen. Um dies zu vereinfachen kann man mit einer sog. Schattenkarte arbeiten. Das heißt parallel zu den farbigen und detaillierten Tiles, mit denen Du Deine Karte zusammen bastelst (wie von Steev vorgeschlagen) lädst Du zusätzlich Bilder die auf sehr wenige eindeutige Farben reduziert sind. Dort sind z. B. alle Bereiche die nicht betreten werden können, schwarz weingefärbt, erlaubte Bereiche blau und gefährliche Bereiche rot, usw..
Zur Überprüfung ob Dein Boot irgendwo fahren darf/Kann überprüfst dessen Position nicht auf dem angezeigten Tile, auf dem es sich gerade befindet, sondern auf dem "Schatten-Tile", das auf 2 - 3 Farben reduziert wurde.


----------



## radiac (26. Nov 2009)

Hi Quaxli .

Wieso weisst du ihm nicht auf dein Tutorial hin? xD. Oder hast du das schon, hab ein paar Nachrichten überflogen .


----------



## Quaxli (27. Nov 2009)

Steht doch immer in der Signatur.


----------



## radiac (27. Nov 2009)

Ach da!!! Tatsächlich  Das musst du aber noch ein bisschen Hervorheben . So blinkend und so


----------

