Skip to content

Commit

Permalink
Init
Browse files Browse the repository at this point in the history
  • Loading branch information
SergeyShorokhov committed Jan 19, 2024
0 parents commit 54d1f31
Show file tree
Hide file tree
Showing 26 changed files with 881 additions and 0 deletions.
25 changes: 25 additions & 0 deletions .github/workflows/mkdocs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: MkDocs
on:
push:
branches:
- master
- main
permissions:
contents: write
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
with:
python-version: 3.x
- run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV
- uses: actions/cache@v3
with:
key: mkdocs-material-${{ env.cache_id }}
path: .cache
restore-keys: |
mkdocs-material-
- run: pip install mkdocs-material
- run: mkdocs gh-deploy --force
Binary file added docs/assets/favicon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 2 additions & 0 deletions docs/blog/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Blog

39 changes: 39 additions & 0 deletions docs/en/Customizing/commands.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
## Admin commands
| Name | Description | Access level | Plugin |
| ------------ | --------------- | ------ | -------- |
| redm_status | Notifies the console about the status of the mod | f | ReDeathmatch |
| redm_disable | Disables the Deathmatch system | f | ReDeathmatch |
| redm_enable | Enables the Deathmatch system | f | ReDeathmatch |
| redm_reload | Restarts the Deathmatch system | f | ReDeathmatch |
| redm_dump_cvars | Displays a list of the CVars loaded by the system | f | ReDeathmatch |
| redm_dump_equip | Displays a list of loaded ammunition, currently available to players | f | ReDeathmatch |
| redm_convert_spawns | Converts old spawn files for the new system | f | redm_spawns |
| redm_edit_spawns | Toggles the spawn editing mode | f | redm_spawns |

### Using `redm_reload`
Arguments:

- `<file_name>` - the name of the config file (optional)

The system reads the [[config file|Configuration]], resets the current round mode (if enabled), and notifies the console of a successful reboot.
> If the command argument is used, it will search for this file in the `amxmodx/configs/redm/<file_name>` folder.
Example: `redm_reload custom_config.json`

### Using `redm_convert_spawns`
When using the command, the system searches for files with mask `*.spawns.cfg` in directory `amxmodx/configs/csdm/spawns/`.
When recursively traversing the folder, each found file corresponding to the mask will be read and converted to the new architecture (JSON).
New, converted files will be located in the `amxmodx/data/redm/converted/` folder and will have a mask of the form: `*.spawns.json`.

After a successful conversion, the system will let you know that the conversion was successful:
`Editor_ConvertSpawns: Succefully convert N old spawn files.`

In case of any errors during the work of the converter, the system will inform in the server console (as well as in the logs) the reasons of operability.

---

## Public commands
| Name | Description | Plugin |
| ------------ | -------- | ------ |
| redm | Outputs basic information about the mod used | ReDeathmatch |
| !guns, /guns, drop | Switches the equipment selection menu | ReDeathmatch |
24 changes: 24 additions & 0 deletions docs/en/Customizing/convars.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
The mod adds new ConVars, for easy configuration.
The complete and up-to-date list can be seen with the command:
```
amxx cvars ReDeathmatch; amxx cvars redm_
```
---
| Name | Description | Value | Plugin |
| - | - | - | - |
| redm_version | **System**, displays in Source Query information about the used mod | `<version_mod>` | ReDeathmatch |
| redm_healer | HP amount given to the player (bonus) when killing an opponent | `0...maxHealth` | ReDeathmatch |
| redm_healer_hs | Amount of HP given to the player (bonus) when killing an opponent in the head | `0...maxHealth` | ReDeathmatch |
| redm_sounds_distance | Minimal distance (units) of the player from others, at which he will hear shots, steps, etc. Used to reduce noise, improve gameplay experience. | 0 - disabled or distance in `int` |ReDeathmatch |
| redm_fade | illuminate the screen for players when killing an opponent | `boolean` | ReDeathmatch |
| redm_refill_ammo | refill weapon ammunition when you kill an opponent | `boolean` | ReDeathmatch |
| redm_hitsound | sound indication of a hit on an opponent | | boolean | ReDeathmatch |
| mp_damage_headshot_only | Enable Only-headshot mode for all players | `boolean` | ReDeathmatch |
| redm_hide_other_deathnotice | Hiding someone else's kill/deathnotice events for players | `boolean` | ReDeathmatch |
| redm_spawn_preset | Selecting a preset for the spawn manager | `preset` - pre-installed; </br> `<preset_name>` - other implements | ReDeathmatch |
| redm_modes_switch | Selecting the mode of operation of the round mode (Multi-CFG) | `sequentially` - selection one by one; </br> `random` - random mode every round | ReDeathmatch |
| redm_keep_weapon_slot | When a player is respawn and equipped, the last used slot (weapon) is restored. | `boolean` | ReDeathmatch |
| redm_active | Displaying the working status of the mod | `boolean` | ReDeathmatch |
| mp_randomspawn | Random spawning for players | `0` - disabled; </br> `1` - all teams will spawn in random points; </br> `2` - only T; </br> `2` - only CT | redm_spawns |
| mp_randomspawn_los | Whether to check the visibility of the revived player's opponents before spawning on a point | `boolean` | redm_spawns |
| mp_randomspawn_dist | Minimum distance to enemies before spawning to a point | `int` | redm_spawns |
59 changes: 59 additions & 0 deletions docs/en/Customizing/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
## Main configuration
Found in `amxmodx/configs/redm/gamemode_deathmatch.json` file.

???+ note
Everything that relates to Deathmatch mode **must** be configured only in this file.

## Additional configuration:
There is support for additional configuration, by loading the configuration for:

- Defined map (`configs/redm/extraconfigs/<map_name>.json` file);
- Map prefix (`configs/redm/extraconfigs/prefix_<prefix_map>.json` file);

The order of finding a config file to load:

- The map config is searched for;
- The config file for the map prefix is searched;
- The main config file is searched (`configs/redm/gamemode_deathmatch.json`).

Found and used config is accompanied by an information message in the server console:
```js
[1.00][INFO] FindConfigFile: Config `gamemode_deathmatch.json` loaded.
```

If none of the configuration files are found, the plugin will give an error:
```json
FindConfigFile: Can't find any config file!
```

Every config file to be loaded **must** have a valid JSON schema!

## Config file structure
The config file consists of sections:

- equip
- primary - Primary weapons (assault rifles, snipers);
- secondary - Secondary weapons (guns);
- cvars - CVars to be changed when turning on Deathmatch mode;
- modes - The list of rounds modes.

## Section `equip`
### Primary.
The list of weapons which are used to equip the player in the Primary slots (assault rifles, sniper rifles, SMG, etc.).

### Secondary
The list of weapons, to equip the player in the Secondary (pistols) slot.

## Section `cvars`
A list of the CVars of the server for changing the gameplay when turning on Deathmatch mode. Each CVar in this list restores its original value when Deathmatch mode is turned off (the system remembers the original CVar value before changing it).

## Section `modes`
It is an optional section.
Contains a list of mode configurations for rounds (Multi-CFG), contains in fact a complete structure for the configuration described above.
The exceptions are the parameters:

- `name` - Name of the mode.

Displayed to players when reviving, switching modes.

Can contain LANG-key defined in `amxmodx\data\lang\redm\modes.txt`, if LANG-key will be found in provided dictionary.
12 changes: 12 additions & 0 deletions docs/en/Customizing/plugins.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
The basic set of plugins necessary for Deathmatch mode is defined in the file `amxmodx\configs\plugins-redm.ini`:

## Structure
```ini
; Main plugin
ReDeathmatch.amxx debug ; Main mod

; Addons
redm_spawns.amxx debug ; System for working with spawn points (player revives, items (TODO))
```

The order of the plugins is important for loading, not recommended for modding!
49 changes: 49 additions & 0 deletions docs/en/Getting-started/alternatives.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
## Summary
The ReDeathmatch mod is a modern alternative that has active support from the creators. It fixes the shortcomings of existing alternatives and adds new features. The mod relies on community support for issue identification and resolution, and suggestions for new functionality are welcome.

| Name | ReHLDS Compatibility | Multilingual | Author Support | Documentation | Stability |
|:---------------------------------:|:--------------------:|:------------:|:--------------:|:-------------:|:---------:|
| ReDeathmatch by Sergey Shorokhov ||||| ❌ (beta) |
| CSDM ReAPI by wopox1337 ||||||
| ReCSDM by ReHLDS team ||||||
| CSDM ReAPI by Vaqtincha ||||||
| CSDM 2.1.2 by BAILOPAN ||||||

## CSDM 2.1.2 by BAILOPAN
- Website: [https://www.bailopan.net/csdm/](https://www.bailopan.net/csdm/)
- Git: [https://github.com/Arkshine/CSDM](https://github.com/Arkshine/CSDM)
- Forum: [AlliedModders Forum](https://forums.alliedmods.net/forumdisplay.php?f=87)

The original CSDM mod provides a stable and well-functioning foundation. Parts of the mod that consume a lot of CPU resources have been moved to a separate Metamod module (written in C++), which reduces the load. The necessary code for working with AMX Mod X has been extracted into an API. Most of the logic is implemented through AMX Mod X plugins.

This mod is the only option for use with a regular HLDS server to date. It is not compatible with ReGameDLL.

It should be noted that the original CSDM mod does not support multilingualism, except for user modifications.

## ReCSDM by ReHLDS team
- Git: [https://bitbucket.org/Adidasman/recsdm/src/master/](https://bitbucket.org/Adidasman/recsdm/src/master/)
- Forum: [Dev-CS.ru](https://dev-cs.ru/resources/74/)

ReCSDM is a modification of the base CSDM by BAILOPAN to improve compatibility and functionality on ReHLDS & ReGameDLL. It includes small fixes and new features. It is the most popular and stable option for use with ReHLDS.

It should be noted that the ReCSDM mod does not support multilingualism, except for user modifications.

## CSDM ReAPI by Vaqtincha
- Forum: [GoldSrc.ru](https://goldsrc.ru/threads/1955/)

This is a reimagining of the CSDM mod developed by the BAILOPAN team. The new version incorporates enhanced functionality from ReHLDS & ReGameDLL and ReAPI, offering some performance improvements.

However, this version does not fully replace the original mod due to the absence of certain features. Specifically, the ability to pause the mod, support for Team Deathmatch mode, and item spawning mode (csdm_items) are missing in the new version.

Despite this, many new features and improvements have been added by rewriting outdated code and removing AMXX modules previously used in other CSDM mods, such as ReCSDM.

However, along with the improvements, there may be some issues with the respawn system. Please be aware of this.

It should be noted that the CSDM ReAPI mod by Vaqtincha does not support multilingualism, except for user modifications.

## CSDM ReAPI by wopox1337
- Git: [https://github.com/wopox1337/CSDM-ReAPI](https://github.com/wopox1337/CSDM-ReAPI)

This is an enhanced version of CSDM ReAPI by Vaqtincha, adding multilingual support and partially fixing the respawn system and minor bugs. It brings new functionality and improves integration with ReGameDLL by utilizing its updated features.

Development of this version has been discontinued by the author due to fundamental changes. Work on continuing the mod's concept is being done in ReDeathmatch.
9 changes: 9 additions & 0 deletions docs/en/Getting-started/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Getting started

ReDeathmatch is a AMXModX plugins to provide Deathmatch gameplay in <a href="https://store.steampowered.com/app/10/CounterStrike/">Counter-Strike 1.6</a> optimized to work with <a href="https://github.com/s1lentq/ReGameDLL_CS">ReGameDLL_CS</a>.

The mod is a completely rewritten implementation of [CSDM ReAPI](https://github.com/wopox1337/CSDM-ReAPI), to replace legacy code.

Mod made a look back on the successful experience [CSDM 2.1.2 by BAILOPAN](https://www.bailopan.net/csdm), but using modern features of the new [ReGameDLL_CS](https://github.com/s1lentq/ReGameDLL_CS).

Many features have long been built and optimized to work directly in ReGameDLL_CS, mod now only switches the game settings and provides a comfortable way to control.
15 changes: 15 additions & 0 deletions docs/en/Getting-started/installation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
- [Download the latest](https://github.com/wopox1337/ReDeathmatch/releases/latest) stable version from the release section;
- Extract the `cstrike` folder to the root folder of the **HLDS** server;
- Make sure that the plugins are working and that they are located correctly, using the `amxx list` command.

The list of plugins should display properly working plugins, for example:
```cpp
] amxx list

Currently loaded plugins:
id name version author file status
...
[ 2] 1 ReDeathmatch 1.0.0-beta Sergey Shorokhov ReDeathmatc debug
[ 3] 2 Spawns manager 1.0.0-beta Sergey Shorokhov redm_spawns debug

```
62 changes: 62 additions & 0 deletions docs/en/Getting-started/requirements.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
For the correct functioning of the system and its functions you need to have installed:

- Installed [HLDS server](https://developer.valvesoftware.com/wiki/Half-Life_Dedicated_Server);
- Installed [ReGameDLL_CS](https://github.com/s1lentq/ReGameDLL_CS);
- Installed AMXModX ([v1.9](https://www.amxmodx.org/downloads-new.php) or [v1.10](https://www.amxmodx.org/downloads-new.php?branch=master));
- Installed [ReAPI](https://github.com/s1lentq/reapi) AMXX module.

## Check the installed components:

### HLDS version

using the command: `version`
```javascript
] version

Protocol version 48
Exe version 1.1.2.7/Stdio (cstrike)
ReHLDS version: 3.13.0.783-dev
Build date: 00:06:04 Feb 11 2023 (3227)
Build from: https://github.com/dreamstalker/rehlds/commit/1796459
```

### ReGameDLL version

using the command: `game version`
```js
] game version

ReGameDLL version: 5.22.0.594-dev
Build date: 22:19:38 Apr 03 2023
Build from: https://github.com/wopox1337/ReGameDLL_CS/commit/71e61e6
```

### AMXModX version

viewing the meta list of modules: `meta list`
```js
] meta list

Currently loaded plugins:
description stat pend file vers src load unload
[ 1] AMX Mod X RUN - amxmodx_mm.dll v1.10.0.5467 ini Start ANY
[ 2] Ham Sandwich RUN - hamsandwich_amxx.dll v1.10.0.5467 pl1 ANY ANY
[ 3] FakeMeta RUN - fakemeta_amxx.dll v1.10.0.5467 pl1 ANY ANY
[ 4] ReAPI RUN - reapi_amxx.dll v5.23.0.263-dev pl1 ANY Never
4 plugins, 4 running
```

### ReAPI version

by browsing the list of AMXX modules: `amxx modules`
```js
] amxx modules

Currently loaded modules:
name version author status
[ 1] Ham Sandwich 1.10.0.546 AMX Mod X Dev Team running
[ 2] FakeMeta 1.10.0.546 AMX Mod X Dev Team running
[ 3] JSON 1.10.0.546 AMX Mod X Dev Team running
[ 4] ReAPI 5.23.0.263 Asmodai & s1lent running
4 modules, 4 correct
```
18 changes: 18 additions & 0 deletions docs/en/Work-with-documentation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
### Manual with Python
1. [Install Python and deps for MkDocs](https://squidfunk.github.io/mkdocs-material/getting-started/)
2. Activate python virtual env
```bash
source venv/Scripts/activate
```
2. [Previewing as you write](https://squidfunk.github.io/mkdocs-material/creating-your-site/?h=serve#previewing-as-you-write)
```bash
mkdocs serve
```

### Docker [image use](https://hub.docker.com/r/squidfunk/mkdocs-material/)
```bash
docker run --rm -it -p 8000:8000 -v /${PWD}:/docs squidfunk/mkdocs-material
```

and open local MkDocs server: [http://127.0.0.1:8000/ReDeathmatch/](http://127.0.0.1:8000/ReDeathmatch/)

Loading

0 comments on commit 54d1f31

Please sign in to comment.