Skip to content

Commit

Permalink
Merge branch 'master' into cmake-updates
Browse files Browse the repository at this point in the history
  • Loading branch information
mwydmuch committed Feb 12, 2024
2 parents a040230 + a8efe37 commit ce6cf09
Show file tree
Hide file tree
Showing 52 changed files with 1,458 additions and 775 deletions.
1 change: 1 addition & 0 deletions .github/workflows/build-wheels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@ jobs:
path: dist/*.tar.gz

upload_pypi:
name: Upload to PyPI
needs: [build_wheels, build_sdist]
runs-on: ubuntu-latest
environment: pypi
Expand Down
4 changes: 2 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.12)
# Project + versions
#-----------------------------------------------------------------------------------------------------------------------

project(ViZDoom VERSION 1.3.0)
project(ViZDoom VERSION 1.2.4)
set(ViZDoom_VERSION_STR ${ViZDoom_VERSION_MAJOR}.${ViZDoom_VERSION_MINOR}.${ViZDoom_VERSION_PATCH})
set(ViZDoom_VERSION_ID ${ViZDoom_VERSION_MAJOR}${ViZDoom_VERSION_MINOR}${ViZDoom_VERSION_PATCH})

Expand Down Expand Up @@ -68,7 +68,7 @@ endif()
if(APPLE)
set(CMAKE_MACOSX_RPATH ON)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden -fvisibility-inlines-hidden")

if(CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "arm64")
set(CMAKE_OSX_ARCHITECTURES "arm64" CACHE INTERNAL "" FORCE)
message(STATUS "Apple Silicon detected, building for arm64")
Expand Down
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

ViZDoom allows developing AI **bots that play Doom using only visual information** (the screen buffer). It is primarily intended for research in machine visual learning, and deep reinforcement learning, in particular.

ViZDoom is based on [ZDoom](https://github.com/rheit/zdoom) to provide the game mechanics.
ViZDoom is based on [ZDoom](https://zdoom.org) engine to provide the game mechanics.

![ViZDoom Demo](https://raw.githubusercontent.com/Farama-Foundation/ViZDoom/master/docs/_static/img/vizdoom-demo.gif)

Expand Down Expand Up @@ -156,6 +156,8 @@ Useful articles (for advanced users who want to create custom environments/scena
- [Sample Factory](https://github.com/alex-petrenko/sample-factory) - A high-performance reinforcement learning framework for ViZDoom.
- [EnvPool](https://github.com/sail-sg/envpool/) - A high-performance vectorized environment for ViZDoom.
- [Obsidian](https://github.com/dashodanger/Obsidian) - Doom random map generator, a continuation of OBLIGE.
- [LevDoom](https://github.com/TTomilin/LevDoom) - Generalization benchmark in ViZDoom featuring difficulty levels in visual complexity.
- [COOM](https://github.com/hyintell/COOM) - Continual learning benchmark in ViZDoom offering task sequences with diverse objectives.


## Contributions
Expand Down
15 changes: 7 additions & 8 deletions docs/api/configurationFiles.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
Instead of configuring the ViZDoom in code, you can load it from the configuration file(s). Each file is read sequentially, so multiple entries with the same key will overwrite previous entries.

## Format
Each entry in a configraution file is a pair of **key** and **value** separated by an equal sign (**"="**). The file format should also abide the following rules:
Each entry in a configraution file is a pair of **key** and **value** separated by an equal sign (**`=`**). The file format should also abide the following rules:

* one entry per line (except for list parameters),
* case insensitive
Expand All @@ -14,10 +14,10 @@ Each entry in a configraution file is a pair of **key** and **value** separated
A violation of any of these rules will result in ignoring **only** the line with the error and sending a warning message to stderr ("WARNING! Loading config from: ...").

### List of values
**available_buttons** and **available_game_variables** are special parameters, which use multiple values and instead of a single value they expect a list of values separated by whitespaces and enclosed within braces ("{" and "}"). The list can stretch throughout multiple lines as long as all values are separated from each other by whitespaces.
**available_buttons** and **available_game_variables** are special parameters, which use multiple values and instead of a single value they expect a list of values separated by whitespaces and enclosed within braces (`{` and `}`). The list can stretch throughout multiple lines as long as all values are separated from each other by whitespaces.

### Appending values
Each list assignment (**KEY = { VALUES }**)clears values specified for this key before (in other configuration files or in the code). That is why the **append operator(*KEY += { VALUES })** is available. This way you can more easily combine multiple configuration files and tinker in code.
Each list assignment (**`KEY = { VALUES }`**)clears values specified for this key before (in other configuration files or in the code). That is why the **append operator (`KEY += { VALUES }`)** is available. This way you can more easily combine multiple configuration files and tinker in code.

### Supported configuration keys:
* `audioBufferEnabled/audio_buffer_enabled`
Expand All @@ -27,8 +27,8 @@ Each list assignment (**KEY = { VALUES }**)clears values specified for this key
* `automapMode/automap_mode`
* `automapRenderTextures/automap_render_textures`
* `automapRotate/automap_rotate`
* `availableButtons/available_buttons` (list)
* `availableGameVariables/available_game_variables` (list)
* `availableButtons/available_buttons` (list of values)
* `availableGameVariables/available_game_variables` (list of values)
* `consoleEnabled/console_enabled`
* `deathPenalty/death_penalty`
* `depthBufferEnabled/depth_buffer_enabled`
Expand Down Expand Up @@ -64,8 +64,7 @@ Each list assignment (**KEY = { VALUES }**)clears values specified for this key
* `ViZDoomPath/vizdoom_path`
* `windowVisible/window_visible`


See also: [`DoomGame`](DoomGame.md) for config keys and functions related to them.
Config keys are also mentioned for related methods in the documentation for `DoomGame` class.


### Sample configuration file content:
Expand Down Expand Up @@ -114,4 +113,4 @@ mode = PLAYER
doom_skill = 5
```

Other examples of configuration files can be found in [https://github.com/Farama-Foundation/ViZDoom/tree/master/scenarios](https://github.com/Farama-Foundation/ViZDoom/tree/master/scenarios)
Other examples of configuration files can be found in [scenarios](https://github.com/Farama-Foundation/ViZDoom/tree/master/scenarios) directory.
Loading

0 comments on commit ce6cf09

Please sign in to comment.