Main Menu
Main Page
Forums
New pages
Recent changes
Random page
Help

Glitches
Arbitrary code execution
Pokémon cloning
Pomeg glitch and Glitzer Popping
Tweaking and voiding
Glitches by generation
Glitch categories

References/Resources
Databases
Disassembly projects
The Big HEX List
Pokémon cheat codes
Pokémon glitch terminology
Useful tools
More

Affiliates
Legendary Star Blob 2 (Hakuda) (日本語/Japanese)
Pokémon Speedruns wiki (English)
PRAMA Initiative (Français/French)
MissingNo. Glitch City (Italiano/Italian)
Become an affiliate!

Technical
Site source code

Search Wiki

 

Search Forums

 

Author Topic: GBZ80 - Teleportation  (Read 790 times)

0 Members and 1 Guest are viewing this topic.

Th3B0r3d

  • GCLF Member
  • Offline Offline
  • CHARIZRAD 'M ROXORX or is it.
    • View Profile
GBZ80 - Teleportation
« on: November 08, 2017, 12:45:24 pm »
I'm trying to make item in Pokémon red  that after using warps to predefined location. How to do such thing in assembly? (I know how to edit item's usage but I still need code that will warp you)

ISSOtm

  • The French Lord of Laziness (and a huge The Legend Of Zelda fan)
  • Staff
  • *****
  • Offline Offline
  • Gender: Male
  • Pewter City (B)rocks !
    • View Profile
    • My Little Website
Re: GBZ80 - Teleportation
« Reply #1 on: November 09, 2017, 05:39:28 am »
What are you trying to do exactly, editing the warps in the current map ? All warps, or just one ?
"THOU SHALL NOT PASS !!"  RIVAL's effect, Gandalf.

Proudly glitching Pokémon Red and Yellow on a Black & White GB, Pocket GB, GB Color, GBA SP and new 3DS.

My Twitter (beware, I'm French)
My YouTube (same warning)

Here is an online tool to build 8F setups : GBz80 to Items !

They see me layzin', they ha-tin'...
Heavy contributor of the global augmentation of entropy (my room's is too damn high !)

Th3B0r3d

  • GCLF Member
  • Offline Offline
  • CHARIZRAD 'M ROXORX or is it.
    • View Profile
Re: GBZ80 - Teleportation
« Reply #2 on: November 09, 2017, 12:53:17 pm »
I'm trying to make item that after usage warps you to some place.

ISSOtm

  • The French Lord of Laziness (and a huge The Legend Of Zelda fan)
  • Staff
  • *****
  • Offline Offline
  • Gender: Male
  • Pewter City (B)rocks !
    • View Profile
    • My Little Website
Re: GBZ80 - Teleportation
« Reply #3 on: November 09, 2017, 06:14:07 pm »
You mean, that warps you to a given map once you use the item (but after closing the menu), right ?
"THOU SHALL NOT PASS !!"  RIVAL's effect, Gandalf.

Proudly glitching Pokémon Red and Yellow on a Black & White GB, Pocket GB, GB Color, GBA SP and new 3DS.

My Twitter (beware, I'm French)
My YouTube (same warning)

Here is an online tool to build 8F setups : GBz80 to Items !

They see me layzin', they ha-tin'...
Heavy contributor of the global augmentation of entropy (my room's is too damn high !)

Th3B0r3d

  • GCLF Member
  • Offline Offline
  • CHARIZRAD 'M ROXORX or is it.
    • View Profile
Re: GBZ80 - Teleportation
« Reply #4 on: November 10, 2017, 09:03:50 am »
Yes

Evie the Mother Hen ☽ ❤

  • Head Administrator
  • *****
  • Offline Offline
  • Gender: Female
  • I love My Melody. 🦋 ✿
    • View Profile
Re: GBZ80 - Teleportation
« Reply #5 on: November 10, 2017, 10:38:54 am »
I have an answer that's incomplete as I don't actually know without further research how to properly execute this either, sorry.

However you can try:

ld a,(map ID)
ld (d35e),a
ld h, d3
ld l, 6e
ld a,41
ld (hli),a
ld a,12 [1241 is LoadMapData in pokered disassembly]
ld (hli),a
ret

After closing the menu, this will warp you anywhere but Glitch Cities may appear depending on exactly where you warped from. Refreshing the map is also possible by placing X Attack x18 into item 41 (level-script pointer, D36E-D36F) and the map's ID into item 33 (D35E).

For more complex purposes, as Glitch Cities can appear depending on where you warp from, you may have to specify the data for these addresses in some way or get the game to look them up:

D35F-D360 = Top-left block pointer
D361 - 1 byte integer = Current Player Y-Position
D362 - 1 byte integer = Current Player X-Position
D363 = Current Player Y-Position (Current Block)
D364 = Current Player X-Position (Current Block)
D3B1 = Entrance position ID (affects D35F-D360)
D3B5 = Entrance position ID (affects D35F-D360)

(Note all of these addresses (for Red/Blue) are -1 in Yellow)

If you just want to warp and don't mind having to walk through the exit of a door, you can modify D365. This address is the location specific exits like those from Pokémon Centers and many houses take you. But the entrance position ID stays the same as the one from the original map, so you've got to find one that works, use cheat code 010xxB5D3 01xxB1D3 to modify the entrance position ID, or alternatively do this:

Change D3B1 to the entrance position ID (e.g. 01).
Change D3B2 to the desired map (or FF for the map stored in D365).

Then you need to walk through the first warp of the building. (In a Pokémon Center this should be the left-side of the exit mat).

Also for what it's worth D3AF-D3B0 are the y and x-coordinates of the warp, but you'll need a proper map tile for this to work.

Hope this helps and I hope somebody with better coding knowledge than me is able to assist. :)
« Last Edit: November 10, 2017, 10:54:56 am by Evie ✿ »

✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿
Here have some free flowers on every post :)
✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿✿



(Images © Sanrio, Nintendo, Pokémon, HAL Laboratory)

✿ Hi, I'm Evie. Transgender woman but spiritually doesn't believe 'male'/'female' needs to be defined; lives more stereotypically like a woman/I'm a 'girly' nerd who discovered herself. Call me whichever pronouns you like. :)

Feel free to contact me here about anything regarding the site.

Forgiveness. I feel that the more people pray to our greatest source/God/mathematical equality for world peace, the more and more it manifests into reality (until our next spiritual death).

Thank you Nyapon for this lovely artwork. :3