Crimson front
Documentation
================================================================================
CRIMSON FRONT - Ein Cold-War-Raycaster
================================================================================
Ein Projekt von Giorgio Picenoni und Oliver Schulte


--------------------------------------------------------------------------------
KURZBESCHREIBUNG
--------------------------------------------------------------------------------
Oktober 1962, auf dem Höhepunkt des Kalten Krieges. Rote Truppen haben die
Vasquez-Festung gestürmt - und die Atomraketen darin. Als Captain Jack Carter
dringst du allein in die Festung ein, kämpfst dich durch fünf Stockwerke voller
Wachen, Hunde, Elitesoldaten und Bosse und schaltest schliesslich den Startvorgang
der Raketen ab.

CRIMSON FRONT ist ein vollständig in Python geschriebener Raycaster im
Stil der frühen 3D-Shooter - aber mit eigenem Look, eigener Story und einer
Infiltrations-Mechanik, die man so in einem Spiel dieses Typs noch nicht gesehen
hat: Zieh dir eine Rote-Armee-Uniform über und schleich getarnt an ahnungslosen
Patrouillen vorbei.


--------------------------------------------------------------------------------
SETTING & STORY
--------------------------------------------------------------------------------
Die Welt ist in einem gefährlichen zustand. Die fiktive rote Streitmacht, ein Bündnis östlicher Grossmächte die durch eine Eskalationen des kalten Krieges entstanden ist, hat eine Bergfestung mit Atomraketen
besetzt. Die Geschichte wird auf mehreren Ebenen erzählt:

- Ein animiertes Titelbild mit Suchscheinwerfern, marschierenden Silhouetten,
Sternen und drei Gegnern, die auf einer Festungsmauer Wache stehen.
- Eine Eröffnungs-Lagebesprechung ("Briefing") und nach jedem Stockwerk eine
Zwischensequenz mit eigener Kulisse (Panzer, Flugzeuge, Explosionen,
Suchscheinwerfer, am Ende Feuerwerk und wehende Fahne).
- Jedes Stockwerk hat eine eigene Bedeutung: Eingangshalle, Waffenlager, der
Rote Kommissar, die Wintergarde / schwere Truppen und zuletzt der Kommandobunker
des Roten Generals.
- Das Ziel passt zum Setting: Im letzten Stockwerk steht kein "Ausgang", sondern
eine Raketen-Startkonsole, die man abschaltet ("LAUNCH ABORTED").

Captain Carter wird über ein klar gekennzeichnetes Trainings-Tutorial Schritt für Schritt in die Steuerung eingeführt, bevor das eigentliche Briefing startet.


--------------------------------------------------------------------------------
SPIELZIEL
--------------------------------------------------------------------------------
Erreiche und überlebe alle fünf Stockwerke der Festung. Auf jedem Stockwerk
musst du den Ausgang (bzw. auf Stockwerk 5 die Startkonsole) erreichen; wo ein
Boss steht, muss dieser zuerst fallen. Punkte (Score) sind ein Bonus, aber das
eigentliche Ziel ist klar und erreichbar: den Raketenstart stoppen.


--------------------------------------------------------------------------------
STEUERUNG
--------------------------------------------------------------------------------
W A S D ........ Bewegen (vor/zurück/seitwärts)
Pfeiltasten .... Drehen / Umsehen
SHIFT .......... Rennen
LEERTASTE ...... Schiessen (bzw. Tür öffnen, wenn man davor steht)
1 - 4 ......... Waffe wechseln (Messer, Pistole, MG, Kettenkanone)
R .............. Nachladen
E .............. Benutzen (Türen, geheime Wände)
TAB ............ Taktische Karte
P .............. Pause


--------------------------------------------------------------------------------
EIN NEUES GROSSES FEATURE: INFILTRATION / TARNUNG
--------------------------------------------------------------------------------
Auf jedem Stockwerk liegt eine Rote-Armee-Uniform. Hebst du sie auf, ziehst du
dich für eine begrenzte Zeit als Soldat der Gegenseite an:

- Ahnungslose Patrouillen ignorieren dich, solange du getarnt bist - du kannst
ungesehen an ihnen vorbeischleichen, dich neu positionieren oder eine Stellung
umgehen.
- Wachen, die dir zu nahe kommen, durchschauen die Tarnung trotzdem.
- Sobald du das Feuer eröffnest ODER selbst getroffen wirst, fliegt deine
Tarnung sofort auf.
- Ein grüner Bildschirmrahmen und eine Anzeige am unteren Rand zeigen jederzeit,
dass du getarnt bist und wie lange noch.

Damit gibt es neben dem klassischen "Run-and-Gun" einen zweiten, völlig anderen
Spielstil - Schleichen statt Schiessen - der perfekt zum Setting des einzelnen,
hinter den feindlichen Linien operierenden Agenten passt. Genau diese Mechanik
ist in einem Raycaster dieser Art noch nie zu sehen gewesen.


--------------------------------------------------------------------------------
WEITERE KREATIVE ELEMENTE
--------------------------------------------------------------------------------
- Geheime Schiebewände: Mit E lassen sich versteckte Blöcke verschieben; sie
gleiten als echter, solider Würfel realistisch in den nächsten Raum.
- Berserker-Modus: kurzzeitig doppelter Schaden, signalisiert durch einen
sauberen, pulsierenden roten Rahmen.
- Voll prozedural generierte Stockwerke mit Räumen, gewundenen Korridoren,
verschlossenen Türen (Gold-/Silberschlüssel) und Schatzkammern.
- Detaillierte First-Person-Waffenmodelle (Messer, Pistole, MG, Kettenkanone)
mit Mündungsfeuer und ausgeworfenen Patronenhülsen.
- Echte Licht- und Schatteneffekte: Deckenlampen, weiche Schlagschatten unter
jedem Sprite, die korrekt von Wänden verdeckt werden.
- Animiertes Titelbild, fünf vertonte Zwischensequenzen, ein Gesichts-HUD,
Mini-Radar, taktische Karte, Boss-Lebensbalken, Treffer-Indikator und
Combo-/Score-System.
- Entwickler-Cheats:
(Stockwerk überspringen, Gott-Modus, alle Waffen, voll heilen, Tarnung).


--------------------------------------------------------------------------------
TECHNISCHE UMSETZUNG
--------------------------------------------------------------------------------
- Engine: Eigener DDA-Raycaster (3D-Optik aus 2D-Karte) - perspektivisch
korrekte Boeden/Decken, texturierte Wnde, Sprite-Rendering mit Z-Buffer.
- Auflösung: exakt 512 x 512 Pixel (Vorgabe erfüllt).
- Klassen (Vorgabe: mind. 2 - erfüllt mit DREI Klassen):
* Game - der gesamte Spielzustand, die Schleife und das Rendering.
* Enemy - ein Gegner (Soldat/Hund/Boss) mit eigenem Verhalten
(is_boss(), hp_fraction(), enraged()).
* Disguise - die komplette Infiltrations-/Tarnungs-Mechanik.
- Sound: prozedural erzeugte Soundeffekte (Schüsse, Treffer, Explosionen,
Türen, Schritte, Pickups) plus pro Stockwerk eine eigene Hintergrundmusik;
Effekte laufen auf einem reservierten Kanal, damit die Musik nie abbricht.
- Sauber kommentierter, in Abschnitte gegliederter Code in einer einzigen
Datei (app.py), damit das Spiel direkt auf pyxelstudio.net läuft.


--------------------------------------------------------------------------------
ERFÜLLUNG DER BEDINGUNGEN
--------------------------------------------------------------------------------
[x] Mindestens zwei Klassen ............ Game, Enemy, Disguise (drei)
[x] Mindestens ein neues grosses Feature . Infiltration / Tarnung
[x] Auflösung 512 x 512 Pixel
[x] Soundeffekte (und Musik)


--------------------------------------------------------------------------------
BEZUG ZU DEN BEWERTUNGSKRITERIEN
--------------------------------------------------------------------------------
1. GRAFIK: Einheitliches, dunkles Cold-War-Farbschema; detaillierte Sprites,
Waffen und Texturen; flüssige Lauf-, Schuss- und Todesanimationen;
aufwendiges Titelbild und fünf Zwischensequenzen.

2. SOUND: Mehrere, zum Geschehen passende Soundeffekte sowie eine eigene
Hintergrundmusik pro Stockwerk; Effekte unterstützen das Gameplay
(Treffer-Feedback, Schritte der Gegner, Alarm bei Beschuss).

3. KREATIVITÄT: Eigenes Setting (fiktiver Kalter Krieg statt Vorlage), eigene
Story und mit der Tarnungs-Mechanik ein Feature, das den Spieltyp deutlich
von einer generischen Vorlage abhebt.

4. SETTING/STORY: Briefing, Zwischensequenzen, ein klares, zum Setting passendes
Ziel (Raketenstart abschalten) und ein deutliches, gut angeleitetes Tutorial.

5. GAMEPLAY: Präzise Steuerung, saubere Hitboxes, fünf abwechslungsreiche
Stockwerke mit steigender Schwierigkeit, viele Interaktionen (Waffen, Türen,
Schlüssel, Geheimgänge, Tarnung, Pickups) und zwei verschiedene Spielstile
(Schiessen oder Schleichen).
================================================================================
License: MIT
Files
  • app.py
  • res.pyxres
  • screenshot.png
CRIMSON FRONT
🕹️ https://pyxelstudio.net/szhqvfce

#gamedev #retrogames #game #python #pyxel