Randomizes the warps in a stock pokeemerald repo.

Overview

pokeemerald warp randomizer

Randomizes the warps in a stock pokeemerald repo.

Usage Instructions

  • Install networkx and matplotlib via pip3 or similar.
  • Set POKEEMERALD environment variable to the path to your pokeemerald/ folder
  • Edit rand_idx at the top of the file to the seed to start searching from.
  • Ensure that the repo has not already been randomized, or the script will not work!
  • python3 randomizer.py
  • The script will search for randomized layouts which pass completability tests. This can take anywhere from a couple of minutes to an hour.
    • "Completable" is defined as a series of pathfinding routes from the first gym to the last gym to the Elite 4, including required story events and in-order. As such, it is highly likely that sequence breaks will allow faster completion. The pathfinding routes do not use Cut, Fly nor the bikes.
    • Current average amount of viable generated seeds is about 1 in 20,000.
  • After a seed is found, map JSONs will be modified and pokeemerald can be compiled

Notes

There are no guarantees on softlocking prevention, though several precautions are taken:

  • Littleroot Town is frozen to guarantee the player gets a Pokemon.
  • The Elite 4 are all frozen to enforce gym completion (but may be configurably unfrozen later?).
  • Petalburg Woods is currently frozen, but may be unfrozen later.
  • Mossdeep City Gym is frozen, due to complexity with verifying the puzzle can be completed with warps altered.
  • Petalburg Gym is frozen, due to doors being tied to trainers (high softlock potential).
  • Shoal Cave is frozen due to tides.
  • Trick House is frozen to prevent breakage.
  • Trainer Hill is frozen to prevent breakage.
  • Regi Tombs are frozen due to the Braille wall (but may be unfrozen later?).
  • The Mt. Chimney Cable Car is not randomized and will always travel between stations (the entrances and exits, however, are randomized).

Pathfinding Structure

  • By default, all warps are connected bidirectionally to a central node (ie, MAP_PETALBURG_CITY_WARP0..N will connect to MAP_PETALBURG_CITY)
  • Connections are a bidirectional edge between central map nodes (ie, MAP_PETALBURG_CITY <-> MAP_ROUTE102)
  • For maps with ledges, edges can be cut in either direction.
  • Maps with partitioning generally forgo the central node and connect warps directly to each other.
  • Edges which require HMs or story flags will have an additional attribute requires, and during the completion tests these edges are cut if flags haven't yet been obtained.
Owner
Max Thomas
I do reverse engineering work, vulnerability research, hardware drivers, modding tools and VR tinkering. Currently working at Ultraleap.
Max Thomas
Federated_learning codes used for the the paper "Evaluation of Federated Learning Aggregation Algorithms" and "A Federated Learning Aggregation Algorithm for Pervasive Computing: Evaluation and Comparison"

Federated Distance (FedDist) This is the code accompanying the Percom2021 paper "A Federated Learning Aggregation Algorithm for Pervasive Computing: E

GETALP 8 Jan 03, 2023
Mapping Conditional Distributions for Domain Adaptation Under Generalized Target Shift

This repository contains the official code of OSTAR in "Mapping Conditional Distributions for Domain Adaptation Under Generalized Target Shift" (ICLR 2022).

Matthieu Kirchmeyer 5 Dec 06, 2022
A map update dataset and benchmark

MUNO21 MUNO21 is a dataset and benchmark for machine learning methods that automatically update and maintain digital street map datasets. Previous dat

16 Nov 30, 2022
PyTorch implementation of popular datasets and models in remote sensing

PyTorch Remote Sensing (torchrs) (WIP) PyTorch implementation of popular datasets and models in remote sensing tasks (Change Detection, Image Super Re

isaac 222 Dec 28, 2022
Deep Video Matting via Spatio-Temporal Alignment and Aggregation [CVPR2021]

Deep Video Matting via Spatio-Temporal Alignment and Aggregation [CVPR2021] Paper: https://arxiv.org/abs/2104.11208 Introduction Despite the significa

76 Dec 07, 2022
Object detection (YOLO) with pytorch, OpenCV and python

Real Time Object/Face Detection Using YOLO-v3 This project implements a real time object and face detection using YOLO algorithm. You only look once,

1 Aug 04, 2022
Semantic Segmentation with Pytorch-Lightning

This is a simple demo for performing semantic segmentation on the Kitti dataset using Pytorch-Lightning and optimizing the neural network by monitoring and comparing runs with Weights & Biases.

Boris Dayma 58 Nov 18, 2022
Official PyTorch implementation of the paper "Deep Constrained Least Squares for Blind Image Super-Resolution", CVPR 2022.

Deep Constrained Least Squares for Blind Image Super-Resolution [Paper] This is the official implementation of 'Deep Constrained Least Squares for Bli

MEGVII Research 141 Dec 30, 2022
根据midi文件演奏“风物之诗琴”的脚本 "Windsong Lyre" auto play

Genshin-lyre-auto-play 简体中文 | English 简介 根据midi文件演奏“风物之诗琴”的脚本。由Python驱动,在此承诺, ⚠️ 项目内绝不含任何能够引起安全问题的代码。 前排提示:所有键盘在动但是原神没反应的都是因为没有管理员权限,双击run.bat或者以管理员模式

御坂17032号 386 Jan 01, 2023
PyTorch implementation of Densely Connected Time Delay Neural Network

Densely Connected Time Delay Neural Network PyTorch implementation of Densely Connected Time Delay Neural Network (D-TDNN) in our paper "Densely Conne

Ya-Qi Yu 64 Oct 11, 2022
StorSeismic: An approach to pre-train a neural network to store seismic data features

StorSeismic: An approach to pre-train a neural network to store seismic data features This repository contains codes and resources to reproduce experi

Seismic Wave Analysis Group 11 Dec 05, 2022
Pytorch implementation of Zero-DCE++

Zero-DCE++ You can find more details here: https://li-chongyi.github.io/Proj_Zero-DCE++.html. You can find the details of our CVPR version: https://li

Chongyi Li 157 Dec 23, 2022
Official implementation for "Style Transformer for Image Inversion and Editing" (CVPR 2022)

Style Transformer for Image Inversion and Editing (CVPR2022) https://arxiv.org/abs/2203.07932 Existing GAN inversion methods fail to provide latent co

Xueqi Hu 153 Dec 02, 2022
TensorFlow code for the neural network presented in the paper: "Structural Language Models of Code" (ICML'2020)

SLM: Structural Language Models of Code This is an official implementation of the model described in: "Structural Language Models of Code" [PDF] To ap

73 Nov 06, 2022
Information-Theoretic Multi-Objective Bayesian Optimization with Continuous Approximations

Information-Theoretic Multi-Objective Bayesian Optimization with Continuous Approximations Requirements The code is implemented in Python and requires

1 Nov 03, 2021
Keras implementation of Deeplab v3+ with pretrained weights

Keras implementation of Deeplabv3+ This repo is not longer maintained. I won't respond to issues but will merge PR DeepLab is a state-of-art deep lear

1.3k Dec 07, 2022
Roadmap to becoming a machine learning engineer in 2020

Roadmap to becoming a machine learning engineer in 2020, inspired by web-developer-roadmap.

Chris Hoyean Song 1.7k Dec 29, 2022
The PyTorch re-implement of a 3D CNN Tracker to extract coronary artery centerlines with state-of-the-art (SOTA) performance. (paper: 'Coronary artery centerline extraction in cardiac CT angiography using a CNN-based orientation classifier')

The PyTorch re-implement of a 3D CNN Tracker to extract coronary artery centerlines with state-of-the-art (SOTA) performance. (paper: 'Coronary artery centerline extraction in cardiac CT angiography

James 135 Dec 23, 2022
Code for ICDM2020 full paper: "Sub-graph Contrast for Scalable Self-Supervised Graph Representation Learning"

Subg-Con Sub-graph Contrast for Scalable Self-Supervised Graph Representation Learning (Jiao et al., ICDM 2020): https://arxiv.org/abs/2009.10273 Over

34 Jul 06, 2022
LV-BERT: Exploiting Layer Variety for BERT (Findings of ACL 2021)

LV-BERT Introduction In this repo, we introduce LV-BERT by exploiting layer variety for BERT. For detailed description and experimental results, pleas

Weihao Yu 14 Aug 24, 2022