Code Monkey home page Code Monkey logo

macroquest's Introduction

MacroQuest

Live Build Test Build Emu Build


MacroQuest is an open source scripting and plugin platform for EverQuest. Documentation can be found at docs.macroquest.org.

How To Build

Prererequisites

The recommended way to build MacroQuest is from a source code checkout using Git. There are many how to guides for installing and setting up git. Here is one of them

Check out the latest source code

Create the checkout. This will create the subfolder macroquest that contains a copy of the project.

git clone https://github.com/macroquest/macroquest.git

Make sure that submodules are initialized. Move (cd) to the newly created macroquest folder before executing this command. If you have run this step already, you can skip it

git submodule init

Update the submodules to the correct version. Ensure you are in the newly created macroquest folder before executing this command.

git submodule update

Updating an existing checkout

MacroQuest is updated often, especially after a patch. Make sure before you build that you have the latest source code for MacroQuest and all of its dependencies.

If you already have the source, it is a good idea to make sure that you pull all the latest changes.

git pull --rebase

Update submodules. This ensures that dependencies have the latest code.

git submodule update

At this point, the source should be ready to compile. Proceed to building.

Build Steps

  1. Open the MacroQuest.sln file in src.
  2. Select the Release and (x64) configuration from the drop-down menu near the top of the window.
  3. Since the project moved to 64-bit, ensure all project configurations are set to (x64) in the Solution Macroquest Property Pages. From the Visual Studio main menu, select Build then Configuration Manager then ensure the Platform column for each project is set to (x64).
  4. Select Build -> Build Solution from the menu.

The built files will be placed in build/bin/Release. To start MacroQuest, run MacroQuest.exe. This will launch the application to the tray, and install MacroQuest into any running EverQuest processes.

Adding Your Own Plugins

NOTE: If you have any custom plugins you want to build, put the sources for them in the plugins folder, for example: plugins/MQ2Foo/MQ2Foo.cpp. Do not put them in src/plugins - this path is reserved for the MacroQuest developers

To add any personal plugins to the solution:

  1. Right clicking the solution in solution explorer and clicking Add -> Add Existing Project....
  2. Select your .vcxproj file.
  3. Repeat as necessary

Updating Plugins from Legacy MacroQuest

If you are converting plugins over from Legacy MacroQuest, it is recommended that you re-run the plugin generator first, and copy your source files into the generated project.

For Example:

cd plugins
mkplugin MQ2Foo

This will generate a MQ2Foo.vcxproj, MQ2Foo.cpp and several other files in a MQ2Foo folder. You can now add this project to the solution and add/replace the sources with your own.

Directory Structure

Folder Name Purpose
build Build artifacts. This is where you can find the output when you compile MacroQuest and your plugins.
contrib Third-Party source code.
data Additional non-source code files used by MacroQuest.
extras Optional files that aren't required but may be useful. This includes sources for plugins that are no longer maintained.
include Public header files that are used for building MacroQuest and plugins.
plugins This folder is reserved for you to add your own personal plugins.
src The source code for MacroQuest and its core plugins.
tools Source code and additional tools that are used for MacroQuest development, but not part of the main project.

Additional files of interest

plugins/mkplugin.exe Generates a new plugin from the template. Use this when creating a new plugin, or when converting an existing plugin from legacy MacroQuest.

src/MacroQuest.sln The main MacroQuest solution file. Use this to build the project.

macroquest's People

Contributors

brainiac avatar knightly1 avatar dannuic avatar sicprofundus avatar aquietone avatar projecteon avatar jessebevil avatar derplemq2 avatar johnfking avatar htwmmo avatar robert17 avatar justcrack avatar ortster avatar felismalum avatar xeniazmmobugs avatar bytebite01 avatar cannonballdex avatar hk47196 avatar joligario avatar martinlindhe avatar niedar avatar phantomrogue avatar sircabby avatar swanny85 avatar dependabot[bot] avatar hytiek avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.