Der erste Artikel über das in der Entwicklung befindliche Spiel, Space Jaguar Action RPG. In diesem Artikel beschreibe ich die Gameplay-Funktion des Jaguar – Eigenschaften.
Viele Rollenspiele verwenden ein statisches Charakterstatistiksystem, wie zum Beispiel die Statistiken von DnD (Stärke, Konstitution, Geschicklichkeit, Intelligenz, Weisheit, Charisma) oder Fallout – S.P.E.C.I.A.L (Stärke, Wahrnehmung, Ausdauer, Charisma, Intelligenz, Geschicklichkeit, Glück). ).
In Space Jaguar plane ich die Implementierung eines dynamischen Systems von Eigenschaften. Beispielsweise hat die Hauptfigur des Spiels Jag zu Beginn nur drei Eigenschaften – Beherrschung einer Klinge (Halbsäbel), zwielichtige Operationen (Geschäfte in der kriminellen Welt abschließen), Schurkenfähigkeiten (Schlösser knacken, Diebstahl). Während des Spiels werden den Charakteren im Rahmen des Spielmoduls dynamische Eigenschaften verliehen und entzogen. Alle Überprüfungen erfolgen auf der Grundlage des Niveaus bestimmter Eigenschaften, die für eine bestimmte Spielsituation erforderlich sind. Beispielsweise kann Jag eine Schachpartie nicht gewinnen, wenn er nicht über die Eigenschaft verfügt, Schach zu spielen, oder nicht über ein ausreichendes Level verfügt, um die Prüfung zu bestehen.
Zur Vereinfachung der Prüflogik erhält jedes Merkmal einen 6-stelligen Code in englischen Buchstaben, einen Namen und eine Beschreibung. Um beispielsweise eine Klinge zu besitzen:
bladeFightingAbility.name = "BLADFG";
bladeFightingAbility.description = "Blade fighting ability";
bladeFightingAbility.points = 3;
Перед стартом игрового модуля можно будет просмотреть список публичных проверок необходимых для прохождения, также создатель может скрыть часть проверок для создания интересных игровых ситуаций.
Ноу-хау? Будет ли интересно? Лично я нахожу такую систему интересной, позволяющей одновременно обеспечить свободу творчества создателям игровых модулей, и возможность переноса персонажей из разных, но похожих по характеристикам, модулей для игроков.
Ich habe schon lange keine neuen Projekte mehr angekündigt) Das nächste Projekt, an dem ich zu arbeiten beginne – 3D-Action-Rollenspiel namens Space Jaguar. Eine Geschichte in einer Science-Fiction-Umgebung über einen harten Kerl namens Jag und sein schwieriges Abenteuer auf der Suche nach seinem vermissten Vater. Es wird 3D-Grafiken auf der Flame Steel Engine (oder möglicherweise einer anderen beliebten Engine) geben, die Entwicklungen aus früheren Projekten (Death Mask, Cube Art Project) verwenden, eine Comedy-Handlung mit vielen Referenzen, Arcade-Kämpfe und Bosse. Ich bin noch nicht bereit, über das Erscheinungsdatum der Vollversion zu sprechen; ich habe vor, das Spiel in Teilen zu veröffentlichen.
Projekt-Repository:
https://gitlab.com/demensdeum/space-jaguar-action-rpg
Verlorene Ausnahme
Eine interessante Funktion von Emscripten: Wenn Sie eine Spielschleife über emscripten_set_main_loop starten, sollten Sie bedenken, dass die Ausnahmebehandlung über try Catch direkt in der Schleifenmethode erneut hinzugefügt werden muss, weil Laufzeit verliert Try-Catch-Block von außen.
Am einfachsten ist es, den Fehlertext über den Browser per Javascript-Benachrichtigung anzuzeigen:
catch (const std::exception &exc)
{
const char *errorText = exc.what();
cout << "Exception: " << errorText << "; Stop execution" << endl;
EM_ASM_(
{
var errorText = UTF8ToString($0);
alert(errorText);
}, errorText);
abort();
Zu komplexer regulärer Ausdruck
Die Standardimplementierung von Regex kann eine error_complexity-Ausnahme auslösen, wenn sie den regulären Ausdruck für zu komplex hält. Dies geschieht in der aktuellen Implementierung von emscripten, daher empfehle ich Ihnen, Tests zum Parsen durch reguläre Ausdrücke zu implementieren oder Regex-Implementierungen von Drittanbietern zu verwenden.
Neuer nicht permanenter Abschnitt „Entwicklertagebücher“; oder Dev Diary im fremden Stil.
Die Entwicklung des Spiels Death-Mask ist in vollem Gange, so das Engine-Logo wurde für Flame Steel Engine-Spiele 2019 hinzugefügt, Bildschirm zur Auswahl der anfänglichen Karte nach Insel (grün, rot, schwarz, weiß), Ausgabe von Texturen für Wände, Decke, Boden des Labyrinths, vergrößerte Größe des Spielbereichs. p>

Karte der Stadt der Roten Zone
Als nächstes planen wir, 3D-Modelle für die Umgebung anstelle von Sprites im Doom-Stil hinzuzufügen, und wir planen, Modelle für Waffen, Kisten, Feinde und Freunde hinzuzufügen. Im Gameplay ist geplant, Währung, Geschäfte, die Möglichkeit, Teile der Spielkarte zu kaufen, die interessante Orte mit Beute anzeigen, und den möglichen Standort der „Todesmaske“ hinzuzufügen. Ich möchte auch die Möglichkeit hinzufügen, Begleiter für die Wanderung durch das Cyberlabyrinth anzuheuern.
Verfolgen Sie die Nachrichten.