Skip to content

Commit e0cd2e4

Browse files
committed
more documentation
1 parent bd02119 commit e0cd2e4

File tree

2 files changed

+52
-1
lines changed

2 files changed

+52
-1
lines changed

README.md

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,8 @@ Also contains a modified version of the pure Java BWEM implementation from [BWAP
1616
- At least [5x](https://github.com/JavaBWAPI/JBWAPI/issues/17) faster compared to BWMirror for primitives as it directly reads the memory mapped client file. Even faster for BWAPI objects as it also avoids type marshalling
1717
- Supports both 32 and 64 bit Java (e.g. [deeplearning4j](https://deeplearning4j.org/) requires 64 bit Java which bwmirror doesn't support).
1818
- BWEM instead of BWTA as map analyser.
19-
- Supports Linux "natively" using [openbw](https://github.com/JavaBWAPI/JBWAPI/pull/73) !
19+
- Supports Linux "natively" using [openbw](https://github.com/JavaBWAPI/JBWAPI/pull/73), made possible by by [ByteKeeper](https://github.com/Bytekeeper)
20+
- `Async` support for realtime tournament constraints, made possible by [dgant](https://github.com/dgant)
2021

2122
## Warnings
2223
- A fake BWTA is provided for easier porting from BWMirror, but it translates BWTA calls to their respective BWEM calls, so specific Regions/Chokepoints etc. may differ.
@@ -106,3 +107,17 @@ You can also ask any further questions on the [SSCAIT Discord](https://discord.g
106107
## Tutorial
107108

108109
If you are a just starting out with bot development, it might be helpful to follow the [tutorial](https://github.com/JavaBWAPI/Java-BWAPI-Tutorial/wiki)!
110+
111+
112+
## Bots
113+
114+
Some bots using [JBWAPI](https://github.com/JavaBWAPI/JBWAPI) (feel free to make add a `Pull Request` to add yours!)
115+
116+
- https://github.com/dgant/PurpleWave
117+
- https://github.com/Ravaelles/Atlantis
118+
- https://github.com/impie66/Kangaroo-Bot
119+
120+
## Linux
121+
122+
If you use Linux you can choose to develop normally and run the `jar` and `starcraft` using [wine](https://www.winehq.org/)`
123+
or try to use `openbw` by following the following [instructions](./build_with_openbw.md)

build_with_openbw.md

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
Based on: #64
2+
3+
Compiling and running openbw on linux with client support:
4+
5+
```bash
6+
# Download build deps
7+
sudo apt install cmake libsdl2-dev libsdl2-mixer-dev #for ubuntu
8+
9+
# Build openbw with client support
10+
git clone https://github.com/basil-ladder/openbw
11+
git clone -b linux-client-support https://github.com/basil-ladder/bwapi
12+
cd bwapi
13+
mkdir build
14+
cd build
15+
cmake .. -DCMAKE_BUILD_TYPE=Release -DOPENBW_DIR=../../openbw -DOPENBW_ENABLE_UI=1
16+
make -j4
17+
18+
# Download runtime deps
19+
curl http://www.cs.mun.ca/~dchurchill/starcraftaicomp/files/Starcraft_1161.zip -o starcraft.zip
20+
unzip starcraft.zip patch_rt.mpq BROODAT.MPQ STARDAT.MPQ
21+
mv patch_rt.mpq Patch_rt.mpq && mv BROODAT.MPQ BrooDat.mpq && mv STARDAT.MPQ StarDat.mpq
22+
23+
# Run openbw using the map: Destination 1.1.scx
24+
unzip starcraft.zip "maps/BroodWar/ICCup/ICCup Destination 1.1.scx"
25+
26+
BWAPI_CONFIG_AUTO_MENU__RACE=Terran BWAPI_CONFIG_AUTO_MENU__MAP="maps/BroodWar/ICCup/ICCup Destination 1.1.scx" ./bin/BWAPILauncher
27+
```
28+
29+
Compiling and running openbw on macos with client support (not working):
30+
31+
```bash
32+
brew install cmake sdl2 sdl2_mixer gcc
33+
34+
cmake .. -D CMAKE_C_COMPILER=gcc-11 -D CMAKE_CXX_COMPILER=g++-11 -DCMAKE_BUILD_TYPE=Release -DOPENBW_DIR=../../openbw -DOPENBW_ENABLE_UI=1
35+
make -j4
36+
```

0 commit comments

Comments
 (0)