UNO over TCP/IP
Uno over TCP/IP, UOTI for short, is an open source program to
play
the famous Uno card game over TCP/IP based networks or/and against the
computer. The
program has a console which can also be used to chat with
the people that are connected to the server. The user can use selfmade
card images, which are used to draw the cards on the screen. The
card images can be in the tiff or gif file format. If no card images
are found, the program draws the cards itself. Please note that "drag
and drop" is not implemented! To make a move, just click onto a card.
SYSTEM REQUIREMENTS:
Java 2 Runtime Environment 1.4 or higher.
800x600 screen resolution or higher
A network interface card supporting TCP/IP
Features:
- Multi-threaded: run as many servers and clients within one instance of Uno as you like
- High performance: server runs a thread for each client
- Customizable: use your own card images to customize the appearance of Uno
- Intergrated chat module: chat with the other players, no extra program is needed
- Multi-platform support: run Uno under your prefered platform. It runs under Linux, Windows, and Mac OS alike
- Coming soon: multi-GUI support: change the GUI at runtime
- Coming soon: computer player: no human opponents ready? Play against the computer itself!
Available commands on the prompt:
sts <port number> == start server using port number <port number>
stc <IP> <port number> == start client connected to <IP> and <port number>
cls <port number> == close server using port number <port number>
clc <port number> == close client connected to <port number>
closec == close all open connections
closec == close all open connections
ng [port number] == start new game (server only)
emchk/dmchk == enable/disable move checker (server only)
myIP == show current IP of this computer
setName <name> == set a name for the player
quit == quits the program
Rules:
The rules of the game as implemented here differ from the standard in the following ways:
- Wild Draw Four can be played without any restrictions
- Wild Draw Four and Draw Two can be played followed directly by each other. The number of cards a player
has to draw is accumulated.
These rules can be disabled in the options window coming in version 0.9.1. If you want to play according
to other rules, you can do so by disabling the move checker.
A sample session:
Start the program by typing 'java -jar uno09rc.jar'
on
the OS console. The program will show you the following prompt:
UNO over TCP/IP
V0.9 RC
(c) 2005 - 2008 by Adrian Posor
This program is free software! Free as in speech, not price.
The command line interpreter with integrated chat module:
Drawing card images myself .......................................................
ready>
Type 'sts 5000' to start a server
listening on
port 5000 for incoming connection requests. A window like to following
one will show up:
Type 'stc 127.0.0.1 5000' on the same
prompt to start a client connecting to 127.0.0.1 on port 5000. Click on a card to to
make your move.
Download:
Version 0.9 RC: uno09rc.jar (includes the source code)
Still to do:
- Add an options menu to the move checker to provide the
possibility to select / deselect rules of the game.
- Implement a computer player so that one can play against the computer
- Add support for multiple GUIs, changeable at runtime
- Write an alternative GUI that supports double buffering for smooth animations.
- Create cool animations.
Known Bugs:
- Race Condition: If more than two players are involved in a game, the server
may hang while dealing the cards.
- If a pending player closes the connection, the whole game is aborted. A pending player
is a player who joined the server while a game had already been in progress.
- If a server and a client are running in the same instance of
UOTI,
then the cards in the player's hand of the server are not taken from
the player's hand. The game will work properly if you start a new game.
- With JRE 6 under Linux, the font color of the menu is white instead of black. This problem does not exist
with JRE 1.4.
Please report bugs to: bugreport(at)posor.hostingkunde.de
Visitor counter:
since July 2007