diff --git a/Doc/ProblemStatement/ProblemStatement.pdf b/Doc/ProblemStatement/ProblemStatement.pdf index b4ad01113f3817c0b5989bbfda029f6dbb292a7b..5a5f0e259c7fbc529f7ae21594ae58b4eec6fec8 100644 Binary files a/Doc/ProblemStatement/ProblemStatement.pdf and b/Doc/ProblemStatement/ProblemStatement.pdf differ diff --git a/Doc/ProblemStatement/ProblemStatement.tex b/Doc/ProblemStatement/ProblemStatement.tex index 07d1207761a2cea4e49117a471599ce32be8c273..fe06ae42366aacb26df3b3fefe5d037d89e79b68 100644 --- a/Doc/ProblemStatement/ProblemStatement.tex +++ b/Doc/ProblemStatement/ProblemStatement.tex @@ -1,17 +1,18 @@ \documentclass{article} -\usepackage{tabularx} \usepackage{booktabs} +\usepackage{tabularx} -\title{SE 3XA3: Problem Statement\\Title of Project} +\title{SE 3XA3: Problem Statement\\Rogue Reborn} -\author{Team \#, Team Name - \\ Student 1 name and macid - \\ Student 2 name and macid - \\ Student 3 name and macid +\author{Team number: 6 + \\ Team name: TeamSix + \\ Ian Prins (prinsij) + \\ Mikhail Andrenkov (andrem5) + \\ Or Almog (almogo) } -\date{} +\date{23/09/2016} \input{../Comments} @@ -23,8 +24,7 @@ \toprule \textbf{Date} & \textbf{Developer(s)} & \textbf{Change}\\ \midrule -Date1 & Name(s) & Description of changes\\ -Date2 & Name(s) & Description of changes\\ +Sep 22 & Or Almog & Made \& compiled .tex\\ ... & ... & ...\\ \bottomrule \end{tabularx} @@ -34,16 +34,18 @@ Date2 & Name(s) & Description of changes\\ \maketitle -Put your problem statement here. -\wss{comment} +From the humble beginnings of Pong and Pacman, the video game industry has evolved to define modern entertainment by constantly pushing the limits of hardware and software. The technology behind contemporary video games encompasses a large variety of academic subjects and can be as sophisticated and rigorous as any other traditional software project. Although it is easy to forget that modern developers stand on the shoulders of giants, it is important to remember that even classic video games were considered immense feats of technical accomplishment in their time. The primary goal of the "Rogue Reborn" project is to re-create what is arguably one of the most iconic video games of all time: Rogue.\\ + + +The problem being solved is the problem of boredom. Effective recreational time is important to overall productivity, and as such, well-designed video games provide societal utility. The original Rogue (1980) is a classic video game that is best known for pioneering the "roguelike" game genre, which was named after the original game. However, the original source is difficult to read, not benefiting from modern software design techniques. This makes it difficult to compile, understand, or modify the original source. This project will rewrite Rogue in a modern language (C++) using modern techniques including OOP, along with a full set of tests and documentation. The rewrite should be a functionally identical update to the original.\\ + + +The software will be developed for a Linux desktop environment, particularly one for personal use. As the rewrite will use text-based graphics like the original, the environment does not exclude older/slower hardware. The library in use (libtcod) has support for Windows environments, so a hypothetical windows port would involve only minimal changes. Unlike the original, the rewrite will use a graphical/emulated console. This enhances portability, eases development, and allows for greater accessibility.\\ -\ds{comment} -\mj{comment} +Stakeholders include players of the original Rogue game as well as players and developers of successor games, who may be interested in playing/developing from the original. Game developers often look at successful past products when developing their own projects - a modern, well-documented version could be quite valuable for them. As mentioned previously, Rogue is the origin of the roguelike genre, and thus holds historical and nostalgic value to its stakeholders. Additionally Prof. Smith, the 3XA3 TAs, and the project play-testers are stakeholders, as they will be evaluating the project and providing feedback. The rewrite should allow interested stakeholders to clearly examine the inner workings of the game, enable easy modification/extension of the game, and provide direct entertainment value like the original. -\cm{comment} -\mh{comment} -\end{document} \ No newline at end of file +\end{document} diff --git a/Doc/ProblemStatement/ProblemStatement.txt b/Doc/ProblemStatement/ProblemStatement.txt index 061ca47056316881fa7de46dbb789a2ee76c3f58..759a6db8ce8e675946247615757f21852c21d563 100644 --- a/Doc/ProblemStatement/ProblemStatement.txt +++ b/Doc/ProblemStatement/ProblemStatement.txt @@ -6,10 +6,13 @@ Members: Ian Prins, prinsij Mikhail Andrenkov, andrem5 Ori Almogo, almogo -From the humble beginnings of Pong and Pacman, the video game industry has evolved to define modern entertainment by constantly pushing the limits of hardware and software. The technology behind contemporary video games encompasses a large variety of academic subjects and can be as sophisticated and rigorous as any other traditional software project. Although it is easy to forget that modern developers stand on the shoulders of giants, it is important to remember that even classic video games were considered immense feats of technical accomplishment in their time. The primary goal of the "Rogue Reborn" project is to re-create what is arguably one of the most iconic video games of all time "Rogue". +From the humble beginnings of Pong and Pacman, the video game industry has evolved to define modern entertainment by constantly pushing the limits of hardware and software. The technology behind contemporary video games encompasses a large variety of academic subjects and can be as sophisticated and rigorous as any other traditional software project. Although it is easy to forget that modern developers stand on the shoulders of giants, it is important to remember that even classic video games were considered immense feats of technical accomplishment in their time. The primary goal of the "Rogue Reborn" project is to re-create what is arguably one of the most iconic video games of all time: Rogue. -The problem being solved is the problem of boredom. Effective recreational time is important to overall productivity, as such well-designed video games provide societal utility. The original Rogue (1980) is a classic video game, after which the roguelike genre is named. However, the original source is difficult to read, not benefiting from modern software design techniques. This makes it difficult to compile, understand, or modify the original source. This project will rewrite Rogue in a modern language (C++) using modern techniques including OOP, along with a full set of tests and documentation. The rewrite should be a functionally identical update to the original. -The software will be developed for a Linux desktop environment, particularly one for personal use. As the rewrite will use text-based graphics like the original, the environment does not exclude older/slower hardware. The library in use (libtcod) has support for Windows environments, so a hypothetical windows port should involve minimal changes. Unlike the original, the rewrite will use a graphical/emulated console. This enhances portability and eases development. +The problem being solved is the problem of boredom. Effective recreational time is important to overall productivity, and as such, well-designed video games provide societal utility. The original Rogue (1980) is a classic video game that is best known for pioneering the "roguelike" game genre, which was named after the original game. However, the original source is difficult to read, not benefiting from modern software design techniques. This makes it difficult to compile, understand, or modify the original source. This project will rewrite Rogue in a modern language (C++) using modern techniques including OOP, along with a full set of tests and documentation. The rewrite should be a functionally identical update to the original. -Stakeholders include players of the original Rogue game as well as players and developers of successor games, who may be interested in playing/developing from the original. As mentioned above, Rogue is the origin of the roguelike genre, as such it holds historical and nostalgia value to these stakeholders. Additionally Prof. Smith, the 3XA3 TAs, and the project play-testers are stakeholders, as they will be evaluating the project and providing feedback. The rewrite should allow interested stakeholders to clearly examine the inner workings of the game, enable easy modification/extension of the game, and provide direct entertainment value like the original. \ No newline at end of file + +The software will be developed for a Linux desktop environment, particularly one for personal use. As the rewrite will use text-based graphics like the original, the environment does not exclude older/slower hardware. The library in use (libtcod) has support for Windows environments, so a hypothetical windows port would involve only minimal changes. Unlike the original, the rewrite will use a graphical/emulated console. This enhances portability, eases development, and allows for greater accessibility. + + +Stakeholders include players of the original Rogue game as well as players and developers of successor games, who may be interested in playing/developing from the original. Game developers often look at successful past products when developing their own projects - a modern, well-documented version could be quite valuable for them. As mentioned previously, Rogue is the origin of the roguelike genre, and thus holds historical and nostalgic value to its stakeholders. Additionally Prof. Smith, the 3XA3 TAs, and the project play-testers are stakeholders, as they will be evaluating the project and providing feedback. The rewrite should allow interested stakeholders to clearly examine the inner workings of the game, enable easy modification/extension of the game, and provide direct entertainment value like the original. diff --git a/Doc/ProblemStatement/README.md b/Doc/ProblemStatement/README.md index e5c5ef46a45f7a6781c1695470be05c20fa59570..4a2f97ba7d68ac538833649549a010ff39e43e27 100644 --- a/Doc/ProblemStatement/README.md +++ b/Doc/ProblemStatement/README.md @@ -3,3 +3,11 @@ The folders and files for this folder are as follows: Describe ... + +# Compiling: + +You will need to install the following packages (sudo apt-get install): pdflatex, texlive-latex-recommend + +Then, run: pdflatex [filename] + +There may be other, better ways, but this works.