Top

Milestone 1

About a Game 0
Available on Milestone 1 Available from Milestone 1 up to Milestone 1

Outline of the game with its goals, rules and mechanics

About a Game (advanced) 0
Available on Milestone 1 Available from Milestone 1 up to Milestone 1

Have a very clear and well thought out written concept of your game (max two pages, self-made)

Ahead of Schedule and Under Budget! 0
Available on Milestone 1 Available from Milestone 1 up to Milestone 1

You have already started producing relevant and meaningfully runnable code for your project

Dear Diary 0
Available on Milestone 1 Available from Milestone 1 up to Milestone 1

Project diary exists (PDF or text) and is readable

Dear Diary (advanced) 0
Available on Milestone 1 Available from Milestone 1 up to Milestone 1

The diary has at least one meaningful entry

Mockup 0
Available on Milestone 1 Available from Milestone 1 up to Milestone 1

Show a self made mockup of your game during the presentation

Networking 0
Available on Milestone 1 Available from Milestone 1 up to Milestone 1

Overview of the functionality of client and server specific to your game

Requirement Analysis 0
Available on Milestone 1 Available from Milestone 1 up to Milestone 1

Overview of the software requirements (not required software)

The Name of the Game 0
Available on Milestone 1 Available from Milestone 1 up to Milestone 1

Have a name for your game, ideally also for your group

Who? What? When? 0
Available on Milestone 1 Available from Milestone 1 up to Milestone 1

Project timeline and responsibilities

Who? What? When? (advanced) 0
Available on Milestone 1 Available from Milestone 1 up to Milestone 1

Have a detailed and well thought out project plan in written form

Broken Watch lvl 1 -0
Available on Milestone 1 Available from Milestone 1 up to Milestone 6

You run over time in your presentation

Hidden Figure -0
Available on Milestone 1 Available from Milestone 1 up to Milestone 1

One group member has 0 commits in the repository

Incomplete lvl 1 -0
Available on Milestone 1 Available from Milestone 1 up to Milestone 6

Not all required sources and documents are committed to the repository on time or not all documents are available in PDF or plaintext

Just Sending Packages -0
Available on Milestone 1 Available from Milestone 1 up to Milestone 1

Definition of the network communication is generic

Projectplan.example -0
Available on Milestone 1 Available from Milestone 1 up to Milestone 1

The project plan is so generic, you could use it for any of the other projects

Unaudited lvl 1 -0
Available on Milestone 1 Available from Milestone 1 up to Milestone 6

Placeholders, typos or severe grammar mistakes in the slides

Wall of text lvl 1 -0
Available on Milestone 1 Available from Milestone 1 up to Milestone 6

Your slides contain way too many words

Wanted lvl 1 -0
Available on Milestone 1 Available from Milestone 1 up to Milestone 6

Not all group members are present and on time for the milestone (exercise and lecture)

All Green 10
Available on Milestone 1 Available from Milestone 1 up to Milestone 1

You fulfilled all regular achievements

No Red 5
Available on Milestone 1 Available from Milestone 1 up to Milestone 1

You did not get any malus

TED talk 10
Available on Milestone 1 Available from Milestone 1 up to Milestone 1

Give a great presentation

Top

Milestone 2

.gitignore 5
Available on Milestone 2 Available from Milestone 2 up to Milestone 2

There is a gitignore file containing entries relevant for major operating systems and the used tools

/** ... */ 10
Available on Milestone 2 Available from Milestone 2 up to Milestone 2

Source code is sufficiently documented with JavaDoc

3nc0d1️⃣ng ER2ÖR 15
Available on Milestone 2 Available from Milestone 2 up to Milestone 2

Protocol and content is properly encoded, decoded and validated

Call Me Bob 5
Available on Milestone 2 Available from Milestone 2 up to Milestone 2

Players can change their nicknames

Chat 15
Available on Milestone 2 Available from Milestone 2 up to Milestone 2

Client to client chat is working

Dear Diary 10
Available on Milestone 2 Available from Milestone 2 up to Milestone 2

Project diary is up to date and filled with meaningful entries

Login 10
Available on Milestone 2 Available from Milestone 2 up to Milestone 2

Arbitrarily many clients can log on to the server

Logout 5
Available on Milestone 2 Available from Milestone 2 up to Milestone 2

The server handles a client logout in a meaningful way

Ping 10
Available on Milestone 2 Available from Milestone 2 up to Milestone 2

A ping message is regularly sent from server to client and processed meaningfully (connection losses are detected and handled)

Pong 10
Available on Milestone 2 Available from Milestone 2 up to Milestone 2

A ping message is regularly sent from client to server and processed meaningfully (connection losses are detected and handled)

Protocol Code 10
Available on Milestone 2 Available from Milestone 2 up to Milestone 2

The human-readable network protocol is defined and implemented

Protocol Document 10
Available on Milestone 2 Available from Milestone 2 up to Milestone 2

The human-readable network protocol is defined in a dedicated document. All commands are explained together with an example

Protocol Validator 15
Available on Milestone 2 Available from Milestone 2 up to Milestone 2

Network protocol is being used correctly

bob_001 5
Available on Milestone 2 Available from Milestone 2 up to Milestone 2

The server assures that player nicknames are unique and changes duplicates in a consistent manner by assigning appropriate names

whoami 5
Available on Milestone 2 Available from Milestone 2 up to Milestone 2

The client suggests a nickname based on the system username

Bit Shifter -10
Available on Milestone 2 Available from Milestone 2 up to Milestone 2

The network protocol and its serialized format is not human-readable

Casual Developer lvl 1 -15
Available on Milestone 2 Available from Milestone 2 up to Milestone 6

One or more group members did not meaningfully contribute to the project during this milestone

Classic lvl 1 -10
Available on Milestone 2 Available from Milestone 2 up to Milestone 6

.class files in the repository

Free as in OS lvl 1 -5
Available on Milestone 2 Available from Milestone 2 up to Milestone 6

Your game does not run on Linux

Human Modem -10
Available on Milestone 2 Available from Milestone 2 up to Milestone 4

User has to input messages precisely matching the network protocol

Incomplete lvl 2 -30
Available on Milestone 2 Available from Milestone 2 up to Milestone 6

Not all required sources and documents are committed to the repository on time or not all documents are available in PDF or plaintext

Master Procrastinator -10
Available on Milestone 2 Available from Milestone 2 up to Milestone 6

Have the default -or not meaningfully altered- README

Silent Committer lvl 1 -2
Available on Milestone 2 Available from Milestone 2 up to Milestone 6

Have commits without (meaningful) message

Unconventional lvl 1 -2
Available on Milestone 2 Available from Milestone 2 up to Milestone 6

Break coding conventions

Wanted lvl 2 -20
Available on Milestone 2 Available from Milestone 2 up to Milestone 6

Not all group members are present and on time for the milestone (exercise and lecture)

Elephant in the Room 5
Available on Milestone 2 Available from Milestone 2 up to Milestone 2

Already have a gradle build script producing one executable jar

Perfect Timing 5
Available on Milestone 2 Available from Milestone 2 up to Milestone 2

The latest commit on the main branch was made prior to the Friday preceding the milestone, at 16:59.

Top

Milestone 3

Knowledge Checkpoint 500
Available on Milestone 3 Available from Milestone 3 up to Milestone 3

Demonstrate your understanding by completing a multiple-choice challenge

Top

Milestone 4

/** ... */ 10
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

Source code is sufficiently documented with JavaDoc

About a Game 5
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

Outline of the game with its goals, rules and mechanics

Broadcast 5
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

Broadcast to all clients across all games and lobbies is working and has a dedicated command

Build Script 5
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

The build script succeeds and produces an executable jar & javadoc for the task "build-cs108"

Command Line 5
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

Command line parameters are parsed correctly: (client <hostadress>:<port> [<username>] | server <port>)

Dear Diary 10
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

Project diary is up to date and filled with meaningful entries

Demo! 25
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

Present a working prototype (Terminal or GUI) of the game in the presentation

GUI 25
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

The chat is available via a basic GUI

Game List 5
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

There is a way to list open, ongoing as well as finished games. Their status is indicated

Game Logic 40
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

The main logic of the game as well as its fundamental mechanics are present and the game is playable

Game State 10
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

Game state is kept on server

Librarian 10
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

Use at least one external library besides JUnit. JavaFX does not count as an external library

Lounging 5
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

Have support for multiple lobbies (one per game) with their respective internal chats

Lounging List 5
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

There is a way to list players in lobbies

Manual 10
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

There is a manual which describes how the game is to be played based on your implementation, in written form

Player List 5
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

There is a way to list all players currently connected to the server

Progress Report 15
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

How things are going - project timeline and responsibilities, changes and problems

Protocol Code 10
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

The human-readable network protocol is defined and implemented

Protocol Document 5
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

The definition of the network protocol in the external document is up to date. All commands are explained together with an example

QA 10
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

Present your QA measures, which can also be found in the document (see slides)

QA Concept 10
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

Reasonable Software Quality concept in written form (see slides)

QA Concept (advanced) 10
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

Have a well thought-out and detailed written QA concept and a solid and realistic plan on how to implement it, including first measurements in written form (see slides)

Rules to Code 5
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

How is the gamestate and game logic represented in the code

Shall We Play a Game 40
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

Present a working prototype of the game logic in the exercise slot by playing the game (Terminal or GUI)

Technology! 10
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

Describe tools, libraries and processes which you use that are not introduced in the lecture and why you use them

Whisper 5
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

Whisper-chat between two clients is working

Who? What? When? 10
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

Update and adjust your project plan for milestones 4 and 5

Broken Watch lvl 2 -10
Available on Milestone 4 Available from Milestone 4 up to Milestone 6

You run over time in your presentation again

Building Freeze lvl 1 -15
Available on Milestone 4 Available from Milestone 4 up to Milestone 6

Build process violates specification (not exactly one executable jar produced, works only on team members machines, build.gradle not in the root of the directory, gradle wrapper not usable, taskname)

Casual Developer lvl 2 -25
Available on Milestone 4 Available from Milestone 4 up to Milestone 6

One or more group members did not meaningfully contribute to the project during this milestone

Classic lvl 2 -30
Available on Milestone 4 Available from Milestone 4 up to Milestone 6

.class files in the repository

Free as in OS lvl 2 -10
Available on Milestone 4 Available from Milestone 4 up to Milestone 6

Your game does not run on Linux

Incomplete lvl 3 -50
Available on Milestone 4 Available from Milestone 4 up to Milestone 6

Not all required sources and documents are committed to the repository on time or not all documents are available in PDF or plaintext

Master Procrastinator lvl 2 -30
Available on Milestone 4 Available from Milestone 4 up to Milestone 6

Have still the default -or not meaningfully altered- README

Silent committer lvl 2 -5
Available on Milestone 4 Available from Milestone 4 up to Milestone 6

Have more commits without (meaningful) message

Unaudited lvl 2 -10
Available on Milestone 4 Available from Milestone 4 up to Milestone 6

Placeholders, typos or severe grammar mistakes in the slides

Unconventional lvl 2 -5
Available on Milestone 4 Available from Milestone 4 up to Milestone 6

Break coding conventions

Wall of text lvl 2 -5
Available on Milestone 4 Available from Milestone 4 up to Milestone 6

Your slides contain way too many words

Wanted lvl 3 -30
Available on Milestone 4 Available from Milestone 4 up to Milestone 6

Not all group members are present and on time for the milestone (exercise and lecture)

TED Talk 10
Available on Milestone 4 Available from Milestone 4 up to Milestone 4

Give a great presentation

Top

Milestone 5

/** ... */ 10
Available on Milestone 5 Available from Milestone 5 up to Milestone 5

Source code is sufficiently documented with JavaDoc

5 out of 7 5
Available on Milestone 5 Available from Milestone 5 up to Milestone 5

Review two JARs you received: Explain (1 sentence each) if you would give the following achievements: GUI, GUI (advanced), High Score, Referee, Shall We Play A Game, Victory and the malus Chat Commander (see slides)

Dear Diary 10
Available on Milestone 5 Available from Milestone 5 up to Milestone 5

Project diary is up to date and filled with meaningful entries

GUI 20
Available on Milestone 5 Available from Milestone 5 up to Milestone 5

The game is represented graphically

GUI (advanced) 30
Available on Milestone 5 Available from Milestone 5 up to Milestone 5

The game is fully playable from the UI. Text input is only used where absolutely necessary

High Score 5
Available on Milestone 5 Available from Milestone 5 up to Milestone 5

There is a high score list which is stored persistently, updated when needed and available for clients

Peer Precision 5
Available on Milestone 5 Available from Milestone 5 up to Milestone 5

Your assessment of the other games matches our assessment with a deviation of at most one achievement (see slides)

Referee 15
Available on Milestone 5 Available from Milestone 5 up to Milestone 5

The rules of the game are checked and enforced correctly

Shall We Play A Game 20
Available on Milestone 5 Available from Milestone 5 up to Milestone 5

Present the working final game in the excercise slot by playing the game using the JAR

Unit-Test 10
Available on Milestone 5 Available from Milestone 5 up to Milestone 5

All relevant features of a core component of your game are tested

Unit-Test (advanced) 10
Available on Milestone 5 Available from Milestone 5 up to Milestone 5

Unit-Tests are comprehensive and meaningful

Victory! 10
Available on Milestone 5 Available from Milestone 5 up to Milestone 5

The winner and the win state is correctly determined

Building Freeze lvl 2 -25
Available on Milestone 5 Available from Milestone 5 up to Milestone 6

Build process violates specification (not exactly one executable jar produced, works only on team members machines, build.gradle not in the root of the directory, gradle wrapper not usable, taskname)

Chat Commander -10
Available on Milestone 5 Available from Milestone 5 up to Milestone 5

Some required functionality is only available via special chat commands. Exceptions are made for whispering in the form of a dedicated command /w $user $msg

Silent Committer lvl 3 -15
Available on Milestone 5 Available from Milestone 5 up to Milestone 6

Have more commits without (meaningful) message

Unconventional lvl 3 -15
Available on Milestone 5 Available from Milestone 5 up to Milestone 6

Break coding conventions

Perfect Timing 5
Available on Milestone 5 Available from Milestone 5 up to Milestone 5

The latest commit on the main branch was made prior to the Friday preceding the milestone, at 16:59.

Top

Milestone 6

/** ... */ 15
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Source code is sufficiently documented with JavaDoc

About a Game 10
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Outline of the game with its goals, rules and mechanics

About a Game (advanced) 10
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Have a clear introduction to your game explaining its fundamentals in such a way that a first-time listener can understand it

Archiving 5
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Your repository contains an outreach/ folder with the specified content, where the maximal size of the video content (gameplay, trailer) is 10 MB

Command Line 5
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Command line parameters are still parsed correctly

Dear Diary 10
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Project diary is up to date and filled with meaningful entries

Demo! 60
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Have a bugfree demo of the game in the final presentation

GUI 40
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The GUI works without any errors and all client functionality is accessible by it

Game Logic 20
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The entire logic of the game as well as all its mechanics are present and the game is fully playable

High Score 10
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

There is a high score list which is stored persistently, updated when needed and shown when requested

Login 5
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Arbitrarily many clients can still log on to the server

Manual 10
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

There is a manual which describes how the game is to be played, in written form

Pachydermatous Librarian 10
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

All external libraries in your project are managed by gradle via maven central

Picturesque 10
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Have a representative screenshot of the game

Protocol Code 5
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Final version of human-readable network protocol is defined and implemented

Protocol Document 5
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The final version of the network protocol is current in external documentation

QA 15
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Results of Quality Assurance measures and lessons learned from them (see slides)

QA Report 15
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

QA report with goals, methods and results (see slides)

QA Report (advanced) 15
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Detailed and relevant analysis of QA measures over time, discussion of results, well-written report (see slides)

Shall We Play A Game 60
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Present the working final game in the excercise slot by playing the game using the JAR

Technology! 10
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Describe tools, libraries and processes which you use that are not introduced in the lecture and why you use them

Technology! (advanced) 15
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Use at least two libraries besides JUnit actively for a significant / impactful task in your project. JavaFX does not count

Twitchy 5
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Have a representative video showing somewhere between 20 seconds and 2 minutes of gameplay

Unit-Test 10
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

All unit-tests are meaningful and 'green'

We Are Smarter Now 20
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Lessons Learned

Always Online -15
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The game only works properly when a connection to the internet can be established

Building Freeze lvl 3 -35
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Build process violates specification (not exactly one executable jar produced, works only on team members machines, build.gradle not in the root of the directory, gradle wrapper not usable, taskname)

Connection Lost -15
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Connection losses during gameplay are not handled

Nonlocal -20
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Server and Client cannot be run on the same machine simultaneously

Occupational Therapy -20
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Server does not start directly when started via 'java -jar some.jar server…' but requires additional user action

Silent Committer lvl 4 -25
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Have more commits without (meaningful) message

Sir Nicholas -30
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Server cannot run in headless (i.e. only textual, console-based UI) mode

Unaudited lvl 3 -15
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Placeholders, typos or severe grammar mistakes in the slides

Unconventional lvl 4 -30
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Break coding conventions

Wall of Text lvl 3 -10
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Your slides contain way too many words

3D 8
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The game uses 3d graphics

Animator 5
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The game has animated characters

Audio 2
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The game has sound

Continuous Integration Aficionados 5
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Have a CI Server which builds every commit, executes the tests and informs about the outcome

Controller Support 3
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The game supports input methods other than mouse and keyboard

Ear Candy 5
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The game has especially good sound

Entomologist 5
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Use a proper Bug/Issue tracker

Eye candy 8
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The game is especially nice to look at

Free as in Speech 5
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The game only uses assets for which the group holds all rights

Full screen 3
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The game has a resolution-independent full-screen mode

Intro 3
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The game has an intro

Just Lookin' 3
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The game has a spectator mode

Keymap 2
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Support custom key binding

Mechanic 8
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The game has some new/interesting game mechanics

Modder 3
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The game supports mods

Multi Platform 5
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The game runs on Windows and on Linux

Printing Proof 3
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The Manual and Documentation looks professionally made

Real time 8
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The game works in real time

Reconnect 10
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Players can reconnect to a running game after losing their connection

TED talk 10
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Give a great presentation

TILT 2
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Having a mechanism that punishes the use of cheat codes

Trailer 5
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The game has a trailer

Tutorial 5
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The game has an in-game tutorial

We can't think of everything 6
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Do something worthy of giving points for we haven't thought about

Website 5
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

The game has a proper website and domain

⬆️⬆️⬇️⬇️⬅️➡️⬅️➡️🅱️🅰️ 2
Available on Milestone 6 Available from Milestone 6 up to Milestone 6

Implement cheat codes (e.g. for resources or to instantly win a game)

Top

QA Concept

Top

Overview

Milestone 1 Milestone 2 Milestone 3 Milestone 4 Milestone 5 Milestone 6 Total
0 140 500 310 150 400 1500