Warepire
He/Him
Editor
Joined: 3/2/2010
Posts: 2178
Location: A little to the left of nowhere (Sweden)
Beautiful fight. Fantastic!
Editor, Experienced player (848)
Joined: 5/2/2015
Posts: 696
Location: France
Odongdong, is this project dead? I might pick this up in the future when I get more time.
Player (37)
Joined: 2/16/2012
Posts: 282
For anybody that wants to work on this game, I made a helper lua script some time ago. I have not made any attempts to update it for recent BizHawk changes, but it's simple enough that it should still be compatible. It was originally intended to show hitboxes, but the hitboxes are determined by unique subroutines per enemy, thus being a pain in the ass. It still displays HP and damage values of attacks, which should be pretty helpful. It also does some strange calculations against a semicircle around your character, which I can only imagine is your shield.
--Alcahest Helper Script
--Author: Omnigamer

function draw_cross(x_pos,y_pos, color)
	gui.drawLine(x_pos-3,y_pos,x_pos+3,y_pos, color)
	gui.drawLine(x_pos,y_pos-3,x_pos,y_pos+3, color)
end

while true do
	
	camx = mainmemory.read_u16_le(0x00173C)
	camy = mainmemory.read_u16_le(0x001744)
	
	textX=20
	textY=30
	
	hp = mainmemory.read_u8(0x001858)
	gui.drawText(textX,textY,string.format("HP:  %d",hp))

	
	memory.usememorydomain("CARTROM")
	
	x_coord = mainmemory.read_u16_le(0x000CF6)
	y_coord = mainmemory.read_u16_le(0x000D2E)
	
	--2 = player
	--4 = partner
	--6 = guardian
	--A = partner projectile
	--16 = aura blade projectile
	--24-34 = enemies and items
	
	next_ID = 0x02;
	
	while next_ID ~= 0xFF do
		
		x_coord = mainmemory.read_u16_le(0x000CF4+next_ID)
		y_coord = mainmemory.read_u16_le(0x000d2c+next_ID)
		
		status = bit.band(mainmemory.read_u16_le(0x00118c+next_ID),0x0005);
		
		if(next_ID == 0x02) then
			gui.drawRectangle(x_coord-camx-0x08,y_coord-camy-0x08,0x10,0x10,"blue");

			
		end
		
		if(status~=0) then
		
			enemy_HP = mainmemory.read_u8(0x00103c+next_ID)
			
			if next_ID ~= 2 then
				gui.drawText(x_coord-camx,y_coord-camy,string.format("%d", enemy_HP));
			end
			
			draw_cross(x_coord - camx,y_coord-camy, "red");
		end
		
		next_ID = mainmemory.read_u8(0x000C4c+next_ID)
	end
	
	emu.frameadvance()
end
Player (213)
Joined: 9/14/2011
Posts: 349
Hey, xy2_. Sorry for late response, somehow I missed this earlier. The project indeed didn't go much from the last WIP as I couldn't find my time to invest more on this. I'll post the latest things I worked on as soon as I get home. Edit: Here it is. WIP stopped at right in front of Dark Dragon (Stage 2 boss). This was worked on BizHawk 1.7.3 with compatibility core. Also, RAM watch file. http://tasvideos.org/userfiles/info/35917619718245579 http://tasvideos.org/userfiles/info/35917646336865094