filomba01 / IS23-AM07

Java Implementation of the game 'My Shelfie' as final project for the course of Software Engineering

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CranioCreations

Final project of Software Engineering Group AM07

My Shelfie

Table of Contents

  1. Overview
  2. Authors
  3. Development State
  4. Installation
  5. Running the game
  6. Rules
  7. Requirements
  8. License

Overview

This repository contains the digital java implementation of the game My Shelfie, published by Cranio Games. My Shelfie is a game where you and your friends have to set up your new library starting from a messy livingroom, following specifics rules.

My Shelfie background

Authors

Politecnico di Miliano - Prof. Margara Section - Group AM07

Development State

Functionality State
Model 🟒
Controller 🟒
Chat 🟒
Multi Game 🟒
Game Resiliance 🟒
RMI 🟒
TCP 🟒
CLI 🟒
GUI 🟒

Installation

In order to run My Shelfie, you can either clone this repository

git clone https://github.com/ilboglions/IS23-AM07.git

or just download the jar file

Running the game

The game consists of a single jar file named AM07-jar-with-dependencies.jar. This file holds both the Server, the CLI and the GUI applications, one of which can be selected when booting. To run the jar file, use the command

java -jar AM07-jar-with-dependencies.jar

from the command line in the jar's folder.

Based on the running configuration needed, some parameters should be passed during the launch of the application, if no one is given, the jar will start as a Server with default configuration, written in the file HostAndPort.json

Both server and client app can run on Unix systems (Linux, macOS) or Windows system (on Powershell, cmd and WSL).

Run as a Server

In order to correctly run the game as a server, you need to specify:

  • the --SERVER parameter
  • the host ip address 10.53.2.4
  • both the port for TCP and RMI 4567 1999

an example of a complete launch configuration is:

java -jar AM07-jar-with-dependencies.jar --SERVER 10.53.2.4 4567 1999

Run as a Client

The above described procedure is very similar for the client, you have to specify:

  • either --GUI or --CLI, based on which graphical interface you want to use
  • the type of connection, which can be --TCP --RMI
  • the server ip address 10.53.2.4
  • the port of the server where you want to connect, such as 4567

below an example of a complete launch configuration:

java -jar AM07-jar-with-dependencies.jar --GUI --TCP 10.53.2.4 4567

Useful tips

  • if you are playing using the CLI view, based on the dimension of the text in the terminal it could be necessary to resize the dimension of the terminal itself, just type on the keyboard CTRL + "-" in order to fix it. If you use MACOS, follow terminal > settings > profiles and set the font to a smaller dimension.

Rules

The rules of the game can be found on the deliverables directory.

Requirements

The game runs on jre version 19 or newer, if you need to update your jre just follow this link.

License

All rights to My Shelfie are owned by Cranio Creations, which provided the graphical resources to be used for educational purposes only.

About

Java Implementation of the game 'My Shelfie' as final project for the course of Software Engineering


Languages

Language:Java 99.7%Language:CSS 0.3%