ubuntuusers.de

Bash Textbased RPG

Status: Ungelöst | Ubuntu-Version: Server 11.10 (Oneiric Ocelot)
Antworten |

sc0p

(Themenstarter)
Avatar von sc0p

Anmeldungsdatum:
10. Januar 2012

Beiträge: 34

Wohnort: Schweiz

"Mueller"

bei Google: Ungefähr 70'700'000 Ergebnisse (0.21 Sekunden)
"Müller"

bei Google: Ungefähr 157'000'000 Ergebnisse (0.20 Sekunden)

Das hat mich überzeugt.

Ich werde in Zukunft trotzdem nur noch englisch schreiben für Output/Kommentare

Eigentlich sollte hier eine hiesige, von Nostalgie schwärmende, retro RPG Diskussion laufen ☺

Lysander

Avatar von Lysander

Anmeldungsdatum:
30. Juli 2008

Beiträge: 2669

Wohnort: Hamburg

sc0p schrieb:

Ich werde in Zukunft trotzdem nur noch englisch schreiben für Output/Kommentare

Es ist ja durchaus sinnvoll, Kommentare in Quellcode auf Englisch zu schreiben. Das hat ja niemand bestritten 😉

sc0p

(Themenstarter)
Avatar von sc0p

Anmeldungsdatum:
10. Januar 2012

Beiträge: 34

Wohnort: Schweiz

wie stehts mit

sc0p schrieb:

Eigentlich sollte hier eine hiesige, von Nostalgie schwärmende, retro RPG Diskussion laufen ☺

Lysander

Avatar von Lysander

Anmeldungsdatum:
30. Juli 2008

Beiträge: 2669

Wohnort: Hamburg

Kannst Du ja nicht erzwingen 😉

Ich persönlich lehne die Bash für so ziemlich viel ab, was hier immer wieder in der Bash gelöst wird. Da ist eben viel persönlicher Geschmack dabei.

Ich habe Dein Script noch nicht laufen lassen (können), aber das Überfliegen des Codes hat mir nicht viel gesagt. Was soll das sein? Ein Kapmfsimulator? Ein Räume basiertes Game? Was ist das Konzept dahinter?

Wenn Du eine allgemeine Diskussion wünscht, dann musst Du ein paar Vorglagen geben. Beschreibe doch, was Du getan hast, was DIr noch vorschwebt und in welche Richtung Dich solche Spiele interessieren.

sc0p

(Themenstarter)
Avatar von sc0p

Anmeldungsdatum:
10. Januar 2012

Beiträge: 34

Wohnort: Schweiz

Nun den Inhalt dieses kleinen Spiels enthält rundenbasierte "Kämpfe". Du spielst einen Charakter, der verschiedene Attacken zur Verfügung hat, welche er verbessern kann: mit Skillpunkten oder Items die du von besiegten Gegnern erhälst. Das ganze System basiert jeweils aus berechnungen & Zufallszahlen - wie die Rollenspiele heute noch ☺

Zusammengefasst; ein sehr einfaches Rollenspiel; oder zumindest ein Schnipsel davon.

Ich dachte mir, ihr hab Tonnen an Idee'en, welche ich noch einbauen könnte und/oder verbesserungen in Bezug auf die Spielweise 😀

Gruss

Lysander

Avatar von Lysander

Anmeldungsdatum:
30. Juli 2008

Beiträge: 2669

Wohnort: Hamburg

sc0p schrieb:

Zusammengefasst; ein sehr einfaches Rollenspiel; oder zumindest ein Schnipsel davon.

Naja, eher ein Hack 'n Slay ohne Räume 😉

Ich dachte mir, ihr hab Tonnen an Idee'en, welche ich noch einbauen könnte und/oder verbesserungen in Bezug auf die Spielweise 😀

Ja, trenne Daten und Logik voneinander - oder noch besser: Setze das in einer echten Multi Purpose Sprache um 😉 Ist doch mal ein nettes Projekt, um den Einstieg in eine Sprache zu schaffen... Python, Scala oder Ruby? 😉

sc0p

(Themenstarter)
Avatar von sc0p

Anmeldungsdatum:
10. Januar 2012

Beiträge: 34

Wohnort: Schweiz

Gut. Dann versuch ich mich als nächstes mit python B-)

sc0p

(Themenstarter)
Avatar von sc0p

Anmeldungsdatum:
10. Januar 2012

Beiträge: 34

Wohnort: Schweiz

sc0p schrieb:

Gut. Dann versuch ich mich als nächstes mit python B-)

Mein Problem nun ist; ich kenne zwar die Befehle meines Skript's in Python (User-eingaben, arrays etc.) aber ich kann ein Skript / Programm trotzdem nicht gestalten ; Ich könnte es einfach abschreiben von bash zu python und nichts würde sich verändern ^^

Mit python könnte man theoretisch noch viel viel mehr, aber ich weiss ja gar nicht was ich noch einbauen soll?

Inzwischen habe ich auch schonwieder ein neues Bash Kartenspiel ( + Schere/Stein/Papier funktion bei gleichheit der Karten Attribute ) geschreiben 😬 http://pastebin.com/Y7GtmTTf

Gruss

Lysander

Avatar von Lysander

Anmeldungsdatum:
30. Juli 2008

Beiträge: 2669

Wohnort: Hamburg

sc0p schrieb:

Mein Problem nun ist; ich kenne zwar die Befehle meines Skript's in Python (User-eingaben, arrays etc.) aber ich kann ein Skript / Programm trotzdem nicht gestalten ; Ich könnte es einfach abschreiben von bash zu python und nichts würde sich verändern ^^

Also zum einen ist das Wort "Befehl" nicht passend - in Python gibt es nur wenige Schülsselwörter, welche man als "Befehle" ansehen könnte (return, break, usw.). Alles andere sind Funktionen und Methoden, also callables.

Generell bringt es nichts, wenn Du Python nicht "lernen" willst! Einfach 1:1 Konzepte der Bash auf Python übertragen bringt rein gar nichts. Dazu gehört viel viel mehr. Man kann so ein simples Progrämmchen von einfachen Dicts mit Funktionen bis hin zu OOP mit Metaprogrammierung und Decoratoren aufziehen. Insofern ist das nichts, was man nach drei Stunden Tutorialstudium sofort runterschreibt. Aber es ist durchaus ein Beispiel, welches man nach relativ kurzer Zeit zumindest sinnvoller als in Bash auf die Beine stellen kann.

Mit python könnte man theoretisch noch viel viel mehr, aber ich weiss ja gar nicht was ich noch einbauen soll?

Genau das ist es, was das Erlernen einer Sprache und generell des Programmierens so schwer macht: Du musst selber lernen, wie Du Konzepte und Paradigmen einer Sprache so einsetzt, dass sie das Problem sinnvoll abbilden 😉

sc0p

(Themenstarter)
Avatar von sc0p

Anmeldungsdatum:
10. Januar 2012

Beiträge: 34

Wohnort: Schweiz

nun

ich bin nun top verwirrt durch die Ansammlung komplexer Wörter wie Metaprogrammierung, Decoratoren

Objekt Orientiertes Programmieren...

Gehört das nicht auch zu OOP wenn ich Funktionen habe und zwischen diesen hin und her springe?

Ich möcht' doch gar nicht "richtig" programmieren

#Argumentationslos -.-

Sagen wir doch abschliessend das ich lieber 80% aus einer Bash raushole (awk, sed, shell built-ins und all das) als mit einer reinen Programmiersprache 10% ... um so kleinen Schwachsinn zu coden ^^

Lysander

Avatar von Lysander

Anmeldungsdatum:
30. Juli 2008

Beiträge: 2669

Wohnort: Hamburg

sc0p schrieb:

Ich möcht' doch gar nicht "richtig" programmieren

Das hättest Du schon vor 10 Posts schreiben sollen 😉

Viel Diskussion ist ja nicht grad enstanden - evtl. deutet das doch darauf hin, dass sich niemand ernsthaft in der Bash mit solchen Problemen befassen will? 😉

Nicht falsch verstehen: Du sollst machen, was Dir Spaß macht! Erlaubt ist, was gefällt ☺

sc0p

(Themenstarter)
Avatar von sc0p

Anmeldungsdatum:
10. Januar 2012

Beiträge: 34

Wohnort: Schweiz

Lysander schrieb:

sc0p schrieb:

Ich möcht' doch gar nicht "richtig" programmieren

Das hättest Du schon vor 10 Posts schreiben sollen 😉

und doch lese ich jetzt "Grundlagen des Objektorientierten Programmierens"

Und wenn ich so darüber nachdenke, möchte ich am liebsten die ganze Historie der Spielgeschichte nachbilden 😀

Anfang: Zitat Wikipedia: Computerrollenspiele entstanden Mitte der 1970er Jahre

–> Paralell gab es z.B. Asteroids, PacMan, Snake, SpaceInvaders, Tetris

so bilde ich alle Spiele nach bis ich bei BF3 in 50 Jahren angelangt bin =)

Klingt grossartig oder?

Lysander

Avatar von Lysander

Anmeldungsdatum:
30. Juli 2008

Beiträge: 2669

Wohnort: Hamburg

sc0p schrieb:

und doch lese ich jetzt "Grundlagen des Objektorientierten Programmierens"

Hm... kenne ich nicht - prinzipiell halte ich wenig davon Paradigmen unabhängig von der Praxis zu erlernen. Zudem ist OOP ja nicht das Allheilmittel 😉

jakon Team-Icon

Lokalisierungsteam

Anmeldungsdatum:
16. November 2009

Beiträge: 419

1
2
 pic1=`echo "#__#"`
 pic2=`echo "::::"`

Warum schreibst du nicht:

1
2
 pic1="#__#"
 pic2="::::"

Ist doch dasselbe, nur effizienter und kürzer. 😉

sc0p

(Themenstarter)
Avatar von sc0p

Anmeldungsdatum:
10. Januar 2012

Beiträge: 34

Wohnort: Schweiz

Warum schreibst du nicht:

1
2
 pic1="#__#"
 pic2="::::"

Ist doch dasselbe, nur effizienter und kürzer. 😉

Weil:

...aha

stimmt, ja

Ursprünglich wolle ich die Karten so zusammensetzen:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
pic1="echo -n '*__*'"
pic2="echo -n '.::.'"
rand="echo -n '|'"
head="echo '------'"

# damit hät ich dann die Karten so gemacht

$head
$rand$pic1$rand
$rand$pic1$rand
$head

whatever - dumm und funktioniert nicht! und:

1
2
car=`echo "this"` # mit " ` ` "
echo "bla $car bla"

ist wirklich stumpfsinnig =)