Rock The Vote (RTV) and nextmap Setup Guide

July 2, 2025 Daemon666 8 min read 11 visualizações

Map voting on CS 1.6 is three separate pieces that people conflate: the nextmap plugin that announces and schedules the next map, the end-of-map vote (mapchooser), and Rock The Vote — a mid-map player-initiated vote to change early. Two of those ship with AMX Mod X; RTV does not, and knowing which is which saves a lot of confusion.

1. Know what AMX Mod X already gives you

A default AMX Mod X install (see installing AMXX 1.9) enables these in configs/plugins.ini:

  • nextmap.amxx — reads mapcycle.txt, powers say nextmap, and forces the scheduled map at time limit.
  • timeleft.amxxsay timeleft and say thetime.
  • mapchooser.amxx — the end-of-map vote menu that pops up in the final minutes.

None of these is Rock The Vote. RTV is a third-party plugin you add on top.

2. Configure the end-of-map vote (mapchooser)

By default mapchooser draws candidate maps from your mapcycle. You can pin an explicit pool instead with a votemap list at configs/maps.ini (one map per line). The cvars that matter live in amxx.cfg or server.cfg:

amx_extendmap_max 90     // total extra minutes a map may be extended to
amx_extendmap_step 15    // minutes added each time "Extend" wins
amx_vote_ratio 0.02      // fraction of players needed for a valid result
amx_vote_time 10         // seconds the vote menu stays open

The vote fires in the closing minutes of mp_timelimit, so this whole system does nothing if mp_timelimit 0. Set a real time limit first — see the mp_ cvars reference.

3. Add a real Rock The Vote plugin

Install the RTV .amxx into addons/amxmodx/plugins/ and add its line to plugins.ini. Because RTV changes the map mid-round on demand, it needs guardrails so it cannot be spammed at round one:

// typical RTV cvars — confirm names against your plugin's own .sma/docs
rtv_delay 15.0      // minutes into the map before RTV is allowed
rtv_ratio 0.60      // fraction of connected players who must type rtv
rtv_wait 5.0        // minutes between failed RTV attempts
RTV plugins are not standardized. Cvar names differ between the popular versions, so read the header of the exact .sma you deploy rather than copying a list. The three concepts above — delay, ratio, cooldown — exist in every good implementation, whatever they are named.

Load order matters: RTV, mapchooser and nextmap all want to control the next map, and the one that registers first wins the forward. Put your vote plugins in a deliberate order in plugins.ini — see plugins.ini load order. If you want a maintained pairing, the CSB Mapchooser plugin bundles RTV, nominations and the end-map vote so they do not fight each other.

4. Nominations and extend

Most RTV setups pair with a nominate command (say nominate or say /nominate) so players can push a specific map into the ballot. Keep the nomination pool identical to the vote pool — a map that can be nominated but is not installed produces a vote that resolves to a map the server then cannot load. The Extend option is governed by amx_extendmap_max and amx_extendmap_step above; set the max to a sane ceiling or a popular map gets extended for hours.

5. Make the schedule visible

Give players the commands so they use them instead of asking:

say nextmap     // what plays next
say timeleft    // time remaining on this map
say thetime     // real-world server clock

An adverts plugin that periodically prints these keeps the chat calm near map end.

Common errors

  • RTV "does nothing" — the ratio is unreachable on a low-population server (60% of 4 players is 3, and two of them are bots). Lower rtv_ratio for small servers.
  • Vote never appears at map endmp_timelimit is 0, or mapchooser is not in plugins.ini. The vote is scheduled off the time limit.
  • Two menus pop at once — RTV and mapchooser both triggered. Configure RTV to hand off to the end-map vote rather than run its own, or disable one.
  • Vote resolves to a missing map — your vote/nominate pool lists a map that is not in cstrike/maps/. Keep the pool and the installed maps in sync.
  • Nextmap wrong after a vote — a plugin changed the scheduled map but nextmap re-read the cycle. This is a load-order conflict; order the plugins deliberately.

Verification

Set mp_timelimit 2 on a test server, connect, and type rtv with enough clients (or bots plus a lowered ratio) to cross the threshold — the vote menu must appear and the winning map must load. Separately, let the two minutes expire without voting and confirm mapchooser runs and say nextmap matched the result. When both paths work, restore your real mp_timelimit.

Colaboradores: Daemon666 ✦
Compartilhar: