Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
143 commits
Select commit Hold shift + click to select a range
ceeaf93
Update NativeVotes!
Heapons Dec 27, 2025
f489c55
Update Workflow
Heapons Dec 27, 2025
409d115
Only compile in 1.13
Heapons Dec 27, 2025
056a6e4
Remove disabled plugins
Heapons Dec 27, 2025
b888d7f
Update nv_compile.sh
Heapons Dec 27, 2025
460ab8d
Update README.md
Heapons Dec 27, 2025
0b2431b
Update Workflow
Heapons Dec 27, 2025
4b3ff63
Remove exit button from undo-rtv menu
Heapons Dec 27, 2025
9108065
Update README.md
Heapons Dec 27, 2025
67f2511
Fix Workflow
Heapons Dec 27, 2025
82ef307
Create missing directory
Heapons Dec 27, 2025
5f51e59
Merge branch 'master' of https://github.com/Heapons/sourcemod-nativev…
Heapons Dec 27, 2025
0d9fa41
Make methodmap natives optional
Heapons Dec 27, 2025
409a440
Update README.md
Heapons Jan 6, 2026
77883cf
Chat, Engine, and Minor Tweaks
Heapons Jan 9, 2026
b962c9f
Merge branch 'master' of https://github.com/Heapons/sourcemod-nativev…
Heapons Jan 9, 2026
bc3db5a
Fix variable names
Heapons Jan 9, 2026
bfb48cd
Tidy up
Heapons Jan 9, 2026
0243ae1
Use multicolors functions
Heapons Jan 9, 2026
bae888d
Add support for sv_vote_bots_allowed
Heapons Jan 9, 2026
c6f1319
Nomations & RTV Tweaks
Heapons Jan 10, 2026
b0ed687
Better support for TF2-based mods
Heapons Jan 10, 2026
3df2b1b
Add sm_resetrtv
Heapons Jan 10, 2026
71b8cbc
Bump up version
Heapons Jan 10, 2026
7212699
Chat and versioning fixes
Heapons Jan 10, 2026
7056f0a
Fix compile (again)
Heapons Jan 11, 2026
f10cb61
Bump version
Heapons Jan 11, 2026
4c96a65
Fix player targets
Heapons Jan 11, 2026
441bf95
MVM Fix
Heapons Jan 11, 2026
7cf448f
Fix brackets
Heapons Jan 11, 2026
fcdfea3
Bump version
Heapons Jan 11, 2026
b78da3b
Don't use color tags needlessly
Heapons Jan 11, 2026
7a817f7
Fix MVM error on older TF2 mods
Heapons Jan 14, 2026
8c5f49c
Bump version
Heapons Jan 14, 2026
0f1b5b5
Bump version
Heapons Jan 22, 2026
d5bd3a0
Auto-generated mapcycles & workshop map cleanups
Heapons Jan 22, 2026
fe89bc1
Toggle callvote/menu
Heapons Jan 22, 2026
77efc5e
Minor tweaks
Heapons Jan 22, 2026
4538b80
Bump version
Heapons Jan 22, 2026
cf2589b
Fix MVM
Heapons Jan 22, 2026
fbd0a32
Fix cvar description
Heapons Jan 22, 2026
8048253
Update README.md
Heapons Jan 22, 2026
49f775b
Fix cvars
Heapons Jan 22, 2026
6ea8150
Update variables
Heapons Jan 28, 2026
f24c611
Update variables
Heapons Jan 28, 2026
a4f6eb9
Tidy up
Heapons Jan 28, 2026
79c0a34
Attempt to fix erronous "RTV has already started" nagging
Heapons Jan 28, 2026
f2290c4
Auto Maplist builder
Heapons Jan 28, 2026
5a6dcc3
Remove TF2 extensions requirement
Heapons Jan 28, 2026
ea35e22
Fix vote sounds not being correctly played in multi-choice votes
Heapons Jan 28, 2026
0626ad9
Update README.md
Heapons Jan 28, 2026
32b6af3
Fix compile errors
Heapons Jan 28, 2026
00cfa2a
Update workflow
Heapons Jan 28, 2026
4025b2f
Update workflow
Heapons Jan 28, 2026
da70901
Update README.md
Heapons Jan 28, 2026
dc390b0
Update README.md
Heapons Jan 30, 2026
953e097
Revert commit ea35e22
Heapons Jan 31, 2026
4a3166e
Merge branch 'master' of https://github.com/Heapons/sourcemod-nativev…
Heapons Jan 31, 2026
d2af24e
Fix "RTV already started" messages
Heapons Feb 1, 2026
1926d87
Bump version
Heapons Feb 2, 2026
3caf179
Add sm_callvote
Heapons Feb 2, 2026
51e05f2
Remove sm_nominate_use_callvote
Heapons Feb 2, 2026
2294381
Fix mapcycle file not being found when automatically generated
Heapons Feb 2, 2026
94937c3
Fix Change VIP vote issue not showing up
Heapons Feb 2, 2026
162f7f3
Update README.md
Heapons Feb 2, 2026
fc12031
Run workflow on latest Ubuntu version
Heapons Feb 2, 2026
11ea44d
Scramble Teams #4
Heapons Feb 4, 2026
00786d7
Only display "Change VIP" vote issue on VIP(R) maps.
Heapons Feb 4, 2026
df85425
sm_vote tweaks
Heapons Feb 4, 2026
903cbcb
Make NativeVotes optional
Heapons Feb 4, 2026
1aa17c3
Fix Arrays
Heapons Feb 4, 2026
03eaa90
Bump version
Heapons Feb 4, 2026
a960838
Update README.md
Heapons Feb 4, 2026
340de35
Update README.md
Heapons Feb 4, 2026
f72889e
Minor tweaks
Heapons Feb 4, 2026
66ee305
Bump version
Heapons Feb 4, 2026
ef72445
Fix multi-votes
Heapons Feb 4, 2026
0185ad3
Use mp_match_end_at_timelimit
Heapons Feb 4, 2026
60afc70
Bump version
Heapons Feb 4, 2026
c5aae5c
Fix map reset time
Heapons Feb 7, 2026
4035352
Bump version
Heapons Feb 7, 2026
c0bf96f
Fix oversight
Heapons Feb 7, 2026
89dbb00
Add chat trigger
Heapons Feb 7, 2026
a283519
Bump version
Heapons Feb 7, 2026
72ab09b
Instruction hint displays
Heapons Feb 8, 2026
fd0dede
Brought back "You already voted" feedback
Heapons Feb 8, 2026
839484a
Bump version
Heapons Feb 8, 2026
78559e3
Update README.md
Heapons Feb 8, 2026
e4d4649
Hotfix
Heapons Feb 8, 2026
4240430
Bump version
Heapons Feb 8, 2026
c55a5bd
Use server lang for hint captions
Heapons Feb 8, 2026
fcd6dad
fix scramble timer resets for real
megascatterbomb Feb 8, 2026
3c8008c
Merge pull request #10 from megascatterbomb/fixScrambleTimer
Heapons Feb 8, 2026
eb23887
Update README.md
Heapons Feb 8, 2026
7ed42a4
fix mp_maxrounds setting, mapchooser reads m_nRoundsPlayed directly
megascatterbomb Feb 13, 2026
eaf449e
cVar to uncap nominations and pick subset at random
megascatterbomb Feb 14, 2026
0e65244
remove duplicate check, improve cvar ordering
megascatterbomb Feb 14, 2026
582424d
Merge pull request #13 from megascatterbomb/shuffleNominations
Heapons Feb 14, 2026
812d6b4
Merge pull request #12 from megascatterbomb/fixScrambleTimer
Heapons Feb 14, 2026
97d9dad
Tweaks
Heapons Feb 14, 2026
1292255
Bump version
Heapons Feb 14, 2026
0f61a4b
Merge branch 'master' of https://github.com/Heapons/sourcemod-nativev…
Heapons Feb 14, 2026
cd4fc1f
Update README.md
Heapons Feb 14, 2026
2b53aaa
update CTF timers by changing mp_timelimit briefly
megascatterbomb Feb 15, 2026
4c1b21d
Merge pull request #15 from megascatterbomb/fixCTFTimer
Heapons Feb 15, 2026
332ba5f
Hook built-in kick vote menu + SourceBans++ integration
Heapons Feb 19, 2026
65b612b
Add support for Fortress Connected
Heapons Feb 19, 2026
6d4b7de
Un-hardcode vote timer by using sv_vote_timer_duration whenever appli…
Heapons Feb 19, 2026
a6b0a98
Bump version
Heapons Feb 19, 2026
c30fff6
Remove Kickvote Immunity in favor of Base Votes
Heapons Feb 19, 2026
a6178d8
Tweaks
Heapons Feb 19, 2026
0f64079
Update README.md
Heapons Feb 20, 2026
52f14da
Merge branch 'master' of https://github.com/Heapons/sourcemod-nativev…
Heapons Feb 20, 2026
9c8621c
Potential fix for #16
Heapons Feb 20, 2026
2bb5fe0
Fix incorrect calls to CShowActivity2
megascatterbomb Feb 21, 2026
40cea54
Merge pull request #18 from megascatterbomb/stringFix
Heapons Feb 21, 2026
dfb7d58
Revert "(Untested) Fix incorrect calls to CShowActivity2"
Heapons Feb 21, 2026
0a0bc15
Merge pull request #19 from Heapons/revert-18-stringFix
Heapons Feb 21, 2026
d895081
Revert "Revert "(Untested) Fix incorrect calls to CShowActivity2""
Heapons Feb 21, 2026
b8008da
Merge pull request #20 from Heapons/revert-19-revert-18-stringFix
Heapons Feb 21, 2026
d268785
Fix activity prints
Heapons Mar 13, 2026
51e1c1c
Use LANG_SERVER for "Extend Map" and "Don't Change"
Heapons Mar 13, 2026
08329f7
Fix cvar limits
Heapons Mar 13, 2026
8809523
Bump version
Heapons Mar 13, 2026
301d19e
Merge branch 'master' of https://github.com/Heapons/sourcemod-nativev…
Heapons Mar 13, 2026
42d2740
Update nv_compile.sh
Heapons Mar 23, 2026
20062a7
Remove #pragma headers
Heapons Mar 28, 2026
4a82eb2
Use MaxClients instead of MAXPLAYERS
Heapons Mar 28, 2026
6612bb2
Update MapChooser to match official one
Heapons Mar 29, 2026
bb5b615
Bump version
Heapons Mar 29, 2026
e2dffa3
Fix typos
Heapons Mar 29, 2026
1d12756
Merge branch 'master' of https://github.com/Heapons/sourcemod-nativev…
Heapons Mar 29, 2026
00c5337
Prevent map vote if the server is empty
Heapons Mar 30, 2026
8f15fa7
Compile to 1.13.7301
Heapons Mar 30, 2026
b29d15a
Fix formatting
Heapons Apr 8, 2026
bde7967
Bump version
Heapons Apr 8, 2026
8e4d106
Fix mapcycle generator
Heapons Jul 31, 2026
0389904
Update Workflow
Heapons Jul 31, 2026
f367c19
Add missing includes
Heapons Jul 31, 2026
c9c56df
Whoops
Heapons Jul 31, 2026
1ec4922
Fix the vote duration being a second longer than specified
Bradasparky Aug 2, 2026
e9df9ab
Add support for Team Fortress 2 Classified's voting time left visual
Bradasparky Aug 2, 2026
af3d1aa
Merge pull request #26 from Bradasparky/master
Heapons Aug 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 6 additions & 15 deletions .github/nv_compile.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,36 +6,27 @@ versvers=$(spcomp64 -v | grep "Compiler" --color=never | cut -d " " -f 3 | cut -


nv_plugs=("nativevotes")
nv_plugs+=("nativevotes-basecommands")
nv_plugs+=("nativevotes_basecommands")
nv_plugs+=("nativevotes_basevotes")
nv_plugs+=("nativevotes_funvotes")
nv_plugs+=("nativevotes_mapchooser")
nv_plugs+=("nativevotes_nominations")
nv_plugs+=("nativevotes_rockthevote")

nv_plugins_disabled=("nativevotes_votetest")
nv_plugins_disabled+=("nativevotes_votemanager_test")
nv_plugins_disabled+=("csgo_votestart_test")
nv_plugins_disabled+=("votedelay_changelevel")
nv_plugins_disabled+=("votediagnostics")
nv_plugins_disabled+=("votefailed")
nv_plugs+=("nativevotes_voterp")
nv_plugs+=("nativevotes_votescramble")

# we start in git root
pushd ./addons/sourcemod/scripting

mkdir ../plugins/disabled -p || true

mkdir ../plugins || true

for target in "${nv_plugs[@]}"; do
spcomp64 -i"./include/" "${target}".sp -o ../plugins/"${target}".smx || exit 1
done

for target in "${nv_plugins_disabled[@]}"; do
spcomp64 -i"./include/" "${target}".sp -o ../plugins/disabled/"${target}".smx || exit 1
done

popd

mkdir build || true
7za a -r build/nativevotes_sm_"${versvers}".zip scripting/ translations/ plugins/
rm plugins/ -rfv
ls -la

42 changes: 29 additions & 13 deletions .github/workflows/nativevotes.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,22 @@ name: Nativevotes Autobuild
on:
push:
branches: [ master ]
paths-ignore:
- '.gitignore'
- 'LICENSE'
- 'README.md'
pull_request:
branches: [ master ]
paths-ignore:
- '.gitignore'
- 'LICENSE'
- 'README.md'
workflow_dispatch:

jobs:
run:
name: Run action
runs-on: ubuntu-22.04
runs-on: ubuntu-latest

# skip build on '[ci skip]'
if: "!contains(github.event.head_commit.message, '[ci skip]')"
Expand All @@ -18,24 +29,28 @@ jobs:
with:
submodules: true

- name: Setup SourcePawn 1.11 Compiler
uses: rumblefrog/setup-sp@master
with:
version: "1.11.x"

- name: Compile plugins 1.11
- name: Download dependencies
shell: bash
run: |
bash .github/nv_compile.sh
bash
mkdir -p addons/sourcemod/scripting/include/multicolors
mkdir -p addons/sourcemod/scripting/include/ripext
curl -o addons/sourcemod/scripting/include/multicolors.inc https://raw.githubusercontent.com/Bara/Multi-Colors/master/addons/sourcemod/scripting/include/multicolors.inc
curl -o addons/sourcemod/scripting/include/multicolors/colors.inc https://raw.githubusercontent.com/Bara/Multi-Colors/master/addons/sourcemod/scripting/include/multicolors/colors.inc
curl -o addons/sourcemod/scripting/include/multicolors/morecolors.inc https://raw.githubusercontent.com/Bara/Multi-Colors/master/addons/sourcemod/scripting/include/multicolors/morecolors.inc
curl -o addons/sourcemod/scripting/include/ripext.inc https://raw.githubusercontent.com/ErikMinekus/sm-ripext/main/pawn/scripting/include/ripext.inc
curl -o addons/sourcemod/scripting/include/ripext/http.inc https://raw.githubusercontent.com/ErikMinekus/sm-ripext/main/pawn/scripting/include/ripext/http.inc
curl -o addons/sourcemod/scripting/include/ripext/json.inc https://raw.githubusercontent.com/ErikMinekus/sm-ripext/main/pawn/scripting/include/ripext/json.inc
curl -o addons/sourcemod/scripting/include/sbpp_version.inc https://raw.githubusercontent.com/sbpp/sourcebans-pp/refs/heads/main/game/addons/sourcemod/scripting/include/sbpp_version.inc
curl -o addons/sourcemod/scripting/include/sourcebanschecker.inc https://raw.githubusercontent.com/sbpp/sourcebans-pp/refs/heads/main/game/addons/sourcemod/scripting/include/sourcebanschecker.inc
curl -o addons/sourcemod/scripting/include/sourcebanspp.inc https://raw.githubusercontent.com/sbpp/sourcebans-pp/refs/heads/main/game/addons/sourcemod/scripting/include/sourcebanspp.inc
curl -o addons/sourcemod/scripting/include/sourcecomms.inc https://raw.githubusercontent.com/sbpp/sourcebans-pp/refs/heads/main/game/addons/sourcemod/scripting/include/sourcecomms.inc


- name: Setup SourcePawn 1.12 Compiler
- name: Setup SourcePawn 1.13 Compiler
uses: rumblefrog/setup-sp@master
with:
version: "1.12.x"
version: "1.13.7301"

- name: Compile plugins 1.12
- name: Compile plugins 1.13
shell: bash
run: |
bash .github/nv_compile.sh
Expand All @@ -61,3 +76,4 @@ jobs:
with:
tag_name: workflow-build${{ github.run_number }}
files: build/nativevotes*

84 changes: 84 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
*.bat
*.sh
*.exe
*.log
*.smx

.ref

admin.inc
adminmenu.inc
adt_array.inc
adt_stack.inc
adt_trie.inc
adt.inc
banning.inc
basecomm.inc
bitbuffer.inc
clientprefs.inc
clients.inc
commandfilters.inc
commandline.inc
console.inc
convars.inc
core.inc
cstrike.inc
datapack.inc
dbi.inc
dhooks.inc
entity_prop_stocks.inc
entity.inc
entitylump.inc
events.inc
files.inc
float.inc
functions.inc
geoip.inc
halflife.inc
handles.inc
helpers.inc
keyvalues.inc
lang.inc
logging.inc
mapchooser.inc
menus.inc
nextmap.inc
profiler.inc
protobuf.inc
regex.inc
sdkhooks.inc
sdktools_client.inc
sdktools_engine.inc
sdktools_entinput.inc
sdktools_entoutput.inc
sdktools_functions.inc
sdktools_gamerules.inc
sdktools_hooks.inc
sdktools_sound.inc
sdktools_stocks.inc
sdktools_stringtables.inc
sdktools_tempents_stocks.inc
sdktools_tempents.inc
sdktools_trace.inc
sdktools_variant_t.inc
sdktools_voice.inc
sdktools.inc
sorting.inc
sourcemod.inc
string.inc
testing.inc
textparse.inc
tf2_stocks.inc
tf2.inc
timers.inc
topmenus.inc
usermessages.inc
vector.inc
version_auto.inc
version.inc
virtual_address.inc

steam*
ripext*
multicolors*
source*.inc
161 changes: 114 additions & 47 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,47 +1,114 @@
sourcemod-nativevotes-updated
=====================

### NativeVotes SourceMod plugin, with the following fixes:

@nosoop
- [Prevent NativeVote menu callback from freeing in-use forward handle](https://github.com/powerlord/sourcemod-nativevotes/pull/3)
- [Hotfix for 2022-06-22 Update](https://github.com/sapphonie/sourcemod-nativevotes-updated/pull/11)

@rowedahelicon
- [Fixed MvM mission votes from causing an Invalid forward handle](https://github.com/powerlord/sourcemod-nativevotes/pull/8)

@Blueberryy
- [Added Russian translation](https://github.com/powerlord/sourcemod-nativevotes/pull/7)

@arthurdead
- [Sourcemod 1.11 syntax update](https://github.com/arthurdead/sourcemod-nativevotes/tree/sm111-fix)

@sapphonie (me)
- [Stop memleak with FireToClient](https://github.com/powerlord/sourcemod-nativevotes/pull/9)

@justkamiii
- [Fix caps](https://github.com/sapphonie/sourcemod-nativevotes-updated/pull/7)

@HotoCocoaco
- [Add chi translation](https://github.com/sapphonie/sourcemod-nativevotes-updated/pull/8)

@fdxx
- [Fixed L4D2_VotePass](https://github.com/sapphonie/sourcemod-nativevotes-updated/pull/11)

@satanskitty
- [danish and turkish translations](https://github.com/sapphonie/sourcemod-nativevotes-updated/pull/17)

@Spaenny
- [added german translation](https://github.com/sapphonie/sourcemod-nativevotes-updated/pull/18)

@iBoonie
- [fixed a bug where you can spam invalid votes and forcibly prematurely change the level](https://github.com/sapphonie/sourcemod-nativevotes-updated/pull/20)
- [removed an unnecessary ThrowNativeError](https://github.com/sapphonie/sourcemod-nativevotes-updated/pull/21)

This repo also autoreleases all changes to master, compiled on SM 1.11 and SM 1.12. Check out the latest release [here](https://github.com/sapphonie/sourcemod-nativevotes-updated/releases/latest).

NativeVotes is a SourceMod Plugin that lets plugins use the L4D/L4D2/TF2/CSGO built-in vote screens.
It supplies an API that plugins can use to create and display these votes.

It replaces the BuiltinVotes SourceMod extension and has a few new features as well as bugfixes.

![](https://wiki.teamfortress.com/w/images/8/88/Voting_YYN.png)
# <img src="https://cdn.fastly.steamstatic.com/steamcommunity/public/images/apps/440/033bdd91842b6aca0633ee1e5f3e6b82f2e8962f.ico" width="32" height="32" style="vertical-align: text-bottom;">/<img src="https://store.steampowered.com/favicon.ico" width="32" height="32" style="vertical-align: text-bottom;"> NativeVotes — Continued!
This fork aims to expand upon [<img src="https://avatars.githubusercontent.com/u/15315481" width="16" height="16" style="vertical-align: text-bottom;"/> sapphonie](https://github.com/sapphonie)['s work](https://github.com/sapphonie/sourcemod-nativevotes-updated).

> [!NOTE]
> If you want to benefit from this repository's features without NativeVotes, you may safely unload `nativevotes.smx`. Modules will simply fall back to Radio Menus.

> [!WARNING]
> This plugin has only been tested in [<img src="https://cdn.fastly.steamstatic.com/steamcommunity/public/images/apps/440/033bdd91842b6aca0633ee1e5f3e6b82f2e8962f.ico" width="16" height="16" style="vertical-align: text-bottom;"> **Team Fortress 2**](https://store.steampowered.com/app/440)‼ If it doesn't work in any other game, open an [issue](https://github.com/Heapons/sourcemod-nativevotes-updated/issues/new).

# [Differences](https://github.com/sapphonie/sourcemod-nativevotes-updated/compare/master...Heapons:sourcemod-nativevotes-updated:master)
## General
- Include [NativeVotes BaseVotes and FunVotes](https://github.com/powerlord/sourcemod-nativevotes-basevotes) in this repository.
- Show player avatar on vote panel (if the game supports it).
- Applies to: [voteban](https://github.com/Heapons/sourcemod-nativevotes-updated/blob/master/addons/sourcemod/scripting/nativevotes_basevotes/voteban.sp), [votekick](https://github.com/Heapons/sourcemod-nativevotes-updated/blob/master/addons/sourcemod/scripting/nativevotes_basevotes/votekick.sp), [voteburn](https://github.com/Heapons/sourcemod-nativevotes-updated/blob/master/addons/sourcemod/scripting/nativevotes_funvotes/voteburn.sp), [voteslay](https://github.com/Heapons/sourcemod-nativevotes-updated/blob/master/addons/sourcemod/scripting/nativevotes_funvotes/voteslay.sp).
- Chat tweaks.
- Team-colored player names.
- Highlight map names.
- Update [Nominations](https://github.com/Heapons/sourcemod-nativevotes-updated/blob/master/addons/sourcemod/scripting/nativevotes_nominations.sp) and [Rock The Vote](https://github.com/Heapons/sourcemod-nativevotes-updated/blob/master/addons/sourcemod/scripting/nativevotes_rockthevote.sp) to be on par with the latest [Sourcemod](https://github.com/alliedmodders/sourcemod/tree/master/plugins) version.
- Vote Progress HUD:
- <img src="https://developer.valvesoftware.com/w/images/2/2b/Env_instructor_hint_-_icon_info.png" width="16" height="16" style="vertical-align: text-bottom;"> Added `nativevotes_progress_hintcaption` convar to use the style of [game instructor hints](https://developer.valvesoftware.com/wiki/Env_instructor_hint) for supported games.

## <img src="https://cdn.fastly.steamstatic.com/steamcommunity/public/images/apps/440/033bdd91842b6aca0633ee1e5f3e6b82f2e8962f.ico" width="24" height="24" style="vertical-align: text-bottom;"> Team Fortress 2
- Fixes:
- ✔️/❌ vote counts.
- <s>Proper sounds get played upon selecting an item in a **multi-choice** (≤5 options) vote.</s>
- Temporarily reverted. See: https://github.com/Heapons/sourcemod-nativevotes-updated/issues/2#issuecomment-3825973400.
- <img src="https://shared.fastly.steamstatic.com/community_assets/images/apps/3545060/08607ace82bfb52cf8993efe88c2ef00fa25c96f.ico" width="16" height="16" style="vertical-align: text-bottom;"> **Change VIP** vote issue now shows up again.
- Add [`sm_voterp`](https://github.com/Heapons/sourcemod-nativevotes-updated/blob/master/addons/sourcemod/scripting/nativevotes_voterp.sp).
- Controls `tf_medieval_autorp` cvar.
- Maplists in **Vote Setup** now work in **Mann Vs. Machine** as well.
- Added `sm_callvote` command and `callvote` chat trigger to open **Vote Setup**.

## [Rock The Vote](https://github.com/Heapons/sourcemod-nativevotes-updated/blob/master/addons/sourcemod/scripting/nativevotes_rockthevote.sp)
- Admin commands:
- `sm_forcertv`.
- Force a RTV.
- `sm_resetrtv`.
- Reset RTV counts.
- Allow players to retract their rock-the-vote.
- Execute `sm_rtv` again to undo.
---
|Name|Default Value|Description|
|-|-|-|
|`sm_rtv_needed`|`0.60`|Percentage of players needed to rockthevote|
|`sm_rtv_minplayers`|`0`|Number of players required before RTV will be enabled|
|`sm_rtv_initialdelay`|`30.0`|Time (in seconds) before first RTV can be held|
|`sm_rtv_interval`|`240.0`|Time (in seconds) after a failed RTV before another can be held|
|`sm_rtv_changetime`|`0`|When to change the map after a successful RTV: 0 - Instant, 1 - RoundEnd, 2 - MapEnd|
|`sm_rtv_postvoteaction`|`0`|What to do with RTV's after a mapvote has completed.<br>0 - Allow (success = instant change), 1 - Deny|

## [Nominations](https://github.com/Heapons/sourcemod-nativevotes-updated/blob/master/addons/sourcemod/scripting/nativevotes_nominations.sp)
- Support partial map name matches
---
|Name|Default Value|Description|
|-|-|-|
|`sm_nominate_excludeold`|`1`|Specifies if the current map should be excluded from the Nominations list|
|`sm_nominate_excludecurrent`|`1`|Specifies if the MapChooser excluded maps should also be excluded from Nominations|
|`sm_nominate_maxfound`|`0`|Maximum number of nomination matches to add to the menu.<br>0 = infinite|

## [MapChooser](https://github.com/Heapons/sourcemod-nativevotes-updated/blob/master/addons/sourcemod/scripting/nativevotes_mapchooser.sp)
- <img src="https://cdn.fastly.steamstatic.com/steamcommunity/public/images/apps/440/033bdd91842b6aca0633ee1e5f3e6b82f2e8962f.ico" width="16" height="16" style="vertical-align: text-bottom;"> Clean up workshop maps to reduce disk size.
- Automatically generate the mapcycle file.
- <img src="https://cdn.fastly.steamstatic.com/steamcommunity/public/images/apps/440/033bdd91842b6aca0633ee1e5f3e6b82f2e8962f.ico" width="16" height="16" style="vertical-align: text-bottom;"> Import Workshop map collections (requires [Rest In Pawn](https://github.com/srcdslab/sm-ext-ripext) in order to use that feature).

---
|Name|Default Value|Description|
|-|-|-|
|`sm_mapvote_endvote`|`1`|Specifies if MapChooser should run an end of map vote|
|`sm_mapvote_start`|`3.0`|Specifies when to start the vote based on time remaining (in minutes)|
|`sm_mapvote_startround`|`2.0`|Specifies when to start the vote based on rounds remaining. Use '0' on TF2 to start vote during bonus round time|
|`sm_mapvote_startfrags`|`5.0`|Specifies when to start the vote based on frags remaining|
|`sm_extendmap_timestep`|`15`|Specifies how many more minutes each extension makes|
|`sm_extendmap_roundstep`|`5`|Specifies how many more rounds each extension makes|
|`sm_extendmap_fragstep`|`10`|Specifies how many more frags are allowed when map is extended|
|`sm_mapvote_exclude`|`5`|Specifies how many past maps to exclude from the vote|
|`sm_mapvote_include`|`5`|Specifies how many maps to include in the vote|
|`sm_mapvote_novote`|`1`|Specifies whether MapChooser should pick a map if no votes are received|
|`sm_mapvote_extend`|`0`|Number of extensions allowed each map|
|`sm_mapvote_dontchange`|`1`|Specifies if a 'Don't Change' option should be added to early votes|
|`sm_mapvote_voteduration`|`20`|Specifies how long the mapvote should be available for (in seconds)|
|`sm_mapvote_runoff`|`0`|Hold runoff votes if winning choice is less than a certain margin|
|`sm_mapvote_runoffpercent`|`50`|If winning choice has less than this percent of votes, hold a runoff|
|`sm_mapvote_shuffle_nominations`|`0`|If set, allows infinite nominations and picks a random subset to appear in the vote.|
|`sm_mapcycle_auto`|`0`|Specifies whether to automatically populate the maps list.|
|`sm_mapcycle_exclude`|`.*test.*\|background01\|^tr.*$`|Specifies which maps shouldn't be automatically added (regex pattern).|
|<img src="https://cdn.fastly.steamstatic.com/steamcommunity/public/images/apps/440/033bdd91842b6aca0633ee1e5f3e6b82f2e8962f.ico" width="16" height="16" style="vertical-align: text-bottom;"> `sm_workshop_map_collection`|` `|Specifies the workshop collection to fetch the maps from.|
|<img src="https://cdn.fastly.steamstatic.com/steamcommunity/public/images/apps/440/033bdd91842b6aca0633ee1e5f3e6b82f2e8962f.ico" width="16" height="16" style="vertical-align: text-bottom;"> `sm_workshop_map_cleanup`|`0`|Specifies whether to automatically cleanup workshop maps on map change|

## [Scramble Teams](https://github.com/Heapons/sourcemod-nativevotes-updated/blob/master/addons/sourcemod/scripting/nativevotes_votescramble.sp)
> This is a module that makes Scramble Team votes behave like Rock The Vote.

- Player commands:
- `sm_votescramble` (alias: `sm_scramble`).
- Attempt and request a Scramble Teams vote.
- Admin commands:
- `sm_forcescramble`.
- Force a scramble teams vote.
- `sm_resetscramble`.
- Reset scramble teams counts.
- Allow players to retract their scramble teams vote.
- Execute `sm_votescramble` or `sm_scramble` again to undo.

> [!NOTE]
> It overrides built-in **Scramble Teams** vote issue.

---
|Name|Default Value|Description|
|-|-|-|
|`sm_scrambleteams_needed`|`0.60`|Percentage of players needed to scramble teams|
|`sm_scrambleteams_minplayers`|`0`|Number of players required before scramble will be enabled|
|`sm_scrambleteams_initialdelay`|`30.0`|Time (in seconds) before first scramble can be held|
|`sm_scrambleteams_interval`|`240.0`|Time (in seconds) after a failed scramble before another can be held|
|`sm_scrambleteams_full_reset`|`1`|Whether time/rounds played should reset after a scramble is triggered|
Loading