1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.


In-game map and minimap GUI

Total Downloads: 40,109 - First Release: Sep 8, 2015 - Last Update: Dec 29, 2017

5/5, 161 likes
  1. k1lly0u
    This plugin requires ImageLibrary for Rust | Oxide

    LustyMap is a plugin that adds an in-game Map and Minimap.

    The plugin has two modes, the simple mode (default) uses a single image for the map and minimap, the complex mode uses a sliced up version of the map to allow for a zoomed in minimap.

    This plugin was originally created by Kayzor. If you like his work consider donating to him here > Donate to Kayzor <
    It has since been taken over by myself and completely revamped to make it as automated and least intensive as possible. If you like my work you can buy me a beer and hit that Support The Developer button

    ** Note ** I
    recommend using StorageCleaner along side this plugin to prevent your server from having thousands of duplicated images in file storage!
    StorageCleaner for Rust | Oxide

    IMPORTANT INFORMATION: This plugin requires the icon images to be added to the oxide data folder on the server (details below)

    Below you will find information on:
    -Map Images
    -Icon Images
    -Using the complex map
    -Forcing the complex map
    -Map automation and beancan.io registration
    -Using custom map images
    -Tips for maintaining your server listing on beancan.io
    -How to find your API key on beancan.io
    -Accessing the map
    -Admin commands
    -Adding custom map markers
    -Using the anti spam functions

    -Chat/Console commands
    -Config options and what they do
    -API for developers

    Friends integration
    This plugin supports friend lists from;
    Any developer can add/manage a custom friends list via their own plugin using the API supplied below

    Map Images
    The map itself can now be downloaded automatically and the plugin will slice it up accordingly. However to do this you must register your server on beancan.io - Home (More information below)

    Icon Images - REQUIRED!
    Download the following zip file and extract it to your "/server/oxide/data/" folder. This contains all the map icons you will need. You may replace these icons with you own custom versions if you wish

    Your folder structure should look like the following and the icons folder should contain by default 194 icon images

    Complex Mode
    The complex mode (zoomed in minimap) uses a series of chopped up map images to provide a adjustable zoomed in view.
    This process is completely automated by the plugin. To take advantage of this simply set the config option "UseComplexMap" to true.

    Forcing Complex Mode

    You can also lock the map in a specified zoom level in complex mode by setting the config option "ForceMapZoom" to true.
    When forcing map zoom you must set "ForcedZoomLevel" between 1 and 3.
    This will disable the use of the regular minimap and only the set zoomed level will be accessible to all users

    Map automation and Beancan.IO

    Credit to Calytic and Nogrod for providing a awesome map generator and a free to use API!
    Map generation and automation is now possible using API from beancan.io.

    Simply register your server on the website and retrieve your API key. Your API key can be found by editing your server details, under the various options you will see a section titled API and your key is the entry labelled "Key"

    Once you have your API key enter in into your config and reload the plugin.

    The plugin will then contact beancan.io to generate and download your map.

    Once the map has been downloaded, if you have complex mode enabled it will chop up and store all the pieces. This process may take a few moments. When that is done the plugin will become active and all players should be able to use the map.

    Upon wipes LustyMap will detect a new map and will automatically download the updated map image, making the process entirely automated.

    Users utilizing this feature will also have access to a map view that can be embedded on your website. When the map is generated via LustyMap it will be automatically updated so you will never need to update your website to match new maps. Browse to your server's map via beancan.io and click the "embed" button to obtain a URL to use

    ** If the map generated does not match your map you can re-download the map by using the console command "resetmap" If the map does not match directly after a game update note that the map generator also requires updates so please wait for 5-10 minutes before trying to reset the map. If after using the command you map is still incorrect please leave a comment in the support thread stating your mapsize and mapseed along with a screen cap

    Tips to keep your server listed on beancan.io

    Direct from beancan staff:
    Code (Text):
    Low quality, testing server, and private server entries are rejected. We get 100 submissions per day, and we aren't going to list servers that degrade the quality of our server list.

    Tips To Get Listed
    Do not enter the country in your server name like "[EU]" or "[US]"
    Enter atleast 3 tags, look at other popular servers and see which tags are common
    Enter a detailed description. "Hello, welcome" is totally unacceptable and will be revoked.
    Upload a banner, put in 10 minutes in GIMP and create a basic banner. It doesn't need to be fancy, but anything is better than nothing
    Have atleast a basic website

    Tips To Get Revoked And Banned
    Post the same server multiple times
    Repeatedly posting gibberish entries
    Posting malware
    No tags
    No banner
    Rust.IO Maps
    Note: a website is not required but it helps considerably.
    Finding your API key
    1. Navigate to the top right, open the drop down, and click my posts.
    2. You will see all your posts there.
    3. Click your server, then edit, then scroll down until you get to this.

    Custom Map Images
    If you do not want to use maps provided by beancan.io you can still use a custom map image.
    To do this simply download your image and save it in your "/server/oxide/data/LustyMap/" folder.
    Then in your config change "CustomMap_Filename" to use the image filename and set "CustomMap_Use" to true. The process after this is the same as before, it just doesn't download the map from the web

    Accessing the Map
    Players can press M to open the in game map (pressing M again will close it) (this can be changed in the config using the "MapKeybind" setting).

    Players can hide the minimap using the <<< button located at the top right of the minimap (then >>> to open it back up)

    Alternatively if you do not want to force a keybind on players they can use the chat command "/map" to open the map or "/map mini" to open the mini map

    Admin Commands
    All previous admin commands have been removed due to the way the new version generates the UI. All these options are still available to change in the config and will require a reload of the plugin after making any changes to generate the new UI

    Adding Custom Markers - via chat commands (See Below)
    By using the command "/marker" you can add and remove custom map markers.
    When adding a marker you will have the option to specify a custom icon (file). This icon MUST be located in your "/oxide/data/LustyMap/custom/" folder and the file must be a .png.
    When typing the command you must type the filename without the extension. For example:
    We have a custom icon file name icon.png, the command will be "/marker add name icon"
    Alternatively you can leave it blank and the default icon will be supplied

    Map Spam Monitoring
    It has been brought to my attention that some deviants may spam the map open/closed in order to lag a server and potentially crash it.
    To combat this I have implemented a spam monitoring system. This system will monitor when a user changes map mode rapidly, whether it being opening and closing the map, or zooming in and out etc.
    If the user changes type more then once in the set amount of time (default 3 seconds) it will be registered as potential spam. By default after 5 rapid changes the user will receive a warning, and after 10 rapid changes the users map will be disabled for 2 minutes.
    There are a few options in the config regarding this system including a option to enable/disable the system entirely

    ** Linux Users ** The map splitter requires LibGDIPlus to be installed on your system.
    Code (Text):
    sudo apt install libgdiplus
    Afterwards restart your system for the changes to take effect

    Chat Commands
    /map admin
    - Toggles Admin View On/Off (allows you to see all player on the map) - Requires auth level or permission "lustymap.admin"
    /marker add <name> <opt:icon> - Add a new map marker on your position with a optional custom icon
    /marker remove <name> - Remove a custom map marker by name

    Console Commands
    - Force the plugin to erase existing image data and re-download all images (used to reset generated maps)

    Code (C#):

      "Friend Options": {
        "Allow custom friend lists from other plugins": true,
        "Enable clans support": true,
        "Enable friends support": true
      "Map - Complex Options": {
        "Enable the complex map": true,
        "Force complex zoom mode": false,
        "Forced zoom number (1, 2 or 3)": 1
      "Map - Main Options": {
        "Enable AFK tracking": true,
        "Hide event players": true,
        "Map image options": {
          "Beancan.io API key (if applicable)": "",
          "Custom map filename": "",
          "Use custom map": false
        "Map update time (seconds)": 1.0,
        "Open map on for player's when they connect": true,
        "Show map compass": true
      "Map - Mini Options": {
        "Enable the minimap": true,
        "Minimap docked on the left side of the screen": true,
        "Minimap horizontal scale": 1.0,
        "Minimap offset from side of the screen": 0.0,
        "Minimap offset from top of the screen": 0.0,
        "Minimap vertical scale": 1.0
      "Marker Options": {
        "Show all players": false,
        "Show caves": false,
        "Show debris": false,
        "Show friends and clanmates": true,
        "Show helicopters": true,
        "Show marker names": true,
        "Show monuments": true,
        "Show planes": true,
        "Show self": true,
        "Show supply drops": true,
        "Show vending machines (public broadcast only)": true
      "Spam Options": {
        "Allowed time between map changes": 3,
        "Amount of time a users map will be disabled": 120,
        "Attempts before disabling the users map": 10,
        "Attempts before warning the user they are spamming": 5,
        "Enable spam monitoring": true
    Custom Markers

    Code (C#):
    // x - Objects X position
    // z - Objects Z position
    // r - Objects rotation
    // name - Name of the object (must be unique to that object)
    // icon - The icon file name
    bool AddMarker(float x, float z, string name, string icon = "special", float r = 0) // Add a new map marker
    void UpdateMarker(float x, float z, string name, string icon = "special", float r = 0) // Update a existing map marker
    bool RemoveMarker(string name) // Remove a map marker by name
    Map Management - For use with fullscreen UI to disable LustyMap from overlapping
    Code (C#):
    void EnableMaps(BasePlayer player) // Activates a users map
    void DisableMaps(BasePlayer player) // Disables a users map
    Custom Friend Lists
    Code (C#):
    // All lists are (string) userID's
    // Name should be set to your plugin's title
    // These lists are NOT saved through restart
    bool AddFriendList(string playerId, string name, List<string> list) // Add a entire list of friend IDs
    bool RemoveFriendList(string playerId, string name) // Remove a entire friend list
    bool UpdateFriendList(string playerId, string name, List<string> list) // Replace a entire list
    bool AddFriend(string playerId, string name, string friendId) // Add a individual friend
    bool RemoveFriend(string playerId, string name, string friendId) // Remove a individual friend
    252490_screenshots_20161031132146_1.jpg 252490_screenshots_20161031132156_1.jpg 252490_screenshots_20161031132209_1.jpg


    1. upload_2017-1-5_22-8-16.png
    Mr.Green 3, TsotS, tcdanny and 46 others like this.