I den här guiden tänker jag försöka täcka själva installationen av SourceMod och då också MetaMod. Jag kommer också gå igenom hur man lägger till en admin i SourceMod. Sen så kommer jag avsluta denna guide med att gå igenom hur plugins fungerar och hur man kompilerar sitt egna plugin eller ändrar på ett befintligt.
Detta är inte en snabb och kortfattad guide om hur man installerar SourceMod på en server, utan en övergripande guide som är meningen att göra dig bekant med och bekväm i att arbeta med Source servrar samt att inte behöva bli vilseledd av personer som inte vet vad det är dom pratar om.
Förord.
Varför SourceMod?
Det finns en handfull olika script- och pluginmotorer till Source Dedicated Server. Därför tänker jag börja med att styra upp lite i vad allt är och vilka som gör dem.
Till att börja med så kan man titta på Source. Source Dedicated Server eller SRCDS, som den förkortas till, vilket är Valves server program. Detta server program är byggr för att vara väldigt mod-vänlig och tillåter därför att man installerar tredje hands plugins i den.
Dessa plugins fungerar enkelt genom att göra det möjligt att skicka eller utföra vissa saker på servern som tidigare inte var möjligt. Den vanligaste funktionen man använder plugins till är oftast att kunna ge ut admin rättigheter på servern baserat på personens SteamID istället för att personen behöver logga in i Rcon.
Funktioner så som att byta bana, rösta, ban, kick, mute, gage, burn, teleport med mera är också saker som stödjs genom SRCDS men som genom tredje hands plugins görs tillgängliga igenom smarta menyer eller chat kommandon så som RTV, VoteBan med mera.
MetaMod:
MetaMod förklaras på deras hemsida så här:
"Metamod:Source is a C++ plugin environment for Half-Life 2. It acts as a "metamod" which sits in between the Game and the Engine, and allows plugins to intercept calls that flow between. It provides a mechanism called SourceHook, a very powerful library for intercepting, overridding, and superseding virtual function calls."
Vilket är en väldigt invecklad beskrivning av pluginet. Vad detta betyder enklare uttryckt är att MetaMod är en pluginmotor som kör plugins kompilerade i C++, vilket är ett väldigt stabilt och avancerat programmerings språk. Detta plugin sitter alltså och avlyssnar flödet med information som skickas mellan spelmodden, spelare och servern. MetaMod tar sen och anropar ett plugin som utför en given funktion baserat på vad som skickas i flödet. Alltså vad som händer på servern.
SRCDS har redan en C++ baserad pluginmotor, men då den är väldigt underdimensionerad så fungerar MetaMod bättre.
MetaMod är dock helt oanvändbart utan några plugins. Se det bara som en motor i bakgrunden för att byta ut Valves egna. Se till att ha den uppdaterad och använd så några plugins i den som möjligt. Helst bara ett. Ha som tumregel att alltid minst hålla MetaMod mellan dig och din server. Installera tex helst aldrig något plugin som körs parallellt med MetaMod.
Den officiella hemsidan för MetaMod är http://sourcemm.net/.
Mani Admin Plugin:
Mani Mod är en relativt gammalt plugin till MetaMod och har nu fyllt sitt syfte. Mani Mod var ett tidigt Admin Interface och blev på så sett det klara valet av admin interface till SRCDS. Dock var det länge sedan SRCDS släpptes och utvecklingen av Mani Mod har avstannat lite sedan ett tag tillbaka.
Den låga frekvensen på uppdateringar har lett till att det finns väldigt många buggar och säkerhets hål i det som är väl dokumenterade och kända. Använder du Mani Mod så rekommenderas du starkt att byta. SourceMod är då det klara valet, vilket jag snart kommer till, och för den som inte är bekväm i att vänja sig vid nya kommandon så finns det plugins som översätter mani kommandon till SourceMod kommandon för att förenkla övergången.
Fördelarna med Mani Mod var att det fungerade som ett paket och man fick en hel drös simpla till avancerade funktioner i ett och samma paket. Det negativa med det är dock att det gör det svårt att optimera och ger inte lika stora förutsättningar till att konfigurera din server exakt så som du vill ha den.
En annan negativ aspekt med Mani är att det utvecklades bara av en person och gjorde då att projektet stog och föll på en människas engagemang. Detta är inte en långsiktig och hållbar lösning för ett så stort projekt som Mani växte till.
Den officella hemsidan för Mani är http://www.mani-admin-plugin.com/.
Eventscript:
Eventscript är ett plugin till SRCDS som alltså körs parralellt med MetaMod. Eventscript är till skillnad emot SourceMod eller MetaMod en script motor. Pluginsen till Eventscript är alltså inte kompilerade plugins utan textfiler innehållande python script. Du kan alltså när som helst gå in och ändra i dessa textfiler. Detta gör Eventscript till en väldigt flexibelt script motor och gör det också enklare att distribuera scripten.
Nackdelarna är att det går åt mycket mer prestanda samt att instabiliteten ökar. Chansen att man laddar ner ett dåligt scriptat plugin är också stor då du vet först efter att du installerat scriptet om det faktiskt fungerar eller inte.
Många använder ES parrallelt med MetaMod och SourceMod, men detta är ett dumt slöseri med prestanda då ES är ett komplett system och inte bara en liten script motor på sidan av. Försök därför att undvika att använda dig av ES så länge du verkligen inte behöver då tex ett script inte finns till SourceMod eller dylikt.
Samma sak som Mani så är ES i grund och botten upprätthållet av en person dom kallar sig Matti, den öppna naturen av ES gör det dock enkelt för andra att bidra med sina egna ideer och därför är ES inte lika instabilt och osäkert som Mani. Men om vi tittar på detta ifrån en objektiv synvinkel så är det inte heller en hållbar lösning.
Den officiella hemsidan för Eventscript är http://www.eventscripts.com.
SourceMod:
SourceMod är ett plugin till MetaMod som utvecklas av samma grupp människor/person som också gör MetaMod.
SourceMod är det solklara valet om man vill ha det proffisionellaste och mest avancerade, men på samma sätt mest lättanvändliga och stabila, pluginmotorn till SRCDS.
Av säkerhets och stabilitets skäl så sa jag tidigare att man ska försöka hålla MetaMod emellan dig och din server. Det är på den principen SourceMod är byggt. Genom att sätta två lager mellan dig och din server så minskas riskerna att ha plugins och funktioner som konkurerar med varandra.
I SourceMods fall så sköts alla funktioner utanför själva kärnan i SourceMod av plugins. Tex så sköts alla Admin funktioner av ett par admin plugins och inte av kärnan. Detta gör att du enkelt att ändra allt som har med admins att göra genom att bara byta eller lägga till nya plugins som berör admins. Man kan också ta bort alla plugins som tar hand om admin funktioner och får på så sett en server helt utan möjligheten att ha admins. Denna skalbarhet i kombination med OpenSource samt den enkla kompilatorn gör SourceMod till den mest flexibla och stabila pluginmotorn till Source.
Samma sak gäller allt ifrån chatkommandon till map- och menyhantering med mera.
SouceMods plugin scriptas i SourcePawn och kompileras ner till C++.
Alltså med SourceMod och MetaMod så arbetar man med principen att ett plugin gör en sak bra. Istället för att ett plugin ska göra allt halvkasst.
När något då händer inne på servern som aktiverar en funktion du själv lagt in så ser hierarkin ut så här:
SRCDS-->MetaMod-->SourceMod-->SourceMod-Plugin
Om ett plugin nu mot förmodan skulle uppföra sig konstigt så finns det två lager emellan det och SRCDS vilket gör att SourceMod kan logga felet eller helt enkelt bara stoppa pluginet utan att på så vis påverka resten av servern. Ett plugin i SourceMod kraschar sällan en server, utan kraschar oftare bara vissa funktioner i SourceMod.
Detta gör felsökning så mycket lättare i SourceMod än det är i någon annan pluginmotor.
Till skillnad ifrån Eventscript och Mani så är MetaMod och SourceMod OpenSource projekt som huserar innom paraply organisationen AllianceModders. Detta gör detta till ett mycket säkert kort då projektet inte står och faller på en persons engagemang utan om någon av grundarna skulle tröttna eller på annat sätt inte vara tillgänglig att fortsätta så betyder det inte döden för projektet.
Skillnaden mellan script som läses in i runtime och färdigkompilerade plugins.
Skillnaden mellan script som läses in i runtime och färdigkompilerade plugins är att när man kör ett script i tex Eventscript så behöver scriptmotorn läsa igenom scriptet och sen omvandla detta till maskin kod för att sen utföra de nödvändiga funktionerna. Så när ett script läses in i Eventscript så behöver Eventscript läsa igenom koden, ta bort alla kommenteringar, kolla om scriptet faktiskt är korrekt och körbart, sen kan funktionen användas inne på servern. Detta stjäl prestanda av din server om man jämför med färdigkompilerade plugins.
När ett plugin är kompilerat i förväg så låter man en extern kompilator läsa igenom koden, länka in nödvändiga biblotek, rensa bort kommenteringar med mera i förväg. Sen har man ett färdig kompilerat plugin som är optimerat av kompilatorn för att köras så snabbt och stabilt som möjligt. Smidigheten är då också att det blir svårare att göra fel i koden då error i koden gör att det inte går att kompilera alltså så tas detta hand om innan man lägger in pluginet i servern. Vilket gör att resultatet är ett stabilare och snabbare plugin.
Summering.
Nu kanske det är lite mer klart i varför man bör välja SourceMod och varför det inte är värt att bry sig om vare sig Mani eller Eventscript. Då det finns människor som är rätt så konservativa i valet av plugin- och scriptmotorer på internet (det kan man se på att Mani fortfarande är det mest använda) så känner jag att det är värt att sprida kunskapen om varför man inte ska använda dem. Jag läser ofta på forum hur folk rycker lögner ur arslet om hur ES är snabbare och bättre än SM och hur Mani är stabilare, men detta är bara som sagt lögner och som påvisar personens okunskap i vad den pratar om. Jag ser även folk som rekommenderar att man installerar alla tre pluginsen på samma server, vilket är det dummaste jag någonsin hört.
Varför göra något om man inte gör det korrekt?
Föreberedelser
Till att börja med så behöver du en Source Server installerad på din dator eller server. Om du har en köpt server så har du troligen FTP åtkomst till den.
Om du inte har en server så kan du börja med att följa min första guide Installera en fristående Source Server. Om du gör sista steget i den guiden så har du redan SourceMod och MetaMod installerat i din server.
Du bör verkligen bekanta dig med manualen. Vilken kommer vara din bibel i början. Den hittar du här: Dokumentation
Du kan tex kolla alla admin kommandon här: Admin Kommandon
Eller alla allmänna kommandon här: Allmäna kommandon
Installera MetaMod och SourceMod
Installera MetaMod
SourceMod installerar du genom att först installera MetaMod.
- Ladda ner Metamod:Source (zip filen!)
- Packa upp filerna till C:/HLServer/Css servers/Server 1/cstrike. Du får då en ny mapp som heter addons i mappen cstrike.
- Klicka här för att generera metamod.vdf för din server. Lägg sen den filen i addons mappen.
- Starta om servern.
- Skriv "meta version" i konsol fönstret. Du kommer då att kunna läsa "Loaded As: Valve Server Plugin." Om inte det fungerar försök igen eller Felsök.

Installera SourceMod
Sen är det bara att installera SourceMod.
- Ladda ner SourceMod.
- Packa upp filerna till C:/HLServer/Css servers/Server 1/cstrike.
- Starta om servern.
- Skriv "meta list" i konsol fönstret. Du kommer då att kunna läsa
Listing 1 plugin:
[01] SourceMod (1.1.0.2489) by AlliedModders LLCOm inte det fungerar försök igen eller Felsök.


Om du inte får upp detta så har du gjort något galet. Testa att backtracka lite och gå igenom stegen jag nämnt här innan igen.
Om du får upp SourceMod i din lista på plugins till MetaMod så har du lyckats med installationen. Då är det bara att fortsätta.
Bekanta dig med SourceMod
Nu när vi vet att allt fungerar så ska vi börja med att bekanta oss med SourceMod innan vi börjar lägga in alla plugins och admins.
Om vi tittar i vår cstrike mapp så ser vi att vi har en ny mapp som heter addons det är i denna mapp som alla plugins till Source Servern ligger. Öpnnar vi och kollar i addons så ser vi två mappar och en fil. MetaMod och SourceMod samt .vdf filen du la in.

Mappen sourcemod är root mappen för SourceMod. Alltså den mappen som SourceMod utgår ifrån och där alla filer kommer att ligga. Alla filer förutom några enstaka config filer som hamnar i cstrike/cfg/sourcemod. Dessa två mappar är de enda ställena du kommer lägga eller hitta filer associerade med SourceMod.
Om vi går in i SourceMods root mapp och kollar vad vi har där så hittar vi följande mappar.

Här ska jag förklara lite simpelt vad de olika mapparna innehåller och varför de finns där.
bin I mappen bin så ligger alla de binära filerna till SourceMod. Dessa behöver du inte bry dig om så länge du inte uppdaterar.
configs I mappen configs så ligger config filerna för tex admins, olika plugins. Dock så ligger vissa config filer i cstrike/cfg/sourcemod också. Man kan enkelt säga att de config filerna som ligger i mappen configs är de inställningar som påverkar hur pluginet fungerar och i de som ligger i cfg/sourcemod påverkar vad pluginet ska göra.
data I data så sparas inställningar av plugin som "kommer ihåg" där ligger tex Sqlite databaserna samt andra databas liknande filer.
extensions I extensions ligger dller som ger SourceMod och plugins nya funktioner. Det finns en handfull extensions du kommer lägga in här.
gamedata I gamedata mappen så ligger det text filer som förklara för vissa plugins hur de ska förhålla sig med olika operativsystem och olika mods. Här kommer du lägga in en hel del gamedata filer.
logs I mappen logs hamnar alla loggar som SourceMod producerar. Error loggarna hamnar här, vilket är första stället du ska kolla om något inte fungerar.
plugins Det är i plugins mappen man lägger alla .smx filer, som är kärnan i alla plugins. Här ligger alltså alla kompilerade plugins. Om du lägger in andra mappar i mappen plugins och sen lägger plugins i dem så kommer det fortfarande laddas in i SourceMod förutom om du lägger dem i mappen disabled.
scripting Här ligger alla källkoderna till alla plugins, här hittar du även kompilatorn, vilken ingår i alla SourceMod installationer. Ska du utveckla dina egna plugins eller vill ändra ett befintligt så är det här du kollar.
translations Här hittar du alla språkfilerna till SourceMod samt alla plugins. Vill du ändra någon översättning eller lägga till en egen så lägger du dem i denna mapp.
Hur fungerar SourceMod
SourceMod bygger på att det ska vara flexibelt. Man kan alltså göra det mycket avancerat eller ta bort nästan allt. Styrkan i SourceMod ligger i att allt inte är ihop klumpat i ett stort paket utan att kärnan i SourceMod inte tar hand om så mycket mer än att organisera alla plugins.
Grundläggande funktioner som följer med när man installerar ligger inte i SourceMods kärna utan de ligger i plugins. Därför så kan du enkelt ta och flytta de plugins du inte vill ha till mappen disable i plugins.
Möjligheten att installera extensions gör SourceMod väldigt kraftfullt också. Vilket möjligör för utvecklare att tex göra en extension som tar hand om sockets och sen kan alla plugins utnyttja den nya funktionen. Ett populärt exempel är tex extension Sockets som gör att SourceMod kan koppla upp sig till IRC, då kan alla olika plugins med IRC funktioner använda den funktionen istället för att alla plugins ska ha egna funktioner för detta.
Plugins är också uppmuntade att arbeta med varandra. Tex ett plugin så som KAC vilket är ett säkerhets plugin samarbetar med SourceBans vilket är ett plugin för att hantera bans. Detta gör att man kan se de bans som KAC har gjort i SourceBans.
Det finns många fler exempel där denna teknik används så som tex meny plugins och liknande.
Allt detta följer principen att låta en sak speciallicera sig på att utföra en grej så stabilt och optimerat som möjligt, allt i sann OpenSource anda.
När ett plugin byggs till att ta hand om mer än vad som är nödvändigt så brukar man refferera till det som att pluginet har blivit Bloated det är då rekommenderat att man delar på pluginet och igen låter ett plugin utgöra en sak och detta så optimerat som möjligt.
Plugins A-Ö
Då ger vi oss i kast med att lära oss allt vi kan tänkas behöva veta om plugins till SourceMod.
Ett plugin till SourceMod programmeras i SourcePawn vilket sen kompileras till c++ baserade plugin som får filändelsen .smx. Ett plugin kan därför bestå av minimum en .smx fil men för det mesta flera andra filer och ibland flera olika .smx filer.
De filer som ett plugin normalt kommer med är tex en gamedata fil samt en phrases fil.
Var de andra filerna ska placeras står oftast på hemsidan men om det inte står så råder följande:
sm_exempel.smx placeras i sourcemod/plugins
sm_exempel.games.txt placeras i sourcemod/gamedata
sm_exempel.gamedata.txt placeras i sourcemod/gamedata
sm_exempel.signatures.txt placeras i sourcemod/gamedata
sm_exempel.phrases.txt placeras i sourcemod/translations
sm_exempel.ini placeras i sourcemod/configs (inte ett måste, men vanligast)
sm_exempel.sp placeras i sourcemod/scripting (inte nödvändigt att ladda ner förutom om man ska kompilera själv)
Hitta och ladda ner plugins
SourceMods plugins går att hitta på SourceMods hemsida där man enkelt och smidigt kan ladda ner dem kompilerade genom SourceMods webbkompilator. Men man kan också välja att ladda ner källkoden och kompilera pluginet själv lokalt på din dator.
Men nu ska vi hitta ett plugin vi vill ha. Gå till hemsidan och klicka på Plugins i den vänstra menyn. Då kommer du till sökfunktionen för alla Approved plugins. Dessa plugins har blivit kontrollerade av SourceMods utvecklings team, och följer då SourceMods riktlinjer för hur ett plugin ska skapas och vilka konfig alternativ som ska finnas.
Detta gör det väldigt smidigt för oss andra då man nästan alltid kan vara säker på att pluginet är stabilt och lätt att konfigurera, samt att om det rapporteras in nya buggar i pluginet så brukar det gå snabbt med uppdateringar för om pluginet inte uppdateras så riskerar skaparen att få sitt plugin Unapproved.
Om ett plugin blir Unapproved så kommer det bara flyttas till den delen i SourceMods forum, inte raderas. Detta gör så att gamla döda plugins kan hittas av nya piggare utvecklare som kan fortsätta där den föregående utvecklaren slutade.

Om vi tar och bryter upp vad an kan göra i sökningen så har man först och främst de olika alternativen så som att söka på plugins i en viss kategori tex alla som har med Server Manengement att göra eller Fun. Sen så kan man välja vilken Mod det gäller. Detta är dock bara bra om man letar efter något plugin som bara fungerar till en viss speltyp. Då de flesta pluginsen funkar till alla speltyper så rekommenderar jag att man inte väljer Cs:s i sökningen då man missar många plugins som du faktiskt kan ladda ner.
I raden Titel så kan du söka efter pluginsens namn. Skriver du tex map så får du upp alla plugins som har map namnet. Dock så har inte alla plugins bra namn så därför kan man behöva skriva tex map i Description istället för att hitta rätt plugin.
Vad som är bra att veta är att om du söker blankt så får du en lista på alla plugins som finns för tillfället. Kan vara en liten modemdödare för långsamma internet användare då listan är ganska stor.
De plugins som hamnar längst ner är de som lagts in senaste. Detta är det enklaste sättet att kolla alla nya Approved plugins.
Vill man kolla de plugins som håller på att skapas så får man göra detta på forumet. Dessa kan dock vara under utveckling så man får hålla koll.
Ett annat sätt att hitta plugins är att kolla på Stats som man hittar i menyn till vänster. Där ser man en lista på alla plugins som Source Servrar använder, då inte bara SourceMod plugins utan alla olika. De sorteras efter populäritet och kan därför vara en smidig indikator på vad andra server admins använder.
Plugin beskrivnings sidan
När man klickar sig in på ett plugin så kommer man till beskrivning av det pluginet. Detta ligger som en tråd i alliedmods.net's forum och där varje plugin har en egen special utformad tråd.
Det är därför enkelt att se information om varje plugin då de måste följa en viss mall för att bli publicerade samt så är det enkelt att följa med i diskussionerna runt plugins. Har man ett problem att få ett plugin att funka. Läs igenom inläggen i tråden innan du börjar fråga om hjälp 99% av fallen har någon redan frågat din fråga och utvecklaren har redan svarat på den.
Här följer en liten bild där jag brutit upp pluginbeskrinvnings sidan. Klicka för att se den större.
Jag har valt Admin Logging som exempel här då det är ett väldigt simpelt plugin.
Tänk på att:
Läs alltid igenom plugin beskrivningen.
Kontrollera om pluginet består av flera filer, tex gamedata filer eller liknande.
Kontrollera Plugin Dependencie står det något där så måste du installera de sakerna först.
Kontrollera om pluginet är Approved eller Unapproved. Är det Unapproved så låt det vara om du inte vet vad du gör.
Kontrollera om det finns några kända buggar.
Kontrollera när pluginet senaste uppdaterades.
Finns det flera filer i rutan Attached Files så kommer du garanterat behöva ladda ner dem också. Dock inte .sp filer.
Ladda ner och installera ett plugin
För att ladda ner och installera ett plugin så behöver du bara klicka på länken Get Plugin nere i Attached Files. När du gör detta så kompileras pluginet automatiskt och du kan ladda ner det på din dator.
Att tänka på här är att när SourceMod uppdateras så uppdateras också WebbKompilatorn, vilket kan göra så att plugins du laddar ner via webbkompilatorn inte är bakåt kompatibla till gamla versioner av SourceMod. Var därför nogrann med att uppdatera din installation av SourceMod, om du mot förmodan inte kan göra detta så var nogrann med att läsa på innan.
Om du kan välja att ladda ner ett plugin färdigkompilerat så som i exemplet här nedanför, så avstå helst så länge det inte finns en anledning till det. Sånt står för det mesta.

Du kan enkelt ladda ner pluginet direkt i din plugins mapp samt placera in alla andra filer som behövs där de ska ligga. Eller spara ner dem i någon temp mapp och senare flytta in dem där de ska vara.
Om vi tar Admin Logging som exempel så består det pluginet bara av en fil och när denna är inlaggd så har du tre val.
Antingen startar du om servern, eller så byter du bana med kommandot sm_map banans-namn. Fast enklast är att skriva sm plugins refresh i server konsolen. Det tvingar SourceMod att ladda om alla plugins. Dock klarar inte alla plugins av detta, men då står det oftast i beskrivningen.

För att sen testa om ditt plugin har blivit inlagt i SourceMod korrekt så använder du kommandot sm plugins list i server konsollen.

Nr 18 "Admin loggin" lite felstavat men det fungerar precis så som det ska. Underbart.
Om ditt plugin inte skulle synas i listan eller om det står "Unable to load ****" så gå till sourcemod/logs och kolla i den senaste error loggen. Där kan du få fram vettig info om varför ditt plugin inte laddades in. Vanligaste felet brukar vara att man glömt en gamedata eller phrases fil eller liknande.
Får du inget fel så är det klart. Utför samma procedur på alla andra plugins. En smart sak att försöka förhålla sig till är att installera ett plugin i taget. Detta minskar chanserna att något ska gå fel och om det går fel så är det mycket lättare att hitta varför.
Inkludera map hanterings plugin
Om du ska ha en server som inte är en stenhård seriös match server så rekommenderar jag att du lägger in plugins för att hantera maps.
Dessa plugins tar hand om saker så som Random Cycle och Rock The Vote och förljer med din installation av SourceMod. Dock så är de inaktiverade från början. Detta bara för att de inte är en självklarhet att man vill använda dem. Men i normala fall så vill man ha dem så vi går till mappen C:/HLServer/Css servers/Server 1/cstrike/addons/sourcemod/plugins/disabled:
Här har vi 7st plugins som ligger inaktiverade från början.

Vi tar och går igenom dessa.
admin-sql-prefetch.smx Detta är det medföljande pluginet för att hantera Admins ifrån en databas. Detta plugin hämtar alla admins vid varje mapstart.
admin-sql-threaded.smx Detta är det andra medföljande pluginet för att hantera Admins ifrån en databas. Detta plugin hämtar alla admins parrallelt samtidigt som spelet körs. Drar lite mer prestanda men är mer dynamiskt.
sql-admin-manager.smx Detta pluginet är det som tar hand om att lägga till och ta bort admins ifrån databasen om man använder något av de ovan nämnda pluginsen.
mapchooser.smx Mapchooser tar hand om röstningar på banor. Tex så kan man aktivera det att starta en omröstning Xmin innan banan är slut.
nominations.smx Med nominations så kan man nominera banor till Rock The Vote.
randomcycle.smx Random Cycle väljer en bana slumpmässigt som den kommer byta till om ingen annan bana blir vald. Istället för att förlita sig på mapcycle.txt statiska lista.
rockthevote.smx Rock The Vote är det plugin som gör att man kan skriva RTV för att då rösta på att byta bana.
Här har man ett väldigt konkret exempel på hur SourceMod fungerar. Istället för att ha ett plugin som hanterar alla map relaterade funktioner så har man 4st. Nominations ger tex bara en extra funktion till Rock The Vote. Vill man inte ha Nominations så är det bara att ta bort den, och på så sätt sparar man prestanda.
Vad vi vill göra med vår server är att flytta rockthevote.smx, randomcycle.smx, mapchooser.smx och nominati

