Text Adventure Erstellen

DjDomex3

Mitglied
Ich bin gerade dabei ein Text Adventure zu schreiben und wollte in diesem forum mal fragen ob mir leute beim schreiben helfen könnten. Ich bin noch anfänger. Ich bin mittlerweile soweit und weiß nicht wie ich weiter machen soll.

Java:
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;

public class main {

   public static void main(String[] args) {
     // TODO Auto-generated method stub

Display display = new Display();
Shell shell = new Shell(display);
shell.setText("Text Adventure");
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) display.sleep();
}
display.dispose();
   }

}
 
Zuletzt bearbeitet von einem Moderator:
K

kneitzel

Gast
Also ist Dein Ansatz bisher am Hello World Snippet von swt angekommen.

Der Ansatz so ist aber leider nicht zielführend:
- Du musst Dir zuerst klar werden, was Du genau machen willst. "Text Adventure" ist da einfach nicht genau genug. Du brauchst da schon eine genaue Vorstellung, was da wie geschehen soll. Also die Sicht von aussen ist wichtig.
- wenn du die Features festgelegt hast, dann suchst Du Dir ein möglichst kleines Subset davon raus, das du dann implementieren kannst. (so hast Du dann mehrere Versionen ... Halt eine erste Version, in der erst sehr wenig geht.) Hat den Vorteil, dass Du kleine, geschlossene Iterationen hast und Dich nicht verhaspelst
- dafür muss dann das Design gemacht werden. Wie sind diese Features umzusetzen?
- dann bildest du kleine Arbeitspakete - was muss zuerst entwickelt werden, was kommt später?

Verwendete Technology: Wieso willst Du auf SWT setzen? Zum einen stimmt die Reihenfolge nicht: Du hast noch nichts zum anzeigen und fängst aber damit an? Zum anderen: Als Anfänger würde ich die verwendeten Technologien klein halten. Statt swt würde ich mir an deiner Stelle erst Unit Tests ansehen. Und eine einfache Consolenanwendung wird es dann doch vielleicht auch tun ...
 

DjDomex3

Mitglied
Woher finde ich herraus welches Subset gut dafür wäre. Ich wüsste zu dem auch nicht wie ich anfangen könnte, ich habe zu erst versucht über das ein Fenster geöffnet wird, wodrauf ich dann etwas machen könnte. Hättest du eine empfehlung wo ich mir "Unit Tests" ansehen könnte. bzw Daraus etwas lernen Könnte. Ich habe schon ein bild im kopf wie ich das machen will aber ich weiß nicht wie ich das Programm technich umsetzen kann, Da ich sehr unerfahren bin.
Danke für die schnelle Antwort.
 
K

kneitzel

Gast
Also bezüglich SubSet: Das ergibt sich meist relativ einfach, da man erkennen kann, was man ggf. weglassen kann.
Ich habe keine Ahnung, was in deinem Textadventure vorkommen soll und wie das aufgebaut sein soll, aber es wäre z.B. denkbar:
- Du hast Räume, die miteinander verbunden sind und die eine Beschreibung haben.
- Du hast Gegenstände. Du hast lebende Gegenstände, du hast Spieler, ...
- Lebende Wesen können dann kämpfen
- Es wird irgend eine Art der Eingabe und Ausgabe geben
- ...
Wenn man so eine Liste sieht, dann kann man schnell viele Dinge entdecken, die man verzögern kann. Räume die verbunden sind, werden wohl direkt benötigt. Aber Gegenstände und Spieler können am Anfang fast entfallen - die kommen nach dem Raum. Ein Kampfsystem kann ganz ans Ende kommen. Die Ein-/Ausgabe kommt dann zusammen mit dem Spieler (Vorher braucht man das nicht).
Also vieles ergibt sich über die Abhängigkeiten. Und dann muss man die Funktionen beschränken. Ein Gegenstand kann in Räumen, anderen Gegenständen oder einer Person sein. Er muss eine Beschreibung haben. Sehr viel mehr muss ja nicht sein. Dass man den für irgendwas nutzen kann, kommt dann erst später.

Unit Tests - da würde ich Dir einfach einmal raten, nach junit einführung zu suchen. Da findet sich dann schon einiges. Ich selbst bevorzuge eigentlich immer Bücher:
http://javarevisited.blogspot.de/20...-unit-testing-junit-tdd-Java-programmers.html (Wie man erkennen kann sind diese Bücher auf Englisch. An Englisch kommt man kaum vorbei in der Software-Entwicklung.)
Evtl. gibt es aber auch gute Tutorials auf Youtube - aber da kenne ich mich nicht aus.
 

DjDomex3

Mitglied
Ich wollte zuerst Damit anfangen das mann zwischen ein paar verschiedenen Räumen gehen kann. Dafür wollte ich wissen wie ich ein programm schreibe das mir ein fenster öffnet, deswegen habe ich mit swt angefangen, da ich dachte das ich da fuß fassen könnte. Also ich woltle jetzt einfach nur damit anfangen das man zwischen räumen gehen kann. Damit ich bischen erfahrungung mit dem Programmieren bekomme. Ich habe mir auch gestern ein Buch bestellt(http://www.amazon.de/dp/3836217880/ref=pe_386171_38075861_TE_item_image). Ich habe mir dazu vorgestellt das ich ein kleines fenster habe und das im oberen Drittel eine beschreibung steht (wo du gerade bist) und das du dann im unteren drittel möglichkeiten genannt bekommst was du jetzt tuen kannst , also jetzt zum beispiel das man nach süden osten etc, gehen kann. Dazu soll am unteren Rand noch eine eingabe zeile exestieren. Daher ist meine frage wie ich überhaupt drauf komme so ein fenster beschreiben zu können.
Ich habe mich jetzt ein wenig zu "JUnit" informiert, wie ich das alles verstanden habe ists das nur ein programm um geschriebene Programme zu testen?!
- Liege ich da Falsch
- Wie kann mir das bei der Programmierung weiter helfen?
 
Zuletzt bearbeitet:

Joose

Top Contributor
Ich wollte zuerst Damit anfangen das mann zwischen ein paar verschiedenen Räumen gehen kann. Dafür wollte ich wissen wie ich ein programm schreibe das mir ein fenster öffnet, deswegen habe ich mit swt angefangen, ....
Diesen Ansatz finde ich falsch! Ein TextAdventure eignet sich super dafür mit der Konsole zuarbeiten, da eben nur Text gebraucht wird und keine Grafik oder ähnliches. Natürlich kann man es später noch mit einem passenden UI versehen, aber das ist eine hübsche Verpackung vom eigentlichen Programm.
Daher solltest du meiner Meinung nach vorerst bei einer einfachen Konsolenanwendung bleiben.

(Diese entsprechend aufgebaut ist das spätere einfügen einer UI ein Klacks)

Ich habe mich jetzt ein wenig zu "JUnit" informiert, wie ich das alles verstanden habe ists das nur ein programm um geschriebene Programme zu testen?!
Nein damit liegst du nicht falsch.
Die Unit Tests testen die Methoden deiner Klasse auf richtige Funktionsweise. Sprich willst du ein neues Feature einbauen in Klasse XY kann es vorkommen das du Methoden anpassen musst. Damit du aber sichergehen kannst das diese richtig funktionieren danach, lässt man die Unit Tests laufen.
 

DjDomex3

Mitglied
Danke Für den tipp, Aber ich weiß noch immer nicht
-Wie sollte ich jetzt anfange
-ist auf der konsole gemeint ganz normal den code schreiben?
-Hättet ihr irgendwelche nützlichen tipps
Danke Für die Hilfe :)
 

Jardcore

Top Contributor
Vielleicht solltest du erst einmal Java lernen, bzw. eine andere Programmiersprache.
Oder du benutzt eine kostenlose GameEngine, bei der du dir alles zusammen klicken kannst.
Egal für was du dich entscheidest, du musst dich bei beiden hinsetzen und lernen.
 

DjDomex3

Mitglied
Das ist mir klar. ich bin auch Bereit mich hinzusetzen ich wollte nur nach ein paar tipps fragen, wie ich am besten bei so einem projekt vorgehe.
 
K

kneitzel

Gast
Also mein Tipp wäre, erst einmal in Ruhe das Buch durchzuarbeiten. Ich kenne das Buch zwar nicht, aber ich denke, dass Du danach einen ersten Überblick hast über Java und auch erste Applikationen schreiben kannst. In dem Buch wird es bestimmt auch Informationen geben, wie Du auf der Konsole Daten einliest und ausgibst (Konsole ist ein Terminalfenster - auch Eingabeaufforderung oder CMD Fenster genannt). Vielleicht wird auch eine GUI wie AWT oder swing erläutert - dann hättest Du Deinen Einstieg in grafische Programme.

Unit Tests kannst Du Dir dann ggf. danach ansehen. Unit Tests sind kleine Tests, die Deine Klassen / Methoden testen um so sicher zu stellen, dass die genau das machen, was sie machen sollen.

Mein nächster Tipp wäre, deine Idee mit dem Textadventure evtl. noch etwas aufzuschieben. Konzentriere Dich auf das Buch. Da werden ja auch Beispiele drin sein: Spiel mit denen rum. Erweiter diese. Stell sicher, dass Du die Inhalte wirklich verstanden hast. Dann kannst Du an Dein Projekt gehen.

Und dann machst Du auf jeden Fall erst einmal ein Design! Nicht direkt anfangen zu entwickeln - das bringt meiner Erfahrung nach nichts. So kommst Du nie zu einem sauberen Design. Am Anfang mag es gehen, aber auf Grund des fehlenden Designs wird der Code schnell nicht mehr handlebar und dann wird der Spass auch schnell nachlassen. (Ich spreche da auch aus Erfahrung. Das habe ich ja auch alles mal hinter mich gebracht!)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
L Text-Adventure Java Basics - Anfänger-Themen 3
Harlequin Compiler-Fehler Text Adventure - "Long Output" Fehler Java Basics - Anfänger-Themen 3
richis-fragen JTable effektiv angezeigter Text ausgeben nicht Inhalt vom Model Java Basics - Anfänger-Themen 9
A Edit Text Negative Decimalzahlen Java Basics - Anfänger-Themen 18
P Aus Text Datei nur Zahlen übernehmen Java Basics - Anfänger-Themen 13
T Text einlesen code was kommt dahin? Java Basics - Anfänger-Themen 1
R Text in der DB abspeichern, und danach bearbeiten Java Basics - Anfänger-Themen 5
A JTextArea entfernen und durch neuen Text ersetzen Java Basics - Anfänger-Themen 8
JavaBeginner22 Button Text verändern Java Basics - Anfänger-Themen 1
GoenntHack Java Text von JLabel verändert sich nicht Java Basics - Anfänger-Themen 1
A Text zu Morsecode Java Basics - Anfänger-Themen 8
O Java Text Area Zeilenausgabe Java Basics - Anfänger-Themen 7
M Text wird in der Console nicht ausgegeben. Java Basics - Anfänger-Themen 11
berserkerdq2 An selbst ersteller txt Datei immer Text dranhängen, ohne den vorherign Text zu löschen Java Basics - Anfänger-Themen 8
M Text in Datei schreiben Java Basics - Anfänger-Themen 9
T208 Text Datei individuell benennen. Java Basics - Anfänger-Themen 5
A Werten aus dem Text ausliesten Java Basics - Anfänger-Themen 6
K Jlabel mit itemlistevent Text gegeben, wird nicht angezeigt Java Basics - Anfänger-Themen 5
Kiki01 Wie würde eine geeignete Schleife aussehen, die die relative Häufigkeit für jeden Charakter in einem Text bestimmt? Java Basics - Anfänger-Themen 3
O Text mit Regex trennen und wieder zusammenbauen Java Basics - Anfänger-Themen 5
xFlozen Text mehrspaltig ausgeben Java Basics - Anfänger-Themen 3
S Zufällige ungerade Zeile aus Text-Datei lesen Java Basics - Anfänger-Themen 5
K Rekursiver Vergleich von Textmuster und Text Java Basics - Anfänger-Themen 2
C Variablen Provided text for message may not be null Java Basics - Anfänger-Themen 9
H Klassen Die Länge einer Text-Node bestimmen Java Basics - Anfänger-Themen 2
F Erste Schritte java.util.Scanner: Beliebig langen Text per Paste in Console eingeben ? Java Basics - Anfänger-Themen 14
GermanPie Discord Text Channel erstellen? Java Basics - Anfänger-Themen 1
C JButton Text 2 Mal ändern funktioniert nicht Java Basics - Anfänger-Themen 8
yoskaem Text Color durch Klicken eines Buttons in anderer Activity ändern Java Basics - Anfänger-Themen 2
B Alle Links in einem Text suchen und ersetzen mit einem neuen Link Java Basics - Anfänger-Themen 18
J Java TextArea Text bei hinzufügen makieren Java Basics - Anfänger-Themen 1
T Text-Ausgabe für Textadventure - Organisation Java Basics - Anfänger-Themen 5
G Anklickbaren Text erzeugen Java Basics - Anfänger-Themen 2
B Text-Datei nur in Stream speichern und dann ausgeben Java Basics - Anfänger-Themen 3
M Java: BufferedReader liest nur die Hälfte der Text-Datei. Java Basics - Anfänger-Themen 4
M Apache POI PPT - Vertikales Alignment von Text im XSLFAutoShape Java Basics - Anfänger-Themen 2
I Nur auf Abfrage von einer Text Datei einlesen Java Basics - Anfänger-Themen 11
P Text Datei einlesen und übertragen Java Basics - Anfänger-Themen 15
P Taschenrechner Text übertragung Java Basics - Anfänger-Themen 3
J java.text.DecimalFormat Java Basics - Anfänger-Themen 5
AnnaBauer21 GridBagLayout JLabel weightx: Unterschiedliche Breite mit & ohne Text Java Basics - Anfänger-Themen 6
K Durch eine Text eingabe etwas Ausführen Java Basics - Anfänger-Themen 5
S Text-To-Speech mit Java Java Basics - Anfänger-Themen 2
M Input/Output Java Swing: Prüft ob Text aus JTextField ausschließlich Integer enthält Java Basics - Anfänger-Themen 15
ruutaiokwu Ausgegebene Zeile ersetzen mit neuem Text Java Basics - Anfänger-Themen 3
tsom Erste Schritte itext Text als Block auf neue Seite Java Basics - Anfänger-Themen 0
Dimax Programme ,als Text in MySql speichern Java Basics - Anfänger-Themen 7
CptK Datentypen Text Dateien einlesen Java Basics - Anfänger-Themen 3
S Zeichen zählen kopierter Text Java Basics - Anfänger-Themen 6
D Text als Code in java-forum.com formatieren. Wie ? Java Basics - Anfänger-Themen 3
F Schreibprogramm nur markierten Text in kursiv oder fett schreiben Java Basics - Anfänger-Themen 3
A Rechnen mit Text und Zahl Java Basics - Anfänger-Themen 4
MaximilianTM Input/Output Einlesen und bearbeiten einer text Datei / Zeile Java Basics - Anfänger-Themen 5
M Erste Schritte Verschlüsselung von text Java Basics - Anfänger-Themen 21
S Text aus einer HTML Datei auslesen Java Basics - Anfänger-Themen 1
S Java Text splitten mit Tabs, Zeilen, Zeichen und Klammern. Java Basics - Anfänger-Themen 6
M Beliebigen Text in *** umwandeln Java Basics - Anfänger-Themen 15
K (JTable) Text einer Zelle auf der linken Seite kürzel Java Basics - Anfänger-Themen 2
H Suche in Text und Markierung Java Basics - Anfänger-Themen 14
H Suche in einem Text Java Basics - Anfänger-Themen 17
F Input/Output Text einlesen lassen Java Basics - Anfänger-Themen 14
L Text eingeben und im Textfeld auslesen lassen Java Basics - Anfänger-Themen 2
R Best Practice Palindrom in einem Text finden Java Basics - Anfänger-Themen 18
J Text Datei einlesen Java Basics - Anfänger-Themen 6
L Text und Ganzzahl in einer Dialogbox Java Basics - Anfänger-Themen 5
T Jlabel durch Text in 2 anderen Jlabels sichtbar machen Java Basics - Anfänger-Themen 4
J JTextArea visible ohne Text Java Basics - Anfänger-Themen 3
D Bild zu Text Java Basics - Anfänger-Themen 4
L Text/Befehle zu Programmen senden Java Basics - Anfänger-Themen 1
L Java Text datei nur bis zu einem Punkt auslesen? Java Basics - Anfänger-Themen 3
T Classpath Problem mit dem auslesen von Text-Dateien (Pfad) Java Basics - Anfänger-Themen 3
S Erste Schritte Sprachermittler - Datei öffnen, Text in TextArea, Bereinigen, Auswerten Java Basics - Anfänger-Themen 14
S Java Label hat komischen text Java Basics - Anfänger-Themen 4
F Text anhand bestimmter Trennzeichen in Textteile trennen (netbeans) Java Basics - Anfänger-Themen 7
S Ausgabe von Text Formatieren Java Basics - Anfänger-Themen 6
H Text in einen Button quetschen Java Basics - Anfänger-Themen 3
A Text mit "Scanner" eingeben und Umlaute ersetzen Java Basics - Anfänger-Themen 7
A Text teilen und Wörter zählen Java Basics - Anfänger-Themen 7
J Zahlen als Text übersetzen Java Basics - Anfänger-Themen 6
F Erste Schritte Label Text vor Methodenaufruf setzen Java Basics - Anfänger-Themen 17
R Text Pane Aktualisierung erst nach JOptionPane Java Basics - Anfänger-Themen 10
I BufferedReader Text-Datei einlesen??? Java Basics - Anfänger-Themen 1
S Wort in Text suchen und ersetzen Java Basics - Anfänger-Themen 3
V Interface ich schäme mich das zu fragen, aber ich schaff nicht ein Text zu zentrieren :( [javaFX] Java Basics - Anfänger-Themen 6
M Input/Output Text auf Fenster zeichen Java Basics - Anfänger-Themen 2
W Klassen Fehler bei public void setLabelText(JLabel label, String text) Java Basics - Anfänger-Themen 11
Chava Testprojekt.Text.Image.Button Java Basics - Anfänger-Themen 4
Z JSlider - Text wird nich angezeigt Java Basics - Anfänger-Themen 0
A Problem mit set.Text und übergabe Java Basics - Anfänger-Themen 2
A Probleme mit equals und get.Text Java Basics - Anfänger-Themen 12
M Text innerhalb Anführungsstriche als "eins" auswerten Java Basics - Anfänger-Themen 5
V Text aus einer .txt dynamisch ins applet einpassen Java Basics - Anfänger-Themen 0
H Text durch Checkbox erscheinen lassen Java Basics - Anfänger-Themen 2
U markierten Text auf Zeichen zuvor/danach pruefen Java Basics - Anfänger-Themen 9
J Dienst zum Text kopieren und Variable hochzählen Java Basics - Anfänger-Themen 7
L Text verschlüsseln Java Basics - Anfänger-Themen 13
M Button mit Bild und Text Java Basics - Anfänger-Themen 2
V Text wüerfeln-Rekursiv Java Basics - Anfänger-Themen 4
S Text editors popularity among programmers Java Basics - Anfänger-Themen 0
L Methoden String text komprimieren und dekomprimieren Java Basics - Anfänger-Themen 14

Ähnliche Java Themen

Neue Themen


Oben