Skip to main content

six wizards levitating a package, the word redfetch underneath

redfetch is for updating software and scripts for EverQuest that RedGuides recommends, as well as those you "watch". It's also open source, how nice.

Installation

On Windows the easiest way to install redfetch is to download and run redfetch.exe. (optional: If you're still on Windows 10 and want a more modern appearance, follow this guide to set Windows Terminal as your default terminal.)

Terminal / Python / Linux

Make sure you have a recent version of Python

  1. Install pipx
python -m pip install --user pipx
  1. Make it so you can run packages without having to type "python -m"
python -m pipx ensurepath
  1. Install redfetch
pipx install redfetch

When you open a new terminal window you'll be able to run redfetch by typing redfetch from the command line.

Usage

1) Double-click redfetch.exe to run the script.

Take a moment to consider your configuration and the settings tab.

2) Click the big blue "Easy Update" button, and then "Yes" or "Always" on the popup.

a screenshot showing the easy update button
(It's updating Very Vanilla MQ and any of its scripts or plugins you have watched on RedGuides, your licensed resources, and scripts recommended by staff. You can customize this if you like.)

Now you're ready to play EQ with the big boys.

Add more MQ Scripts

To add more MacroQuest scripts, "watch" them on www.redguides.com/community/resources, and then click the Easy Update button again.

a screenshot showing the watch button on a resource page

If there are non-MQ resources you'd like to keep in sync with redfetch, you can add them as a "special resource" in the local settings file, as shown in settings section.

Command Line

To run redfetch from the command line:

.exe file python
.\redfetch.exe update redfetch update

a screenshot showing the command line interface

Command Line Reference

Run redfetch --help for the current list, or redfetch <COMMAND> --help for a command's options. It looks like:

📦 Resource Management

  • update - Update all watched and special resources.
    • --force / -f - Force re-download of all watched resources.
    • --server / --client / -s - Update this client for this run only, without changing your active client (LIVE, TEST, EMU).
  • download <ID_OR_URL> - Download a specific resource by ID or URL.
    • ID_OR_URL - RedGuides resource ID or URL
    • --force / -f - Force re-download by resetting this resource's download date.
    • --server / --client / -s - Download for this client for this run only, without changing your active client (LIVE, TEST, EMU).
  • check - Non-interactive update check (for automation.)
    • --server / --client / -s - Check this client for this run only, without changing your active client (LIVE, TEST, EMU).
  • list - List resources and dependencies in your local cache.
  • reset - Reset download dates for watched resources in the database.

🔧 System & Utilities

  • ui - Launch the Terminal User Interface.
  • run [SHORTCUT] - Run a shortcut (e.g. vvmq, eqbcs, myseq). run by itself will show a full list.
    • SHORTCUT - Shortcut to run: vvmq, eqbcs, eq, eqgame, etc.
    • --server / --client / -s - Run for this client this run only, without changing your active client (LIVE, TEST, EMU).
  • open [SHORTCUT] - Open a folder or file (e.g. downloads, mqini). open by itself will show a full list.
    • SHORTCUT - Folder/file to open: downloads, vvmq, eq, etc.
    • --server / --client / -s - Resolve paths for this client this run only, without changing your active client (LIVE, TEST, EMU).
  • web - Launch the RedGuides.com web interface.
  • version - Show version and exit.
  • uninstall - Uninstall redfetch and clean up data.
  • logout - Log out and clear cached token and API cache.

🍔 Configuration

  • config <SETTING_PATH> <VALUE> - Update a setting by path and value.
    • SETTING_PATH - Dot-separated setting path (e.g., SPECIAL_RESOURCES.1974.opt_in)
    • VALUE - New value for the setting
    • --server / --client / -s - Client to apply the change in (LIVE, TEST, EMU)
  • client <CLIENT> - Switch the game client: LIVE, TEST, or EMU (RoF2).
    • CLIENT - LIVE, TEST, or EMU
  • server <SERVER> - Switch the active emu server: a name like lazarus, or none to use any emu server.
    • SERVER - An emu server name (e.g. lazarus), or none to use any emu server
  • provision <SERVER> - Create a server's EverQuest folder from a clean RoF2 copy, then set it up.
    • SERVER - An emu server name (e.g. lazarus)
    • --source - A clean RoF2 zip, iso, or folder.
    • --destination - Where to create the new EverQuest folder.
  • status - Show the configuration for the current or specified client.
    • --server / --client / -s - Client to show (defaults to current)

📤 Publishing

  • publish <RESOURCE_ID> - Publish updates to a RedGuides resource.
    • RESOURCE_ID - Existing RedGuides resource ID
    • --description <README.md> / -d - Path to a description file (e.g. README.md) to become the overview description.
    • --version / -v - New version string (e.g., v1.0.1)
    • --message <CHANGELOG.md | MESSAGE> / -m - Path to CHANGELOG.md (keep a changelog), other message file, or a direct message string.
    • --file <FILE.zip> / -f - Path to your zipped release file
    • --domain - If description or message is a .md file with relative URLs, resolve them to this domain (e.g., https://raw.githubusercontent.com/your/repo/main/)

The publish command also has a GitHub Action.

Settings

settings.local.toml is found in your configuration directory, which by default is c:\Users\Public\redfetch\settings.local.toml. Any keys you add will override their default values in settings.toml.

All settings are prefixed with the environment,

  • [DEFAULT] - encompasses all clients that are not explicitly defined.
  • [LIVE] - EverQuest Live
  • [TEST] - EverQuest Test
  • [EMU] - EQEmulator (see Emu servers)

Adding a special resource

To add a "special resource" (a non-MQ resource that you want to keep updated), open settings.local.toml and add an entry. You'll need the resource ID (numbers at the end of the url) and a target directory. Example:

[LIVE.SPECIAL_RESOURCES.153]
custom_path = 'C:\Users\Public\Daybreak Game Company\Installed Games\EverQuest\maps\Brewall_Maps'
opt_in = true
  • Note the use of single quotes around the path, which are required for windows paths.

The above will install Brewall's maps to the EQ maps directory the next time redfetch update is run for the LIVE client.

Emu servers

redfetch can track more than one emulator server, each with its own EverQuest folder and maps choice.

You can also switch from the command line:

redfetch client emu
redfetch server lazarus
redfetch server none    # back to "Any emu server"

To add a server redfetch doesn't know about, use the Servers tab, or hand-add an entry to settings.local.toml:

[EMU.SERVERS.myserver]
label = "My Server"
opt_in = true
eqpath = 'D:\Games\EQ-MyServer'

Overwrite protection

If there are local files you don't want overwritten by a resource, you can add them to the PROTECTED_FILES_BY_RESOURCE setting. Include the resource ID and files you want to protect. e.g.,

[LIVE.PROTECTED_FILES_BY_RESOURCE]
1974 = ["CharSelect.cfg", "Zoned.cfg", "MQ2Map.ini", "MQ2MoveUtils.ini"]
153 = ["citymist.txt", "innothule.txt", "oasis.txt"]
navmesh = ["befallen.navmesh", "innothuleb.navmesh"]

Custom category directories

If you share lua, macros, or plugins directories across multiple MQ environments, you can override where an entire category is installed. Add a CATEGORY_PATHS section to your settings.local.toml:

[DEFAULT.CATEGORY_PATHS]
lua = 'D:\\shared\\lua'
macros = 'D:\\shared\\macros'

Absolute paths are used as-is. Relative paths are joined to DOWNLOAD_FOLDER. You can set this globally in [DEFAULT] or per-environment ([LIVE.CATEGORY_PATHS], [TEST.CATEGORY_PATHS], etc.).

Tinkerers

If you self-compile MacroQuest or use a discord friend's copy, you can still keep your scripts and plugins in sync with redfetch by opting out of Very Vanilla:

redfetch.exe config SPECIAL_RESOURCES.1974.opt_in false --client LIVE
redfetch.exe config SPECIAL_RESOURCES.60.opt_in false --client EMU
redfetch.exe config SPECIAL_RESOURCES.2218.opt_in false --client TEST

Then assign the Very Vanilla MQ path to your self-compiled MacroQuest.

Custom post-update launch

redfetch can launch extra programs after an update completes. Aside from the normal UI toggles, you can add custom to POST_UPDATE_LAUNCH.targets in settings.local.toml, then set command to whatever redfetch should run:

[LIVE.POST_UPDATE_LAUNCH]
targets = ["custom"]
command = ['C:\Tools\AfterRedfetch\after-update.exe', '--server', 'LIVE']

You can also combine it with the built-in post-update launches. For example, to start EQBCS and MySEQ and run your own Python script:

[LIVE.POST_UPDATE_LAUNCH]
targets = ["myseq", "custom", "eqbcs"]
command = ["C:\\Users\\Public\\Python\\python.exe", "C:\\Users\\Public\\redfetch\\after_update.py"]

You can set these per-client, e.g. [TEST.POST_UPDATE_LAUNCH], or global [DEFAULT.POST_UPDATE_LAUNCH].

Watchers on RedGuides

Contributing

I'd love help, conceptually and technically. I'm not a developer and this is my first big python script.

[!NOTE] This project is built with LLM assistance. (derogatory)

To set up a development environment,

git clone https://github.com/RedGuides/redfetch
cd redfetch
pip install hatch
hatch env create dev
hatch shell dev

You can then run your dev version with,

redfetch

Or if the issue is ui-specific, run the terminal UI in debug mode,

textual run --dev .\src\redfetch\main.py

When you're done, type exit to leave the shell.


Not affiliated with or endorsed by EverQuest or its owners.

Metadata

Release files for redfetch 1.6.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for redfetch 1.6.0
File Size Uploaded
redfetch-1.6.0.tar.gz 252.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for redfetch 1.6.0
File Interpreter ABI Platform
redfetch-1.6.0-py3-none-any.whl Python 3 none any Details

Total release size: 431.6 kB

Release files / redfetch-1.6.0.tar.gz

Download URL redfetch-1.6.0.tar.gz
Size 252.7 kB
Tags Source
SHA-256 checksum
How to use checksums
9d26e4685e6aa5ab644e7a92996a67279a9bb6f58df52b4ac0f85d45c04a966c
BLAKE2b-256 checksum
How to use checksums
2a97875fbe60f67c904d1607c675bb09be39c40b6e85b04251ef465dac90bdee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 16, 2026.

Transparency log

Release files / redfetch-1.6.0-py3-none-any.whl

Download URL redfetch-1.6.0-py3-none-any.whl
Size 178.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
91b0b41a574b1cb965a2efa47ad82e666e9b24818811e978f7db4341af8e0380
BLAKE2b-256 checksum
How to use checksums
e5999429772f16e720a11bd455e80d5c44e8327daf07f537d2ca68ecbc520c7f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 16, 2026.

Transparency log

Release history Release notifications | RSS feed

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page