DT 87 04

From C64 Diskmag Wiki
Revision as of 20:29, 17 April 2010 by Nyquist (Talk | contribs)

(diff) ←Older revision | view current revision (diff) | Newer revision→ (diff)
Jump to: navigation, search

English Translation

Die Entstehungsgeschichte des C64-Spiels

   ??    "WER WIRD MILLIONÄR?"     ??
   ??    "WER WIRD MILLIONÄR?"     ??
         "
Im Jahre 2001 haben wir (die ganze Fami-
lie) wochen- oder gar monatelang die TV-
Sendung "Wer wird Millionär?" geschaut.

Durch den langen  "Beobachtungszeitraum"
kannte ich die Regeln  und  Gesetzmäßig-
keiten schon sehr gut, z.B. wie hoch ist
die Chance, dass ein Telefonkandidat die
16.000 DM-Frage  (war kurz vor der Euro-
Einführung)  richtig  beantworten  kann,
welche Antwortenverteilungen treten beim
Publikumsjoker   in   Abhängigkeit   vom
Schwierigkeitsgrad  der  Frage  auf, wie
oft tippt das Publikum bzw. der Telefon-
kandidat daneben etc.

Da  wir  auch immer mitgeraten haben und
dies allen Spaß gemacht hat,  hatte  ich
eines  Tages  die  Idee, die Fernsehshow
als Computerspiel umzusetzen.

Ich hatte damals den C64 und einen  Pen-
tium-III-PC zur Verfügung. Da ich den PC
noch  nicht  lange  hatte und mich daher
mit dem C64, insbesondere mit der Basic-
Programmierung,  besser auskannte,  habe
ich zuerst eine C64-Version  (V1, um die
es hier geht)  und erst später eine DOS-
Version (V2) programmiert.

Ich habe mir also zunächst überlegt, wie
ich das Ganze realisieren kann.  Am bes-
ten  geeignet  war  für diesen Zweck die
Basic-Erweiterung  "Simon's  Basic",  da
diese  einen erweiterten Befehlssatz bot
und ich vorher schon kleinere  Programme
mit  dieser  Basic-Erweiterung  erstellt
habe.  Ich  habe  mir die Programmierung
selbst angeeignet, mit  Hilfe  des  C64-
Handbuchs und einer Anleitung zu Simon's
Basic,  die  sich als Datei auf Diskette
befand. Besonders hilfreich fand ich bei
Simon's Basic die Möglichkeit,  auf ein-
fache Weise  benutzerdefinierte  Zeichen
und  Sprites  zu  erstellen. Desweiteren
war es möglich, Unterprogramme mit Namen
zu versehen, sodass man zum Springen ins
Unterprogramm nicht mehr die genaue Zei-
lennummer wissen musste, sondern das Un-
terprogramm  mit  seinem  Namen aufrufen
konnte, was die Programmierung ebenfalls
vereinfachte.

Ich habe also zunächst erst einmal abge-
schätzt, wieviele Fragen mit den zugehö-
rigen Antworten auf eine Diskette passen
könnten. Dabei habe ich so 700-1000 Fra-
gen  geschätzt,  was ein guter Wert war,
da ich ein Fragenbuch als Quelle  hatte,
das 998 Fragen mit den zugehörigen  Ant-
worten  enthielt und die errechnete Fra-
genzahl eine  ausreichende  Vielfalt er-
möglichte.

Der  nächste  Schritt  war das Erstellen
des eigentlichen  Programms.  Angefangen
habe ich erstmal, das  grafische  Design
für den  Frage- und  Antwortbereich  auf
dem Bildschirm zu erstellen, die Anzeige
der Gewinnstufen, die Routinen zum Laden
und Anzeigen der Fragen, die Möglichkeit
zu antworten  sowie  eine Auswertung der
Antwort  (richtig/falsch)  programmiert.
Damit dies  auch  funktionieren  konnte,
musste ich parallel anfangen,  die  Fra-
gendateien anzulegen. Ich  hatte  damals
testweise erstmal 2-3 Fragen  je Gewinn-
stufe eingegeben, um das Programm testen
zu können.  Am Ende des ersten Tages war
es somit bereits möglich, das  Spiel  in
den Grundzügen,  aber ohne Joker spielen
zu können (reines Frage-Antwort-Spiel).

Am zweiten Tag habe ich mich an die  Jo-
ker gemacht:  Grafiken und den Programm-
code für die Joker erstellt.

Insbesondere  der  Programmcode  für den
Telefon- und den Publikumsjoker hatte es
in sich, da ich versucht habe, das  Ver-
halten des Telefonkandidaten und des Pu-
blikums so real wie  möglich  nachzubil-
den, insbesondere die Wahrscheinlichkei-
ten für  eine  richtige  Antwort und die
Antwortverteilung des Publikums  sollten
möglichst realitätsgetreu sein.

Wie jeder weiß, folgt das natürlich auch
in der Realität keinem festen Schema, es
sind  nur gewisse Tendenzen zu erkennen,
die ich im Programm versucht habe  nach-
zubilden. Das Resultat war ein Programm-
code,  der  einige  Variablen  (z.B. der
Schwierigkeitsgrad der Fragen)  und eine
Menge ineinander verschachtelte Zufalls-
funktionen enthielt. Das Ganze führte im
Endeffekt dazu, dass man am Telefon- und
Publikumsjoker   keine  Regelmäßigkeiten
erkennen konnte,  das  Ganze  sich  aber
doch  recht  ähnlich  den  Beobachtungen
beim Schauen der Fernsehshow verhielt.

Zusätzlich habe ich dann noch eine Zoom-
funktion eingebaut, damit überlange Fra-
gen,  die  nicht  in die normalen Felder
passen, in voller Länge angezeigt werden
konnten, indem eine  spezielle  Anzeige-
maske eingeblendet wird. Danach habe ich
noch  ein  paar  kleine Features wie die
Anzeige  des  gewonnenen Geldbetrags und
das  Aufblinken  der  richtigen  Antwort
eingefügt,  sodass  das eigentliche Pro-
gramm am zweiten Tag schon  fast  fertig
war. Ich hatte dann noch ein paar weite-
re Fragen eingegeben, sodass pro Gewinn-
stufe  ca.  5-10  Fragen  zur  Verfügung
standen.  Am  Abend  habe  ich das Spiel
meiner Familie gezeigt und sie waren da-
von so begeistert, dass sie es trotz der
geringen  Fragenanzahl  den ganzen Abend
gespielt haben.

Am  dritten  Tag ging es nur noch um den
Feinschliff:  Da  habe  ich  eine kleine
Spielanleitung ins Spiel integriert, ei-
nen Algorithmus eingebaut,  der sich die
gestellten Fragen  der letzten 10 Runden
merkt,  damit  sich  die Fragen nicht so
schnell  wiederholen,  die Joker nochmal
"feinabgestimmt",  um eine  noch bessere
Realitätsnähe  zu  bekommen  und diverse
kleinere  Code- und Grafikverbesserungen
vorgenommen. Damit war das Hauptprogramm
fertig. Ich habe dann noch alles  getes-
tet,  um  festzustellen,  ob es irgendwo
Fehler oder Abstürze gibt.

Als  ich mit dem Ergebnis zufrieden war,
ging es an die monotone Arbeit: das Ein-
tippen der 998 Fragen.

Das war eher eine Fleißarbeit,  denn das
eigentliche  Programm  war ja fertig, es
ging nur noch darum, die Fragendatenbank
zu vergrößern.
Ich tippte also immer so 30 bis 100 Fra-
gen am Stück ab,  insgesamt habe ich für
alle Fragen so 3-4 Tage  gebraucht.  Mit
Anwachsen  der Fragendateien war ich je-
doch auf ein störendes Problem gestoßen:
Da  ich  sequentielle  Dateien verwendet
hatte,  hat  es mit steigender Fragenan-
zahl je Gewinnstufe immer länger  gedau-
ert,  bis die entsprechende Frage gefun-
den wurde. Dies hat dann  teilweise  bis
zu  20  Sekunden gedauert, was natürlich
sehr spielspaßtrübend war.

Aus diesem Grund habe ich mich dazu ent-
schlossen, die Fragendateien aufzusplit-
ten,  sodass  jede  Datei  nur 20 Fragen
enthält  und das  Programm so angepasst,
dass es mit den gesplitteten Dateien ge-
nauso umgehen konnte wie mit einer  ein-
zigen  großen  Datei. Dadurch betrug die
Ladezeit  im Schnitt nur noch 3 Sekunden
pro Frage, was im Spielablauf nicht mehr
so sehr auffällt.

Insgesamt  habe ich effektiv ca. 1 Woche
gebraucht,  bis das gesamte Spiel fertig
war. Es waren natürlich später noch  ei-
nige Korrekturen nötig,  da beim Spielen
Tippfehler  in  den  Fragen  und  andere
kleinere Bugs aufgefallen sind, die habe
ich dann immer sofort ausgebügelt, bevor
weiter gespielt wurde.
Als alle Daten (Programm und Fragenkata-
log) fertig erstellt waren, war die Dis-
kette gerammelt voll  ("0 Blocks free"),
ich  habe  es  aber geschafft,  alle 998
Fragen,  das Hauptprogramm und den nöti-
gen  Simon's  Basic-Interpreter  auf der
Diskette unterzubringen.  Ich  habe dann
das  fertige  Spiel  in meiner Verwandt-
schaft an alle C64-Besitzer verteilt und
es wurde von ihnen auch viel gespielt.

Dass  es  erst  8 Jahre später - also im
Jahre 2009 - veröffentlicht  wurde,  hat
folgenden Grund:  Auf  Grund von Abiprü-
fungen, Zivildienst, Studium und anderen
Hobbies ist der C64 ein wenig in Verges-
senheit geraten. Da ich nun wieder halb-
wegs geregelte Arbeitszeiten habe,  habe
ich  mir  wieder  mehr Zeit genommen, um
mich mit "der alten Kiste" wieder zu be-
schäftigen, schließlich gibt es ja viele
schöne Demos und Spiele für den C64. Ich
habe mir nun ein MMC Replay gekauft, mit
dem  ich  das Spiel von der Diskette auf
eine  SD-Karte  und  von dort auf den PC
gezogen habe. Da ich es nun als gut ver-
teilbares .d64 hatte,  habe ich mich mit
8 Jahren Verspätung  dazu  entschlossen,
das Ganze zu veröffentlichen.

Das  Forum64  habe ich dadurch entdeckt,
dass fast jede zweite Anfrage bei Google
zu speziellen C64-Themen  (Hardware, Co-
ding,   Software,   Reparaturanleitungen
etc.) auf das Forum64 führt. Als ich ge-
sehen habe,  dass dort sehr viele Themen
behandelt  werden  und  das  Forum  auch
recht aktiv ist,  habe ich mich dort re-
gistriert und schließlich das Spiel ver-
öffentlicht.

Die  zwei  weiteren Versionen entstanden
durch Wünsche einiger User.  Von  diesen
Wünschen  habe ich diejenigen umgesetzt,
die ich mit meinen Kenntnissen  und  dem
verbleibenden Speicherplatz  realisieren
konnte.  Somit  gibt  es nun die Version
1.02.
Zu meinem Pseudonym:  Mein erster Compu-
ter war der C64.  Bei vielen C64-Spielen
konnte man  nur  seine  Initialen in die
Highscore eintragen  (da nur 2-4 Zeichen
möglich),  in  meinem Fall T.L. & diesen
Namen habe ich früher als Pseudonym  be-
nutzt,  er  hatte jedoch einige Probleme
verursacht: Viele Spiele, Webseiten etc.
haben diesen Namen nicht akzeptiert,  da
er entweder als zu kurz oder  wegen  den
Punkten (Sonderzeichen) abgelehnt wurde.

Da  man  das  Computerspielen  auch  als
"daddeln" bezeichnet  und Computer gele-
gentlich  als  "Daddelkiste",  habe  ich
mich  auf  Grund  dessen,  dass ich gern
Computerspiele spiele,  "daddlertl"  ge-
nannt (also "daddler"+Initialen). Dieser
Name wird von fast allen Spielen,  Foren
etc. akzeptiert. Bei meiner Homepage ha-
be ich die  Initialen  zusätzlich  abge-
setzt,  also "daddler-t-l" - eine Kombi-
nation aus "T.L." und "daddlertl".

daddlertl


Wenn ihr Fragen zum Spiel habt oder ein-
fach  nur  den Kontakt zum Programmierer
sucht, dann wendet euch an:
Homepage: http://www.daddler-t-l.de
Email:    daddler_tl@freenet.de        _
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox