Jump to content

6 Screenshots

About Map Voter and Auto wipe script

This plugin makes the admin’s life easier by automatically generating maps, initiating a vote that lets users choose which map they would like to play in during the next wipe and auto wiping the server.

Depends on:

Image Library

Wipe Info API (If your server in country that have forced wipe at Friday please use WipeInfoApi file in MapVoter/WipeInfoApi/WipeInfoApi .cs)

Discord extension

UnZip for Windows

Update 1.4.67:

Added:

  • Single Discord message now supports up to 4 maps.
  • Wipe countdown in Embed.

Fixed:

  • Magnify icon not showing.

New config options:

You must set the Embed URL if you want to use the Single Discord embed message.

"Embed Url": "https://codefling.com"
"Single Embed?": false

Note: The single message will only display 4 maps, but you can add more.

Capturedcran2023-07-28212533.png.2c70686161d612bbef18adad40af5ad8.png

Capturedcran2023-07-28212624.png.5bcd8ba32b4fc7ea70886dd505400f34.png

Update 1.4.64:

Server administrators can list data files to be deleted after the wipe

"Plugins Data wipe": {
    "Enable plugins data wipe on forced wipe day": true,
    "Enable plugins data wipe on map wipe day": true,
    "File names to be deleted on forced wipe day": [
      "wipeinfo",
      "WipeInfoApi"
    ],
    "File names to be deleted on map wipe day": [
      "wipeinfo",
      "WipeInfoApi"
    ]
  }


If you utilize a game hosting service, please ensure that your host permits the modification of the startup command.

Update 1.3.26 :

Auto wipe now works for non Dedicated (game server or host) servers but you'll have to disable  sandbox and you won't be able to auto update the server.

Requirements

Rust Server(s) setup in a standard way on a Windows ,Pterodactyl Panel , Open Game Panel, Ubuntu dedicated server or game/host server (Doesn't work on LinuxGSM).

Administrator privileges on said dedicated server.

All of your server settings in \server\my_server_identity\cfg \server.cfg except rcon.port ,rcon.web rcon.password which will be added to batch script later.

Auto Wipe will launch the server without start.bat.

Features:

Automatically restart and update the server every first Thursday of the month.

Automatically generate or select random maps from rustmaps.com filter maps on wipe day  or x days before wipe using https://rustmaps.com/ & wipe-info-api and start the vote.

Allows players to vote on maps through an in-game UI or Discord (if you use any plugin that links a player and a Discord user, enable “only authenticated users can vote” in the config file to avoid duplicate votes).

Automatically checks if it’s wipe day using wipe-info-api and the plugin’s config.

Automatically update Oxide and the server and wipes it on forced wipe.

Configure the plugin through a GUI (not all settings are available on the GUI).

Select maps from rustmaps.com through a GUI via a RustMaps share code.

Added Custom maps via GUI (to delete map you have to delete it from data file in MapVoter/Custommapdata.json).

The vote will start automatically on custom maps in data folder if custom maps usage is enabled in config.

Fun kit.

Automatically generates custom maps every wipe, utilizing RustMaps.com. Please note that to use this feature, a subscription to RustMaps.com is required.

Update 1.4.61

In this update you can generate a custom maps every time map vote starts with same config you provided.

Update 1.3.40

New UI

20220826152304_1.thumb.jpg.8836d06e186fa435696478de134fb80e.jpg20220826152316_1.thumb.jpg.a82625b4d8a17d8eb9412c0f50748341.jpg

 

Update 1.3.35
1- Added Fun kit.

Fun kit is kit that will be enabeled before every wipe, players can redeem it using /kit <kit name> or when respawning.
Players wont be able to learn BPs and unloack workbench tree nodes.
How to add fun kit?
1 - create kit using kits plugin with permission example :
2 - In map voter config file edit :
    "Fun Kit": {
    "Fun kit enabled": false,
    "Enable Fun kit x minutes before wipe": 0,
    "Kit name": null,
    "Permission": null
  },
3 - save and reload MapVoter.

2 - Map Voter will print future wipes in console when loaded 
 

How to add Custom maps : 

20220109210617_1.thumb.jpg.0cbe8badbeb3b6eb60b457a3e0f9f7d2.jpg

20220109210623_1.thumb.jpg.3b12d07e5cd50be770e04fc5bec5fa18.jpg

20220109210625_1.thumb.jpg.40e76aef70078aa88b2b54ad3c5e0250.jpg

20220109212023_1.thumb.jpg.a8ee8e9dae12cdf56032abbfa940e1f0.jpg

20220109212953_1.thumb.jpg.fb7e18589eb2597f449d44558a6ad5a8.jpg

Video

Discord_p8RoLbUl0Z.thumb.png.1ddd80f06937f972e8a00547e6a6e67a.png

Permissions:

MapVoter.use only allows an admin to generate maps and start a vote.

MapVoter.Manager allows an admin to use all the features.

MapVoter.Vote allows player to vote(you can enable or disable this in configuration).

Commands

/mvote : Opens the plugin’s main GUI.

/startvote After selecting which maps will appear on the vote, starts the vote.

MapVoter.generate <Number of maps to generate> <seed> <voting duration in minutes>.

voteresult : Shows which map had won the vote.

Mapvoter.reload reload the plugin.

MapVoter.mapwipe <delay in seconds> <Map size > will generate a map and change startup parameters in server.cfg.

MapVoter.mapwipe <delay in seconds> <Custom map url > will wipe the server with a given custom map url and change startup parameters in server.cfg

MapVoter.bpwipe <delay in seconds> <Map size > will generate map and delete *.db, *.db-journal and *.sav files and changes startup parameters in server.cfg

MapVoter.bpwipe <delay in seconds> <Custom map url > will delete *.db, *.db-journal and *.sav files and change startup parameters

MapVoter.cancelwipe : cancels ongoing wipe.

MapVoter.stopvoting : stops ongoing voting.

MapVoter.update <Delay in seconds> initiates restart and updates the server & oxide.

Mapvoter.CancelUpdate : Cancels restart and update.

Discord commands

!vote

!generate <Number of maps to generate> <seed> <voting duration in minutes>.

!mapwipe <delay in seconds> <Map size >

!bpwipe <delay in seconds> <Map size >

bpwipe <delay in seconds> <Custom map url >

!cancelwipe

!stopvoting

!update <Delay in seconds>

!cancelupdate

Configuration

{
  "Commands": {
    "Open MapVoter UI": "mvote",
    "Generate Mpas": "MapVoter.generate",
    "vote result": "voteresult"
  },
  "Options": {
    "Map size": 3500,
    "Select random maps from rustmaps filter id instead of generating random maps on wipe day (true/false)": false,
    "How many pages the plugin looks up per search request(every page has 30 maps": 10,
    "Enable Discord bot (true/false)": true,
    "Only players with permission MapVoter.Vote can vote (true/false)": false,
    "Log to Discord (true/false)": true,
    "Discord Logs Channel Id": "",
    "Disable UI": false,
    "RustMaps API key": "https://rustmaps.com/user/profile",
    "staging": false,
    "barren": false,
    "Stop voting after (minutes)": 60,
    "avatar url": "",
    "Discord footer": "",
    "filter Id": "Visit https://rustmaps.com/ and adjust your map requirements. In the red box above the settings hit the Share button,the string at the end of the URL is the filterId.Example URL: https://rustmaps.com/?share=gEU5W6BUuUG5FpPlyv2nhQ the string at the end in this case {gEU5W6BUuUG5FpPlyv2nhQ} is the filterId."
  },
  "Discord Settings": {
    "Vote Channel id": "",
    "Discord Apikey": "BotToken",
    "Discord Command Prefix": "!",
    "Discord Channels": [
      {
        "Discord Channel ID": "",
        "Commands": [
          "generate",
          "vote",
          "mapwipe",
          "bpwipe",
          "cancelwipe",
          "stopvoting",
          "update",
          "cancelupdate"
        ]
      }
    ],
    "Discord Command Role Assignment (Empty = All roles can use command.)": {
      "generate": [
        "DiscordRoleName",
        "DiscordRoleName2"
      ],
      "vote": [
        "DiscordRoleName",
        "DiscordRoleName2"
      ],
      "mapwipe": [
        "DiscordRoleName",
        "DiscordRoleName2"
      ],
      "bpwipe": [
        "DiscordRoleName",
        "DiscordRoleName2"
      ],
      "cancelwipe": [
        "DiscordRoleName",
        "DiscordRoleName2"
      ],
      "stopvoting": [
        "DiscordRoleName",
        "DiscordRoleName2"
      ],
      "update": [
        "DiscordRoleName",
        "DiscordRoleName2"
      ],
      "cancelupdate": [
        "DiscordRoleName",
        "DiscordRoleName2"
      ]
    }
  },
  "Auto Vote": {
    "Auto start vote": true,
    "Only Authenticated users can vote through discord": true,
    "Start voting x days before wipe": 0,
    "Start voting at (HH:mm) 24-hour clock": "17:00",
    "Number of maps to generate": 4
  },
  "Auto Wipe": {
    "Custom Map": {
      "Custom map": false,
      "Map URL": ""
    },
    "Map Wipe schedule": [
		7,
		14,
		21,
		28
	],
    "BP Wipe schedule": [
		0
	],
    "Enable Auto wipe": true,
    "Wipe BPs at forced wipe day": true,
    "Forced Wipe time (HH:mm) 24-hour clock": "19:00",
    "Wipe time (HH:mm) 24-hour clock": "19:00"
  }
}

 

Files

Batch & Powershell script which turns on/off your server, updates it and deletes your selected map/bp files.

AutoWipeconfig.txt

MapVoter.cs, which will handle wipe schedule and automatically generate maps, start voting and restart the server.

How to Install

Non Dedicated servers :

1 - Upload  Non Dedicated servers/oxide.disable-sandbox to /RustDedicated_Data/Managed/.

2 - Upload Mapvoter.cs.

3 - all your server configuration must be in /server/my_server_identity/cfg/server.cfg or you can change the path in config if your host use different path (/server/{folder name}).

Windows:

1-Download & load https://umod.org/plugins/wipe-info-api and edit WipeInfoApi configuration to fit with your wipe schedule.

2- Load MapVoter and edit MapVoter configuration.

3- Shutdown the server.

4- Copy AutoWipe.bat, TryParse.ps1 , AutoWipeconfig.txt and DiscordSendWebhook.exe to your server folder.

5- download & install Unzip for Windows http://gnuwin32.sourceforge.net/packages/unzip.htm

6- open AutoWipe.bat   in NotePad++.

7- Find RustDedicated.exe -batchmode and change rcon.port ,rcon.web rcon.password if you use rcon.

8- Open AutoWipeconfig.txt in NotePad++.

9- Replace the example server config path with your own server.cfg location.

10- Replace the example SteamCmd path with your own SteamCmd.exe location.

11-Replace unzip path  with your own unzip.exe location if you install it to a different path and replace  https://support.discordapp.com/hc/en-us/articles/228383668-Intro-to-Webhooks to your discord channel webhook.

11- Script will delete all maps *.sav* on map wipe and all   *.db  *.db-journal  on full wipe.

12-Run AutoWipe.bat.

Pterodactyl / Open game Panel / Linux / TC-admin:

1- Upload Discord extension to /RustDedicated_Data/Managed.
2- Upload AutoWipeInfo and MapVoter.
3- change the startup command if possible to ./RustDedicated -batchmode +server.identity "rust" +rcon.port {{RCON_PORT}} +rcon.web true +rcon.password \"{{RCON_PASS}}\" or leave all the map seed, size and level URL empty.

4-create server.cfg file in (default path of pterodactyl) server/rust/cfg/

example :

server.port 28000
server.seed
server.worldsize
//server.levelurl
server.maxplayers 100
server.gamemode vanilla
server.hostname " Vanilla"
server.tags vanilla,weekly
server.level "Procedural Map"
server.radiation true
server.saveinterval 600
server.tickrate 30
server.headerImage ""
server.url ""
server.secure 1 
server.salt 50

Below steps are depricated

1- Change the Docker Images in settings -> Nests -> rust -> rust to  
   ghcr.io/kaysharp42/pterodactyl-rust-image:main

2- Go to Servers click on server name you want to install the script ->  startup replace the Startup Command with 
   ./AutoWipe.sh +rcon.port {{RCON_PORT}} +rcon.web true  +rcon.password \"{{RCON_PASS}}\"
Note : your going to use RCON password and port in Pterodactyl variables (startup).
3- Upload AutoWipe.sh, AutoWipeConfig.txt  and discord.sh to File Manager.
4- Connect to your server Terminal using SSH or any other method.
5- Go to your Server folder 
    Command #1 :
    cd /var/lib/pterodactyl/volumes
    Command #2:
    ls
    Command #3:
    cd "your server folder name"
    Command #4:
    chmod +x AutoWipe.sh

    Command #5:
    chmod +x discord.sh
6- Go back to File manager click on server folder and create folder named my_server_identity if you don't have one
7- In my_server_identity create another folder cfg and in the new folder create file server.cfg with all your server configuration exept recon password and port.

8- Change https://support.discordapp.com/hc/en-us/articles/228383668-Intro-to-Webhooks to your discord channel webhook.
9- Now go to server settings and  click on reinstall server (Some files may be deleted or modified during this process, please back up your data before continuing.)

Open game Panel : 

1- Open AutoWipe.sh in Text Editor find ./RustDedicated and change rcon password and port.
2- Upload AutoWipe.sh and AutoWipeConfig.txt to File Manager.
    Go to your server folder and run this command chmod +x AutoWipe.sh then  chmod +x discord.sh
    Example : 
    cd /home/ogp_agent/OGP_User_Files/rustDev
    chmod +x AutoWipe.sh
    chmod +x discord.sh

3- install steamcmd if its not installed and then copy steamcmd folder to server folder
    cp -R {steamcmd path} {your server folder}
    Example :
    cp -R  /root/.steam/steamcmd /home/ogp_agent/OGP_User_Files/rustDev
4- You must put all server variables in server/my_server_identity/cfg/server.cfg
5- Replace rust_linux64.xml in /var/www/html/modules/config_games/server_configs with rust_linux64.xml in Mapvoter-V*.*.*/OpenGamePanel you downloaded
6- open AutoWipeConfig.txt and replace https://support.discordapp.com/hc/en-us/articles/228383668-Intro-to-Webhooks with your discord channel webhook link.
6- start your server.

Linux:

1-Download & load https://umod.org/plugins/wipe-info-api and edit WipeInfoApi configuration to fit with your wipe schedule.

2-Load MapVoter and edit MapVoter configuration.

3- Shutdown the server.

4- Copy AutoWipe.sh and AutoWipeconfig.txt to your server folder

5- download & install Unzip sudo apt-get install unzip

6- download & install jq JSON sudo apt-get install jq

7- open AutoWipe.sh   in NotePad++.

8- Find RustDedicated.exe -batchmode and change rcon.port ,rcon.web rcon.password if you use rcon.

9- Open AutoWipeconfig.txt in Text Editor.

10- Replace the example server config path with your own server.cfg location.

11- Replace the example SteamCmd path with your own SteamCmd.sh location and replace  https://support.discordapp.com/hc/en-us/articles/228383668-Intro-to-Webhooks to your discord channel webhook.

12- Script will delete all maps *.sav* on map wipe and all   *.db  *.db-journal  on full wipe.

13- open terminal and do chmod +x AutoWipe.sh then chmod +x discord.sh.

14- Run AutoWipe.sh ./AutoWipe.sh.

Perform a Dry-Run

Run the AutoWipe.bat to ensure that it is working as expected.

Whilst your server is online with no players, test some commands like Mapvote.bpwipe, check AutoWipeLogs.log as well as server.cfg, and make sure that server.seed and server.worldsize has changed and all your selected files have been deleted.

Contact
kaysharp#2008

Capture d'écran 2023-07-28 212624.png

Capture d'écran 2023-07-28 212533.png

  • Like 2
  • Love 2

User Feedback

1.4m

Downloads

Total number of downloads.

6.9k

Customers

Total customers served.

102.4k

Files Sold

Total number of files sold.

2.1m

Payments Processed

Total payments processed.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.