Author Topic: A good way to place enemies and objects on a GBC game  (Read 6448 times)

0 Members and 1 Guest are viewing this topic.

Offline Wario Bros

  • Jr. Member
  • **
  • Posts: 51
A good way to place enemies and objects on a GBC game
« on: September 08, 2010, 03:22:13 PM »
I'm currently ripping a GameBoy Color game called Balloon Fight GB and I'm needing help putting in the enemies and objects on the map.  What I'm trying to do is rip the maps and have all enemies and objects in the areas you meet them.  But I'm having trouble find the exact spot for those since everything is moving around the screen, the game does auto-scrolling only levels, and that the game screen doesn't show everything (the area of the screen is a 160x128 pixel area and the levels are 224 pixels tall.)  Not to mention I have to use a totally different emulator in order for me to rip the game's multiplayer level that goes by the same rules as above.

What is the best way to handle this?

Offline Maxim

  • Hero Member
  • *****
  • Posts: 974
Re: A good way to place enemies and objects on a GBC game
« Reply #1 on: September 09, 2010, 12:44:36 AM »
Either reverse engineer the level data (hard) or place them at the first position they're seen on-screen, even if you know that's not quite right.

Offline Trop

  • Hero Member
  • *****
  • Posts: 849
Re: A good way to place enemies and objects on a GBC game
« Reply #2 on: September 09, 2010, 11:10:13 PM »
I usually just put them in the first spot they appear.  If they're moving too much I pick a general area and place them in the center.  Keep in mind that while its a nice idea to have enemies marked at their point of origin it may be better to, like you said, place them where the player will meet them instead.

Offline TerraEsperZ

  • Hero Member
  • *****
  • Posts: 2286
Re: A good way to place enemies and objects on a GBC game
« Reply #3 on: September 09, 2010, 11:23:00 PM »
If you didn't have to deal with auto-scrolling but static levels instead, you could have searched for changing memory addresses corresponding to enemy positions and then find out the initial value of those, and finally freeze those addresses as soon as possible so the enemies are stuck where they would start.

With an auto-scrolling level, I have no idea how a game would handle coordinates if a level if very long, plus the fact that the constant spawning of enemies would mean that a certain number of memory values would probably be used for their positions and be constantly re-used as old enemies disappear and new one are generated. I'd go with Trop's suggestion with a tiny caveat: I like to align sprites to the game grid so in most cases, even if an enemy if slightly offset while all the others are not, I'll move it by a few pixels so that they're all neatly aligned on a 8 x 8 pixels grid. I'll admit that's a bit obsessive though ;)
Current project that are on hold because job burnout :
-Drill Dozer (GBA)
-Sonic 3D Blast (Genesis)
-Naya's Quest (PC)

Offline Wario Bros

  • Jr. Member
  • **
  • Posts: 51
Re: A good way to place enemies and objects on a GBC game
« Reply #4 on: September 11, 2010, 08:33:09 AM »
I know nothing about hacking including reverse engineer or changing memory address.  So I'm having the feeling I'm just gonna put them when I first see them appear while being close to an 8x8 pixel grid.  It may not be accurate but hey.  :P