Giter VIP home page Giter VIP logo

mhg-project's Introduction

hg-engine

About

A huge upgrade to the battle engine in HeartGold

Creators

Table of Contents

Features:

  • Mega Evolutions + Primal Reversions
  • Dex Expansion (currently has up to gen 5 completely implemented)
  • Ability expansion + Hidden abilities
  • Updated effects for gen 4 and prior abilities
  • All new functional Mega Stones added after the already-existing items

A more comprehensive list of features + a roadmap can be found by visiting the hg-engine wiki. Please read this README and the Wiki thoroughly before asking questions.

Setup Instructions (Debian Linux)

  1. Download and install Devkitpro using the downloads and instructions here.
  2. In a Terminal window, run the following commands:
    • sudo apt-get install libpng-dev build-essential cmake python3-pip git automake
    • pip3 install ndspy
  3. Continue to Further Setup Instructions

Setup Instructions (macOS)

  1. Download and install Devkitpro using the Mac download (.pkg) and instructions here.
  2. If you don't have it already, install brew by running the following in Terminal: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  3. In a Terminal window, run the following commands:
    • xcode-select --install
    • brew install python3
    • brew install libpng
    • brew install automake
    • pip3 install ndspy
  4. Download and install Mono using the download and instructions here.
  5. Continue to Further Setup Instructions

Setup Instructions (Windows)

  1. Download and install Microsoft .NET Framework. Choose the Developer pack option.
    • If you already have a different version of .NET Framework installed, you may use the newest one you have instead of downloading the version linked above.
  2. In the search bar in the Start Menu, search for "environment variables", and click on "Edit the system environment variables". Wait for a new window to pop up.
    • Proceed by clicking on "Environment Variables..." in the bottom right of the window, then find "Path" in the bottom section of the new window that pops up. Press the "Edit" button on the bottom section of the window, then see below for further instructions.
    • In the new window, press "New", then "Browse". Navigate to "This PC", then "Local Disk", and then from there, go to "Windows/Microsoft .NET/Framework". Here, you will see all of the versions of .NET Framework that you have installed. Select the newest one by clicking on its name, then press the "OK" button. Now you just need to press "OK" on every Window you had open to get to this point to save your changes.
  3. Open the Windows Command Prompt as Administrator (look up "Command Prompt" on your Start Menu, Right Click -> Run as Administrator). Once you have done that, execute the following command: dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all
    • Once this process finishes, you will have to restart your PC by entering "Y"
    • If Windows is not cooperating and has issues logging in when your PC reboots, do not worry! You likely just need to enable virtualization in your BIOS. For instructions on that, look here.
  4. Go to the Microsoft Store and search "Ubuntu". Go to any one of the version's pages in the store and click the blue "Get" button. It shouldn't matter which you choose.
    • Once Ubuntu finishes installing, launch it from its page in the Microsoft Store so it can finish setting itself up.
    • Once Ubuntu finishes setting itself up, it will ask you to enter a username (in lowercase letters only) and password. After doing so, you can close Ubuntu.
  5. Open the "Run" window by pressing the Windows key and R at the same time, then type in "wsl" and press Enter. This is how you should open WSL from now on.
  6. In WSL, type in sudo apt update, and after it finishes processing, type in sudo apt upgrade. This will take a QUITE a while, so find something else to do in the meantime. These two commands together will update all of the packages that came pre-installed with Ubuntu.
    • At some point during the process, you'll be asked to confirm whether you want WSL to restart automatically during package updates. We'll select "Yes" and press Enter. The process will then proceed.
  7. In WSL, run the following commands:
    • sudo apt-get install build-essential git libpng-dev gdebi-core python3 python3-pip cmake automake
      • You will be asked to confirm the installation, so press "y" followed by Enter to do so.
    • pip3 install ndspy
  8. In WSL, run the following to install dkp-pacman, the installer for the devkitPro toolchain (input your password when asked):
    • wget https://apt.devkitpro.org/install-devkitpro-pacman
    • chmod +x ./install-devkitpro-pacman
    • sudo ./install-devkitpro-pacman
    • If that doesn't work, we have archived the direct deb file from a version that worked. Download that here, and run the following to install it in WSL (input your password when asked):
      • cd Downloads
      • sudo gdebi devkitpro-pacman.amd64.deb
  9. Once the last process has finished and dkp-pacman is installed, continue to Further Setup Instructions

Further Setup Instructions (All Platforms) (Continued from Individual Sections)

  1. In Terminal/WSL, run dkp-pacman -S gba-dev, then press Enter/Return when prompted to choose what to download from the gba-dev library.
  2. Close and reopen Terminal/WSL so the changes made by dkp-pacman will be loaded. Then, run the following commands in this exact order:
    • export DEVKITPRO=/opt/devkitpro
    • echo "export DEVKITPRO=$DEVKITPRO" >> ~/.bashrc
    • export DEVKITARM=$DEVKITPRO/devkitARM
    • echo "export DEVKITARM=$DEVKITARM" >> ~/.bashrc
  3. In Terminal/WSL, run the following commands:
    • cd Documents
    • git clone https://github.com/BluRosie/hg-engine.git
  4. Continue to Build Instructions

Build Instructions (All Platforms) (Continued from Further Setup Instructions)

  1. Get your ROM, rename it to rom.nds and place it in Documents/hg-engine.
  2. In Terminal/WSL, run cd hg-engine
  3. In Terminal/WSL, run make build_tools --jobs. This will compile most of the tools that hg-engine needs to build.
  4. In Terminal/WSL, run make build_nitrogfx --jobs. This will compile nitrogfx, one of the tools needed for hg-engine to build.
    • If you are a macOS user who is on arm64 (an Apple M1 Processor), you may have issues running this command due to libpng linker issues caused by an expected architecture mismatch. You can get around this issue by going to Applications/Utilities/, right clicking on Terminal, Clicking "Get Info", and clicking the "Open using Rosetta" checkbox so it becomes blue. Close Terminal if you had it open, then open it again and run the following:
      • cd Documents/hg-engine
      • make build_nitrogfx --jobs
    • Make sure to undo your changes to Terminal after you are done so it will run as a native arm64 application again (uncheck the checkbox from before).
  5. In Terminal/WSL, type make --jobs.
  6. After the process completes, a new file will appear in the hg-engine folder named test.nds.
    • It is important to note that this alone will not add new pokemon to the wild, trainers, etc...; it simply makes them available in your game. It is up to you to place them.
    • You can edit various game data such as trainers, dex entries, pokemon stats, and more in the files in armips/data

Credits

mhg-project's People

Contributors

blurosie avatar turtleisaac avatar yglitzer avatar brioooche avatar dog-broad avatar davvedp avatar lhearachel avatar drayano60 avatar mixone-finallyhere 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.