Joined: 10/2/2015
Posts: 91
I'm not sure if this is in the right place. What my endgoal is to write a lua script that displays hitboxes, but I'm not sure how to accomplish this. Do I have to find EVERY enemies hitbox? Cause I can do that. Or does there exist a 'master' code that I can access? My game is Donkey Kong Country btw.
I didn't kill donkey, I saved it. Current projects: Misc Donkey hacks :) Past projects: Pacifist DKC1 DKC1 Entrance randomizer DKC2 Entrance randomizer DKDC (a troll hack of DKC1) DKC1 Enemy randomizer (among other things)
Joined: 10/2/2015
Posts: 91
Like, if I were TASing SMW,, could I just use one set of values for ALL koopas? Or do I go unique for each instance?
I didn't kill donkey, I saved it. Current projects: Misc Donkey hacks :) Past projects: Pacifist DKC1 DKC1 Entrance randomizer DKC2 Entrance randomizer DKDC (a troll hack of DKC1) DKC1 Enemy randomizer (among other things)
Skilled player (1741)
Joined: 9/17/2009
Posts: 4981
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Depends on the game. Some games I know of (Spongebob GBA games for instance) have all of the NPC addresses in a fixed location, right next to each other, so a for loop can loop through them all. Games like Monster House (GBA) have the addresses "hop" around every single floor, so you have to find a way to locate them. Normally, I don't even look for hitboxes. I just find their X/Y values, then draw an approximate square around them, depending on what enemy they are.
Joined: 10/2/2015
Posts: 91
jlun2 wrote:
Normally, I don't even look for hitboxes. I just find their X/Y values, then draw an approximate square around them, depending on what enemy they are.
That sounds pretty tedious, but I guess that is the nature of TASing.
I didn't kill donkey, I saved it. Current projects: Misc Donkey hacks :) Past projects: Pacifist DKC1 DKC1 Entrance randomizer DKC2 Entrance randomizer DKDC (a troll hack of DKC1) DKC1 Enemy randomizer (among other things)
Editor, Player (175)
Joined: 4/7/2015
Posts: 331
Location: Porto Alegre, RS, Brazil
Each game handles hitboxes differently, you have to make a RAM/ROM mapping to find out which addresses handle this. In Yoshi's Island, for example, there's a table for sprites' hitboxes widths and heights: $701BB6 (96 bytes) 24 2-word entries, one sprite per: Word 1: Width of hitbox from center (both sides) Word 2: Height of hitbox from center (top & bottom) So reading this with my YI script, I can print hitboxes easily:
Games are basically math with a visual representation of this math, that's why I make the scripts, to re-see games as math. My things: YouTube, GitHub, Pastebin, Twitter
Editor, Player (175)
Joined: 4/7/2015
Posts: 331
Location: Porto Alegre, RS, Brazil
Also, Amaraticando was working in a full script for DKC2, with hitboxes, make sure to check it to understand how it's reading the game to print correct hitboxes: http://tasvideos.org/userfiles/info/28335593014878764
Games are basically math with a visual representation of this math, that's why I make the scripts, to re-see games as math. My things: YouTube, GitHub, Pastebin, Twitter
Joined: 10/2/2015
Posts: 91
Tyvm for your help :)
I didn't kill donkey, I saved it. Current projects: Misc Donkey hacks :) Past projects: Pacifist DKC1 DKC1 Entrance randomizer DKC2 Entrance randomizer DKDC (a troll hack of DKC1) DKC1 Enemy randomizer (among other things)
Amaraticando
It/Its
Editor, Player (159)
Joined: 1/10/2012
Posts: 673
Location: Brazil
I made this: User movie #38528305500717915 User movie #38528317092688522 I can talk about how I could figure out some things.. later.