Jump to content

Gen 3 Lua Scripts


Recommended Posts

Gen3 Hoenn Feebas Seed/Tile Finder - RSE (U) Only

attachment.php?attachmentid=11568&d=1407134341

NOTE: Zip file contains the lua script and the images for tile number locations (made by Tux)

-- Gen3 Hoenn Feebas Seed/Tile Finder

-- 0 - Pokemon Emerald (U)
-- 1 - Pokemon Ruby/Sapphire (U)
-- Change this depending on your game
local game = 0

local pointer
local addend

if game == 0 then
pointer = 0x3005D8C
addend = 0x2E6A
elseif game == 1 then
pointer = 0x02025734
addend = 0x2DD6
end


-- Adapted from Kaphotics' RNG for LUA
function rng(seed)
return (0x4E6D * (seed % 65536) +((0x41C6 * (seed % 65536 )+ 0x4E6D * math.floor(seed / 65536)) % 65536) * 65536 +0x3039) % (4294967296)
end

-- Tux - https://www.smogon.com/forums/threads/past-gen-rng-research.61090/page-34#post-3986326
function is_feebas_tile(feebas_seed, current_tile)
rng_seed = feebas_seed
i = 0
tile = 0
while i <= 5 do
	rng_seed = rng(rng_seed)
	tile = (bit.rshift(rng_seed, 16)) % 0x1BF
	if tile >= 4 then
		i = i + 1
	end
	if tile == current_tile then
		return true
	end
end
return false
end

function print_feebas_info()
local feebas_pointer_address
local feebas_seed
if game == 0 then
	feebas_pointer_address = memory.readdwordunsigned(pointer) + addend
elseif game == 1 then
	feebas_pointer_address = pointer + addend
end
feebas_seed = memory.readwordunsigned(feebas_pointer_address)
x = 4
y = 3
gui.box(2, 2, 76, 32, "white")
gui.text(x, y , "Feebas Seed: "..feebas_seed, "green")

current_tile = 0
ctr = 0
y = y + 10
while current_tile <= 600 do
	if is_feebas_tile(feebas_seed, current_tile)then
		if ctr == 3 then
			ctr = 0
			y = y + 10
			x = 4
		end
		x = x + 15
		ctr = ctr + 1
	 	gui.text(x, y, current_tile, "yellow")
	 end
	 current_tile = current_tile + 1
end
end
gui.register(print_feebas_info)

Pokemon Emerald.png

Feebas Hoenn.zip

583dcff7879ec_PokemonEmerald.png.95a87cc

Feebas Hoenn.zip

  • Like 1
Link to comment
Share on other sites

  • 1 month later...
  • 6 years later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...