Anforderungen: Unterschied zwischen den Versionen

Aus Das Sopra Wiki
Dietsch (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
Langenfeld (Diskussion | Beiträge)
 
(79 dazwischenliegende Versionen von 11 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Stub}}
__TOC__


Ihre Aufgabe ist es, ein Computerspiel aus dem (weit gefassten) Genre ''[[Fliegerspiele|Fliegerspiel]]'' zu entwickeln. Sie können sich weitgehend frei aussuchen, wie dieses Spiel aussehen soll.  
Ihre Aufgabe ist es, ein Computerspiel zu entwickeln, dass die hier beschriebenen Anforderungen erfüllt.  


=== Anforderungen ===  
=== Funktionale Anforderungen ===
* Das Spiel muss entweder 2D oder 3D Grafik (kein ASCII) haben.
* Es muss mindestens 2 Spieler geben, von denen mindestens einer "menschlich" sein muss.
* Zu jedem Zeitpunkt muss es möglich sein, das Spiel zu laden oder zu speichern. Das Laden/Speichern muss aber nicht zwangsläufig vom Spieler steuerbar sein.
* Das Spiel muss eine Pausefunktion besitzen.
* Das Spiel muss mindestens die folgenden Arten von Spielobjekten enthalten:
** Mindestens 5 Kontrollierbare,
** Mindestens 5 Auswählbare,
** Mindestens 5 Nicht-Kontrollierbare, davon mindestens 3 Kollidierende, und
** Mindestens 3 Kontrollierbare, Kollidierende und Bewegliche (im Folgenden "aktive Spielobjekte" genannt).
* Das Spiel muss mindestens 1000 gleichzeitig aktive Spielobjekte handhaben können. Es müssen sich jedoch nicht so viele Spielobjekte im fertigen Spiel befinden, allerdings muss mindestens eine Tech-Demo vorhanden sein, die bei Bedarf die gewünschte Funktionalität zeigt.
* Das Spiel muss mindestens die folgenden Arten von Aktionen enthalten:
** Mindestens 10 verschiedene Aktionen (inkl. Laufen, Fähigkeiten, usw.)
** Allen aktiven Spielobjekten muss es möglich sein, von jedem beliebigen Punkt in der Welt zu jedem anderen begehbaren Punkt zu gelangen, ohne sich gegenseitig übermäßig zu behindern, festzustecken, usw.
* Das Spiel muss Soundeffekte und Musik beinhalten.
* Das Spiel muss mindestens 5 verschiedene Statistiken sammeln und anzeigen.
* Das Spiel muss Achievements haben.
* Das Spiel muss in Echtzeit ablaufen:
** Spieler müssen Aktionen durchführen, während ihre Gegner ebenfalls gleichzeitig Aktionen durchführen und zu jedem Zeitpunkt reagieren können.
 
=== Qualitätsanforderungen ===
* Entwickeln Sie ein '''gutes''' Produkt.
* Entwickeln Sie ein '''gutes''' Produkt.
** Gut bedeutet, das es uns gefallen muss. Wir sind ihre Kunden, d.h. es ist Ihre Aufgabe, uns davon zu überzeugen, das Ihr Spiel das Beste ist.  
** Gut bedeutet, dass es uns gefallen muss. Wir sind Ihre Kunden, d.h. es ist Ihre Aufgabe, uns davon zu überzeugen, dass Ihr Spiel das Beste ist.  
** Sie können sich innerhalb des hier beschriebenen Rahmens völlig frei entscheiden, was Sie für ein Spiel entwickeln wollen; Sie definieren die [[Anforderungen]] also selbst!  
* Die Qualität der Grafik ist für die Bewertung nicht relevant.
** Sowohl die Tutoren als auch die SoPra-Leitung werden Ihnen nur Ratschläge erteilen, keine Weisungen. Sollten Sie uns nicht zuhören wollen, können und werden wir Sie nicht stoppen (wir werden allerdings weiterhin darauf beharren, das Ihre Richtung die falsche ist).
* Die verschiedenen Grafiken des Spiels sollen in sich stimmig sein.
* Die verschiedenen akustischen Effekte des Spiels sollen in sich stimmig sein.
* Die im Spiel vorhandenen Texte müssen frei von Rechtschreib- und Grammatikfehlern sein. Falls Umlaute in den Texten vorhanden sind, müssen diese auch korrekt angezeigt werden.
* Die [[UsabilityForGames|Richtlinen zur Bedienbarkeit von Computerspielen]] sollen befolgt werden.
 
=== Randbedingungen ===
* Sie müssen die Programmiersprache [[CSharp|C#]] und/oder F# mit .NET 8.0 verwenden.
* Sie müssen [[MonoGame]] in der Version 3.8 verwenden.
* Ihr Spiel muss auf Windows 10 (x64) und Linux lauffähig sein.
* Visual Stuido/Rider
* Die Version in den [[Git]]-branches <code>release</code> und <code>master</code> liegende Version muss immer kompilierbar und lauffähig sein.
* Ihr Spiel darf auf wöchentlicher Basis (Stichtag wir vom Tutor bestimmt; normalerweise zum Grupentreffen) '''keine Compiler Warnings oder Errors auslösen'''. In begründbaren Ausnahmefällen (Serialisierung, Dependency Injection, etc.) dürfen Sie Warnungen durch die entsprechenden Code-Kommentare unterdrücken (die Begründung muss entsprechend dokumentiert werden).
 
=== Hinweise ===
* Sie können sich innerhalb des hier beschriebenen Rahmens völlig frei entscheiden, was Sie für ein Spiel entwickeln wollen; Sie definieren alle weiteren [[Anforderungen]] also selbst!  
* Sowohl die Tutoren als auch die Dozenten werden Ihnen nur Ratschläge geben, keine Weisungen erteilen.  
* Sie entwickeln Ihr Produkt im Team!
* Sie entwickeln Ihr Produkt im Team!
** Sie organisieren sich innerhalb des Teams vollständig selbst, d.h. es gibt keinen Team-Leader und Sie sind alle gleichberechtigt (und verantwortlich).  
** Sie organisieren sich innerhalb des Teams vollständig selbst, d.h. Sie sind alle gleichberechtigt (und verantwortlich).  
** Sie können sich Ihr Team nicht aussuchen, Sie müssen damit aber mindestens 13 Wochen leben und arbeiten.  
** Sie können sich Ihr Team nicht aussuchen, Sie müssen damit aber mindestens 13 Wochen leben und arbeiten.  


==== technische Anforderungen ====
[[Kategorie:Anforderungen]] [[Kategorie:Entwurf]]
* Sie müssen die Programmiersprache [[CSharp|C#]] verwenden.
* Sie müssen [[XNA|XNA 3.0]] verwenden.
* Ihr Spiel muss unter [[Windows|Windows XP SP 2]] lauffähig sein.
* Sie müssen als [[IDE]] Visual Studio verwenden.
 
Die dafür notwendige Software finden Sie im [[Download]]-Bereich.
 
[[Kategorie:Anforderungen]]

Aktuelle Version vom 17. Oktober 2024, 12:46 Uhr

Ihre Aufgabe ist es, ein Computerspiel zu entwickeln, dass die hier beschriebenen Anforderungen erfüllt.

Funktionale Anforderungen

  • Das Spiel muss entweder 2D oder 3D Grafik (kein ASCII) haben.
  • Es muss mindestens 2 Spieler geben, von denen mindestens einer "menschlich" sein muss.
  • Zu jedem Zeitpunkt muss es möglich sein, das Spiel zu laden oder zu speichern. Das Laden/Speichern muss aber nicht zwangsläufig vom Spieler steuerbar sein.
  • Das Spiel muss eine Pausefunktion besitzen.
  • Das Spiel muss mindestens die folgenden Arten von Spielobjekten enthalten:
    • Mindestens 5 Kontrollierbare,
    • Mindestens 5 Auswählbare,
    • Mindestens 5 Nicht-Kontrollierbare, davon mindestens 3 Kollidierende, und
    • Mindestens 3 Kontrollierbare, Kollidierende und Bewegliche (im Folgenden "aktive Spielobjekte" genannt).
  • Das Spiel muss mindestens 1000 gleichzeitig aktive Spielobjekte handhaben können. Es müssen sich jedoch nicht so viele Spielobjekte im fertigen Spiel befinden, allerdings muss mindestens eine Tech-Demo vorhanden sein, die bei Bedarf die gewünschte Funktionalität zeigt.
  • Das Spiel muss mindestens die folgenden Arten von Aktionen enthalten:
    • Mindestens 10 verschiedene Aktionen (inkl. Laufen, Fähigkeiten, usw.)
    • Allen aktiven Spielobjekten muss es möglich sein, von jedem beliebigen Punkt in der Welt zu jedem anderen begehbaren Punkt zu gelangen, ohne sich gegenseitig übermäßig zu behindern, festzustecken, usw.
  • Das Spiel muss Soundeffekte und Musik beinhalten.
  • Das Spiel muss mindestens 5 verschiedene Statistiken sammeln und anzeigen.
  • Das Spiel muss Achievements haben.
  • Das Spiel muss in Echtzeit ablaufen:
    • Spieler müssen Aktionen durchführen, während ihre Gegner ebenfalls gleichzeitig Aktionen durchführen und zu jedem Zeitpunkt reagieren können.

Qualitätsanforderungen

  • Entwickeln Sie ein gutes Produkt.
    • Gut bedeutet, dass es uns gefallen muss. Wir sind Ihre Kunden, d.h. es ist Ihre Aufgabe, uns davon zu überzeugen, dass Ihr Spiel das Beste ist.
  • Die Qualität der Grafik ist für die Bewertung nicht relevant.
  • Die verschiedenen Grafiken des Spiels sollen in sich stimmig sein.
  • Die verschiedenen akustischen Effekte des Spiels sollen in sich stimmig sein.
  • Die im Spiel vorhandenen Texte müssen frei von Rechtschreib- und Grammatikfehlern sein. Falls Umlaute in den Texten vorhanden sind, müssen diese auch korrekt angezeigt werden.
  • Die Richtlinen zur Bedienbarkeit von Computerspielen sollen befolgt werden.

Randbedingungen

  • Sie müssen die Programmiersprache C# und/oder F# mit .NET 8.0 verwenden.
  • Sie müssen MonoGame in der Version 3.8 verwenden.
  • Ihr Spiel muss auf Windows 10 (x64) und Linux lauffähig sein.
  • Visual Stuido/Rider
  • Die Version in den Git-branches release und master liegende Version muss immer kompilierbar und lauffähig sein.
  • Ihr Spiel darf auf wöchentlicher Basis (Stichtag wir vom Tutor bestimmt; normalerweise zum Grupentreffen) keine Compiler Warnings oder Errors auslösen. In begründbaren Ausnahmefällen (Serialisierung, Dependency Injection, etc.) dürfen Sie Warnungen durch die entsprechenden Code-Kommentare unterdrücken (die Begründung muss entsprechend dokumentiert werden).

Hinweise

  • Sie können sich innerhalb des hier beschriebenen Rahmens völlig frei entscheiden, was Sie für ein Spiel entwickeln wollen; Sie definieren alle weiteren Anforderungen also selbst!
  • Sowohl die Tutoren als auch die Dozenten werden Ihnen nur Ratschläge geben, keine Weisungen erteilen.
  • Sie entwickeln Ihr Produkt im Team!
    • Sie organisieren sich innerhalb des Teams vollständig selbst, d.h. Sie sind alle gleichberechtigt (und verantwortlich).
    • Sie können sich Ihr Team nicht aussuchen, Sie müssen damit aber mindestens 13 Wochen leben und arbeiten.