Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local HackEncountersAway = false
- LandArray = {[0]=0x1F, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x25, 0x25, 0x25, 0x25, 0x25, 0x25, 0x25,
- 0x1F, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x2C, 0x2C, 0x2C, 0x25, 0x25, 0x25, 0x25, 0x25, 0x25,
- 0x1F, 0x1F, 0x09, 0x09, 0x09, 0x0A, 0x2E, 0x2D, 0x2C, 0x2C, 0x24, 0x24, 0x24, 0x24, 0x24, 0x24,
- 0x1F, 0x09, 0x09, 0x08, 0x09, 0x2E, 0x2E, 0x2C, 0x2C, 0x2C, 0x23, 0x24, 0x23, 0x23, 0x23, 0x23,
- 0x1F, 0x09, 0x08, 0x08, 0x08, 0x0C, 0x2D, 0x2C, 0x2C, 0x18, 0x24, 0x24, 0x24, 0x21, 0x20, 0x20,
- 0x0F, 0x0F, 0x0F, 0x08, 0x0C, 0x0C, 0x10, 0x2D, 0x2D, 0x18, 0x18, 0x24, 0x24, 0x21, 0x21, 0x20,
- 0x0F, 0x0F, 0x0E, 0x0F, 0x0C, 0x0C, 0x10, 0x15, 0x16, 0x17, 0x18, 0x18, 0x24, 0x21, 0x21, 0x20,
- 0x1A, 0x0E, 0x0D, 0x0D, 0x0C, 0x0C, 0x11, 0x15, 0x16, 0x17, 0x17, 0x20, 0x20, 0x20, 0x20, 0x20,
- 0x1A, 0x0E, 0x0E, 0x0D, 0x0D, 0x11, 0x11, 0x14, 0x14, 0x16, 0x17, 0x27, 0x27, 0x27, 0x2A, 0x2A,
- 0x1A, 0x1A, 0x1A, 0x0D, 0x30, 0x12, 0x12, 0x13, 0x13, 0x1C, 0x1C, 0x1C, 0x29, 0x2B, 0x2A, 0x27,
- 0x1A, 0x1A, 0x1A, 0x31, 0x30, 0x12, 0x13, 0x13, 0x13, 0x13, 0x27, 0x27, 0x27, 0x2B, 0x27, 0x27,
- 0x1B, 0x1B, 0x1B, 0x30, 0x30, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x07, 0x07, 0x29, 0x27, 0x27,
- 0x1B, 0x1B, 0x1B, 0x1B, 0x1B, 0x1D, 0x1D, 0x1D, 0x05, 0x05, 0x06, 0x07, 0x07, 0x27, 0x27, 0x27,
- 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x1D, 0x2F, 0x1D, 0x05, 0x05, 0x04, 0x07, 0x05, 0x29, 0x27, 0x27,
- 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1D, 0x1D, 0x1D, 0x05, 0x05, 0x04, 0x05, 0x29, 0x29, 0x29, 0x29,
- 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x29, 0x29, 0x29, 0x29}
- WaterArray = {[0]=0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x01, 0x02, 0x02, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x01, 0x02, 0x02, 0x02, 0x00, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x01, 0x00, 0x02, 0x02, 0x02, 0x00, 0x00, 0x03, 0x03, 0x00, 0x01, 0x01, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x01, 0x01, 0x01, 0x02, 0x02, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x03, 0x03, 0x03, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x00,
- 0x00, 0x03, 0x03, 0x03, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x00}
- local ThisEncounterCounter = 0
- local LastEncounterCounter = 0
- local EncounterDepletion = 0
- local X
- local Y
- local XMod
- local YMod
- local Zone
- local TravelMethod
- if (HackEncountersAway) then
- memory.write_u16_le(0xF796, 64000)
- end
- while true do
- ThisEncounterCounter = memory.read_u16_le(0xF796)
- if (HackEncountersAway) then
- if(ThisEncounterCounter < 2000) then
- memory.write_u16_le(0xF796, 64000)
- end
- end
- if(LastEncounterCounter ~= ThisEncounterCounter) then
- EncounterDepletion = LastEncounterCounter - ThisEncounterCounter
- end
- gui.text(0,0,"Encounter Counter: " .. memory.read_u16_le(0xF796))
- if(EncounterDepletion > 0) then
- gui.text(0,45,"Depletion: " .. EncounterDepletion)
- end
- gui.text(0,75,"RNGA: " .. memory.read_u16_le(0x7F7A))
- gui.text(0,90,"RNGB: " .. memory.read_u16_le(0x7F7C))
- gui.text(0,75,"RNGA: " .. memory.read_u16_le(0x7F7A))
- gui.text(0,90,"RNGB: " .. memory.read_u16_le(0x7F7C))
- X = memory.read_u16_le(0x01E36C)
- Y = memory.read_u16_le(0x01E376)
- -- Also 01E36C
- -- Also 01E36E
- -- Also 01E370
- -- Also 01E374
- -- Also 01E376
- -- Also 01E378
- -- Also 01E37A
- -- Also 01E37E
- TravelMethod = memory.read_u16_le(0xDB04) --Also 0xDB02
- --Fair Warning this is kind of hackish
- XMod = math.floor((X - 2048 + 128) / 256)
- YMod = math.floor((Y - 2048 + 128 - 16) / 256)
- if(X > 6032) then
- XMod = 0
- end
- if(Y > 6032) then
- YMod = 0
- end
- if(XMod > 15) then
- XMod = 15
- end
- if(YMod > 15) then
- YMod = 15
- end
- Zone = XMod + (YMod * 16)
- LandZoneValue = LandArray[Zone]
- WaterZoneValue = WaterArray[Zone]
- gui.text(0,150,"XTile: " .. math.floor(X/16))
- gui.text(0,165,"YTile: " .. math.floor(Y/16))
- gui.text(0,180,"XZone: " .. XMod)
- gui.text(0,195,"YZone: " .. YMod)
- gui.text(0,210,"LandZone: " .. string.upper(string.format("%2x", LandZoneValue)))
- gui.text(0,225,"WaterZone: " .. string.upper(string.format("%2x", WaterZoneValue)))
- if(LandZoneValue == 0x1B or LandZoneValue == 0x1C) then
- gui.text(0,240,"Land Encounters Doubled")
- end
- if(LandZoneValue == 0x2C or LandZoneValue == 0x2E) then
- gui.text(0,240,"Land Encounters Halved")
- end
- if(LandZoneValue == 0x29) then
- gui.text(0,240,"Land Encounters Zero")
- end
- if(WaterZoneValue == 0x02 or WaterZoneValue == 0x03) then
- gui.text(0,255,"Water Encounters Doubled")
- end
- if(TravelMethod == 512) then
- gui.text(0,270,"In Water")
- elseif(TravelMethod == 2048) then
- gui.text(0,270,"Lamia")
- else
- gui.text(0,270,"On Land")
- end
- LastEncounterCounter = ThisEncounterCounter
- emu.frameadvance()
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement