You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: README.md
+94-48
Original file line number
Diff line number
Diff line change
@@ -7,47 +7,68 @@
7
7
8
8
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).
9
9
10
-
## Quick Start
10
+
For further reading, please check [the user's manual](https://rcsoccersim.readthedocs.io/).
11
11
12
+
## :soccer: Quick Start
13
+
14
+
rcssserver is implemented by C++14 and depends some libraries.
12
15
Make sure you have the required dependencies installed on your system:
13
16
14
-
- g++
15
-
-make
16
-
-boost
17
-
-bison
17
+
- g++ (which supports C++14)
18
+
-autoconf
19
+
-automake
20
+
-libtool
18
21
- 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:
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:
21
34
22
35
```bash
36
+
tar xzvfp rcssserver-x.x.x.tar.gz
37
+
cd rcssserver-x.x.x
23
38
./configure
24
39
make
25
40
```
26
41
27
42
This will build the necessary binaries to get you up and running.
43
+
`rcssserver/src/rcssserver` is the binary for the simulator server.
28
44
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`.
34
49
35
50
A sample client can be found at `rcssserver/src/rcssclient`.
36
51
37
52
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),
simulator monitor, which needs to be installed separately ([rcssmonitor](https://github.com/rcsoccersim/rcssmonitor), or any other third party monitor).
41
54
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.
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.
45
57
46
-
## Configuring
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:
47
60
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.
61
+
```bash
62
+
cd rcssserver-x.x.x
63
+
mkdir build
64
+
cd build
65
+
cmake ..
66
+
make
67
+
```
68
+
69
+
## :gear: Configuring
50
70
71
+
Before building rcssserver, you will need to run the `configure` script located in the root of the distribution directory.
51
72
The default configuration will set up to install the server components in the
52
73
following location:
53
74
@@ -56,74 +77,99 @@ following location:
56
77
You may need administrator privileges to install the server into the default
57
78
location. This locations can be modified by using configure's `--prefix=DIR`
58
79
and related options. See `configure --help` for more details.
80
+
```bash
81
+
./configure --prefix=YOUR_INSTALLATION_DIR
82
+
```
59
83
60
84
The server has several features that can be enabled or disabled at configure time
61
85
by using the `--enable-FEATURE[=ARG]` or `--disable-FEATURE` parameters to
62
86
`configure`. `--disable-FEATURE` is equivalent to `--enable-FEATURE=no` and
63
87
`--enable-FEATURE` is equivalent to `--enable-FEATURE=yes`. The only valid values
64
88
for `ARG` are `yes` and `no`.
65
89
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.
74
95
75
96
`--enable-rcssclient=yes` will enable the building of rcssclient, a sample
76
97
client program. This is enabled by default.
77
98
78
99
`--enable-debug=yes` will enable the building of the modules with debugging
79
100
information. This is disabled by default.
80
101
102
+
Once you have successfully configured the monitor, simply run `make` to build the sources.
81
103
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
83
111
84
112
Once you have successfully configured the server, simply run `make` to build
85
113
the sources.
86
114
87
-
## Installing
115
+
## :package:Installing
88
116
89
117
When you have completed building the server, its components can be installed
90
118
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.
93
124
94
-
## Uninstalling
125
+
## :wastebasket:Uninstalling
95
126
96
127
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,
98
134
but not any directories that were created during the installation process.
99
135
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
+
```
101
140
102
-
To start only the server either type `./rcssserver` from the directory
103
-
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:
141
+
## :arrow_forward: Using the Server
105
142
143
+
To start only the server either type `./rcssserver` from the directory
144
+
containing the executable or `rcssserver` if you installed the executables
145
+
in your PATH.
106
146
```bash
107
-
~/.rcssserver/server.conf
108
-
~/.rcssserver/player.conf
109
-
~/.rcssserver-landmark.xml # (optional)
147
+
rcssserver
110
148
```
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)
111
155
112
156
If these files do not exist they will be created and populated with default values.
113
157
114
-
To start the sample client, type `./rcssclient` or `rcssclient` as above. Then type
115
-
`(init sample)`. This will connect the sample client to the server. You can then
116
-
type in client command to move the client around the field. You will also need a
158
+
To start the sample client, type `./rcssclient` or `rcssclient` as above. Then type
159
+
`(init sample)`. This will connect the sample client to the server. You can then
160
+
type in client command to move the client around the field. You will also need a
117
161
monitor to be able to see whats happening on the field.
118
162
119
163
If you installed the server and the monitor successfully, you can use the
120
164
`rcsoccersim` script. To start the simulator (server and monitor) either type:
121
165
122
-
`rcsoccersim`
123
-
166
+
```bash
167
+
rcsoccersim
168
+
```
124
169
125
-
## Contributing
170
+
## :incoming_envelope:Contributing
126
171
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.
0 commit comments