Giter Club home page Giter Club logo

viergewinnt's Introduction

VierGewinnt

This application lets you play Connect4 (German: VierGewinnt) with your friends. You can either play a classic game with 6 by 7 field or customize the field to other sizes. Since this is a digital version of a game it allows for special modifications like adding bomb chips which you can enable optionally and they enable new tactics.

Game Field:

Game Config:

Lobby:

Download

Windows:

The application is implemented in Java and also distributed through runnable .jar files. You need a Java Runtime Environment (8 or higher) to run the following programs:

Setup

The game is implemented as a Server-Client application. Thus there need to be one server where the clients can connect to.

Server

  1. Run VierGewinntServer
  2. Press the button to start it (default port 1000 is used)
  3. Configure port forwarding (if you have players outside your local network):
    • Open the config page of your router
    • Setup portforwarding to the computer where the server runs (find out its local IP) with port 1000 (default)
    • Important:
      • Players outside the servers local network must use the routers public IP
      • Players inside the servers local network just use its local IP (usually something like 192.168...)

Client

  1. Start VierGewinntClient
  2. Click "Lobby" > "Verbinden"(Connect)
  3. Enter a nick, the IP of the server and the port (1000)
  4. Click "Verbinden"

How to play

  1. In the Lobby click "Spielen" and configure your game
  2. Click "Anfrage Senden" and wait for a reply of your teammate
  3. You are read to go!
  4. Controls:
    • Left/Right arrow -> Move chip left/right
    • Down arrow -> Insert
    • Up arrow -> Change between normal chip and bomb (if enabled)
    • Explosion: Double click on your bomb in the field when its your turn

Hint: The game chat is equal to the whipser chat

How to build and deploy

  1. Go to VierGewinnt directory
  2. Run: javac -d bin --module-path src $(find src -name "*.java")
  3. Copy: src/images (and src/Help.txt) to bin/images (and bin/Help.txt)
  4. Run: jlink --module-path "bin;$JAVA_HOME/jmods" --add-modules vierGewinnt --launcher VierGewinnt=vierGewinnt/vierGewinnt.StartClient --output dist --strip-debug --compress 2 --no-header-files --no-man-pages
  5. Run: jpackage -n VierGewinnt --type app-image -m vierGewinnt/vierGewinnt.StartClient --runtime-image dist

viergewinnt's People

Stargazers

 avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.