Basic

Der Anlaufpunkt für alle, die selbst ein Adventure programmieren wollen.
Antworten
aschri
Frischling
Frischling
Beiträge: 4
Registriert: 13.03.2007, 15:57

Basic

Beitrag von aschri »

Kennt einer/eine von euch ein gutes Toturial , in dem beschrieben wird wie man adventures mit Basic (Gambas) schreibt?
Wär euch sehr dankbar :wink:
Benutzeravatar
KhrisMUC
Adventure-Gott
Adventure-Gott
Beiträge: 4674
Registriert: 14.03.2005, 00:55
Wohnort: München

Beitrag von KhrisMUC »

Ergebnisse 1 - 10 von ungefähr 136.000 für Toturial.
Ne, war nur Spaß ;)

Aber warum nicht einfach eine der kostenlosen Adventure-Engines nehmen? Muss es BASIC sein?
Use gopher repellent on funny little man
aschri
Frischling
Frischling
Beiträge: 4
Registriert: 13.03.2007, 15:57

Beitrag von aschri »

Ja, muss es. Ich hab Linux, und da geht nur AGI-Studio, und das hat sowieso irgendeinen Bug oder so und kann keine adventures öffnen, darum nehme ich Gambas (objektorientiertes BASIC) .
Benutzeravatar
KhrisMUC
Adventure-Gott
Adventure-Gott
Beiträge: 4674
Registriert: 14.03.2005, 00:55
Wohnort: München

Beitrag von KhrisMUC »

Gibt ja noch andere Sprachen für Linux, oder? ;)

Ich würd hier anfangen. Wenn/sobald Du programmieren kannst, brauchst Du auch kein spezielles Adventure-Tutorial mehr.

Übrigens gibt es hier eine Adventure-Engine, die dank Java plattformunabhängig genutzt werden kann.

Und hier sind noch ein paar "Gamemaker" bzw. Sprachen, die unter Linux laufen.
Use gopher repellent on funny little man
aschri
Frischling
Frischling
Beiträge: 4
Registriert: 13.03.2007, 15:57

Beitrag von aschri »

ich suche ja ein Tutorial für gambas, da ich dieses besser beherrsche als andere Sprachen.
joeydee
Hobby-Archäologe
Hobby-Archäologe
Beiträge: 118
Registriert: 11.12.2005, 23:05

Beitrag von joeydee »

Ich denke du wirst kaum ein komplettes Tutorial finden wie man eine Adventure-Engine schreibt, geschweige denn die Umsetzung für eine ganz spezielle Sprache.

Stattdessen musst du dich mit den wesentlichen technischen Teilen eines Adventures im Einzelnen auseinandersetzen, dazu Infos, Beispiele und Tutorials suchen und die Lösungen in deiner Zielsprache selbst entwickeln. Nicht für jedes Teilproblem wird es gleich ein fertiges Tutorial geben, das genau deinen Vorstellungen entspricht. Hier geht es vielmehr darum, Inhalte zu verstehen, zu transferieren, den eigenen Erfordernissen anzupassen oder auch manchmal, eine eigene Lösung zu entwickeln.

Unterschätze so etwas nicht - allein anhand deiner Fragestellung vermute ich dass du damit überfordert sein wirst.
Trotzdem zeige ich dir mal wie ich daselbe Problem für die Zielumgebung Flash angegagen bin, damit du evtl. abschätzen kannst welche Problemlösungen du im Einzelnen erarbeiten musst:
http://www.zfx.info/DisplayThread.php?TID=20982
MooMurray
Tastatursteuerer
Tastatursteuerer
Beiträge: 595
Registriert: 26.10.2004, 23:59
Wohnort: Alfter

Beitrag von MooMurray »

Wozu braucht es schon ein Adventure-Tutorial? Ich kann mich dukel erinnern, mal so etwas für ein Textadventure gemacht zu haben, aber das ist glaube ich 10 Jahre her. Die Vorgehensweise würde ich aber immer noch nutzen.

array adventure[]= Nullkommanix
repeat
temp = implementiere(fehlende Element);
push (adventure, temp)
until mirfälltnixmehreinwasfehlt

Man kann ja mal mit der Anzeige des ersten Screens starten. Hmm da fehlt doch was... Richtig, der Protagonist! Ok, jetzt ist er da. Ach Mist, er kann sich noch nicht bewegen. Ok, jetzt kann er sich bewegen, aber er rennt durch alle Hindernisse durch. [2 Jahre später] Mmmkay, ich hab einen Pathfinding-Algorithmus selber ausgetüftelt ^^ aber schade, dass es noch keine Gegenstände im Raum gibt.
Ich denke mal, so kann man das schon machen. Dabei sollte man natürlich dafür sorgen, dass jegliche Daten über Räume oder Dialoge etc irgendwie vernünftig gespeichert werden, so dass man sie leicht hinzufügen kann und nicht pro Raum ein neues Adventure schreibt ^^

Aber natürlich kann man auch vorher ein vernünftiges Konzept entwerfen, woraus denn nun eigentlich der Mainloop bestehen soll und schonmal alle Funktionen zusammensuchen, die man brauchen wird und diese wiederum nach und nach implementieren. Ist natürlich übersichtlicher.
SunSailor
Tastatursteuerer
Tastatursteuerer
Beiträge: 503
Registriert: 03.12.2006, 02:19

Beitrag von SunSailor »

Ich muss gestehen, dass ich es geliebt habe, auf dem C64 in Basic Adventures zu entwickeln, gab mal ein ultra geniales Sonderheft zu diesem Thema. Der Parser, den man damit basteln konnte, wusste durchaus mit dem von Infocom zu konkurieren. Aber ich fürchte, der Kamerad meint 2D Point und Click-Spiele. Da muss ich sagen, ist das rausgeschmissene Arbeit, sich zu Hobbyzwecken was eigenes zu basteln, zu komplex ist die Thematik und zuviel Erfahrungswerte muss man schon im Vornherein einbringen, um da auch nur ansatzweise was brauchbares zu bekommen. Und ob da Basic die richtige Wahl ist (Kenne die Grafikfähigkeiten von Gambas nicht wirklich) sei mal dahingestellt. Sieht mir so aus, als sei dieses für gänzlich andere Anwendungen geschaffen worden.

Edit: Hab mal nachgeschaut, Gambas unterstützt immerhin die SDL, also unmöglich wäre das Unterfangen demnach nicht. Trotzdem halte ich es für eine Schnapsidee, da es hieße, das Rad neu zu erfinden.
DaGus
Süßwasserpirat
Süßwasserpirat
Beiträge: 285
Registriert: 25.07.2006, 17:25

Beitrag von DaGus »

Als Schnapsidee würde ich das nun nicht bezeichnen. Es kann ja durchaus Sinn machen, im Rahmen eines Projektes das Rad neu zu erfinden. Die Entwickler der gängigen Adventure-DKs haben ja auch mal bei 0 angefangen.
Wenn etwas vergleichbares oder besseres herauskommt, warum nicht. Wenns nicht klappt, hatte es wenigstens nen Lerneffekt.

Also das Vorhaben an sich, finde ich positiv.
Ob jetzt Basic die richtige Wahl ist und ob die Entwicklung Sinn macht, wenn der Entwickler als erstes nach nem Tutorial für Adventures fragt, das steht auf einem ganz anderen Blatt.
Benutzeravatar
KhrisMUC
Adventure-Gott
Adventure-Gott
Beiträge: 4674
Registriert: 14.03.2005, 00:55
Wohnort: München

Beitrag von KhrisMUC »

@aschri:
Wenn Du Dein Vorhaben immer noch durchziehen willst, dann würde ich mich darauf konzentrieren, eine Engine zu programmieren. Ein passendes Spiel würde dann sozusagen am Besten "nebenbei" entstehen, als Test der Engine.

Konkret heißt das: programmier' kein Interface, sondern programmier' eine Grundlage, verschiedene Interfaces einfach einzubinden.

Programmier' keinen Parser, sondern die Möglichkeit, einen zu benutzen.

Usw.

Die Frage ist aber immer noch: Willst Du primär programmieren und das Managen eines größeren Projektes lernen, oder ist die Engine mehr ein notwendiges Übel, weil Du eigentlich nur unter Linux ein Adventure machen möchtest?
Use gopher repellent on funny little man
SunSailor
Tastatursteuerer
Tastatursteuerer
Beiträge: 503
Registriert: 03.12.2006, 02:19

Beitrag von SunSailor »

Man programmiert nicht eine Engine und baut dann noch nebenbei ein Spiel, wenn es ein Hobby-Projekt ist. Wer dem Gedanken nachhängt, hat entweder sowas noch nie versucht oder ist nicht lernfähig. Es funktioniert einfach nicht. Man muss sich schon irgendwo entscheiden, will ich ein Spiel oder eine Engine machen. Und weder das eine, noch das andere macht man mal eben so - da gehört jedes mal auch eine Menge Erfahrung, Planung und Zeit dazu. Die Freizeit ist einfach zu knapp, die Erfahrung zu gering, um beides gleichzeitig zu machen. Klingt vielleicht nach Resignation, aber ist einfach so.
Benutzeravatar
Fightmeyer
Riesiger Roboteraffe
Riesiger Roboteraffe
Beiträge: 7308
Registriert: 16.12.2004, 22:51
Wohnort: Potsdam
Kontaktdaten:

Beitrag von Fightmeyer »

Da wird Dir Herr Lassahn aus dem Forum hier aber widersprechen... :wink:
Man kann schon beides machen. Allerdings hat der auch schon etliche Jahre an Arbeit da reingesteckt...und solide Vorkenntnisse werden wohl auch schon dagewesen sein.
Benutzeravatar
neon
Adventure-Treff
Adventure-Treff
Beiträge: 30000
Registriert: 08.07.2004, 10:55
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von neon »

SunSailor hat geschrieben:Ich muss gestehen, dass ich es geliebt habe, auf dem C64 in Basic Adventures zu entwickeln, gab mal ein ultra geniales Sonderheft zu diesem Thema. .
Ja, das 64er Sonderheft Adventures, gab's in zwei verschiedenen Ausführungen, 1984 und 1987. Zeitgleich kam auch ein recht gutes Buch von Data Becker. Die Ausgabe von 1984 habe ich noch. Allerdings lassen sich damit wirklich nur Textadventures realisieren. Die Bewegung basiert auf ein Array, in dem jeweils die Raumnummer des Ausgangs angegeben wird, wobei die Reihenfolge n, s, e, w, u, d als Ausgang festgelegt ist. Bei grafischen Adventures kann ein Ausgang aber auch sonstwo auf dem Bildschirm sein. Diese einfach Engine wäre damit bereits überfordert und man hätte zu viele Sonderbedingungen, um die die man herumprogrammieren müsste.
"Ich habe mich so gefühlt, wie Sie sich fühlen würden, wenn sie auf einer Rakete sitzen, die aus zwei Millionen Einzelteilen besteht - die alle von Firmen stammen, die bei der Regierungsausschreibung das niedrigste Angebot abgegeben haben"

- John Glenn nach der ersten Erdumrundung 1962
Benutzeravatar
KhrisMUC
Adventure-Gott
Adventure-Gott
Beiträge: 4674
Registriert: 14.03.2005, 00:55
Wohnort: München

Beitrag von KhrisMUC »

@SunSailor:
Das ist mir alles klar, glaub mir. Aber es muss ja keine komplexe Engine sein, kein AGS- oder Wintermute-Ersatz.

Ein einfaches "Labyrinth", wie von neon beschrieben, in dem man Gegenstände und Schätze einsammelt, genügt doch schon, um eine Programmiersprache zu lernen.

Sobald man genug Erfahrung hat, um den Aufwand abschätzen zu können, weiß man wenigstens, ob es sich lohnt, überhaupt damit anzufangen, eine komplexere Engine zu programmieren.

Warten wir doch einfach mal, bis aschri sich meldet.
(Wenn wir ihn nicht verschreckt haben ;))
Use gopher repellent on funny little man
MooMurray
Tastatursteuerer
Tastatursteuerer
Beiträge: 595
Registriert: 26.10.2004, 23:59
Wohnort: Alfter

Beitrag von MooMurray »

Ich werde das Gefühl nicht los, dass in die Beantwortung dieser und ähnlicher Fragen innerhalb der 10 antwortenden Beiträge mehr Energie gesteckt wird, als vor und nach der Frage durch den Fragesteller in sein Projekt fließt.
Oder um es anders zu sagen: Vielleicht sollte man sich auf eine Antwort "Vergiss es" beschränken...

Es ist sinnlos, eine "bessere" Engine programmieren zu wollen, wenn man nichtmal weiß, wie man überhaupt eine programmiert. Logischerweise würde ich ja sagen, dass man einfach eine bestehende nimmt und von deren Fähigkeiten lernt und wenn einem dann was fehlt, dann legt man frühestens los.

Ich bezweifle jedenfalls, dass man mit den bescheidenen Kapazitäten, die man als Privatmensch hat so schnell an die Grenzen der vorhandenen Engines stößt.
Antworten