Skip to content

Commit 9745a25

Browse files
Prepare the release package for 17.0.0 (#82)
* Modify the default value of server parameters for the version 17.0.0. * Update the version number string. Add short descriptions in NEWS. * Add cmake related files to the distribution target of automake. * Update NEWS and README.md
1 parent 1ee159f commit 9745a25

File tree

14 files changed

+162
-53
lines changed

14 files changed

+162
-53
lines changed

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
cmake_minimum_required(VERSION 3.5.1)
22

3-
project(RCSSServer VERSION 16.0.1)
3+
project(RCSSServer VERSION 17.0.0)
44

55
set(CMAKE_CXX_STANDARD 14)
66
set(CMAKE_CXX_STANDARD_REQUIRED ON)

ChangeLog

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
2022-04-02 Hidehisa Akiyama <[email protected]>
2+
3+
* CMakeLists.txt:
4+
* NEWS:
5+
* configure.ac:
6+
- update a major version number. Official release 17.0.0
7+
- improve the dash model and the catch model
8+
- support a JSON-based monitor protocol.
9+
110
2021-07-20 Hidehisa Akiyama <[email protected]>
211

312
* NEWS:

Makefile.am

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@ SUBDIRS = \
1010
.
1111

1212
EXTRA_DIST = \
13-
README.md
13+
README.md \
14+
CMakeLists.txt \
15+
config.h.cmake
1416

1517
CLEANFILES = \
1618
*~ \

NEWS

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,41 @@
1+
[17.0.0]
2+
* New parameters:
3+
- server::max_catch_angle (default value: 90.0)
4+
- server::min_catch_angle (default value: -90.0)
5+
6+
* Changed parameters:
7+
- server::min_dash_power (-100.0 -> 0)
8+
- server::back_dash_rate (0.6 -> 0.7)
9+
10+
* Improvement of the catch model. The direction of goalie's catch
11+
command has been restricted within [server::min_catch_angle,
12+
server::max_catch_angle]. The default values are [-90.0, 90.0].
13+
This setting means goalies cannot catch the ball behind them.
14+
15+
* Improvement of the dash model. server::min_dash_power is changed
16+
from -100.0 to 0.0. This means players cannot use the negative
17+
power in order for them to accelerate backward. If players would
18+
like to accelerate backward, they need to use the omnidirectional
19+
dash. In connection with the change of the dash power,
20+
server::back_dash_rate has been changed.
21+
22+
* Support a JSON-based monitor protocol. If the monitor tries to
23+
connect to the server by the client version 5, the received
24+
messages will be JSON. The format of the game log file (.rcg) has
25+
also followed the monitor protocol. If the value of
26+
server::game_log_version is 6, the content of the recorded game
27+
log is a JSON array except for the header line.
28+
29+
* The installation destination of the library header files has been
30+
unified under PREFIX/include/rcss. The location of the clang
31+
parser library has been moved to prefix/include/rcss/clang.
32+
33+
* Support CMake. Thanks to gikari for providing his great
34+
contribution on GitHub.
35+
36+
* Support C++11/14. Some environment-dependent implementations have
37+
been replaced by the C++ standard library.
38+
139
[16.0.1]
240
* Fix a bug of the length of half time caused by slow_down_factor.
341

README.md

Lines changed: 90 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -7,47 +7,68 @@
77

88
The RoboCup Soccer Simulator Server (rcssserver) is a research and educational tool for multi-agent systems and artificial intelligence. It allows 11 simulated autonomous robotic players to play soccer (football).
99

10-
## Quick Start
10+
For further reading, please check [the user's manual](https://rcsoccersim.readthedocs.io/).
1111

12+
## :soccer: Quick Start
13+
14+
rcssserver is implemented by C++14 and depends some libraries.
1215
Make sure you have the required dependencies installed on your system:
1316

14-
- g++
15-
- make
16-
- boost >= 1.44
17-
- bison
17+
- g++ (which supports C++14)
18+
- autoconf
19+
- automake
20+
- libtool
1821
- flex
22+
- bison
23+
- boost >= 1.44
24+
25+
In the case of Ubuntu 18.04 or 20.04, the following commands will resolve all dependencies:
26+
27+
```
28+
sudo apt update
29+
sudo apt install build-essential automake autoconf libtool flex bison libboost-all-dev
30+
```
1931

20-
Download the latest rcssserver release in the [releases section](https://github.com/rcsoccersim/rcssserver/releases). Extract it and from the rcssserver directory execute:
32+
Then, download the latest rcssserver tarball from the [releases section](https://github.com/rcsoccersim/rcssserver/releases).
33+
Extract it and from the rcssserver directory execute:
2134

2235
```bash
36+
tar xzvfp rcssserver-x.x.x.tar.gz
37+
cd rcssserver-x.x.x
2338
./configure
2439
make
2540
```
2641

2742
This will build the necessary binaries to get you up and running.
43+
`rcssserver/src/rcssserver` is the binary for the simulator server.
2844

29-
`rcssserver/src/rcssserver` is the binary for the simulator server. The simulator
30-
server manages the actual simulation and comunicates with client programs that
31-
control the simulated robots. To be able to run, the binary needs to find shared
32-
libraries which are created when you build rcssserver. This means you must either
33-
install the server (make install) or run it from `rcssserver/src`.
45+
The simulator server manages the actual simulation and comunicates with client programs that
46+
control the simulated robots.
47+
To be able to run, the binary needs to find shared libraries which are created when you build rcssserver.
48+
This means you must either install the server (make install) or run it from `rcssserver/src`.
3449

3550
A sample client can be found at `rcssserver/src/rcssclient`.
3651

3752
To see what is actually happening in the simulator, you will need to start a
38-
simulator monitor, which needs to be installed separately ([rcssmonitor](https://github.com/rcsoccersim/rcssmonitor),
39-
rcssmonitor_classic, [soccerwindow2](https://osdn.net/projects/rctools/releases/p4886)
40-
or any other third party monitor).
53+
simulator monitor, which needs to be installed separately ([rcssmonitor](https://github.com/rcsoccersim/rcssmonitor), or any other third party monitor).
54+
55+
To playback games that you have recorded or downloaded, you will need to start the log player.
56+
[rcssmonitor](https://github.com/rcsoccersim/rcssmonitor) can be used for this purpose.
4157

42-
To playback games that that you have recorded or downloaded, you will need to
43-
start the log player such as [rcsslogplayer](https://github.com/rcsoccersim/rcsslogplayer),
44-
which must also be downloaded separately.
58+
The version 17.0.0 or later support [CMake](https://cmake.org/).
59+
If CMake is prefered or problems with the above procedure, try the following commands at the top of the project directory:
4560

46-
## Configuring
61+
```bash
62+
cd rcssserver-x.x.x
63+
mkdir build
64+
cd build
65+
cmake ..
66+
make
67+
```
4768

48-
Before you can build The RoboCup Soccer Simulator Server you will need to run
49-
the `configure` script located in the root of the distribution directory.
69+
## :gear: Configuring
5070

71+
Before building rcssserver, you will need to run the `configure` script located in the root of the distribution directory.
5172
The default configuration will set up to install the server components in the
5273
following location:
5374

@@ -56,58 +77,81 @@ following location:
5677
You may need administrator privileges to install the server into the default
5778
location. This locations can be modified by using configure's `--prefix=DIR`
5879
and related options. See `configure --help` for more details.
80+
```bash
81+
./configure --prefix=YOUR_INSTALLATION_DIR
82+
```
5983

6084
The server has several features that can be enabled or disabled at configure time
6185
by using the `--enable-FEATURE[=ARG]` or `--disable-FEATURE` parameters to
6286
`configure`. `--disable-FEATURE` is equivalent to `--enable-FEATURE=no` and
6387
`--enable-FEATURE` is equivalent to `--enable-FEATURE=yes`. The only valid values
6488
for `ARG` are `yes` and `no`.
6589

66-
`--enable-fast_scanner=yes` will enable a fast building but (very) large
67-
scanner for the coach language. You will need to have `lex` or `flex` installed
68-
and you will need to manually remove the `coach_lang_tok.cc` file in the
69-
`rcssserver/src` directory. This is disabled by default. I found the actual
70-
speed of the parser show only minimal improvement when using this option on my
71-
system, but this may not be true on your system. All I can suggest is to test it
72-
on your system and decide for yourself if the speed increase justifies the
73-
increase in size of the executable.
90+
`--enable-fast_scanner=yes` will enable a fast building but (very) large scanner for the coach language.
91+
You will need to have `flex` installed and you will need to manually remove the `coach_lang_tok.cpp` file in the `rcssserver/rcss/clang` directory.
92+
This is disabled by default.
93+
I found the actual speed of the parser show only minimal improvement when using this option on my system, but this may not be true on your system.
94+
All I can suggest is to test it on your system and decide for yourself if the speed increase justifies the increase in size of the executable.
7495

7596
`--enable-rcssclient=yes` will enable the building of rcssclient, a sample
7697
client program. This is enabled by default.
7798

7899
`--enable-debug=yes` will enable the building of the modules with debugging
79100
information. This is disabled by default.
80101

102+
Once you have successfully configured the monitor, simply run `make` to build the sources.
81103

82-
## Building
104+
If CMake is chosen, `ccmake` command is available for the configuration:
105+
```bash
106+
cd build
107+
ccmake ..
108+
```
109+
110+
## :hammer_and_wrench: Building
83111

84112
Once you have successfully configured the server, simply run `make` to build
85113
the sources.
86114

87-
## Installing
115+
## :package: Installing
88116

89117
When you have completed building the server, its components can be installed
90118
into their default locations or the locations specified during configuring by
91-
running `make install`. Depending on where you are installing the
92-
server, you may need special permissions.
119+
running
120+
```bash
121+
make install
122+
```
123+
Depending on where you are installing the server, you may need special permissions.
93124

94-
## Uninstalling
125+
## :wastebasket: Uninstalling
95126

96127
The server can also be easily removed by entering the distribution directory and
97-
running `make uninstall`. This will remove all the files that where installed,
128+
running
129+
```bash
130+
make uninstall
131+
```
132+
133+
This will remove all the files that where installed,
98134
but not any directories that were created during the installation process.
99135

100-
## Using the Server
136+
In the case of CMake, find `install_manifest.txt` under the build directory, then execute:
137+
```bash
138+
xargs rm < install_manifest.txt
139+
```
140+
141+
## :arrow_forward: Using the Server
101142

102143
To start only the server either type `./rcssserver` from the directory
103144
containing the executable or `rcssserver` if you installed the executables
104-
in your PATH. rcssserver will look in your home directory for the configuration files:
105-
145+
in your PATH.
106146
```bash
107-
~/.rcssserver/server.conf
108-
~/.rcssserver/player.conf
109-
~/.rcssserver-landmark.xml # (optional)
147+
rcssserver
110148
```
149+
rcssserver will look in your home directory for the configuration files:
150+
151+
- ~/.rcssserver/server.conf
152+
- ~/.rcssserver/player.conf
153+
- ~/.rcssserver/CSVSaver.conf
154+
- ~/.rcssserver-landmark.xml (optional)
111155

112156
If these files do not exist they will be created and populated with default values.
113157

@@ -119,11 +163,13 @@ monitor to be able to see whats happening on the field.
119163
If you installed the server and the monitor successfully, you can use the
120164
`rcsoccersim` script. To start the simulator (server and monitor) either type:
121165

122-
`rcsoccersim`
123-
166+
```bash
167+
rcsoccersim
168+
```
124169

125-
## Contributing
170+
## :incoming_envelope: Contributing
126171

127-
For bug reports, feature requests and latest updates, please open an issue or a pull request.
172+
For bug reports, feature requests and latest updates, please goto
173+
https://github.com/rcsoccersim/rcssserver and open an issue or a pull request.
128174

129175
> The RoboCup Soccer Server Maintainance Group

configure.ac

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
AC_PREREQ(2.61)
55
LT_PREREQ([2.2])
6-
AC_INIT([RCSSServer],[16.0.1],[[email protected]],[rcssserver])
6+
AC_INIT([RCSSServer],[17.0.0],[https://github.com/rcsoccersim/],[rcssserver])
77

88
#AM_INIT_AUTOMAKE([gnu 1.7.2 check-news dist-bzip2 dist-zip])
99
AM_INIT_AUTOMAKE([gnu 1.7.2 check-news foreign])

rcss/Makefile.am

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@ AM_CFLAGS = -W -Wall
1313
AM_CXXFLAGS = -W -Wall
1414
AM_LDFLAGS =
1515

16+
EXTRA_DIST = \
17+
CMakeLists.txt
18+
1619
CLEANFILES = \
1720
*~ \
1821
core

rcss/clang/Makefile.am

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,8 +109,10 @@ AM_FLEXFLEX=@AM_FLEXFLAGS@
109109

110110

111111
EXTRA_DIST = \
112+
CMakeLists.txt \
112113
coach_lang_parser.ypp \
113-
coach_lang_tok.lpp
114+
coach_lang_tok.lpp \
115+
fix_lexer_file.cmake
114116

115117

116118
CLEANFILES = \

rcss/conf/Makefile.am

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,9 @@ AM_CFLAGS = -W -Wall
4444
AM_CXXFLAGS = -W -Wall
4545
AM_LD_FLAGS =
4646

47+
EXTRA_DIST = \
48+
CMakeLists.txt
49+
4750
CLEANFILES = \
4851
*~ \
4952
core

rcss/gzip/Makefile.am

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,9 @@ AM_CFLAGS = -W -Wall
4040
AM_CXXFLAGS = -W -Wall
4141
AM_LDFLAGS =
4242

43+
EXTRA_DIST = \
44+
CMakeLists.txt
45+
4346
CLEANFILES = \
4447
*~ \
4548
core

0 commit comments

Comments
 (0)