Autor Beitrag
ConditionZero
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 190

Win XP
Delphi 7 PE, C++ (Dev-C++), HTML+PHP (Dreamweaver MX), JavaScript(MS FrontPage)
BeitragVerfasst: Fr 02.10.09 14:08 
Moin,

bin gerade an einem neuem Projekt dran.

Seit ein paar Tagen habe ich die Konzepte für ein neues Großprojekt soweit fertig.
Diesmal wird’s eine Art RPG aus der Vogelperspektive, quasi im Stil von Grand Theft Auto 1 (Wie auch immer man dieses Genre nennt...)
Nach 2 Wochen mit Stift und Papier habe ich endlich mit dem Grundgerüst begonnen. Da das meiner Meinung nach schon der anspruchvollste
Teil davon ist, gab’s natürlich auch schon gleich ein paar Kleinigkeiten die nicht so ganz wollen, wie ich will.
Deshalb frag ich lieber nach Hilfe bevor mir eine Zehn-Minuten-Aufgabe viele Stunden und Nerven abverlangt.

Im Anhang das komplette Projekt mit Workspace (gezippt, ohne EXE).
Der Source ist momentan nicht der schönste, aber sobald das Grundgerüst fertig ist und so funktioniert wie es soll, wird dieser überarbeitet.

Dazu folgende Probleme:

1. Die Prozedur für Bewegungen in der uMain-Unit will nicht so ganz funktionieren, war mal fast komplett funktionsfähig, blöd aber, dass ich nach ein paar Experimenten damit versehentlich gespeichert hatte und das leider nicht mehr zum funktionieren gebracht habe.... Klingt komisch, ich weiß :-/

2. Die beiden Canvas (bzw. Hilfsbitmaps) für das Raster wollen nicht transparent werden. Ich möchte, dass die Bereiche in denen keine Rasterlinien (weiß) sind, transparent sind. (Nicht wie momentan im Editor, dass die komplette Stelle mit Formular transparent sind, sondern nur die PaintBox)

3. Wenn ich das Raster im Karteneditor über das MainMenu ausblende (Visible:= false;), wird es vom Formular behandelt als ob es nicht vorhanden wäre. Dieser Effekt ist dann Visualisierbar mit Form.AutoSize:= true;

4. Wenn das Raster angezeigt wird, kann das Form.Click-Event nicht aufgerufen werden, da die PaintBox ja über dem kompletten Formular liegt. Habe das jetzt provisorisch gelöst, indem der Aufruf LaufZurKoordiante; auch im Click-Event des Rasters steht. Ich hoffe das Problem erübrigt sich, wenn Punkt 3 klappt, da das im Editor wichtig wäre. (Im eigentlichen Spiel sieht man ja sowieso kein Raster.)


Der Karteneditor ist schon so früh mit in der Entwicklung, da ich für das Formular mit dem Spiel selbst nur die Grundfunktionen vom Spiel (Laufen, Aktion, etc.) implementieren will. Die kompletten Missionen und Landkarten werden erst implementiert, wenn der Editor voll funktionsfähig ist, da ich mit dem dann die Missionen erstellen möchte. Das würde mir das 'harte Scripten' der Karten - wie ich es bezeichne - ersparen und es würde keine Maps geben, die der Endbenutzer nicht auch erstellen könnte.

Noch eine Ergänzung:
Verwendete Delphiversion: Delphi 7 Enterprise




Ich hoffe es nimmt sich jemand die Zeit mir ein wenig unter die Arme zu greifen.



Grüße

Marc
Einloggen, um Attachments anzusehen!
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: Fr 02.10.09 14:34 
Für Projekte ab einer gewissen Größe ist die Nutzung eines Versionskontroll-Systems Pflicht ... damit wäre dann nämlich auch dein erster Punkt kein Problem ...

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
j.klugmann
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 02.10.09 14:51 
Für Projekte ab einer gewissen Größe ist die Nutzung einer Engine Pflicht. :mrgreen:

Also ich würde dir statt Canvas lieber eine Engine wie Andorra2D empfehlen.


MFG
ConditionZero Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 190

Win XP
Delphi 7 PE, C++ (Dev-C++), HTML+PHP (Dreamweaver MX), JavaScript(MS FrontPage)
BeitragVerfasst: Fr 02.10.09 18:34 
Was würde eine Versionprotokollierung im nachhinein für mein Problem 1 bringen :?:

Enginge... hmm, wollte das eigentlich gerne (wenns auch umständlicher wird) komplett so wie es momentan ist beibehalten und komplett auf eine Eninge verzichten.


Grüße


Marc
j.klugmann
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 02.10.09 19:13 
Zitat:
Was würde eine Versionprotokollierung im nachhinein für mein Problem 1 bringen :?:

Gar nichts , aber eine Versionprotokollierung kannst du immernoch anfangen. ;)

Zitat:

Enginge... hmm, wollte das eigentlich gerne (wenns auch umständlicher wird) komplett so wie es momentan ist beibehalten und komplett auf eine Eninge verzichten.

Meiner Meinung nach sehr ungünstig.Man sollte schon eine der großen API's wie DirectX oder OpenGl nutzen.Die sind zwar eigentlich für 3D , aber 2D ist eigentlich auch kein Problem.

MfG
ConditionZero Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 190

Win XP
Delphi 7 PE, C++ (Dev-C++), HTML+PHP (Dreamweaver MX), JavaScript(MS FrontPage)
BeitragVerfasst: Fr 02.10.09 20:13 
user profile iconj.klugmann hat folgendes geschrieben Zum zitierten Posting springen:
Gar nichts , aber eine Versionprotokollierung kannst du immernoch anfangen. ;)



Gerade Git heruntergeladen :)


user profile iconj.klugmann hat folgendes geschrieben Zum zitierten Posting springen:
Meiner Meinung nach sehr ungünstig.Man sollte schon eine der großen API's wie DirectX oder OpenGl nutzen.Die sind zwar eigentlich für 3D , aber 2D ist eigentlich auch kein Problem.


Ja, aber da gibts auch eine kleine aber wichtige Bedinung zur Benutzung von DirectX bzw. OpenGl... man muss das können :roll:





Bevors in Vergessenheit gerät:
Die 4 Probleme bestehen weiterhin allesamt :(




Grüße

Marc
FinnO
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1331
Erhaltene Danke: 123

Mac OSX, Arch
TypeScript (Webstorm), Kotlin, Clojure (IDEA), Golang (VSCode)
BeitragVerfasst: Fr 02.10.09 20:23 
Dazu kannst du ja Andorra verwenden. Mit Andorra hast du im Grunde genommen keinen Kontakt mehr zu OpenGL bzw. DX, du musst nur die 5 Tutorials durchlesen und in einer Woche kannst du Andorra.

Problem 4,3,2 würden sich dann von selbst erledigen, da du alles nacheinander Zeichnest, andorra über ALphakanäle verfügt usw.

Problem sollte eigentlich auch kein großes Hindernis darstellen, wenn du erstmal deinen Status quo in Andorra programmiert hast.
ConditionZero Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 190

Win XP
Delphi 7 PE, C++ (Dev-C++), HTML+PHP (Dreamweaver MX), JavaScript(MS FrontPage)
BeitragVerfasst: Fr 02.10.09 20:36 
user profile iconFinnO hat folgendes geschrieben Zum zitierten Posting springen:
Dazu kannst du ja Andorra verwenden. Mit Andorra hast du im Grunde genommen keinen Kontakt mehr zu OpenGL bzw. DX, du musst nur die 5 Tutorials durchlesen und in einer Woche kannst du Andorra.

Problem 4,3,2 würden sich dann von selbst erledigen, da du alles nacheinander Zeichnest, andorra über ALphakanäle verfügt usw.

Problem sollte eigentlich auch kein großes Hindernis darstellen, wenn du erstmal deinen Status quo in Andorra programmiert hast.



Ich werde mich mal die Tage in Andorra reinarbeiten. Danke für den Tipp schonmal :)

Aber dennoch wäre es mir lieber auf eine Engine zu verzichten (Ist mir nämlich alles total fremd, da ich bis jetzt auch immer ohne ausgekommen bin, auch bei etwas größeren Spiele, die aber nicht ansatzweiße so ein langes, riesiges Projekt wie dieses hier wird, waren)

Deshalb sehe ich Andorra momentan als (absolute) Notlösung.
Ergo -> Meine Fragen vom Startpost stehen immer, mit der bitte eine Lösung ohne Engine, fremde Units usw. zu verwenden (Ausnahme: GifImage, weil ich die schon verwende, da ich da in einem Spiel wohl kaum herumkommen würde...)



Grüße

Marc



// Edit: Ganz am Rande: Werde doch nicht Git benutzen, das ist mir bisschen zu umständlich alles, habe mir da selber was geschrieben für die Sicherungen.

Und nochmal folgt der Aufruf, dass alle 4 Probleme bisher ungelöst sind... :?
ConditionZero Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 190

Win XP
Delphi 7 PE, C++ (Dev-C++), HTML+PHP (Dreamweaver MX), JavaScript(MS FrontPage)
BeitragVerfasst: So 04.10.09 18:57 
Also habe die letzten Tage ein paar Tutorials von Andorra 2D rumgespaukt.
Werde auf jedenfall die Enginge für das Spiel benutzen, hätte davor nicht gedacht, dass sich das so sehr lohnt, ein bisschen zu lernen. Denn die Vorteile, die man durch Andorra 2D hat sich wirklich ernorm.

Deshalb - auch wenn die Frage direkt nicht beantwortet wurde - werde ich diesen Threat als beantwortet markieren.
Vielleicht kommen in ein paar Tagen ja wieder diese Probleme, dann nur mit Andorra :roll:


Grüße

Marc