toruschess/aufgabe/proposal.tex
2009-01-09 14:58:01 +01:00

145 lines
4.5 KiB
TeX

\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8x]{inputenc}
\usepackage{ngerman}
% Package for typesetting chess games.
% http://tug.ctan.org/pkg/skak
% http://tug.ctan.org/tex-archive/fonts/chess/skak/doc/skakdoc.pdf
% http://tug.ctan.org/tex-archive/fonts/chess/skak/doc/refman.pdf
\usepackage[ps,small]{skak}
\setlength{\parindent}{0mm}
\setlength{\textwidth}{150mm}
\setlength{\textheight}{260mm}
\setlength{\topmargin}{-20mm}
\setlength{\oddsidemargin}{0mm}
\usepackage[pdfborder={0 0 0}]{hyperref}
\pagestyle{empty}
\begin{document}
\begin{flushright}
\begin{large}
\textbf{\textsc{Fachpraktikum Visualisierung und interaktive Systeme}}\\
\bigskip
\textbf{WS 2008/09} \\
\bigskip
\textbf{Aufgabe 5: ``Torus Chess''} \\
\end{large}
\bigskip
Stefan Bühler
\end{flushright}
\hrule
%%%%%%%%%%%%%%%%%%%%% Themen %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section*{Thema}
Torus Chess ist eine Variante des normalen Schachspiels, bei der das
Schachfeld oben und unten sowie links und rechts wiederholt wird. Es
kann also mit den Figuren unten aus dem Schachfeld heraus gelaufen werden,
in dem sie oben wieder eingesetzt werden.
Der Name "`Torus Chess"' kommt daher, dass man dieses Feld auf einen Torus abbilden
kann, auf dem die Übergänge intuitiv klar werden.
Zusätzlich gibt es ein paar kleine Änderungen:
\begin{itemize}
\item Die Bauern können nur waagrecht und senkrecht laufen und nur diagonal schlagen.
\item Es gibt kein \textit{en passant} schlagen.
\item Es gibt keine \textit{Rochade}.
\item Es gibt keine Umwandlung von Bauern auf der gegnerischen Grundlinie.
\item Es wird folgende Startaufstellung verwendet:
\end{itemize}
\fenboard{npr5/bkq5/rpn5/8/4RPN1/4QKB1/4NPR1/8 w - - 0 0}
\centerline{\showboard}
In dieser Stellung könnte der weiße Läufer auf {\tt g2} folgende Felder erreichen:\\
\centerline{\showboard}
\highlight[o]{a1,a5,b6,b8,h2,h4}
%%%%%%%%%%%%%%%%%%%%%% Aufgabenstellung %%%%%%%%%%%%%%%%%%%%%%%%%%%
\newpage
\section*{Aufgabenstellung}
Es soll "`Torus Chess"' grundlegend implementiert werden; diese Implementation
sollte unabhängig von einer grafischen Darstellung sein.
Zusätzlich ist die Implementation einer KI gewünscht, die nicht besonders kompex
sein muss, da das Spiel für Menschen unübersichtlich genug ist...
%%%%%%%%%%%%%%%%%%%% Ziele %%%%%%%%%%%%%%%%%%%%%%%%
\section*{Ziele}
\begin{itemize}
\item Funktionierende Spiellogik
\item Künstliche Intelligenz
\end{itemize}
Für die Darstellung sind mehrere Varianten zu implementieren:
\begin{itemize}
\item Eine zweidimensionale Darstellung des Schachbretts; das Schachbrett soll dabei
in alle Richtungen wiederholt werden, damit der menschliche Spieler mehr Übersicht hat.
Dazu soll der Zoom-faktor mit dem Mausrad einstellbar sein.
\item Eine dreidimensionale Darstellung des Schachbretts als Torus Obwohl diese Darstellung
für Menschen eher ungeeignet sein wird (da sie zuwenig vom Feld sehen),
ist diese Darstellung für das Verständnis des Bretts wichtig
\item Eine dreidimensionale Darstellung des flachen, unendlich wiederholten Schachbretts mit
modifizierbarer Kamera.
\item Zweidimensionale Figuren
\item Dreidimensionale Figuren
\end{itemize}
%%%%%%%%%%%%%%%%%%%% Lituraturliste %%%%%%%%%%%%%%%%%%%%%%%%
\section*{Referenzen}
Existierende Implementationen:
\begin{itemize}
\item \url{http://corpsman.de.vu/} \\
\url{http://apache.vm-cluster.net/corpsman/index.php?doc=projekte/torus_chess}
\item \url{http://www-user.tu-chemnitz.de/~wend/Skripte/games/Chess.html}
\end{itemize}
Vorlagen für die Schachfiguren:
\begin{itemize}
\item \url{http://en.wikipedia.org/wiki/Template:Table_chess_pieces}
\end{itemize}
%%%%%%%%%%%%%%%%%%%% Bewertungsliste %%%%%%%%%%%%%%%%%%%%%%%%
\newpage
\section*{Bewertungsliste}
Die insgesamt 20 Punkte für diese Aufgabe werden nach folgenden
Kriterien verteilt:
\begin{tabular}{lp{11cm}}
2 Punkte & Der Code ist gut dokumentiert und gut strukturiert. \\[1ex]
2 Punkte & Spiel logik \\[1ex]
2 Punkte & Computergegner \\[1ex]
2 Punkte & 2d Feld \\[1ex]
1 Punkt & Extra Textur für Schachbrett \\[1ex]
2 Punkte & 3d Torus \\[1ex]
1 Punkt & Umgebungseffekte für die Torus ansicht \\[1ex]
2 Punkte & 3d Feld \\[1ex]
1 Punkte & 2d Figuren \\[1ex]
1 Punkt & Loader für externe 3d Figuren \\[1ex]
2 Punkte & 3d Figuren \\[1ex]
2 Punkte & Weitere Effekte in der 3d Ansicht \\[1ex]
\end{tabular}
\end{document}