Jump to content

  •  

Photo

Basic Questions and Answers Thread


  • Please log in to reply
1572 replies to this topic

#55 Oerg866

Oerg866

    The dense kraut(tm)

  • Member
  • 231 posts
  • Gender:Male
  • Location:Frankfurt

Posted 20 August 2009 - 08:27 PM

Try to insert this code in your routine then:

		bset	#2,$22(a0)
move.b #$E,$16(a0)
move.b #7,$17(a0)
addq.w #5,$C(a0)

  • 0

#56 Thorn

Thorn

    wroar

  • Pro User
  • 54 posts
  • Gender:Male

Posted 20 August 2009 - 11:00 PM

^ Truth be told, I can't imagine why that would help. While the OST is different in Sonic 2 than it is in Sonic 1, I can tell what it is by comparing it to Sonic 2 code:

Set rolling flag (I've already done this)
Set Sonic's y-radius to $E
Set Sonic's x-radius to $7
Move Sonic down five pixels

When you suggested calling Obj01_DoRoll, that code was already included in that routine, so I've already tested this. Unfortunately, none of that changes the fact that the monitor break code is looking for the rolling animation. :( Without the location of that code, any other attempt will be futile. Hell, I could be wrong and the code might not be looking for that animation at all, but I've set most every other aspect of rolling except that. I know a similar routine exists in Sonic 1 -- is it Megamix that lets you run right through monitors when at high speed? -- so I'm sure the answer's out there somewhere.
  • 0

#57 Oerg866

Oerg866

    The dense kraut(tm)

  • Member
  • 231 posts
  • Gender:Male
  • Location:Frankfurt

Posted 21 August 2009 - 01:02 AM

Well, I then suggest to make a few checks for different animations comeing after the rolling check, like this

1. Check for Rolling animation
2. Check for running animation
> if yes, if speed is over nine thousand then jsr theroutinethatbreaksmonitors
3. check for your custom animation

etc.

And yes, it was megamix that let you do that. (I still have that leaked source somewhere so I could take a look and see how it works, if tweaker grants me permission to do that and share my impressions, that is)
  • 0

#58 Thorn

Thorn

    wroar

  • Pro User
  • 54 posts
  • Gender:Male

Posted 21 August 2009 - 02:29 AM

Oerg, I appreciate it, really... but you're still missing the problem. I don't know where the routine to check if a monitor should be broken is. All I've found is the routine that checks for if a monitor should be treated as a solid object, which isn't the same; I can't make a branch to theroutinethatbreaksmonitors since I don't know its name. I know that the routine checks for the rolling animation, since the rolling status doesn't cut it, but I don't see any other lines in the nearby code that check for the character's current animation, so I have no hints as to where to look.

Also, just to let you know, running isn't what I'm looking to have break it... this is, courtesy of DNXDelta.

Posted Image

(not as choppy in-game... I threw that AniGIF together in ten minutes just to make my question more clear)

Edited by Thorn, 21 August 2009 - 04:01 AM.

  • 0

#59 Qjimbo

Qjimbo

    7 Chaos Emeralds

  • Pro User
  • 808 posts
  • Gender:Male
  • Location:Vancouver, BC
  • Interests:Webdesign, HTML, PHP,
    Programming, Delphi, C++

Posted 21 August 2009 - 03:43 AM

Posted Image


*drools...*
  • 0

#60 snkenjoi

snkenjoi

    1 Chaos Emerald

  • Member
  • 35 posts

Posted 21 August 2009 - 12:28 PM

Thorn; SolidObject_Monitor_Sonic and Touch_Monitor are the only two places you need to edit.

Also, feel free to come back. You are a welcome presence in the channel.
  • 0

#61 iojnekns

iojnekns

    OBAMA '012!!!!1!!!!!!

  • Pro User
  • 245 posts

Posted 21 August 2009 - 04:07 PM

I agree.

And that animation in motion is something special!
  • 0

#62 Thorn

Thorn

    wroar

  • Pro User
  • 54 posts
  • Gender:Male

Posted 21 August 2009 - 05:08 PM

Touch_Monitor

THIS. Thank you good sir, it works now. The funny thing is that I'd used Find to get to Touch_Enemy, right below Touch_Monitor, in order to make the attack destroy badniks. However, I'd had Find set to scroll through the code backwards for whatever reason, so Touch_Enemy showed up at the top of the screen instead of the bottom. If I'd've been searching forwards, Touch_Enemy would've been at the bottom, and Touch_Monitor would be above it on the screen, so I would've known that such a routine existed. :(

Edited by Thorn, 21 August 2009 - 05:09 PM.

  • 0

#63 Oerg866

Oerg866

    The dense kraut(tm)

  • Member
  • 231 posts
  • Gender:Male
  • Location:Frankfurt

Posted 21 August 2009 - 08:49 PM

Ooooh. Now I see. Oh well, I fail at understanding problems =P Sorry
  • 0

#64 *_RistarSonic_*

*_RistarSonic_*
  • Lurker

Posted 22 August 2009 - 05:33 PM

quick q, I have the background tiles from neo green hill zone, I want to take the mountains and add it to green hill zone. Its in a bmp image, how would I add the mountains?
Im not good with background.

Edited by RistarSonic, 22 August 2009 - 05:41 PM.


#65 beanDude

beanDude

    2 Chaos Emeralds

  • Member
  • 97 posts
  • Gender:Male
  • Location:Somewhere in California...
  • Interests:Being creative and/or productive, music, playing the clarinet (in and out of my band), playing/recording w/ MIDI keyboard and Ableton software, playing some ping-pong or tennis, hanging with friends, waveboarding, computers and programming

Posted 23 August 2009 - 07:28 PM

Oh, hey... I'd rather not start a whole freakin' topic on this...

... but is there any easy way to remove the vertical boundary limits in a Zone with said limits (such as the GHZ) ?
  • 0

#66 Destructiox

Destructiox

    Newbie

  • Member
  • 17 posts

Posted 23 August 2009 - 08:27 PM

If you're looking to just remove them, go to Resize_GHZ and just replace the whole thing with an 'rts', I did that with Marble Zone 1 resizing and it worked a charm.
  • 0

#67 beanDude

beanDude

    2 Chaos Emeralds

  • Member
  • 97 posts
  • Gender:Male
  • Location:Somewhere in California...
  • Interests:Being creative and/or productive, music, playing the clarinet (in and out of my band), playing/recording w/ MIDI keyboard and Ableton software, playing some ping-pong or tennis, hanging with friends, waveboarding, computers and programming

Posted 24 August 2009 - 02:55 AM

For some strange reason, I'm seeing no results from varied attempts at doing what you said...
... There's something I'm missing...
  • 0

#68 Animemaster

Animemaster

    Lets get to work!

  • Pro User
  • 984 posts
  • Gender:Male
  • Location:UK

Posted 24 August 2009 - 12:09 PM

For some strange reason, I'm seeing no results from varied attempts at doing what you said...
... There's something I'm missing...

Then perhaps you need to extend the size of the level. My best guess would be to open up lvl_size.bin find the location of ghz and the act you want,(should be at the begining) and the figure which bytes handle the width of the level, an which handles the hieght of the level and try extending the hieght.
  • 0

#69 Zero

Zero

    1 Chaos Emerald

  • Member
  • 36 posts
  • Gender:Male

Posted 03 September 2009 - 02:05 AM

I have a problem in Sonic 1:

I'm trying to replace the art for Eggman in SYZ. But I don't know how to do it. I already changed the mappings just fine, but the art isn't loading.

When I put the label for the new art in the Pattern load cues.asm, the ship art changes in every level, not just SYZ. and the alt art routine that I made doesn't work either:

toyboxboss2:

		cmpi.b	#4,($FFFFFE11).w&#59; is level syz?

		bne.s   toybox_boss2   &#59; if not, branch

		lea   	(Nem_SYZBoss).l,a1

		jsr	 Loadplc2		  &#59;



toybox_boss2:

		lea	(Nem_Eggman).l,a1	&#59;

		jsr	Loadplc2
So, how would I go about doing this?
  • 0

#70 Animemaster

Animemaster

    Lets get to work!

  • Pro User
  • 984 posts
  • Gender:Male
  • Location:UK

Posted 03 September 2009 - 09:40 AM

I have a problem in Sonic 1:

I'm trying to replace the art for Eggman in SYZ. But I don't know how to do it. I already changed the mappings just fine, but the art isn't loading.

When I put the label for the new art in the Pattern load cues.asm, the ship art changes in every level, not just SYZ. and the alt art routine that I made doesn't work either:

toyboxboss2:

		cmpi.b	#4,($FFFFFE11).w; is level syz?

		bne.s   toybox_boss2  &#59; if not, branch

		lea   	(Nem_SYZBoss).l,a1

		jsr	 Loadplc2		 &#59;



toybox_boss2:

		lea	(Nem_Eggman).l,a1&#59;

		jsr	Loadplc2
So, how would I go about doing this?

Well for one, "$FFFFFE11" is not a zone, its the act. Change it to "$FFFFFE10".
  • 0

#71 Aka Mekon

Aka Mekon

    is back

  • Member
  • 41 posts
  • Gender:Male
  • Location:France

Posted 03 September 2009 - 10:58 AM

Change this:
cmpi.b	#4,($FFFFFE11).w; is level syz?
...into this:
cmpi.b	#$402,($FFFFFE10).w; is level syz?

This checks the third act of spring yard (because the boss is in the third act)
  • 0

#72 Malevolence

Malevolence

    2 Chaos Emeralds

  • Pro User
  • 94 posts
  • Gender:Male

Posted 03 September 2009 - 07:59 PM

Change this:

cmpi.b	#4,($FFFFFE11).w; is level syz?
...into this:
cmpi.b	#$402,($FFFFFE10).w; is level syz?

This checks the third act of spring yard (because the boss is in the third act)


Lies. Instead you want this:

cmpi.w	#$402,($FFFFFE10).w; is level syz?

  • 0




1 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users


    MSN/Bing (1)