Freies Heroes-Remake !!!

    • Offizieller Beitrag

    Wenn ich Zeit hab, mach ich ne Homepage, bis dahin dient der Webspace ausschließlich als Ablage für die Dateien (kein Rapidshare mehr, whey ^^)


    @Rincewind&Geirroed: Zugangsdaten siehe PN


    Hier die Downloadlinks:
    http://freeroes.redio.de/krams/Freeroes_3_12_08.zip
    http://freeroes.redio.de/krams/dlls.zip
    http://freeroes.redio.de/krams/freeroes_haven_0.10.zip

  • S.o.T.: Vielen Dank! Moralische Unterstützung ist auch viel wert :)
    Tedil: Danke sehr. So richtig wohl fühl ich mich bei Rapidshare nie ;)


    Zitat

    Ich hab jetzt noch keinen Überblick über den Code, aber weißt du zufällig, ob ich das dingens auch in Linux kompilieren kann, oder geht das momentan nicht? Oder kennst du dich damit nicht aus?


    Wenn du die aktuelle Version unter Linux kompilieren willst, müsstest du vorher in der main.cpp noch ganz unten

    Code
    int APIENTRY WinMain(HINSTANCE hInstance,		                                    //Entrypoint for Windows
                HINSTANCE hPrevInstance,
                LPSTR lpCmdLine,
                int nCmdShow ){
    
        CombatMain();                                                            
    	return 0;
    }


    in

    Code
    int main(){
    
        CombatMain();                                                            
    	return 0;
    }

    umändern. Die nächste Version wird das Passende per Präprozessordirektiven einfügen, so dass der Code allgemeingültig ist. Ich lade die dann hoch wenn sich ein paar Fortschritte gesammelt haben.


    Dann müsste das - ob manuell oder automatisch geändert - gehen. Vorrausgesetzt natürlich dein Linker weiß wo die Libraries sind usw. (aber mit Linuxlibraries kennst du dich vermutlich besser aus als ich) - gehen. configure-Scripts und makefiles habe ich zwar schon benutzt aber keinerlei Ahnung von.


    Zitat

    Problem: Ich habe dem Greif 99 retaliations gegeben, wenn er aber zum zweiten mal mit gegenwehr angegriffen wird, dann stürzt das spiel ab. Habs noch mit 3 probiert, gleiche Geschichte. Mach ich was verkehrt oder läuft das vom Programm her noch nicht?


    Danke für den Tipp :) Bin damit nem recht kniffligen Fehler auf die Schliche gekommen, [techbabbel]der mit dem Zeitpunkt der Abfrage ob ein Feld im Spielbreich liegt, einem darausfolgendem falschen Speicherzugriff und damit nach Lust und Laune des OS zu einem Absturz oder eben nicht führte.[/techbabbel] Dass das mit den Greifen auftrat lag wohl eher daran, dass man die zum Testen so schön schnell nach vorne schicken kann und dann die Engel von ganz untem am Spielfeldrand als zweites Zuschlagen.


    Das eigentliche Zurückschlagen sollte aber funktionieren. Hat es bei den Golems ja auch bereits. Meine Idee war es für unendliche Gegenschläge die Anzahl auf -1 zu setzen, aber 99 oder unendlich (bzw. in der aktuell hochgeladenen Version ca. 65000) pro Runde ist wohl ziemlich gleichzusetzen.


    EDIT: Schöne Platzhaltergrafiken! :) Ich schau mal, dass ich in der nächsten Version offsets einbaue, dann brauchen wir die nicht auf 50*100 skalieren nur damit die an der richtigen Stelle erscheinen.

  • Ja das mit dem Runterskalieren ein bisschen einzuschränken wär schön. Wär's nicht ohnehin sinnvoll, die Auflösung auf 1024x768 zu setzen?


    Ansonsten danke an S.oT. für das Lob, und vor allem den teil über den elan des Programmierers unterschreib ich auch nochmal ;) Nochmal gute Besserung, Felix, ich drück dir die Daumen.

  • Zitat

    Ja das mit dem Runterskalieren ein bisschen einzuschränken wär schön.


    Die Einheitenbilder können im Prinzip jede Größe aufweisen. Wäre nur eben halt immer am linken unteren Rand des Kästchens ausgerichtet gewesen. Hab jetzt x_off und y_off zur Auslesung der Kreaturendateien hinzugefügt, welche jeweils die Verschiebung in Pixeln angeben. Ist ein Bild breiter als 50pixel, soll aber zentriert werden, dann gibt nen negativen Wert für x_off um es weiter nach links zu ziehen. Könnte das natürlich auch einfach von der Bildreite abhängig machen, aber die genaue Mitte muss ja nicht immer auch vorgesehene Stelle sein (z.B. bei überstehenden Mistgabeln). Hab deine Bilder teilweise wieder ein bisschen gedehnt, um zu verdeutlichen was ich meine.


    Zitat

    Wär's nicht ohnehin sinnvoll, die Auflösung auf 1024x768 zu setzen?


    Ja. Habs jetzt mal auf 1024 angepasst. Aber das führt zu der wichtigen Frage
    Welche Auflösung wollen wir als "normal"?
    Also insbesondere wie groß sollen die Kreaturenbilder vorliegen? Im Moment ist das noch einfach das alles zu ändern. Wenn wir das wissen sollten wir diese Auflösung erstmal durchziehen. Veränderbar kann man dann irgendwann mal einbauen (nicht, dass H3 sowas hätte), wobei Auflösung vergrößern natürlich immer schlecht bei Pixel-Grafiken ist.


    Zitat

    Ansonsten danke an S.oT. für das Lob, und vor allem den teil über den elan des Programmierers unterschreib ich auch nochmal ;)


    Danke sehr :) Habe im Moment allerdings auch viel Zeit und es macht Spaß :) Was den Elan angeht - ich sehe schon schicke Dämonen gibts auch bald ;)


    Tedil: Kann mich da nicht einloggen... Darum nochmal auf Rapidshare
    Sollte jetzt ohne zusätzliche unter Linux Umstände zu kompilieren sein. Auflösung vergrößert, Offsets eingebaut und ein bisschen mehr Feedback in der Konsole eingebaut. Absturz beim Angriff entfernt sowie einen Fehler in der Schadensberechnung. Hauptsächlich heute eine Menge Aufräumarbeiten im Code, die nach außen hin nicht so sichtbar sind. Ich bin recht zuversichtlich, dass morgen zumindest der Schildbash umgesetzt ist. Wenn ein paar Fertigkeiten drin sind, ist für mich erstmal die Wegfindung am wichtigsten und dann gucken wir mal nach den Helden.


    P.S. Der Reiter ist vom Konzept einfach mal geil xD

  • S.o.T. hat das schön ausgedrückt, es ist irre spannend, bei dieser rapide fortschreitenden Genesis mitlesen zu können. Da soll noch einer sagen, Gott hätte die Welt nicht in sieben Tagen erschaffen können ;)
    Hut ab! (der Imp is ja mal niedlich :lol: )



    ~~~and for one second I lost my breath~~~
    ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

    Einmal editiert, zuletzt von kitty ()

  • Also, den Foltermeister finde ich mal richtig sympathisch! Sieht mir auch irgendwie ähnlich. Könnte mein gutmütiger Zwillingsbruder sein!
    :devil:


    Die anderen Konzepte gefallen mir auch sehr gut. Ein kleiner zeichentrickartiger Touch ist da mit drin, aber es wirkt alles trotzdem so herrlich erwachsen. Nicht so wie in anderen, schlechten, Spielen... *hust*hommv*hust*


    Hut ab!
    :daumen:

    Das Höllische Quartett on the Highway to Hell:
    Nightelf - Zukünftiger Höllenfürst Moosi I
    Lord Otto - Foltermeister, Rechte Hand des Fürsten
    Turin - Zuchtmeister, Linke Hand des Fürsten
    Little Imp - Manadieb des Fürsten

  • Hm, ich hab immer noch Abstürze, jezt unabhängig vom Greif..


    Sieht schon sehr viel besser aus so, ein paar von den Bildern kann man sogar noch weniger runterskalieren (mal abgesehen davon, dass ich noch viel mehr an den Details arbeiten muss).
    Ich weiß nciht mit der Auflösung, ich find 1024 is für 2D-Pixelgrafiken ok, damit könnte man ja theoretisch feinere Grafiken als H3 bauen. Nur hab ich halt noch n Röhrenmonitor und weiß nciht was auf den modernen TFTs so geläufig ist bzw. gut aussieht.


    Hier ist ein aktueller Sreenshot:
    http://rapidshare.com/files/17…aven_vs._inferno.png.html


    Und hier der Download:
    http://rapidshare.com/files/17…_vs_inferno_0.11.zip.html


    EDIT: Wie man sieht, ich komm auch nicht auf den Webspace drauf.

  • Ich persönlich mag die Imps so wie sie sind, bisher am mit am liebsten. Ihre Detaillfülle passt sehr schön zur aktuellen Auflösung imho :)


    Zwischenbericht:
    Wieder einen Absturzbug behoben, der beim Angirff auftritt. Muss irgendwie nicht sonderlich dabei gewesen sein, als ich die Funktion schrieb. Inzwischen ist sie schrecklich unübersichtlich. Bis ich ne neue Version hochgeladen hab vorerst nicht mit den Imps attackieren... :/


    Schildschlagen und Gegenwehr auf Distanz funktionieren ab jetzt. Im Moment sind viele Paramter der Specials noch nicht eingebaut, so dass Schildschlagen bei jeder Attacke triggert, aber vom sehr grundlegenden Prinzip steht die Grundlage für die flexible Einbindung der Specials. :)

  • So. Ein grundlegendes, sehr flexibles Special-System steht. Bin ein bisschen bedient was das Programmieren für Heute angeht, darum verschiebe ich eine sinnvolle Erklärungen auf später: Es gibt Specials, die nur da sind und nur dadurch wirken, dass sie abgefragt werden. Dann welche die zu bestimmten Zeitpunkten aufgerufen werden. Diese haben dann einmalige (also im Gegensatz zu andauernden) Wirkung, abhängig ihrem type. Ein möglicher type ist es sogenannte effects auf einen Stack zu übertragen. Die haben dann anhaltende Wirkung, die entweder immer gültig ist, oder auch wieder zu bestimmten Zeitpunkten Wirkungen hervorruft.


    Die Ganzen Einzelteile sind wie gehabt über Textdateien zusammenbaubar, genauso wie die Specials (abilities heißen die jetzt programmintern) selbstverständlich wieder über die bekannten Kreaturen-Textdateien auf den erwünschten Kreaturen zuzuweisen sind. Ist vielleicht auf den ersten Blick etwas frickelig, aber bedeutet auch, dass man ohne Probleme eigenes erstellen können wird :)


    Ich glaube mit diesen drei Stufen sollte es möglich sein die meisten Specials ohne viel Programmieraufwand umzusetzen (bzw. gar keinem, wenn das System völlig ausgebaut wurde).


    Zitat

    Hab auch Abstürze, wenn die Dämonen kämpfen.


    Hatte in der Schadensformel min_dmg und max_dmg vertauscht. Führte dann dazu, dass er bei einer Differenz von 1 zwischen diesen Werten (also Imps und Dämonen) versuchte "<zufallszahl> modulo 0" zu rechnen...
    Sollte behoben sein. Danke für deine Argusaugen :) Hatte mir vll. ein bisschen zu sehr angewöhnt Greifen mit Nachtmahren prügeln zu lassen.


    EDIT: Download-Link sollte man schon einfügen.


    P.S.: Da ja noch wenig grafisches Feedback zu den Aktionen da ist, gegebenenfalls auch die Konsole, die im Hintergrund läuft beachten. Wenn das Spiel sich "aufhängt", kann das auch ne Fehlermeldung sein, die Aufmerksamkeit verlangt.