From 127ca9f3e27562f388f09912c2c1852d3ec40343 Mon Sep 17 00:00:00 2001 From: official-Cromatin Date: Mon, 2 Mar 2026 09:29:42 +0100 Subject: [PATCH] Add: README to match and represent project --- README.md | 94 +++++++++++++++++++++++++++++++++++--- documents/images/logo.png | Bin 0 -> 42885 bytes 2 files changed, 87 insertions(+), 7 deletions(-) create mode 100644 documents/images/logo.png diff --git a/README.md b/README.md index 515c7a0..6d2a5e7 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,89 @@ -# README -This is a readme file. It typically includes some information about your project. -For more information about readmes, you can either [read a guide](https://github.com/18F/open-source-guide/blob/18f-pages/pages/making-readmes-readable.md) or have a look at the readmes of popular open-source projects such as [Swift by Apple](https://github.com/apple/swift) or [Tensorflow](https://github.com/tensorflow/tensorflow). +

+ Game Logo +

-Readme files are typically formatted in Markdown. -However, there are platform-specific flavors, so for this project, you can make full use of the [Gitlab markdown syntax](https://docs.gitlab.com/ee/user/markdown.html), for example when talking about a :bug: (bug) or if your code is slow like a :snail:. -You can also tag people using @username and reference issues using '#1', where 1 is the issue number. For more features, consult the linked Gitlab syntax guide. +

Syntax Syndicate

+

+ Jona • Mathis • Julian • Lars +

-If you don't like reading documentation, [here's a cheatsheet](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet). + +## Table of Contents + +- [About the Project](#about-the-project) +- [Repository Structure](#repository-structure) +- [Prerequisites](#prerequisites) +- [Development Timeline](#development-timeline) + + +## About the Project + +As part of the Programming Project course (CS108) for the semester FS26 at the University of Basel, we are developing a computer game implementation of the popular card game **Poker**. + +The project's focus lies in **networking** and distributed systems design. +Key aspect of our implementation being the development and integration of a **custom protocol** specifically designed for **client-server communication**. +This protocol handles game state synchronization, player actions, lobby and global chat, and real-time updates across the network. + + +## Repository Structure + +``` +├── src/ # Source code directory +│ ├── main/ # Application code +│ └── test/ # Unit tests +├── documents/ # Project resources and documentation +│ ├── images/ # Images for README and documentation +│ ├── docs # Documentation +│ ├── milestones/ # Milestone deliverables (6 milestones) +│ └── (Other resources) # Additional project materials +└── outreach/ # Public-facing content and marketing materials +``` + + +## Prerequisites +- Java Development Kit (JDK) 25 +- Gradle (included via Gradle Wrapper) + + +## Development Timeline + +This project spans six milestones throughout the FS26 semester, with each milestone representing a major phase in development: + +### **[MS-1](https://p9.dmi.unibas.ch/cs108/2026/#Milestone%201): Foundation & Design** +- Game concept and rules presentation +- Networking architecture overview +- Project mockups and requirements analysis +- Detailed project plan and team organization + +### **[MS-2](https://p9.dmi.unibas.ch/cs108/2026/#Milestone%202): Networking & Server Implementation** +- Human-readable custom protocol definition and implementation +- Server implementation with multi-client support +- Client-server chat functionality +- Protocol documentation and validation +- JavaDoc code documentation and QA concepts + +### **[MS-3](https://p9.dmi.unibas.ch/cs108/2026/#Milestone%203): Knowledge Checkpoints** +- Assessment of individual technical understanding through evaluation + +### **[MS-4](https://p9.dmi.unibas.ch/cs108/2026/#Milestone%204): Game Logic & Working Prototype** +- Core game logic implementation +- Playable game demo (terminal or GUI) +- Command-line argument parsing +- Multiple lobby support with internal chats +- Whisper/private messaging functionality +- Build automation and executable JAR + +### **[MS-5](https://p9.dmi.unibas.ch/cs108/2026/#Milestone%205): Polish & Complete User Interface** +- Full GUI implementation with JavaFX +- Complete game playability through UI +- Persistent high score list +- Comprehensive unit tests +- Game rule enforcement + +### **[MS-6](https://p9.dmi.unibas.ch/cs108/2026/#Milestone%206): Final Delivery & Public Presentation** +- *Bug-free* final demo +- Complete GUI with all functionality +- Outreach materials and project documentation +- Game manual and usage instructions +- Team logo and promotional materials +- QA reports and lessons learned diff --git a/documents/images/logo.png b/documents/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..8d9797dc7e4266c7ed900e4da33e8f153dcf048d GIT binary patch literal 42885 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 bJ^$Hz`O2jm>ldd2yA=$cu6{1-oD!M<)v^tx literal 0 HcmV?d00001