ASM Resource Thread
This thread is for the development of new assembly routines and hacks based off of the requests of users. Feel free to make requests, fulfil others' requests, and expand upon the work of others to develop and improve the routines and hacks posted. Note that some of these routines are untested and, therefore, may have unexpected side-effects, bugs or oddities. Be sure to report them by quoting the post of the original routine (after checking if the bug has been fixed or reported already) and patiently wait. Always make a back up of your ROM before making any changes!Thread rules
Do not demand for your requests to be fulfilled!
People do not have to fulfil your requests, they do it because they want to! Not only are those posts annoying, they also are completely pointless! If such a post is found, it will probably be deleted.Wrap your hacks and routines in [SPOILER]spoiler tags[/SPOILER].
This is here to keep the thread as easy to browse as possible, as most routines tend to take up multiple lines and this can make scrolling through the thread a chore.Be reasonable with your requests!
This thread is more mostly small routines: don't be greedy! No-one is going to make an entire hack for you.Give credit when requested!
If and when you use any of the routines posted here, give credit to the original creator if they ask for it. If they don't explicitly ask for credit, assume they do. Theft won't be tolerated and if you're caught the moderators will request you add credits to your hack threads, and if not your thread may be deleted.State the base game for which your requests / routines are for.
This is mostly to avoid confusion, and to allow for easier organisation of the thread.Read the thread before making a request!
Again for organisational reasons, it is a waste of space and time to request routines which have already been created.Routines
Ruby/Sapphire
Graphic Routines
FireRed
- JPAN's Save Block Hack (attachment broken) Working Link
Pokémon Routines
- Wild Pokémon with Custom Attacks
- Fully Custom Wild/Given Pokémon
- Count Number of Times a Pokémon Has Been Encountered
- Inheriting IVs (via Destiny Knot)
- Roaming Pokémon
- Swarming Pokémon
- Adjusting the Shiny Encounter Rate (via Shiny Charm)
- Dawn Stone/Gender Evolution Method
- Level Up While Holding Item Evolution Method
- Send Pokémon Directly to PC
- Select Pokémon from PC Box
Party Routines
- Held Item BL Offset
- Get Party Pokémon Item (Check for a Held Item)
- Changine Pokémon Species (Useful for Form Changes)
- Forced (Silent) Evolution (Evolution without Animation)
- Get Party Position of Party Pokémon
- The Pokémon Storage System
- Party Pokémon Stat Getter (Party Pokémon Decrypter)
- Get Average Level of Party
- Display Hidden Power Type
- Set a Static Party Level
- Get Type of Part Pokémon
- Give a Party Pokémon the Shiny Box
- Pokémon Die from Poison in the Overworld
- Swap a Party Pokémon's Abilities
- Buffer the Name of a Party Pokémon's Ability
- Failed Research on Setting a Pokémon's Trainer Info.
- Check a Party Pokémon's Gender
- Get a Party Pokémon's IVs/EVs [FR] [EM]
- Regenerate HP Every Step
- Lose HP Every Step
- Get Egg Group of a Part Pokémon
- Check HM Compatibility
- Evolve via Callasm
- Delete Party Pokémon
- Deposit entire team but one [FR] [EM]
- Summary Screen Wraps Around
- Switching Item held between Party Pokémon
- Changing Pokémon's Nature
Battle Routines
- Battle Modes: Run a Routine Each Turn/Move
- Pokémon Obedience via Happiness and Badges
- Capturing a Trainer's Pokémon
- Toggling Wild Pokémon Capturability [FR][EM]
- Reset Game after Losing Battle
- Delete Save and Reset Game after Whiteout
- Nicknames for Enemy Pokémon
- Toggling Run Away
- Shiny Pokémon Encounter
- Force "Set" Battle Mode (No switching before enemy sends out a Pokémon)
- Explanation of How Trainer Pokémon Genders are Determined
- Disable Experience Gain with a Flag
- Leftovers Message Update
- Frontier Routines
- Disable Battle Prize Money
- Sitrus Berry Update
- Disable Bag [FR][EM]
- Custom Victory Music
- Loathing Friendship Evolution Method
- Low HP/Faint Evolution Method
- Level-up Evolution Method if User is Holding an Item
- Infinite Use of Elemental Hyper Beam Tutor
- Metronome Battles
- Evolution Moves
- Display actual Hidden Power Type
- Functional Pokérus
- Modulate Experience Gain
- Opposing Trainers with Custom EVs and IVs based on VARs
Item Routines
- Bag Stuff (Backup, Deletion and Restoration)
- Reusable TMs
- Adding New Incense Items
- Weather Rocks (Smooth Rock, Damp Rock, etc.)
- EV Reducing Berries
- Light Clay
- Light Ball the Raises Pikachu's Attack
- Adjusting PokéMart Prices by a Percentage
- Wide Lens
- Black Sludge
- Gen 7 Soul Dew Update
- Damage Reduction Berries
- Flame Orb and Toxic Orb
- EV Enhancing Items (Power Items)[FR] [Ruby]
- Life Orb Recoil Damage
- Life Orb Damage Boost
- Battle End of Move Items (Rocky Helmet, Weakness Policy, Knock Off Ban-list)
- Only Buy 1 Item from Marts
Other Routines
- A Better PRNG (from 0 to 0xFFFF)
- Adding More Sailing Destinations
- Berry System
- Set a Static Player Name (for if you skip the intro.)
- Set a Random Secret and Trainer ID (for if you skip the intro.)
- Skip Oak's Intro. (as seen in Pokémon Rose)
- Swapping the Player's Backsprite
- Switching Between Two Start Menus
- Offset of the Routine that Determines the Shiny Palette
- Something About a Bad Egg is Hidden Here
- Using the Playtime as a Clock
- Calling Routines Every Minute
- Buffer Map Name
- Headbutt Trees
- Routines for Banks
- Swapping Textboxes (with a variable)
- Chain Fishing
- Changing the Player's Overworld
- Changing the Bike's Speed
- Making New Field Moves
- Button Detection (for scripts)
- Warp Redirection (think, Elevators)
- Scrolling Multichoice Boxes
- Overriding Default Music upon Warp
- Number Input Textbox
- Daily Events (does not work with save data)
- checkitem Hack (stores quantity in variable 0x8008)
- Unfinished Regional Pokédex Routines
- Regional Pokédex Routines
- Bug Catching Contest
- Some New Movement Bytes
- Feebas Fishing Tiles
- Happiness Checker
- Speeding-up Fire Red
- Auto-Running Shoes
- Bag Expansion
- Modification of the Sweet Scent Script
- Stats on the Pokédex screen replacing the weight comparison
- Expanding Number of Buffers
- Sidequest Menu
- Multi-directional Tiles
- Start Menu Options Toggled by a Flag
- Fix for Expanded Pokémon not showing in the Hall of Fame Properly
- Switching Pokédex Measurements to be in Metric System
- Switching the Charizard in the Titlescreen Based on a Flag
- Loading a Different Map Song Depending on a VAR
- More Options for In-Game Trades
- Shiny Pokémon for Showpokepic Command
- Arithmetic Operations for VARs
- Timer System Routines
Graphical Routines
- A Number of OAM (Sprite) Routines & Research
- Day/Night Swapping of Textbox Palettes
- Multiple Characters and Instant NPC Sprite Switch
- Show Time in Menu
- Color Stats Based on Nature
- Custom EV/IV Screen
- 80x80 Mugshots
- EV Rankings in Summary Screen
LeafGreen
Item Routines
Item Routines
Emerald
Pokémon Routines
- Evolution Based on Contest Conditions
Gen VI Exp. Share [EM][FR] - Inherit Pokéball from Mother [EM]
- [FR]
Party Routines
- Held Item BL Offset
- Get Party Pokémon Egg Group
- Get Party Position of Party Pokémon (Offsets are linked)
- Regenerate HP Every Step
- Lose HP Every Step
- Check for a Specific Species (via Special 0xA2)
- Encrypter and Decrypter for Scripting
Battle Routines
- Battle Modes: Run a Routine Each Move
- Nicknames for Enemy Pokémon
- Make the Wally Battle use the Rival's Backsprite
- Moves with Zero Accuracy Always Hit
- Callasm and Setword Commands
- Battle String Loader
- Sitrus Berry Update
- Berry Activation Update
Item Routines
Specials Routines
Graphical Routines
Other Routines
Helpful Links
Assembling and Inserting ASM Routines by FBIThis post explains how to insert ASM routines to your ROM.
HackMew's Knowledge by HackMew
This includes a compiler and explains how to compile routines, as well as the basic construction of a routine and an overview of what ASM is.
GBA ASM Programming by Shiny Quagsire
This is another ASM tutorial that explains how assembly works with step-by-step explanations and useful images.
Yet another ASM tutorial by knizz and Full Metal
This is a tutorial about ASM for the Gameboy Advanced. It features expanding the Town Map for FireRed.
Last edited by a moderator: