Eine Frage zur Technik von ROBOT


2007-12-24 11:15 #1
Hallo!
Ich bin 22 Jahre alt und kenne ROBOT noch aus meiner Kindheit. Mein Vater und ich haben die Spiele früher sehr gern gespielt, und sie faszinieren mich auch heute noch (zu Weihnachten bekommt er u.a. eine CD mit einer großen Sammlung alter DOS-Spiele, die durch DOSBox wieder lauffähig sind 😃 ).
Schon früh habe ich angefangen eigene Spiele zu programmieren, zunächst mit BASIC, später bin ich auf C/C++ umgestiegen. Eine zeitlang habe ich auch 3D-Spiele programmiert, aber jetzt habe ich mich wieder auf 2D-Spiele zurückbesinnt. In vielen meiner bisherigen Spiele kann man einige Elemente entdecken, die auf ROBOT zurückgehen (Pfeillabyrinthe und Magnete, Laser, Elektronik).
Falls sich jemand mal mein neuestes Spiel ansehen möchte (dürfte allen gefallen, die ROBOT mögen):
www.scherfgen-software.net/blocks5/
So, nun aber zum eigentlichen Thema! 😃
Benutzt ROBOT eigentlich irgendeine Art von Scriptsprache zur Steuerung verschiedener Events? Oder wurde das alles hartkodiert?
Wenn ich heute so etwas machen wollte (mit diesem Gedanken spiele ich schon eine ganze Weile), dann würde ich vermutlich Lua nehmen. Aber das gab es damals ja noch nicht, und es hätte wahrscheinlich auch zu viel Arbeitsspeicher gebraucht.
Vielen Dank schonmal,
und ein frohes Weihnachtsfest!
PS: Gibt es eine Chance, den Quellcode eines der alten ROBOT-Spiele zu bekommen? Würde mich wirklich mal interessieren ...
2007-12-26 12:29 #2
Hiho 😃
Schlimm, schlimm. Von Robot kommt man einfach nicht mehr los *lach*
Auf Blocks 5 bin ich schon vor ein paar Monaten gestossen, und war richtig baff wie professionell es aussieht! Leider bin ich nicht so der Puzzlemensch, weshalb ich nach einigen sehr interessanten Leveln festhing und aufgab *rot-werd* Ansonsten wie gesagt: Wow!
Habe eben versucht die beiden recht interessanten Postings von Andreas heraus zu suchen... und musste feststellen, das diese leider vor ein paar Jahren (ist das echt schon so lange her?) verloren gegangen sind 😬
Meine Erinnerungen an die Postings sind nun leider auch nicht mehr so extrem taufrisch *lach* Es würden also eher fantastische Halbwahrheiten werden *grübel*
Dieser hier dürfte dir aber eventuell weiter helfen:
p099.ezboard.com/fgameofrobotfrm17.showMessage?topicID=100.topic
2008-01-01 20:37 #3
herc
WAHNSINN!!
so ein fantastisches spiel in so hoher qualität gibt es selten!
wie viele arbeitsstunden stecken da wohl drin?
zur frage: wenn ich mich richtig erinnere, hatte tom-productions tatsächlich eine selbstentwickelte, c-ähnliche script für robot benutzt.
der quellcode ist nicht frei, und andreas bisher auch nicht wieder im forum aufgetaucht. es könnte eventuell sein, das andreas dir einblick in den quelltext gibt.
ansonsten ist lua wohl zur zeit die beste wahl in sachen scriptsprache. kennst du die midnight ryder gamedev mailing liste? da wurde vor kurzem über scriptsprachen diskutiert.
eine andere möglichkeit wäre, nativ zu "scripten", indem du den scriptcode nativ in c++ schreibst und als dynamisch ladbare DLL realisierst. du hättest dadurch alle vorzüge von c++ (speed etc) und bei kurzen scripten und precompiled headers auch nur minimale compiletimes zum erstellen der dll. dann könntest du im laufenden betrieb änderungen an den scripten vornehmen, und die dll's neu laden.
das wurde angeblich bei quake so gemacht.
gruss, andre
p.s. bitte poste doch hier, wenn du erfolg mit der dll methode haben solltest. oder auch für welche scriptsprache du dich entschieden hast.
p.s. hoffe auf einen robot clone von dir!
schlichtweg begeistert,
andre
2008-01-06 19:36 #4
Das Spiel ist ja wirklich klasse! Das Einzige, was mir gegenüber Robot ein bißchen fehlt, ist der Erforschungs-Aspekt, weil die Levels ja doch sehr linear hintereinander kommen. Aber ansonsten Hut ab!
Sprache: zumindest in meiner Robot-II-Version tauchte am Schluß der Endsequenz der Hinweis auf, daß die Programmierung mit Turbo C++ (soweit ich mich erinnere) entwickelt wurde. Das war 1992...
Quellcode: da habe ich auch schonmal nach gefragt, aber den gibt's nicht. Kann ich auch nachvollziehen.