Vorstellung - fawesome (2D-Spielengine)

Alles rund um Projekte, LAN-Parties und Clan-Events.

Moderator: Moderator

Vorstellung - fawesome (2D-Spielengine)

Beitragvon bgld » 29.09.2010, 13:22

Vorstellung

(Es gibt ne Demo für Windows (falls es wen interessiert :P): Klickst du hier! Unter Linux müsst ihr das ganze selber kompilieren, da ich Kompatibilitätsprobleme vermeiden will.)

Die Fawesome-Engine ist eine 2D-Spielengine, die es ermöglichen soll, Spiele für viele Plattformen auf einfache Art und Weise zu erstellen. Momentan werden bereits Windows und Linux unterstützt, Unterstützung für Mac dürfte an sich auch kein Problem darstellen. Da die Engine SDL nutzt und in C++ geschrieben ist, wäre womöglich sogar ein PSP- oder Nintendo-DS-Port möglich, versprechen kann ich aber nichts ;P

Vom generellen Konzept her ist Fawesome ziemlich anders aufgebaut als der z.B. der RPG-Maker oder ähnliche Programme. Es gibt keine Tilesets, man kann lediglich ein Tile pro Map festlegen, das dann auf der gesamten Map wiederholt wird. Darüber kann man dann beliebig viele Layer legen, die einzelne Sprites enthalten. Diese Sprites wiederum können alle animiert sein. Aus diesem Grund ist Fawesome kein echter Konkurrent zum RPG-Maker, da das Mapping etc. als Konsequenz ziemlich anders verläuft und konventionelle Tilesets (im SNES-Stil) nicht wirklich nutzbar sein werden.

Als Scriptsprache nutzt Fawesome Tcl. Die Sprache ist gerade für Anfänger leicht zu erlernen, da sie eine sehr minimalistische Syntax aufweist. Das Spiel wird komplett über Tcl-Scripte gesteuert, wodurch sich alle Aspekte des Spiels umscripten lassen. Eine Standardlibrary für RPGs (Menü/Kampfsystem/...) ist in Planung.

Ein Editor ist ebenfalls geplant, dieser wird ebenfalls in Tcl implementiert sein und als "Spiel" innerhalb der Engine laufen. Das hat den Vorteil, dass man Bugs und Fehler direkt ausbessern kann, ohne das Spiel verlassen zu müssen.

Screens der Demo

Hinweis: Die Charaktere sind noch RPG-Maker-Charaktere und werden ausgetauscht.

Bild
Die Demo halt.
Bild
Beim Verschieben eines Sprites, die Wurzel ist nicht transparent, da sie ein extra Sprite ist ;)
Bild
Eine einfache Textbox.
Bild
Ein Screen, der den Grafik- und Mappingstil zeigt, der mit der Engine möglich ist.

Beschreibung der Demo/Aktueller Entwicklungsstand

In der Demo kann man bereits als Held rumlaufen, mit jemandem reden (Eventhandler) und Sprites mit der Maus verschieben (so wird das auch im Editor aussehen). Der Tcl-Source liegt bei und wird dynamisch eingelesen, ihr könnt also damit bereits schön rumspielen :).

Bekannte Bugs/Probleme

- Midis funzen (momentan) nur unter Linux (wenn /etc/timidity.conf korrekt ist und ein Patchset installiert ist)
- Spiel friert teilweise für ~10s ein, wenn Fenster den Fokus verliert (Workaround: fullscreen=true in der engine.cfg ;))

Git-Repo

Es gibt auf http://gitorious.org/fawesome ein Git-Repo, das ihr clonen könnt. Während der Entwicklung werd ich dort natürlich auch regelmäßig reinpushen.

Zum Kompilieren müsst ihr zuerst fawesound (Sound-Library) und dann fawesome (die Engine selber) kompilieren, wenns nicht klappt einfach fragen :).

Soa das wärs dann, viel Spaß, Kritik ist ausdrücklich erwünscht :).
bgld
 
Beiträge: 5
Registriert: 29.09.2010, 12:52
Lizenz: CC
Distribution: Arch
Kernelversion: 2.6.35

Re: Vorstellung - fawesome (2D-Spielengine)

Beitragvon ChemicalBrother » 29.09.2010, 13:53

Sieht sehr viel versprechend aus. :thumbup:
Benutzeravatar
ChemicalBrother
 
Beiträge: 5332
Registriert: 21.08.2006, 21:17
Wohnort: Langen
Lizenz: CC
Distribution: Arch Linux
Kernelversion: 6.0

Re: Vorstellung - fawesome (2D-Spielengine)

Beitragvon LinuxDonald » 29.09.2010, 14:46

Sieht sehr gut aus :)
Arch Linux bietet alles was das Linux Herz begehrt :)

Bild
Benutzeravatar
LinuxDonald
 
Beiträge: 831
Registriert: 23.03.2008, 16:34
Wohnort: Tangermünde
Lizenz: CC
Distribution: Arch Linux
Kernelversion: 4.10.8

Re: Vorstellung - fawesome (2D-Spielengine)

Beitragvon Bauer87 » 29.09.2010, 16:52

Das Ganze sieht schon recht gut aus, wobei ich spontan schon Verbesserungspotenzial sehe. (Btw: Was spricht gegen Tiles?) Da ich selber auch eine 2D-Engine schreibe, würde ich gern mal schauen, was bei dir/euch so gemacht wird. (Machst du das allein oder gibt es ein Team?) Wenn der Code so gut aussieht, wie auf den ersten Blick die Grafik, dann werde ich vielleicht sogar die ein oder andere Zeile Code schreiben.
Benutzeravatar
Bauer87
 
Beiträge: 1233
Registriert: 31.10.2006, 23:28
Wohnort: Oldenburg
Lizenz: CC BY-SA 3.0
Distribution: Debian Stretch
Kernelversion: 4.9

Re: Vorstellung - fawesome (2D-Spielengine)

Beitragvon bgld » 29.09.2010, 20:38

Hi Bauer87,

ich nutze keine Tiles, weil es genug andere Engines wie Sphere und Ika gibt, die tilebasiert sind und ne weitere Engine dieser Art brauchts ja auch net. Außerdem entwickel ich die Engine im Endeffekt für ein eigenes Spiel, das dann auch den gezeigten Grafikstil verwendet. Besagtes Spiel wollte ich ursprünglich mit Sphere erstellen und musste feststellen, dass das ganze tilebasiert recht linear und monoton aussieht.

Code kannst dir natürlich angucken, gibt ja ein Git-Repo :). Abgesehen von der tclbind.cpp (imo noch zu viel Copy/Paste :pinch:) ist der Code glaub ich ganz in Ordnung.

Momentan sitz ich alleine an dem Projekt, da es ein rein privates Hobbyprojekt war, das ich erst vor kurzem releast hab. Allerdings hat sich außer dir in nem anderen Forum nochmal jemand gemeldet (der auch selber an einer Engine arbeitet XD). Wahrscheinlich werden wir unsere Projekte vereinigen, sodass noch einiges an Grafikeffekten, Bitmapfonts, sowie Lua als Scriptsprache dazukommen könnten.

Gruß bgld

PS: Die Grafik polarisiert ziemlich, die einen findens hammer, die anderen einfach nur hässlich XD. Also thx fürs Lob :D
bgld
 
Beiträge: 5
Registriert: 29.09.2010, 12:52
Lizenz: CC
Distribution: Arch
Kernelversion: 2.6.35

Re: Vorstellung - fawesome (2D-Spielengine)

Beitragvon Bauer87 » 29.09.2010, 22:15

SDL wollte ich eh noch lernen, der Code sieht auf den ersten Blick lesbar aus, nur die Doku ist… nunja, nicht wirklich vorhanden. Ich hab sogar schon einige Ideen, wie man die Optik verbessern kann, habe da ja schon selber Erfahrung sammeln können. Wenn wir (bin Teil eines Teams) mal Code von fawsome mal genauer analysiert haben, gucken wir mal, ob wir vielleicht eine gemeinsame Codebasis suchen wollen. Man muss ja nicht für alles eine eigene Engine schreiben und wir wollten eh auf SDL umsteigen…
Benutzeravatar
Bauer87
 
Beiträge: 1233
Registriert: 31.10.2006, 23:28
Wohnort: Oldenburg
Lizenz: CC BY-SA 3.0
Distribution: Debian Stretch
Kernelversion: 4.9

Re: Vorstellung - fawesome (2D-Spielengine)

Beitragvon bgld » 29.09.2010, 22:38

Was für ein Grafikbackend nutzt ihr denn momentan, Allegro?
bgld
 
Beiträge: 5
Registriert: 29.09.2010, 12:52
Lizenz: CC
Distribution: Arch
Kernelversion: 2.6.35

Re: Vorstellung - fawesome (2D-Spielengine)

Beitragvon Bauer87 » 30.09.2010, 11:14

Ja, Allegro. Das ist recht bequem, kann aber keine Transparenz und andere „moderne“ Features. Ist halte mal für den ATARI(?) geschrieben worden. Das Spiel ist auch schon recht weit fortgeschritten aber so modular aufgebaut, dass sich das Grafikbackend ohne weiteres auswechseln könnte. Und genau das soll in der nächsten Zeit gemacht werden. (https://launchpad.net/hexwars)
Benutzeravatar
Bauer87
 
Beiträge: 1233
Registriert: 31.10.2006, 23:28
Wohnort: Oldenburg
Lizenz: CC BY-SA 3.0
Distribution: Debian Stretch
Kernelversion: 4.9

Re: Vorstellung - fawesome (2D-Spielengine)

Beitragvon nasenbaer » 30.09.2010, 11:30

Bauer87 hat geschrieben:..., dass sich das Grafikbackend ohne weiteres auswechseln könnte. Und genau das soll in der nächsten Zeit gemacht werden.


Wohin wolltet ihr denn migrieren? Wirklich SDL? Ich habe immer von sfml als Alternative gehört?

edit: Mit Alternative meinte ich "modern". Irgendwie wird mir im Internet oder im R/L immer von SDL abgeraten, als wäre das giftig :D
SFML wäre schneller und auch besser aufgebaut (OO).
Benutzeravatar
nasenbaer
 
Beiträge: 190
Registriert: 16.11.2007, 20:27
Wohnort: localhost oder Flugplatz :D
Kernelversion: 2.6

Re: Vorstellung - fawesome (2D-Spielengine)

Beitragvon bgld » 04.10.2010, 20:58

Hoi,

SFML hab ich mir mal angeguckt, war mir aber zu langsam für mein Netbook (VIA-Grafik, daher kein vernünftiges OpenGL). So schlimm ist SDL jetzt auch net, vor allem mit SDL_gfx usw. Die C-API hat immerhin den Vorteil, dass man sich net auf C++ festlegen muss, sondern auch D oder gar Assembler benutzen kann :P

Gruß bgld
bgld
 
Beiträge: 5
Registriert: 29.09.2010, 12:52
Lizenz: CC
Distribution: Arch
Kernelversion: 2.6.35


Zurück zu Projekte / Clans / LANs

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste