Denkbar Einfachster Asteroids-Clone

Das Leben, das Universum und der ganze Rest.
wobo
DOS-Guru
Beiträge: 613
Registriert: So 17. Okt 2010, 14:40

Denkbar Einfachster Asteroids-Clone

Beitrag von wobo »

Ich poste hier mal meinen (wirklich denkbar einfachsten) Asteroids-Clone, welcher hier heruntergeladen werden könnte:

Link gelöscht: aktualisierte Version s. u.

EDIT von CptKlotz:

Hier gibt es das Spiel ohne Wartezeit vom Forums-Webspace:

http://cptklotz.dosforum.de/wobo_asteroids.zip


Der Clone ist komplett in Turbo Pascal auf einem 386sx16 geschrieben. Lediglich die Innenschleifen der PutImage-, PutLine- und PutPixel-Routinen sind teilweise in BASM. Auf dem 386sx16 läuft er gerade noch. Ich denke daher, dass die absolute Mindestanforderung ein 286 mit mind. 16 Mhz (und schneller VGA) sein wird. Notwendiges Betriebssystem ist Dos.

Video-Modus ist ein (auf VGA emulierter) 640x350 - Monochrome Mode. Wer will kann über die Kommandozeile auch die Hercules - Auflösung (720x348/2) einstellen, indem der Parameter "hgc" angegeben wird. Auch dieser Mode wird nur auf VGA emuliert.

Das Ganze reisst natürlich niemanden vom Hocker. Ich würde mich aber dennoch sehr freuen, wenn ein oder zwei aus dem Forum das Teil mal herunterladen und kurz antesten/starten könnten und ggf. mir kurz Bescheid geben könnten, ob/wo das Teil abschmiert und auf welcher PC-Konfiguration (CPU+Grafikkarte) es angetestet wurde. Das Ganze wäre auch nicht eilig, da ich ohnehin höchstens am Wochenende was machen kann. Danke im Voraus.
ast101.png
ast101.png (1.03 KiB) 5411 mal betrachtet
Zuletzt geändert von wobo am Fr 5. Aug 2011, 12:42, insgesamt 1-mal geändert.
Benutzeravatar
CptKlotz
Admin a.D.
Beiträge: 2946
Registriert: Mo 7. Mär 2005, 23:36
Wohnort: Dorsten
Kontaktdaten:

Re: Denkbar Einfachster Asteroids-Clone

Beitrag von CptKlotz »

He, nettes Asteroids!


Auf DOSBox 0.74 unter Linux läuft es schonmal problemlos, ebenso auf meiner primären DOS-Kiste:

ASUS TX97-E
AMD K6-2 400 Mhz (keinerlei Speedprobleme, obwohl ich die Kiste mit Volldampf laufen hatte)
Elsa Winner 1000/T2D (S3 Trio 64V+)


Generell fällt mir auf, daß das Spiel butterweich läuft und sich sehr flüssig spielt. Gefällt mir! Ich glaube, da steckt Potential drin :-)
“It is impossible to defeat an ignorant man in argument.” (William G. McAdoo)
Benutzeravatar
shakky4711
Kommandozeilenfetischist
Beiträge: 193
Registriert: Di 5. Aug 2008, 09:21

Re: Denkbar Einfachster Asteroids-Clone

Beitrag von shakky4711 »

Hallo,
ich wollte das Spiel auch mal testen, auf dieser (auf den ersten Blick) dubiosen Seite passiert nach dem Wählen des kostenlosen Downloads gar nichts :-( Muss man da im Browser etwas aktivieren was man normalerweise aus Sicherheitsgründen immer deaktiviert?

Kann das vielleicht einer auf Rapidshare oder seine normale Homepage hochladen? Sobald ich etwas mit "Premiumaccount" und lauter tolle Sachen mit Preisen und Abos lese sträuben sich mir immer erst mal die Nackenhaare bevor die Seite so schnell wie möglich schließe..

Gruß
Shakky
Benutzeravatar
Dosenware
DOS-Gott
Beiträge: 3745
Registriert: Mi 24. Mai 2006, 20:29

Re: Denkbar Einfachster Asteroids-Clone

Beitrag von Dosenware »

shakky4711 hat geschrieben:Sobald ich etwas mit "Premiumaccount" [..] lese sträuben sich mir immer erst mal die Nackenhaare bevor die Seite so schnell wie möglich schließe
Und dann willst du rapidshare?
wobo
DOS-Guru
Beiträge: 613
Registriert: So 17. Okt 2010, 14:40

Re: Denkbar Einfachster Asteroids-Clone

Beitrag von wobo »

@CptKlotz: Danke für das Testen und das (zu großzügige) Lob! Daß es bei Dir lief, hast Du übrigens auch der Qualität Deines BIOS´ zu verdanken. Ich mache das Timing mit Hilfe des BIOS über dessen Int 15 (Fkt. 83h). Gestern mußte ich feststellen, dass es offensichtlich Rechner gibt, die diese Funktion nicht bzw. nicht ausreichend unterstützen. Der Rechner friert dann entweder gleich nach dem Start oder irgendwann im Spiel einfach ein. Ich werde mich deswegen in der Rubrik "Programmierung" noch melden...

@Shakky: Der Filehoster ist eine Empfehlung der Experten von pcwelt.de, an die ich mich sklavisch gehalten habe. Die Experten von pcwelt.de habe ich per Google ("Filehoster kostenlos") gefunden. Der Filehoster will wohl nur JavaScript (und Cookies?), dann klappt alles. Aber Danke, dass Du es testen wolltest. Ich muss jetzt wohl ohnehin erst eine neue Timing-Routine schreiben...
Benutzeravatar
oDOSseus
LAN Manager
Beiträge: 239
Registriert: Di 10. Aug 2010, 15:21

Re: Denkbar Einfachster Asteroids-Clone

Beitrag von oDOSseus »

Ich habe das Original nie gespielt, aber ich bin sofort verliebt in dein Spiel. Es spielt sich großartig. Schade, dass es nur 8 level gibt. Das Spiel hat -meiner Meinung nach- großes Potenzial. Ein kleiner Bug: Wenn du nen kleinen Asteroiden direkt vorm Bug hast, kannst du ihn nicht abschießen, sondern schießt hindurch. Stört das Spiel aber nicht. Ich fands klasse!!!
Brueggi

Re: Denkbar Einfachster Asteroids-Clone

Beitrag von Brueggi »

Gleich mal gesaugt :-)

Sehr schön gemacht! Vielen, vielen Dank! :-) :-)

Edit: Du hast gesagt, Du bist kein guter Programmierer? Das sehe ich anders. Weiter so! Meine DOSe möchte mehr solche Sachen! :-)
wobo
DOS-Guru
Beiträge: 613
Registriert: So 17. Okt 2010, 14:40

Re: Denkbar Einfachster Asteroids-Clone

Beitrag von wobo »

@oDOSseus & Brueggi: Wow! Hätte echt nicht gedacht, dass ich überhaupt ein Feedback bekomme. Und - jetzt schon mehrfach - nur positives!

Danke an Alle!

@oDOSseus:
Nur 8 Levels gibts deswegen, weil ab dem 9. Asteroiden die Framerate auf meinem 386sx16 einbricht (und ich auch nicht dachte, dass irgendjemand irgendwann so weit kommt...). Danke auch für den Hinweis mit dem Bug. Bugs sind leider schon noch ein paar drinnen. Und irgendwie habe ich auch das (oben angesprochene) Problem, bei dem ich einen Fehler im Int 15h, Fkt. 83h vermutete, immer noch nicht richtig lösen können. Obwohl ich schon den ganzen Tag rumsuche. Vielleicht nächstes Wochenende ;-)
DOSferatu
DOS-Übermensch
Beiträge: 1220
Registriert: Di 25. Sep 2007, 12:05
Kontaktdaten:

Re: Denkbar Einfachster Asteroids-Clone

Beitrag von DOSferatu »

Ich hab mir das Wobo-Asteroids auch mal angeschaut. Mir gefällt es auch.
Brueggi

Re: Denkbar Einfachster Asteroids-Clone

Beitrag von Brueggi »

Wegen dem Timing.... das kenn ich aber auch, das Problem, bei der Delay-Funktion... mein 486 verhält sich normal, aber die selbe Bios-Funktion auf dem P1 wartet gerade mal halb so lang (oder noch weniger), obwohl da ja der Timer zum Einsatz kommt.... :-(
DOSferatu
DOS-Übermensch
Beiträge: 1220
Registriert: Di 25. Sep 2007, 12:05
Kontaktdaten:

Re: Denkbar Einfachster Asteroids-Clone

Beitrag von DOSferatu »

Naja, ich habe mal eine eigene Delay-Funktion gebaut, die mit einem 64Bit Wert arbeitet (4 Register á 16 Bits, AX,CX,DX,BX).
Ja, Ich hätte auch 32bit Register und 6 benutzen können, das wären 192 Bit oder 7, das wären 224 Bit. Aber auch der 64Bit -Timing Wert reicht eigentlich aus, um keinen Timing-Überlauf zu produzieren. (Ich habe es aber auf 16bit-Register beschränkt, damit es z.B. auch noch auf einem 286er läuft.)
Am Anfang wird (genau wie in der CRT) der Wert getimed (mit dem Ticker) und danach wird bei jedem Aufruf von DELAY (Wert) mit einem Wert ziemlich genau Wert/1000 Sekunden gewartet.
Und ja, ich selbst benutze zwar kein DELAY mehr, sondern time so Kram anders (modifizierter Timer-IRQ), aber ich habe dieses DELAY programmiert, um manche meiner alten Programme damit nachzurüsten. Dadurch gibt es das Problem "DELAY mit zu schnellem Rechner" nicht mehr.
Das ganze ist an sich recht einfach, es sind 4 ineinander verschachtelte Schleifen.
Benutzeravatar
CptKlotz
Admin a.D.
Beiträge: 2946
Registriert: Mo 7. Mär 2005, 23:36
Wohnort: Dorsten
Kontaktdaten:

Re: Denkbar Einfachster Asteroids-Clone

Beitrag von CptKlotz »

Hallo zusammen.

ich habe mir erlaubt, die Datei mal auf unseren Webspace hochzuladen:

http://cptklotz.dosforum.de/wobo_asteroids.zip

Wenn Interesse besteht, kann ich auch ggf. irgendwann eine neuere Version hochladen.


Wenn ich mal Zeit und Lust habe, teste ich das Spiel noch auf anderen PCs.
“It is impossible to defeat an ignorant man in argument.” (William G. McAdoo)
wobo
DOS-Guru
Beiträge: 613
Registriert: So 17. Okt 2010, 14:40

Re: Denkbar Einfachster Asteroids-Clone

Beitrag von wobo »

@CptKlotz: Wow! Vielen Dank für das Hochladen auf die DosForum-Homepage. Hat mich sehr gefreut!

Ich habe ein paar Bugs ausgeräumt (kleine Asteroiden kann man jetzt auch abknallen, wenn man sie direkt vor dem Bug hat). Sollte das Problem mit dem Timing auftreten - was meines Erachtens ein reiner BIOS-Fehler ist - kann man das Game zwingen anstelle der RTC den Timer zum Timing zu benutzen, indem man den Parameter "timer" verwendet (vgl. beiliegende timer.bat). Groß-/Kleinschreibung bei den Parametern sind egal.

Die neue Version gibt´s hier:
http://depositfiles.com/files/27euabpkt


@Shakky: Habe gerade mein letztes Posting an Dich gelesen und finde, dass ich dort etwas flapsig formuliert habe... (was ich gar nicht wollte). Tut mir leid. Leider benötigt Rapidshare einen Benutzeraccount, den ich noch nicht anlegen will. Würde mich aber wahnsinnig freuen, wenn Du vielleicht die neuere Version ausprobieren wolltest. Ich schicke Dir (und jedem anderen natürlich auch) das Teil auch per Email, wenn das Dir lieber wäre (einfach PN an mich). Oder vielleicht lädt ja CptKlotz die neue Version ins DosForum (Danke!).
Benutzeravatar
Dosenware
DOS-Gott
Beiträge: 3745
Registriert: Mi 24. Mai 2006, 20:29

Re: Denkbar Einfachster Asteroids-Clone

Beitrag von Dosenware »

Auch gespielt, läuft sogar auf meinem Toshiba Laptop einwandfrei...(auch wenn das TFT etwas verwischt - ist halt recht lahm)
Benutzeravatar
CptKlotz
Admin a.D.
Beiträge: 2946
Registriert: Mo 7. Mär 2005, 23:36
Wohnort: Dorsten
Kontaktdaten:

Re: Denkbar Einfachster Asteroids-Clone

Beitrag von CptKlotz »

Das emuliert dann unfreiwillig das Nachleuchten des Vektor-Bildschirms :-)
“It is impossible to defeat an ignorant man in argument.” (William G. McAdoo)
Antworten