Corrupt.wiki
  • Videogame corruptions
    • Introduction
    • Communities
    • Safety and Ethics of Corruptions
    • What makes a good corruption?
  • Real-Time Corruptor
    • RTC Discord
    • Download RTC
    • Beginner Guides
      • Tutorial Video Guide
      • Corruption Classroom
      • Cheat Sheet Guide
    • In-Depth Guide
      • Introduction
      • Frequently Asked Questions
      • Simple Mode
      • Concepts and Vocabulary
      • General Parameters
      • Corruption Engines
      • Emulation-centric features
      • Classic Vector Lists
      • Glitch Harvester
      • Blast Editor
      • Blast Generator
      • Virtual Memory Domains
      • VMD Generator (Advanced)
      • Cluster Engine (Advanced)
      • Hotkeys
      • Tips, tricks and quirks
    • More RTC Guides
      • RTCV Dev Startup Guide
      • Running RTCV on Linux
      • How to make Passthrough Lists
      • Sequence Loader Plugin
  • Other Corruptors
    • Classic Corruptors
      • Vinesauce ROM Corruptor
      • VineCorrupt
      • Android Vinesauce ROM Corruptor
      • Lesser known corruptors
      • Old Corruptors
    • Scares Scrambler
    • Cheat Engine
    • Web-Based Corruptors
  • Systems
    • NES
      • Corrupting the NES
      • NES Architechture
      • NES Memory Domains
    • SNES
      • Corrupting the SNES
      • SNES Architechture
      • SNES Memory Domains
      • SNES Audio Tinkering
    • Sega Genesis
      • Corrupting the Sega Genesis
      • Genesis Architecture
      • Genesis Memory Domains
      • Cracking the Checksum Routine
    • N64
      • Corrupting the N64
      • N64 Architecture
      • N64 Memory Domains
      • N64 Basic/Advanced ROM Corruption
      • N64 Expert ROM Corruption
    • Gameboy Advance
      • Corrupting the GBA
      • GBA Architecture
      • GBA Memory Domains
    • Nintendo DS
      • Corrupting the DS
      • MelonDS Memory Domains
      • MelonDS-Specific Lists
      • Rom Corruption (Deprecated)
    • Gamecube/Wii
      • Corrupting the GC/Wii
      • Dolphin Memory Domains
      • Dolphin-Specific Lists
      • Using a real Wiimote with Dolphin
      • Dolphin Narry's mod (Deprecated)
    • Playstation 1
      • Corrupting the PSX
      • Advanced corruptions
    • Playstation 2
      • Corrupting the PS2
      • PCSX2 Memory Domains
      • PCSX2-specific Lists
    • Playstation 3
      • Playstation 3 Executable Corruptions
    • Xbox 360
      • Xbox 360 Executable Corruptions (Real Console)
      • Xbox 360 Executable Corruptions (Xenia)
    • Nintendo Switch
      • Switch ROM Corruptions
    • Computers & Mobile
      • Corrupting Android Unity games
      • Corrupting Files with FileStub
      • Corrupting PC Games with ProcessStub
      • Corrupting VMware snapshots
    • Java
      • Java Corruptor Plugin
      • Corrupting Minecraft with the Java Corruptor Plugin and FileStub
      • Corrupting Project Zomboid with the Java Corruptor Plugin and FileStub
Powered by GitBook
On this page
  • Vanguard
  • BlastUnit
  • BlastLayer
  • Blast
  • StashKey
  • Stockpile
  • Memory Domain
  • Virtual Memory Domain
  • Emulation Step
  • Active and Infinite Units

Was this helpful?

  1. Real-Time Corruptor
  2. In-Depth Guide

Concepts and Vocabulary

PreviousSimple ModeNextGeneral Parameters

Last updated 1 year ago

Was this helpful?

Before tackling how the corruptor is used, it is recommended to take some time to read the following details about the internals of RTC. These terms are going to be used throughout the entire guide.

Vanguard

Throughout this entire guide, Emulators and other programs that interface with RTC can be referenced as "Vanguard Implementations". This comes from the fact that RTC, as of version 5, uses a technology called Vanguard in order to bridge any program with RTC, therefore giving it control over its memory. In order for an emulator to interface in Real-Time with RTC, it must be modded with Vanguard and adhere to its API.

BlastUnit

This represents one Unit of corruption instructions.

The BlastUnit's behavior is defined by the engine that generated it and may contain one or many Addresses, Values and extra parameters. Said behavior can be customized through the Custom Engine.

BlastLayer

Type of item that contains generated from a .

A BlastLayer is usually encapsulated within a and can be manipulated using the or by merging multiple BlastLayers in the Glitch Harvester's Stockpile Manager. It can also be appended to another Savestate by using the Inject function of the .

BlastLayers that are run from the or the can be deactivated and reactivated on the fly (if applicable).

Blast

A Blast is the action of generating and/or applying a item (The action of corrupting).

When being generated, a Blast will contain a certain amount of . The amount of generated corruption Units is defined by the Intensity setting. The behavior of generated units can be tweaked by changing the selected Engine or building a custom behavior in the Custom Engine.

RTC is built in a way that corruption is always generated and saved in memory before being applied. This allows replayability, manipulation, and real-time interaction. When applied, byte-changing instructions usually backup values before modifying them. This allows corruption to be theoretically , although this doesn't always work. Certain types of units do not store backups. Instead, they simply get removed from their execution pools. This means that while their effect may be stopped in real-time, it also may not be completely reverted.

StashKey

Stockpile

Memory Domain

Item that represents a chip or memory pool on an emulated system.

Virtual Memory Domain

Item that represents continuous or non-contiguous part(s) of one or many Memory Domains

Emulation Step

Active and Infinite Units

Type of item that contains information about a game, its game state, and an attached (Corruption instructions).

Corrupting using the generates StashKeys and sends them in the . They can later be manipulated and/or added to a .

Type of item that contains .

Stockpiles are saved files that contain Stockpile items, Game Binaries, Savestates, corruption instructions, and information related to the targeted program, plugins, and config. It is worth noting that Stockpiles will contain Game Binaries by default. This means it is important to deselect "Include referenced files" in the Stockpile Manager of the when sharing Stockpiles online is the goal.

Stockpiles can be managed using the .

Stockpiles can be replayed using the .

Memory Domains wrap the native memory areas into our own format. Every has to wrap memory areas into Memory Domains, which allows for complete control by RTC. The high-level Memory Domain interface also allows for them to coexist with Virtual Memory Domains, which are a higher level of abstraction on top of normal Memory Domains.

Virtual Memory Domains are abstract lists of pointers that act as a Memory Domain. Most of the tools won't know the difference between a normal Memory Domain and a VMD. VMDs are marked with [V] to show that they are not real. They can be saved and generated from files and formulas. can also be converted into VMDs.

More information about Virtual Memory Domains is available in the .

are hooked to their emulator's clock using some sort of CPU loop. This means that RTC's clock is tied the game on a frame basis. Pausing the emulator causes this loop to also get paused, therefore halting any automatic generation of corruption.

As of version 5, RTC's format is completely programmable and is able to faithfully replace every BlastUnit type from the previous versions. Among the available behaviors, Units can be Active, meaning that they will have an effect for a certain amount of time, or Infinite, meaning that the effect will last forever.

Glitch Harvester
VMD Guide
BlastLayer
StashKeys
Vanguard Implementation
BlastLayers
Vanguard implementations
BlastUnit
corruption engine
Blast Editor
BlastUnits
StashKey
BlastLayer
BlastUnits
Glitch Harvester
Stockpile
Glitch Harvester
Stockpile Player
Glitch Harvester
disabled/reapplied on the fly
Stash History
Glitch Harvester
Stockpile Player