{"id":36442189,"url":"https://github.com/maintc/rustmaps-cli","last_synced_at":"2026-01-11T22:00:25.573Z","repository":{"id":278098973,"uuid":"919668454","full_name":"maintc/rustmaps-cli","owner":"maintc","description":"An unofficial rustmaps.com CLI tool for generating maps","archived":false,"fork":false,"pushed_at":"2025-11-09T00:04:15.000Z","size":236,"stargazers_count":5,"open_issues_count":0,"forks_count":2,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-11-09T01:14:59.848Z","etag":null,"topics":["golang","playrust","rustmaps"],"latest_commit_sha":null,"homepage":"https://discord.gg/mainloot","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/maintc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/contributing.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":".github/code_of_conduct.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":null,"patreon":"mainloot","open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"lfx_crowdfunding":null,"polar":null,"buy_me_a_coffee":null,"thanks_dev":null,"custom":["https://shop.mainloot.com"]}},"created_at":"2025-01-20T19:34:37.000Z","updated_at":"2025-11-09T00:04:18.000Z","dependencies_parsed_at":"2025-02-18T02:22:20.806Z","dependency_job_id":"771d8ccf-381f-4fe9-88f1-1618280e4ea6","html_url":"https://github.com/maintc/rustmaps-cli","commit_stats":null,"previous_names":["maintc/rustmaps-cli"],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/maintc/rustmaps-cli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maintc%2Frustmaps-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maintc%2Frustmaps-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maintc%2Frustmaps-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maintc%2Frustmaps-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/maintc","download_url":"https://codeload.github.com/maintc/rustmaps-cli/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maintc%2Frustmaps-cli/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28324825,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-11T18:42:50.174Z","status":"ssl_error","status_checked_at":"2026-01-11T18:39:13.842Z","response_time":60,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["golang","playrust","rustmaps"],"created_at":"2026-01-11T22:00:14.130Z","updated_at":"2026-01-11T22:00:25.564Z","avatar_url":"https://github.com/maintc.png","language":"Go","funding_links":["https://patreon.com/mainloot","https://shop.mainloot.com"],"categories":[],"sub_categories":[],"readme":"# RustMaps CLI (Unofficial)\n\n\u003ca href=\"https://discord.gg/mainloot\"\u003e\u003cimg src=\"https://mainloot.s3.us-west-2.amazonaws.com/Mainloot_Logo_OnBlack.png\" alt=\"Mainloot Logo\" style=\"width: 50%; height: auto;\"\u003e\u003c/a\u003e **\u0026**\n\u003ca href=\"https://rustmaps.com\"\u003e\u003cimg src=\"./docs/images/rustmaps.svg\" alt=\"Mainloot Logo\" style=\"width: 50%; height: auto;\"\u003e\u003c/a\u003e\n\n![CI Status](https://github.com/maintc/rustmaps-cli/actions/workflows/build.yml/badge.svg)\n[![Go Coverage](https://github.com/maintc/rustmaps-cli/wiki/coverage.svg)](https://raw.githack.com/wiki/maintc/rustmaps-cli/coverage.html)\n![GitHub Release](https://img.shields.io/github/v/release/maintc/rustmaps-cli)\n\n## Table of Contents\n1. [Overview](#-overview)\n2. [Features](#%EF%B8%8F-features)\n3. [Installation](#-installation)\n4. [Usage](#%EF%B8%8F-usage)\n    - [Setting the API Key](#-setting-your-api-key)\n    - [Generating maps](#%EF%B8%8F-generate-maps)\n        - [Generate a procedural map with seed and size](#generate-a-procedural-map-with-seed-and-size)\n        - [Generate a procedural map with seed and size (staging branch)](#generate-a-procedural-map-with-seed-and-size-staging-branch)\n        - [Generate a procedural map with random seed](#generate-a-procedural-map-with-random-seed)\n        - [Generate a custom map with seed and size](#generate-a-custom-map-with-seed-and-size)\n        - [Generate a custom map with random seed](#generate-a-custom-map-with-random-seed)\n        - [Generate maps from a csv file (procedural and custom)](#generate-maps-from-a-csv-file-procedural-and-custom)\n        - [Download generated maps](#download-generated-maps)\n        - [Download generated maps to a specified directory](#download-generated-maps-to-a-specified-directory)\n    - [Opening maps in the browser](#-opening-maps-in-the-browser)\n    - [Using a `csv` file](#-using-a-csv-file)\n6. [Storage Locations](#-file-structurelocations)\n7. [Disclaimers](#%EF%B8%8F-disclaimers)\n\n## 📖 Overview\n\nAt [mainloot](https://mainloot.com), we use [RustMaps](https://rustmaps.com) to generate our custom maps. RustMaps provides an excellent service at a reasonable price, consider supporting them if you're a server owner. To get the most out of this tool like custom maps, you'll need at least a [premium](https://rustmaps.com/pricing) subscription.\n\nIf you want to generate maps on the command line in bulk, this tool may help you. We use this tool to generate a new map for every wipe on each of our servers. Visit us on [https://discord.gg/mainloot](https://discord.gg/mainloot).\n\n## ⚙️ Features\n\n| Feature                | Supported | Notes                                           |\n|------------------------|-----------|-------------------------------------------------|\n| Map Generator          | ✅        | Fully supported. Generate maps. No additional config required. |\n| Custom Map Generator   | ✅        | Fully supported. Generate customized maps. Uses subscriber features of the API. |\n| Download Maps          | ✅        | Fully Supported. Download maps and images locally from RustMaps. |\n| GitHub Action (cron)   | 🚧        | Coming Soon, uses actions to automate map generation on schedule |\n\n## 🔧 How it works\nThis tool takes map parameter input either via command line or `csv` file (columns: `seed`, `size`, and `saved_config`) and generates the corresponding map on [rustmaps.com](https://rustmaps.com), once completed the tool downloads the map files locally. This tool manages state files for each map. \n\n## 💻 Installation\n\n### Quick Install\n\nIf you just want to get up and running quickly, the project provides a binary for `macOS`, `Linux`, and `Windows`. You can download the binary for your platform from the [releases](https://github.com/maintc/rustmaps-cli/releases) page.\n\n### Developers and golang people\n\nIf you're familar with `go` or do not want to download a binary we recommend building from source. \n\n```sh\ngo build -o rustmaps ./\n```\n\n## ⌨️ Usage\n\n```sh\nRustMaps CLI\n\nUsage:\n  rustmaps [flags]\n  rustmaps [command]\n\nAvailable Commands:\n  auth        Authenticate with RustMaps API\n  completion  Generate the autocompletion script for the specified shell\n  generate    Generate custom and procedural maps\n  open        Open generated maps in the browser\n\nFlags:\n  -h, --help               help for rustmaps\n  -l, --log-level string   Log level (debug, info, warn, error, dpanic, panic, fatal) (default \"fatal\")\n\nUse \"rustmaps [command] --help\" for more information about a command.\n\n  Resource             Path\n  --------             ----\n  Downloads directory  /Users/user/.rustmaps/downloads\n  Imports directory    /Users/user/.rustmaps/imports\n  Config file          /Users/user/.rustmaps/config.json\n  Log file             /Users/user/.rustmaps/generator.log\n```\n\n### 🔑 Setting your API key\n\nSet your api key, you can find yours at https://rustmaps.com/dashboard\n\n```sh\nrustmaps auth \u003crustmaps-api-key\u003e\n```\n\nOn successful login you will recieve the following message with your subscription status\n\n```sh\nAPI key verified: 🗺️ Premium Subscriber\n```\n\n### 🗺️ Generate maps\n\n#### **Generate a procedural map with seed and size**\n\n```sh\nrustmaps generate --size 5000 --seed 2083170721\n```\n\n#### **Generate a procedural map with seed and size (staging branch)**\n\n```sh\nrustmaps generate --size 5000 --seed 2083170721 --staging\n```\n\n#### **Generate a procedural map with random seed**\n\n```sh\nrustmaps generate --size 5000 -r\n```\n\n#### **Generate a custom map with seed and size**\n\n```sh\nrustmaps generate --size 5000 --seed 2083170721 --saved-config default\n```\n\n#### **Generate a custom map with random seed**\n\n```sh\nrustmaps generate --size 5000 -r --saved-config default\n```\n\n#### **Generate maps from a csv file (procedural and custom)**\n\n```sh\nrustmaps generate --csv ./mymaps.csv\n```\n\n#### **Download generated maps**\n\nYou can specify `-d` to download maps after generating \n\n```sh\nrustmaps generate ... -d\n```\n\n`...` supports all the same flags as `generate`\n\n#### **Download generated maps to a specified directory**\n\nYou can specify `-o` to download maps to a specified directory\n\n```sh\nrustmaps generate ... -d -o ./mymaps\n```\n\n### 🌐 Opening maps in the browser\n\nIf a procedural map has already been generated on RustMaps you will not be able to generate it again. To verify this you can use the open command, this will open the map in the browser. `open` takes all the same map parameters as `generate`\n\n```sh\nrustmaps open -s 2083170721 -z 5000\n```\nIf a URL for a map is not found, you will need to generate the map first.\n\n```sh\nrustmaps generate -s 2083170721 -z 5000 -S default\n```\n\n```sh\nrustmaps open -s 2083170721 -z 5000 -S default \n```\n\nSpecifying a csv will open a dropdown allowing you to open many maps\n```sh\nrustmaps generate -c ./mymaps.csv\n```\n\n```sh\nrustmaps open -c ./mymaps.csv\n```\n\n## 📚 Using a `csv` file\n\nA `saved_config` value must be specified to generate a custom map, even the default. Rows with omitted `saved_config` are treated as a regular procedural map.\n\n```csv\nseed,size,saved_config\n1986142550,4250,CombinedOutpost\n1254873764,4250,default\n719690435,4250\n```\n\n- The first map is a custom map using a custom configuration named \"CombinedOutpost\" (you can configure your own at https://rustmaps.com/dashboard/generator/custom)\n- The second map is a custom map using the RustMaps default configuration named \"default\". This should be setup for you by default.\n- The third map is a regular procedural map.\n\n## 📁 File structure/locations\n\nRun `rustmaps` by itself to see the actual paths (see [usage](#-usage))\n```yaml\nResource             Path\n--------             ----\nConfig file:         Where the rustmaps-cli configuration file lives (holds your api key)\nDownloads directory: Where rustmaps-cli downloads maps/images after generation\nImports directory:   Where rustmaps-cli saves information on maps\nLog file:            Where rustmaps-cli will write logs\n```\n\nYou can override the `Downloads directory` with `-o`\n\n```sh\nrustmaps generate --size 5000 --seed 2083170721 -d -o ~/forcewipe\n```\n\n## ⚠️ Disclaimers\n\n- Mainloot is not affiliated with Rustmaps.com, we're just users/fans\n- This tool adheres to concurrent and monthly limits in addition to a 60 requests per minute ratelimit\n\n## License\n\n- [MIT](./license) (c) [mainloot](https://mainloot.com)\n- [Contributing](.github/contributing.md)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaintc%2Frustmaps-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmaintc%2Frustmaps-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaintc%2Frustmaps-cli/lists"}