RPG - Maker OpenSource-Nachbau // Frage

Du hast eine Idee für ein Projekt?
Antworten
Arachnophobius
User
Beiträge: 23
Registriert: Mittwoch 7. April 2010, 11:51

Heyho,

ich habe vor recht langer Zeit einen Editor für kleine RPG-Games (2D-Stil)
entdeckt mit dem sich recht einfach auch etwas anspruchsvollere
Spiele realisieren lassen. Deutsches Fanforum: Rpg 2000 at 4Players

Allerdings wurde der Download auf der Seite aufgrund von Bestimmungen des
Herstellers geblockt. Da kam mir die Idee, dass ganze zu einem kleinen
Projekt zu machen. Also praktisch das Grundkonzept zu erhalten, allerdings
einige Sachen wie Bedienung o.ä. zu verbessern/ändern.

Vor wenigen Tagen habe ich mich dann mit den ersten Ideen und deren
Umsetzung auseinandergesetzt und bin dabei auf ein Problem gestoßen
das mich wirklich wurmt. Das Editieren der Karten/Maps und der Events soll
in einer PyQt-basierten GUI geschehen und als vorübergehende 'Spieleengine'
wird das PyGame-Modul benutzt.

Beim editieren von Karten wird in einer Liste ein Sprite ausgewählt und
auf ein Layer der Map übertragen. Die Liste mit den Teilen der Sprites habe
ich soweit (denke ich :D) raus, nur beim Feld des Hauptfensters haperts noch etwas.

Bild
(ich hoffe man erkennt am Bild was ich meine :D)

Hat nämlich jemand eine Idee, wie ich das am besten lösen kann?
Also das übertragen von den Sprites vom ListWidget hin zum [?]Widget.

Und noch eine kleine Frage:
Wie kann ich bei Bildern einen Alpha Kanal setzen?
Ich habe mich da an der QPixmapKlasse.setAlphaChannel() Methode probiert,
aber es hat irgendwie nicht geklappt. Teilweise hatte ich sogar komischerweise
probleme beim laden der Grafik.

Code: Alles auswählen

img=QtGui.QPixmap('D:\python_projekte\rpg_remake\testimg.png')
img.width()
Ausgabe: 0
Hoffe mir kann jemand helfen und vllt auch sagen ob meine Idee überhaupt
lohnenswert ist ^^

MfG the Freak
derdon
User
Beiträge: 1316
Registriert: Freitag 24. Oktober 2008, 14:32

Code: Alles auswählen

>>> print 'D:\python_projekte\rpg_remake\testimg.png'
pg_remake       estimg.png
Sicherlich nicht, was du erwartet hast ;)

\r ist Wagenrücklauf (Cursor wird zum Anfang der Zeile bewegt), \t ist Tab(ulator). Benutze den Backslash \ zum escapen oder verwende raw-strings:

Code: Alles auswählen

>>> print r'D:\python_projekte\rpg_remake\testimg.png'
D:\python_projekte\rpg_remake\testimg.png
>>> print 'D:\\python_projekte\\rpg_remake\\testimg.png'
D:\python_projekte\rpg_remake\testimg.png
lunar

Für den rechten Teil des Fensters bietet sich ein QGraphicsView an. In dessen Dokumentation sowie derjenigen der zugeordneten Klassen ist Drag & Drop auch umfangreich beschrieben.
Arachnophobius
User
Beiträge: 23
Registriert: Mittwoch 7. April 2010, 11:51

Aaah danke ^^
@derdon
Das mit den Pfaden ist ja ein blöder Fehler oO :D

@lunar,
alles klar, werde ich testen.

Und kann mir noch jemand etwas zum Alpha Channel sagen?
Es soll nämlich immer eine ganz bestimmte Farbe (abhängig vom
importierten Spriteset) transparent gesetzt werden.

Nochmals vielen Dank.

MfG The Freak
Benutzeravatar
wuf
User
Beiträge: 1529
Registriert: Sonntag 8. Juni 2003, 09:50

Hi Arachnophobius

Man könnte die mit einem Symbol zu belegenden Felder auf der Spielfläche zuerst markieren:
Bild

und dann mit einem Klick auf das gewünschte Symbol in der Auswahl-Liste belegen:
Bild

Gruß wuf :wink:
Take it easy Mates!
Arachnophobius
User
Beiträge: 23
Registriert: Mittwoch 7. April 2010, 11:51

@wuf
So kann ich einzelne Spielfelder mit einem Sprite belegen.
Aber ich möchte ... nennen wir es indirekte Layer haben.
Als Beispiel:
Spielfeld-Koordinate: x(10) y(15)
Layer0 (Boden Tile) erhält als Textur ('grass.png')
Layer1 (Deko/Char Tile) erhält als Textur oder Figur ('hero.png')
Layer2 () erhält als Textur ('baumkrone.png') // Dieser Layer verdeckt also bspw die Spielfigur
wenn diese perspektisch hinter dem Baum steht
Layer3 (nicht optisch, enthält nur Events des Spiels)

Nur wenn der Anwender nicht das entsprechende Format importiert (importieren möchte),
soll es möglich sein eine Farbe transparent zu setzen damit darunter liegende Layer
sichtbar werden.

Oder habe ich da etwas missverstanden an deiner Antwort? Dann tut mir das leid :D

MfG The Freak
Benutzeravatar
wuf
User
Beiträge: 1529
Registriert: Sonntag 8. Juni 2003, 09:50

@Arachnophobius

Meine Antwort bezieht sich nur auf das folgende:
Arachnophobius hat geschrieben:Hat nämlich jemand eine Idee, wie ich das am besten lösen kann?
Also das übertragen von den Sprites vom ListWidget hin zum [?]Widget.
Gruß wuf :wink:
Take it easy Mates!
finki
User
Beiträge: 20
Registriert: Samstag 19. Februar 2011, 11:15

Ich kenne den Editor auch schon seit einem Jahrzehnt und bin absolut begeistert. Habe zwar nie ein Projekt ernsthaft angegangen oder abgeschlossen... Würde das sehr begrüßen, wenn jemand eine Open Source Alternative entwickeln würde. Alles was ich bisher gesehen habe (von anderen) war halt sehr enttäuschend. Nichts kommt auch nur annähernd an das Original ran. Deswegen bin ich sehr skeptisch gegenüber deinem Projekt. Obwohl ich es mir sehr wünschen würde. Leider habe ich nicht genug Erfahrung und Wissen um dich zu unterstützen. Könnte höchstens mal ab und an Testen und vielleicht auch im Code mal anschauen, eventuell Sounds oder Grafiken machen, aber nicht mehr. Selbst wenn du das Wissen dazu hast um es umzusetzen... Das könnte ewig dauern. :( Trotzdem viel Erfolg!
Antworten