Updated Plugins (markdown)

RaidMax 2020-08-06 13:17:51 -05:00
parent e400a4b46e
commit 51d9678908

@ -10,12 +10,12 @@ The following options can be configured by modifying `ActionOnReport.js`
| tempBanDurationMinutes | How long to temporarily ban the client | >0 |
#### Welcome
## Welcome
- This plugin uses geo-location data to welcome a player based on their country of origin
- All privileged users ( Trusted or higher ) receive a specialized welcome message as well
- Welcome messages can be customized in `WelcomePluginSettings.json`
#### Stats
## Stats
- This plugin calculates basic player performance, skill approximation, and kill/death ratio
- Skill is an number derived from an algorithmic processing of a player's Kill Death Ratio (KDR) and Score per Minute (SPM).
- Elo Rating is based off of the number of encounters a player wins.
@ -32,7 +32,7 @@ The following options can be configured by modifying `ActionOnReport.js`
- To qualify for top stats, a client must have played for at least `3 hours` and connected within the past `15 days`.
#### Login
## Login
- This plugin deters GUID spoofing by requiring privileged users to login with their password before executing commands
- A password must be set using the `setpassword` command before logging in
@ -42,39 +42,37 @@ The following options can be configured by modifying `ActionOnReport.js`
|--------------| -----| --------------------------------------------------------| -----------------| -------------| ----------------|
|login|l|login using password|False|!l \<password\>|Trusted|
#### Profanity Determent
## Profanity Determent
- This plugin warns and kicks players for using profanity
- Profane words and warning message can be specified in `ProfanityDetermentSettings.json`
- If a client's name contains a word listed in the settings, they will immediately be kicked
#### IW4 Script Commands
## IW4 Script Commands
- This plugin provides additional integration to IW4x
- In order to take advantage of it, copy the `userraw` folder into your IW4x server directory
#### VPN Detection [Script Plugin]
## VPN Detection [Script Plugin]
- This plugin detects if a client is using a VPN and kicks them if they are
- To disable this plugin, delete `Plugins\VPNDetection.js`
- Adding **Client IDs** to the `vpnExceptionIds` array will prevent a client from being kicked.
#### Shared GUID Kicker [Script Plugin]
## Shared GUID Kicker [Script Plugin]
- This plugin kicks users using a specific GUID
- GUID `F4D2C30B712AC6E3` on IW4x was packed into a torrent version of the game.
---
## Extending Plugins
### Extending Plugins
#### NuGet Package
### NuGet Package
The NuGet package for **IW4MAdmin's** "Shared Library" can be obtained from the [NuGet Gallery](https://www.nuget.org/packages/RaidMax.IW4MAdmin.SharedLibraryCore)
Referencing this package will give you the ability to write plugins against **IW4MAdmin's** core library.
#### Code
### Code
**IW4MAdmin's** functionality can be extended by writing additional plugins in C#.
Each class library must implement the `IPlugin` interface.
See the existing [plugins](https://github.com/RaidMax/IW4M-Admin/tree/master/Plugins) for examples.
#### JavaScript
### JavaScript
**IW4MAdmin** functionality can also be extended using JavaScript.
The JavaScript parser supports [ECMA 5.1](https://ecma-international.org/ecma-262/5.1/) standards.
#### Plugin Object Template
### Plugin Object Template
In order to be properly parsed by the JavaScript engine, every plugin must conform to the following template.
```js
var plugin = {
@ -95,7 +93,7 @@ var plugin = {
}
};
```
#### Required Properties
### Required Properties
- `author` &mdash; [string] Author of the plugin (usually your name or online name/alias)
- `version` &mdash; [float] Version number of your plugin (useful if you release several different versions)
- `name` &mdash; [string] Name of your plugin (be descriptive!)