settlers 0.2.1 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +6 -6
- data/bin/settlers +15 -3
- data/{resources/jsettlers-1.0.6 → data/settlers/jsettlers-1.1.09}/COPYING.txt +340 -340
- data/data/settlers/jsettlers-1.1.09/JSettlers.jar +0 -0
- data/{resources/jsettlers-1.0.6 → data/settlers/jsettlers-1.1.09}/README.txt +80 -45
- data/data/settlers/jsettlers-1.1.09/VERSIONS.txt +225 -0
- data/lib/settlers.rb +28 -3
- data/lib/settlers/address.rb +23 -0
- data/lib/settlers/application.rb +38 -103
- data/lib/settlers/bonjour.rb +35 -0
- data/lib/settlers/client.rb +11 -0
- data/lib/settlers/collector.rb +24 -0
- data/lib/settlers/java.rb +39 -0
- data/lib/settlers/observer.rb +7 -0
- data/lib/settlers/server.rb +25 -0
- data/lib/settlers/ui.rb +30 -0
- metadata +62 -33
- data/Rakefile +0 -10
- data/lib/settlers/jar.rb +0 -17
- data/lib/settlers/java_command.rb +0 -22
- data/resources/jsettlers-1.0.6/JSettlers.jar +0 -0
- data/resources/jsettlers-1.0.6/JSettlersServer.jar +0 -0
- data/resources/jsettlers-1.0.6/VERSIONS.txt +0 -50
- data/settlers.gemspec +0 -38
Binary file
|
@@ -11,16 +11,14 @@ opponents. Initially created as an AI research project.
|
|
11
11
|
The client may be run as a Java application, or as an applet when
|
12
12
|
accessed from a web site which also hosts a JSettlers server.
|
13
13
|
|
14
|
-
The server may be configured to use a
|
15
|
-
information. A client applet to create user accounts
|
16
|
-
provided.
|
14
|
+
The server may be configured to use a database to store account
|
15
|
+
information (details below). A client applet to create user accounts
|
16
|
+
is also provided.
|
17
17
|
|
18
18
|
JSettlers is an open-source project licensed under the GPL. The
|
19
|
-
software is
|
20
|
-
http://
|
21
|
-
|
22
|
-
Forums for discussions and community based support are provided at
|
23
|
-
SourceForge.
|
19
|
+
software is hosted at http://sourceforge.net/projects/jsettlers2
|
20
|
+
and at http://nand.net/jsettlers/devel/ . Questions, bugs, and
|
21
|
+
patches can be posted at the sourceforge page.
|
24
22
|
|
25
23
|
-- The JSettlers Development Team
|
26
24
|
|
@@ -54,18 +52,20 @@ Requirements
|
|
54
52
|
------------
|
55
53
|
|
56
54
|
To play JSettlers by connecting to a remote server you will need the
|
57
|
-
Java Runtime Version 1.
|
58
|
-
applet, use any browser which is Java enabled (
|
59
|
-
|
55
|
+
Java Runtime Version 1.4 or above (1.5 or later recommended). To connect as an
|
56
|
+
applet, use any browser which is Java enabled (using the browser plug-in).
|
57
|
+
|
58
|
+
To Play JSettlers locally you need the Java Runtime 1.4 or above.
|
59
|
+
JSettlers-full.jar can connect directly to any server over TCP/IP
|
60
60
|
|
61
|
-
To
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
61
|
+
To host a JSettlers server that provides a web applet for clients, you will
|
62
|
+
need an http server such as Apache's httpd, available from http://httpd.apache.org.
|
63
|
+
The JSettlers-full.jar file can also run locally as a server, without
|
64
|
+
needing a web server. The applet is considered more convenient,
|
65
|
+
because you know everyone will have the same version.
|
66
66
|
|
67
67
|
To build JSettlers from source, you will need Apache Ant, available from
|
68
|
-
http://ant.apache.org.
|
68
|
+
http://ant.apache.org, or an IDE such as Eclipse which understands Ant's format.
|
69
69
|
|
70
70
|
|
71
71
|
Setting up and testing
|
@@ -73,31 +73,30 @@ Setting up and testing
|
|
73
73
|
|
74
74
|
From the command line, make sure you are in the JSettlers distribution
|
75
75
|
directory which contains both JSettlers.jar, settlers-server.jar and the
|
76
|
-
"lib" directory.
|
77
|
-
|
76
|
+
"lib" directory. (If you have downloaded jsettlers-1.1.xx-full.tar.gz,
|
77
|
+
look in the src/target directory for these files.)
|
78
|
+
|
79
|
+
Start the server with the following command
|
80
|
+
(server requires Java 1.4 or higher):
|
78
81
|
|
79
82
|
java -jar JSettlersServer.jar 8880 10 dbUser dbPass
|
80
83
|
|
81
|
-
If MySQL is not installed and running (See "Database Setup"),
|
82
|
-
see a warning with the appropriate explanation:
|
84
|
+
If MySQL or another database is not installed and running (See "Database Setup"),
|
85
|
+
you will see a warning with the appropriate explanation:
|
83
86
|
|
84
87
|
Warning: failed to initialize database: ....
|
85
88
|
|
86
|
-
The server will function normally except
|
87
|
-
maintained.
|
89
|
+
The database is not required: Without it, the server will function normally except
|
90
|
+
that user accounts cannot be maintained. If you do use the database, you can give
|
91
|
+
users a nickname and password to use when they log in and play.
|
92
|
+
People without accounts can still connect, by leaving the password field blank,
|
93
|
+
as long as they aren't using a nickname which has a password in the database.
|
88
94
|
|
89
95
|
Now, from another command line window, start the player client with
|
90
96
|
the following command:
|
91
97
|
|
92
98
|
java -jar JSettlers.jar localhost 8880
|
93
99
|
|
94
|
-
If you are using Java 1.1 you will need to unpack the Java archive
|
95
|
-
(Java could not run directly from jar files until version 1.2). The
|
96
|
-
commands to unpack, then start the client are:
|
97
|
-
|
98
|
-
jar -xf JSettlers.jar
|
99
|
-
java soc.client.SOCPlayerClient localhost 8880
|
100
|
-
|
101
100
|
In the player client window, enter "debug" in the Nickname field and
|
102
101
|
create a new game.
|
103
102
|
|
@@ -112,12 +111,13 @@ something like the following in the chat display:
|
|
112
111
|
* > Games finished: 0
|
113
112
|
* > Total Memory: 2031616
|
114
113
|
* > Free Memory: 1524112
|
114
|
+
* > Version: 1100 (1.1.00) build JM20080808
|
115
115
|
|
116
116
|
If you do not, you might not have entered your nickname correctly. It
|
117
117
|
must be "debug" in order to use the administrative commands.
|
118
118
|
|
119
119
|
Now you can add some robot players. Enter the following commands in
|
120
|
-
separate command line windows:
|
120
|
+
separate command line windows: (See below for how to automate this.)
|
121
121
|
|
122
122
|
java -cp JSettlersServer.jar soc.robot.SOCRobotClient localhost 8880 robot1 passwd
|
123
123
|
|
@@ -129,8 +129,9 @@ Now click on the "Sit Here" button and press "Start Game". The robot
|
|
129
129
|
players should automatically join the game and start playing.
|
130
130
|
|
131
131
|
If you want other people to access your server, tell them your server
|
132
|
-
IP address and port number (in this case 8880). They
|
133
|
-
|
132
|
+
IP address and port number (in this case 8880). They can run the
|
133
|
+
JSettlers.jar file by itself, and it will bring up a window to enter your IP
|
134
|
+
and port number. Or, they can enter the following command:
|
134
135
|
|
135
136
|
java -jar JSettlers.jar <host> <port_number>
|
136
137
|
|
@@ -140,6 +141,14 @@ If you would like to maintain accounts for your JSettlers server,
|
|
140
141
|
start the database prior to starting the JSettlers Server. See the
|
141
142
|
directions in "Database Setup".
|
142
143
|
|
144
|
+
If you would like robots to automatically start when your server starts,
|
145
|
+
without the need for a separate command line, add the "startrobots" property
|
146
|
+
to your jsettlers java command line, BEFORE the port number:
|
147
|
+
|
148
|
+
java -jar JSettlersServer.jar -Djsettlers.startrobots=3 8880 10 dbUser dbPass
|
149
|
+
|
150
|
+
This will start 3 robots on the server.
|
151
|
+
|
143
152
|
|
144
153
|
Shutting down the server
|
145
154
|
------------------------
|
@@ -151,16 +160,18 @@ disconnected.
|
|
151
160
|
|
152
161
|
Hosting a JSettlers server
|
153
162
|
--------------------------
|
154
|
-
- Start MySQL server (optional)
|
163
|
+
- Start MySQL or PostgreSQL server (optional)
|
155
164
|
- Start JSettlers Server
|
156
165
|
- Start http server (optional)
|
157
166
|
- Copy JSettlers.jar jar and "web/*.html" server directory (optional)
|
158
|
-
- Extract JSettlers.jar to allow Java 1.1 clients (optional)
|
159
167
|
- Copy "docs/users" to the server directory (optional)
|
160
168
|
|
161
|
-
To host a JSettlers server, start the server as described in "
|
169
|
+
To host a JSettlers server, start the server as described in "Setting up
|
162
170
|
and Testing". To maintain user accounts, be sure to start the database
|
163
|
-
first.
|
171
|
+
first. (If you use a database, you can give users an account; everyone else
|
172
|
+
can still log in and play, by leaving the password field blank.)
|
173
|
+
|
174
|
+
Remote users can simply start their clients as described there,
|
164
175
|
and specify your server as host.
|
165
176
|
|
166
177
|
To provide a web page from which users can run the applet, you will
|
@@ -203,9 +214,29 @@ Database Setup
|
|
203
214
|
--------------
|
204
215
|
|
205
216
|
If you want to maintain user accounts, you will need to set up a MySQL
|
206
|
-
database. This will eliminate the "Problem connecting to database"
|
217
|
+
or PostgreSQL database. This will eliminate the "Problem connecting to database"
|
207
218
|
errors from the server. We assume you have installed it correctly.
|
208
219
|
|
220
|
+
The default name for the database is "socdata". To use another name,
|
221
|
+
you'll need to specify it as a JDBC URL on the command line, such as:
|
222
|
+
-Djsettlers.db.url=jdbc:mysql://localhost/socdata
|
223
|
+
or
|
224
|
+
-Djsettlers.db.url=jdbc:postgresql://localhost/socdata
|
225
|
+
or
|
226
|
+
-Djsettlers.db.url=jdbc:sqlite:jsettlers.sqlite
|
227
|
+
|
228
|
+
The default JDBC driver is com.mysql.jdbc.Driver. PostgreSQL is also
|
229
|
+
recognized. To use PostgreSQL, use a postgresql url like the one shown above,
|
230
|
+
or specify the driver on the SOCServer command line:
|
231
|
+
-Djsettlers.db.driver=org.postgresql.Driver
|
232
|
+
|
233
|
+
Depending on your computer's setup, you may need to point JSettlers at the
|
234
|
+
appropriate JDBC drivers, by placing them in your java classpath.
|
235
|
+
Your database system's JDBC drivers can be downloaded at these locations:
|
236
|
+
MySQL: http://www.mysql.com/products/connector/
|
237
|
+
PostgreSQL: http://jdbc.postgresql.org/download.html
|
238
|
+
SQLite: http://www.zentus.com/sqlitejdbc/
|
239
|
+
|
209
240
|
Run the following commands to create the database and configure its
|
210
241
|
tables.
|
211
242
|
|
@@ -217,7 +248,7 @@ CREATE TABLE users (nickname VARCHAR(20), host VARCHAR(50), password VARCHAR(20)
|
|
217
248
|
|
218
249
|
CREATE TABLE logins (nickname VARCHAR(20), host VARCHAR(50), lastlogin DATE);
|
219
250
|
|
220
|
-
CREATE TABLE games (gamename VARCHAR(20), player1 VARCHAR(20), player2 VARCHAR(20), player3 VARCHAR(20), player4 VARCHAR(20), score1
|
251
|
+
CREATE TABLE games (gamename VARCHAR(20), player1 VARCHAR(20), player2 VARCHAR(20), player3 VARCHAR(20), player4 VARCHAR(20), score1 SMALLINT, score2 SMALLINT, score3 SMALLINT, score4 SMALLINT, starttime TIMESTAMP);
|
221
252
|
|
222
253
|
CREATE TABLE robotparams (robotname VARCHAR(20), maxgamelength INT, maxeta INT, etabonusfactor FLOAT, adversarialfactor FLOAT, leaderadversarialfactor FLOAT, devcardmultiplier FLOAT, threatmultiplier FLOAT, strategytype INT, starttime TIMESTAMP, endtime TIMESTAMP, gameswon INT, gameslost INT, tradeFlag BOOL);
|
223
254
|
|
@@ -227,19 +258,23 @@ following command:
|
|
227
258
|
|
228
259
|
java -jar JSettlers.jar soc.client.SOCAccountClient localhost 8880
|
229
260
|
|
261
|
+
Users with accounts must type their password to log into the server to play.
|
262
|
+
People without accounts can still connect, by leaving the password field blank,
|
263
|
+
as long as they aren't using a nickname which has a password in the database.
|
264
|
+
|
230
265
|
|
231
266
|
Development and Compiling
|
232
267
|
-------------------------
|
233
268
|
|
234
|
-
Source code for JSettlers is available via
|
235
|
-
|
236
|
-
http://sourceforge.net/projects/
|
237
|
-
against
|
269
|
+
Source code for JSettlers is available via tarballs and CVS.
|
270
|
+
See the project website at http://nand.net/jsettlers/devel/
|
271
|
+
or http://sourceforge.net/projects/jsettlers2/
|
272
|
+
for details. Patches against the latest version may be submitted there.
|
238
273
|
|
239
274
|
Before building, make sure you have at least version 1.4 of the Java
|
240
275
|
development kit installed. If you simply want to run the client and
|
241
|
-
server, you only need the Java. If you wish to maintain a user
|
242
|
-
database for your server, you need MySQL installed, and configured.
|
276
|
+
server, you only need the Java Runtime (JRE). If you wish to maintain a user
|
277
|
+
database for your server, you need MySQL or PostgreSQL installed, and configured.
|
243
278
|
|
244
279
|
This package was designed to use the ANT tool available from
|
245
280
|
http://ant.apache.org tools. We assume you have installed it
|
@@ -0,0 +1,225 @@
|
|
1
|
+
[ The list of the different public versions of JSettlers ]
|
2
|
+
|
3
|
+
Unless otherwise indicated, versions are hosted at http://nand.net/jsettlers/devel/
|
4
|
+
and (recent versions) at http://sourceforge.net/projects/jsettlers2/files/
|
5
|
+
|
6
|
+
> 1.1.09 (build 20100417)
|
7
|
+
- 4-player board: crisper graphics (images from 6-player board)
|
8
|
+
- Practice games don't expire (Rowan H idea)
|
9
|
+
- Show rounds remaining for "roll no 7s during first n turns" (Rowan H idea)
|
10
|
+
- When moving robber and choosing a victim, popup shows their # VPs
|
11
|
+
- 6-player board: Always allow to request special build, even if no resources.
|
12
|
+
Also allowed at start of own turn, only if not rolled or played card yet,
|
13
|
+
and not when you are the first player taking your first turn.
|
14
|
+
- 6-player: During Special Building Phase, a player can ask to Special Build after
|
15
|
+
the phase has begun, even if this means we temporarily go
|
16
|
+
backwards in turn order. (Normal turn order resumes at the
|
17
|
+
end of the SBP.) The board game does not allow this out-of-order building.
|
18
|
+
- 6-player robots: Slow down a little: Pause 75% of 4-player's pause duration, not 50%
|
19
|
+
- At end of game, hilight winner with yellow arrow
|
20
|
+
- At end of game, show number of rounds, along with time elapsed and your resources rolled
|
21
|
+
- Game options: Change of wording in minimum-version warning: ("friendly" format)
|
22
|
+
from: Client version 1107 or higher is required for these game options.
|
23
|
+
to : Client version 1.1.07 or newer is required for these game options.
|
24
|
+
- Double-clicking your face icon, or many rapid clicks, brings up the Face Chooser
|
25
|
+
- Allow 3rd-party Robot AIs, via new rbclass param in IMAROBOT message, SOCClientData.isBuiltInRobot
|
26
|
+
Print robot type on connect (built-in, or rbclass name)
|
27
|
+
- Fix: Ask 2nd practice game options, when 1st is over but its window still showing
|
28
|
+
- Fix: robots: Handle CANCELBUILDREQUEST cleanly during states PLAY1 or SPECIAL_BUILDING
|
29
|
+
- Fix: For game's 1st client, set game.clientVersionLowest (was always 0 before now)
|
30
|
+
- 6-player window: Before expanding chat area when mouse enters it,
|
31
|
+
wait 200 ms (not 100 ms) in case mouse is just passing through.
|
32
|
+
- Database: Hints on setup and usage of other db types in README.txt
|
33
|
+
- Database: default jdbc driver changed to com.mysql.jdbc.Driver,
|
34
|
+
allow other db types via java properties (see README.txt)
|
35
|
+
- Database: troubleshooting: print error message details when the driver is
|
36
|
+
available, but the database couldn't be accessed or loaded.
|
37
|
+
- When running local server: Main panel: Show version, buildnum in tooltip
|
38
|
+
- Command line: Error if dashed arguments appear after port/maxconns/db params
|
39
|
+
- Command line: Allow -Djsettlers.option=value syntax (mchenryc)
|
40
|
+
- Command line: Auto-start robots when the server starts, with this parameter:
|
41
|
+
-Djsettlers.startrobots=7
|
42
|
+
- Debug assist: SOCBoardLayout2 prints array contents
|
43
|
+
- Debug assist: Connection, LocalStringConnection +toString()
|
44
|
+
- README.developer: Coding Style section
|
45
|
+
|
46
|
+
> 1.1.08 (build 20100112)
|
47
|
+
- 6-player board, with Special Building Phase rule
|
48
|
+
- Can now sometimes reconnect after connection to server is lost,
|
49
|
+
when message "A player with that nickname is already logged in" appears.
|
50
|
+
- Smaller, cleaner building panel
|
51
|
+
- Rotated-board mode, to make it easier to fit a larger board
|
52
|
+
- Re-word counter offer text to: Give Them / You Get
|
53
|
+
- Cleaner scaled graphics: Draw hex dice-number circles on hex, instead of GIFs.
|
54
|
+
- Chat text prompt ("type here to chat") cleared when clicked (D Campbell idea)
|
55
|
+
- Fix button redraw for Discard, Year of Plenty popups on OSX
|
56
|
+
- Fix new-game options bg color on OSX Firefox 3.5+
|
57
|
+
- BoardPanel faster redraw: cache image of board without pieces
|
58
|
+
- BoardPanel javadocs explain nodeMap and initNodeMapAux
|
59
|
+
- SOCRobotBrain refactor some message-handlers out of run() (C McNeil idea)
|
60
|
+
- Old version history (pre-sourceforge): Added file src/docs/old-updates-rsthomas.html found on web at http://jrh-xp.byu.edu/settlers/updates.htm
|
61
|
+
|
62
|
+
> 1.1.07 (build 20091031)
|
63
|
+
- Per-game options framework, including these options:
|
64
|
+
- PL Maximum # players (2-4)
|
65
|
+
- RD Robber can't return to the desert
|
66
|
+
- N7 Roll no 7s during first # rounds
|
67
|
+
- BC Break up clumps of # or more same-type ports/hexes
|
68
|
+
- NT No trading allowed
|
69
|
+
- Re-word counter offer text
|
70
|
+
- Hide trade offer after rejecting counteroffer (John F idea)
|
71
|
+
- Allow debug commands in practice games
|
72
|
+
- New applet parameter "nickname" for use with dynamic html (Rick Jones idea)
|
73
|
+
- Framework for parsing "-" / "--" options at server commandline
|
74
|
+
- Refactor per-turn resets from many places to new game.updateAtTurn()
|
75
|
+
- GameList kept at server/client
|
76
|
+
- Bugfix: Could sit down at 2 positions due to network lag
|
77
|
+
- Rescaled board hex graphics now fall back to polygons if problem occurs
|
78
|
+
- Removed unused hex graphics from soc/client/images (clay0-5.gif, misc0-5.gif, ore0-5, sheep0-5, wheat0-5, wood0-5)
|
79
|
+
- Fewer disconnect-reconnect debug messages from robots during idle hours
|
80
|
+
- Don't cover board with 'choose player' popup (Rowan H idea)
|
81
|
+
- AskDialog supports multiple lines with "\n"
|
82
|
+
|
83
|
+
> 1.1.06 (build 2009-06-01)
|
84
|
+
- Based on 1.1.04's code
|
85
|
+
- Monopoly reports (privately) number of resources stolen to each victim
|
86
|
+
- Reset practice game, at end of game: New randomly-selected robots, instead of same robots each time
|
87
|
+
- STATUSMESSAGE can now carry an integer status value
|
88
|
+
- Track and understand client version starting from connect time, not just from joingame time.
|
89
|
+
- Can deny entry to individual games based on client's version (ex. client too old to understand a recent game feature, like 6 players)
|
90
|
+
- Fewer debug messages from robots during idle hours
|
91
|
+
- Many javadocs added
|
92
|
+
- Bugfix: Hangs on mac osx 10.5 after a few minutes (SnippingTextArea)
|
93
|
+
- Bugfix: After disconnect/rejoin, trade offer panel overlays your controls
|
94
|
+
- Bugfix: "Start a local server" ignored port-number textfield, was always default port
|
95
|
+
- Bugfix: harmless NullPointerException in SOCBoardPanel.setHoverText for getFontMetrics
|
96
|
+
|
97
|
+
> 1.1.05 (backed out)
|
98
|
+
JSettlers 1.1.05 had been under development (build 2008-09-13) but its direction is being re-considered.
|
99
|
+
Further development is based on 1.1.04.
|
100
|
+
- Use Log4j 1.2, vs previous homegrown soc.debug/disableDebug
|
101
|
+
|
102
|
+
> 1.1.04 (build 2008-09-06)
|
103
|
+
- Bugfix: Cancelling 2nd initial settlement, other players lost resources (SOCPlayer)
|
104
|
+
- Bugfix: Don't disable "play card" button after buying or playing a card (SOCHandPanel)
|
105
|
+
- Bugfix: Sometimes, "hovering" road or settlement wouldn't show during initial placement (SOCBoardPanel)
|
106
|
+
- Give player's win/loss count at end of game, unless first game (new class SOCClientData)
|
107
|
+
- Add StringConnection.appData, to support SOCClientData
|
108
|
+
- Javadoc adds/updates
|
109
|
+
|
110
|
+
> 1.1.03 (build 2008-08-26)
|
111
|
+
- Reset board: Bugfix: Practice games server version-check
|
112
|
+
- Don't show hovering road/settlement/city unless player has the resources
|
113
|
+
- "Play card" button: Disable after playing a card; Enable only at start of turn, not after buying a card
|
114
|
+
- Bugfix: At end of game, client sometimes incorrectly showed player 0 (Blue) as winner
|
115
|
+
- Javadocs clarify SOCPlayerClient local TCP vs practice server
|
116
|
+
- Add minor items to TODO in README.developer
|
117
|
+
|
118
|
+
> 1.1.02 (build 2008-08-17) http://nand.net/jsettlers/devel/
|
119
|
+
- Reset board: If human leaves game before reset, lock their seat against robots
|
120
|
+
- Bugfix: Robot disconnect/reconnect version reporting
|
121
|
+
- Add minor items to TODO in README.developer
|
122
|
+
|
123
|
+
> 1.1.01 (build 2008-08-12) http://nand.net/jsettlers/devel/
|
124
|
+
|
125
|
+
- Bugfix: If player loses connection while voting for board reset, the vote never completes
|
126
|
+
- Bugfix: Reset vote message format (from recent refactoring)
|
127
|
+
- Version number dynamic from properties file, not hardcoded in soc.util.Version
|
128
|
+
- Utility method SOCMessage.getClassNameShort for cleaner debug-output in template classes' toString
|
129
|
+
|
130
|
+
> 1.1.00 (build 2008-08-09) http://nand.net/jsettlers/devel/
|
131
|
+
|
132
|
+
- Development at new site, sourceforge project appeared abandoned in 2005
|
133
|
+
- Much more visually responsive to game state
|
134
|
+
- User-friendly
|
135
|
+
Can right-click on board to build, right-click ports or resource squares to trade [sf patch 1905791]
|
136
|
+
Can right-click face to choose a new face [sf patch 1860920]
|
137
|
+
Popup dialog buttons wrap if window too narrow
|
138
|
+
Robber doesn't disappear when must be moved, it just "ghosts" [sf patch 1812912]
|
139
|
+
Other minor improvements
|
140
|
+
- Local "practice-game" mode, if network connection or server is unavailable
|
141
|
+
- Play with 2-4 players, no longer requires 4
|
142
|
+
- Larger graphics on board, resizeable for higher-resolution screens [sf patch 1929452, based on images and code of rbrooks9's sf patch 1398331]
|
143
|
+
- Ability to reset board, during or after game [sf feature req. 1110481]
|
144
|
+
- Can cancel and re-place initial settlement, if you haven't yet placed the road [sf patch 1824441]
|
145
|
+
- More robust handling if client's connection to server is lost, even if current player
|
146
|
+
- Automatic dice roll after 5 seconds, if you have no playable card [sf patch 1812254]
|
147
|
+
- At end of game, show hidden VP cards for all players [sf patch 1812497]
|
148
|
+
- At end of game, give game duration and total connection time
|
149
|
+
- Announce when longest road/largest army is stolen
|
150
|
+
- Road-building allowed with 1 road [sf patch 1905080]
|
151
|
+
- Can win only on your own turn; if not your turn, must wait
|
152
|
+
- Less clutter in scrolling message area
|
153
|
+
- Confirm quit before closing window
|
154
|
+
- Show pieces when rejoining after lost connection
|
155
|
+
- Attempt to end turn, if current player leaves the game
|
156
|
+
- Client,server versioning; also add BUILDNUM property
|
157
|
+
- Can double-click jar for local server hosting (or run w. no arguments); player GUI will ask for IP and port#
|
158
|
+
- Robot bugfix, now will re-try if makes a bad piece placement
|
159
|
+
- More advance warning when game will soon expire
|
160
|
+
- Hilight who won when game is over
|
161
|
+
- Reminder to place 2 roads with road-building card
|
162
|
+
- Reminder to only play 1 card per turn
|
163
|
+
- Reminder when VP cards are played
|
164
|
+
- Trade offer's checkboxes track current player
|
165
|
+
- New graphics: images/robot1.gif; Removed obsolete: images/arrowL.gif, arrowR.gif
|
166
|
+
- Other sourceforge patches applied:
|
167
|
+
1816668 jdmonin AWT debug help
|
168
|
+
1816605 jdmonin Patch for #997263 cannot place road during game start
|
169
|
+
1816581 jdmonin Fix server treater startup race
|
170
|
+
1812257 jdmonin Debug help, minor comments
|
171
|
+
N/A sfhonza (John Vicherek) "Swinging" number of resources, http://john.vicherek.com/jsettlers-1.0.6.swing_resources.patch
|
172
|
+
1088775 drichardson (Douglas Ryan Richardson) [1039250] Auto-rejecting impossible offers; Make accept button invisible when user cannot accept offer
|
173
|
+
|
174
|
+
> 1.0.6 (build 2004-11-17) http://sourceforge.net/projects/jsettlers
|
175
|
+
|
176
|
+
- Fixed the same PORT property error in the Account client
|
177
|
+
- Fixed bug which could allow modified clients to invoke admin
|
178
|
+
commands (*STOP*, *KILLCHANNEL*, etc) (Lasse Vartiainen)
|
179
|
+
- Fixed 920375, 1022157: mysql-connector-3.x fails: version 2.x works
|
180
|
+
(Mezryn)
|
181
|
+
- Fixed 1060651: Bots crash if database backend is used (Jack Twilley)
|
182
|
+
- Moved more SQL error handling and reconnecting from SOCServer to
|
183
|
+
SOCDBHelper correcting potential errors like 1060651
|
184
|
+
|
185
|
+
> 1.0.5 (build 2004-06-12) http://sourceforge.net/projects/jsettlers
|
186
|
+
|
187
|
+
- Fixed an error introduced into the applet initialization which kept
|
188
|
+
the PORT property from being read properly
|
189
|
+
|
190
|
+
> 1.0.4 (build 2004-06-10) http://sourceforge.net/projects/jsettlers
|
191
|
+
|
192
|
+
- build.xml file added for Ant builds
|
193
|
+
- soc.util.Version class added so both build files and source code get
|
194
|
+
version and copyright info from build.xml. Clients and server updated
|
195
|
+
- Build process creates two jar files: one for client, one for server
|
196
|
+
- README updated for jar file invocation, with additional sections for
|
197
|
+
intro, requirements, hosting a server, and development
|
198
|
+
- Fix for inconsistent game state when players leave a game.
|
199
|
+
- Divider in chat window cannot be moved off-screen
|
200
|
+
- Text of game chat now correctly scrolls to bottom of text.
|
201
|
+
- Rewrite of much of the display code to address continuing display
|
202
|
+
issues. Methods which directly manipulate GUI components can cause
|
203
|
+
race conditions, and are now never called from main networking
|
204
|
+
thread.
|
205
|
+
- Removed calls to deprecated methods
|
206
|
+
- Images can now be loaded from files (on server or not) or from
|
207
|
+
within jar.
|
208
|
+
|
209
|
+
> 1.0.3 (build 2004-03-29)
|
210
|
+
|
211
|
+
- Continuing to fix the display bug in the SOCPlayerClient
|
212
|
+
|
213
|
+
> 1.0.2 (build 2004-03-26)
|
214
|
+
|
215
|
+
- Fixed display bug (again) in the SOCPlayerClient when run as a stand
|
216
|
+
alone.
|
217
|
+
|
218
|
+
> 1.0 (build 2004-03-14)
|
219
|
+
|
220
|
+
- First release. See the README file for how to setup a server and
|
221
|
+
robot clients.
|
222
|
+
|
223
|
+
> For older version information:
|
224
|
+
|
225
|
+
- see src/docs/old-updates-rsthomas.html for 5/3/00 through 03/15/04.
|