Font size:      

T1j: A Program to play Twixt

Deutsch: T1j

Twixt ist ein Brettspiel von Alex Randolph. Die Regeln und weitere Erläuterungen finden sich zum Beispiel bei Wikipedia.

T1j ist ein Programm, um TwixT gegen den Computer spielen zu können. Die erste Version wurde im Mai 2006 veröffentlicht. Im März 2007 wurde eine zweite Version fertiggestellt, siehe unten für Details.

TwixT ist ein Spiel, bei dem es für jeden Zug eine große Zahl möglicher Spielzüge gibt (zu Spielbeginn über 500). Dabei ist es schwierig, den 'Wert' einer Spielsituation zu beurteilen, um durch den Vergleich von Positionen einen guten Spielzug zu finden. Aus diesen Gründen gibt es bisher keine wirklich spielstarken Twixt-Programme, auch T1j wird von den meisten menschlichen Spielern geschlagen werden können.

T1j wurde in der Programmiersprache Java implementiert. Das bedeutet: Um T1j zu benutzen, muß eine Java Laufzeitumgebung (JRE) installiert sein. Diese ist für Linux, Windows und andere Betriebsysteme kostenlos im Netz erhältlich, z.B. hier: http://java.com/java/download/index.jsp. Ich empfehle, Java 1.4.2 oder neuer (z.B. Java 5) zu benutzen.
http://java.com/java/download/index.jsp

Das Programm kann in der Konsole mit
java -jar t1j.jar
gestartet werden. Das Programm wird in Deutsch laufen, wenn dies die im Betriebssystem eingestelle Sprache ist. Alternativ kann 'en' für die englische oder 'de' für die deutsche Sprache als Argument mitgegeben werden. Beispiel:
java -jar t1j.jar en

English: T1j

TwixT is a boardgame by Alex Randolph.

T1j is a program to play TwixT. The first version was published in May 2006, the second in March 2007.

T1j is developed using the programming language JAVA. This requires an installed Java Runtime Environment (JRE) on your computer. Unless you already have JRE 1.4 or newer on your system, download it from the net, e.g. http://java.com/java/download/index.jsp.
http://java.com/java/download/index.jsp

It can be started with the following input at the command line:
java -jar t1j.jar
With an optional parameter the language can be specified, use 'en' for english or 'de' for german. Without this parameter the program will run in english, unless the default language of your computer is german. Example:
java -jar t1j.jar en

Screenshots

Screenshot

Screenshot

Technical Details

Licence

T1j is licenced under the GPL.
Copyright 2006-2010 by Johannes Schwagereit. Email: mail(at)johannes-schwagereit.de

Features

  • Pie-rule
  • Internationalization - The program runs in English or German. (If you are interested to translate the used terms in any other language, please mail me.)
  • Computer plays either left-right or top-down
  • All links are placed automatically
  • End of game is recognized by program
  • Boardsize may be set to any value between 12x12 and 36x36
  • Non-quadratic boards are possible (Handicap-games)
  • The window is resizeable
  • optional diagonal 'area' lines
  • Save and Load games. The file-format is compatible to T1.
  • Undo and Redo of any number of moves

New Features in version 0.2

  • Playing strength of the computer can be set - either fixed time or fixed number of ply. (Recommendation: fixed time of five seconds per move)
  • Program is faster (to compare: version 0.1 always played with 5 ply) 
  • Four different colorsets can be selected (including black&white)
  • Parameter can be changed during match, e.g. change side of computer player
  • Varying first pin instead of fixed position for non-standard sized boards
  • Computer vs. computer is now possible
  • Plays only slightly stronger

Missing Features - not yet implemented

  • Link removal

Version History

May 2006
Version 0.1: Initial Version
March 2007:
Version 0.2

Development

For development, Java version "1.4.2_06" and newer versions were used. T1j was developed on Linux. T1j was tested and will run on Linux and Windows with either Java 1.4 or Java 5.

Developed with IntelliJ IDEA

Downloads

The executable (Version 0.2): t1j.jar (Use "Save target as..." if necessary.)

The sourcecode (Version 0.2): t1j-src.zip (Use "Save target as..." if necessary.)