ROM Hacking Need a helping hand? You can get help on any ROM Hacking-related problems or questions you have here.

Closed Thread
 
Thread Tools
  #20201    
Old December 28th, 2011 (5:17 AM).
Krika Krika is offline
     
    Join Date: Oct 2011
    Gender: Male
    Posts: 16
    What tool should I use for looking at the ROM's ASM coding?

    Relevant Advertising!

      #20202    
    Old December 28th, 2011 (8:42 AM).
    G33K's Avatar
    G33K G33K is offline
    The guy you will someday work
       
      Join Date: Dec 2010
      Location: vermont / new hampshire
      Gender: Male
      Nature: Naughty
      Posts: 14
      Hey everyone. Ive been working on my ruby hack for a while, and i've run into a bit of a problem. I'm using PKSV-UI, and its been going great except for one thing: every time i use the script generator and i use the 'quick starter' script, it looks fine and dandy untul i open my hack in VBA and as soon as i try to execute the script, it immediately freezes.

      My main questions are, what exactly is causing this problem? and how would i go about fixing it?

      Thanks all!
      __________________
      blehh
        #20203    
      Old December 28th, 2011 (10:43 AM).
      AustinWolff's Avatar
      AustinWolff AustinWolff is offline
      has left
         
        Join Date: Aug 2011
        Location: LA, California
        Age: 19
        Gender: Male
        Nature: Brave
        Posts: 100
        Quote:
        Originally Posted by G33K View Post
        Hey everyone. Ive been working on my ruby hack for a while, and i've run into a bit of a problem. I'm using PKSV-UI, and its been going great except for one thing: every time i use the script generator and i use the 'quick starter' script, it looks fine and dandy untul i open my hack in VBA and as soon as i try to execute the script, it immediately freezes.

        My main questions are, what exactly is causing this problem? and how would i go about fixing it?

        Thanks all!
        Use XSE. A lot of people use it (including me) so a lot of people will be able to help you when you run into a problem like this
        __________________
        I have left. Feel free to disable my account.
          #20204    
        Old December 28th, 2011 (10:45 AM). Edited December 28th, 2011 by droomph.
        droomph's Avatar
        droomph droomph is offline
        weeb
        • Crystal Tier
         
        Join Date: Sep 2011
        Location: nowhere spectacular
        Age: 20
        Gender: Male
        Nature: Impish
        Posts: 4,291
        Quote:
        Originally Posted by Krika View Post
        What tool should I use for looking at the ROM's ASM coding?
        PKSV-UI. And if you're really freaking rich and you also need to look at x86 and XBOX360 ASM then you should definitely give IDA Pro a spin.

        Quote:
        Originally Posted by G33K View Post
        Hey everyone. Ive been working on my ruby hack for a while, and i've run into a bit of a problem. I'm using PKSV-UI, and its been going great except for one thing: every time i use the script generator and i use the 'quick starter' script, it looks fine and dandy untul i open my hack in VBA and as soon as i try to execute the script, it immediately freezes.

        My main questions are, what exactly is causing this problem? and how would i go about fixing it?

        Thanks all!
        You shouldn't need to use the script generator. Work your way around. If you still have problems, check each step of compiling to see if there's no "ohmygoshidontknowwhatthisis" error messages in the "Compile" box. Then check the spelling (which sucks because each function isn't blued out, unlike in C), and then check the #dynamic to see that you're not overwriting anything?

        If all else fails, redownload.

        Quote:
        Originally Posted by DemwOriginal View Post
        Hey Everyone,
        I'm not a new hacker but I'm new to hacking emerald can anyone explain how I remove the
        start truck and the earthquake.
        When I tried to do it tiles stuff up.
        Thanks.
        Use SMCA and then the Truck Remover. Step through the crap and you'll see what the tool changes.

        And yes, I've tried it and it works.

        Oh, you tried it...? Mhm.
        __________________
        did u no there r 21 letters in the alphabet
        o i forgot 5
        uraqt


          #20205    
        Old December 28th, 2011 (10:51 AM).
        Nate VonGrimm's Avatar
        Nate VonGrimm Nate VonGrimm is offline
           
          Join Date: Oct 2011
          Location: Uxbridge
          Age: 25
          Gender: Male
          Nature: Relaxed
          Posts: 124
          Quote:
          Originally Posted by DemwOriginal View Post
          Hey Everyone,
          I'm not a new hacker but I'm new to hacking emerald can anyone explain how I remove the
          start truck and the earthquake.
          When I tried to do it tiles stuff up.
          Thanks.
          So far, every attempt to remove the entire truck seen has either failed or is extremely buggy. There is a program call SMCA (Start Map Chooser Advance) developed by HackMew that can change your starting location but for Ruby, it will not remove the truck scene.

          The only way it could be done is by doing an ASM hack but so far, there are no clean versions of Pokemon Ruby and the games source still hasn't been cracked.

          Maybe sometime in the future.
          __________________
          Currently working on a new Pokemon Hack with an in-depth story line!
          That's about as much as you're going to get for now...


            #20206    
          Old December 28th, 2011 (11:00 AM).
          droomph's Avatar
          droomph droomph is offline
          weeb
          • Crystal Tier
           
          Join Date: Sep 2011
          Location: nowhere spectacular
          Age: 20
          Gender: Male
          Nature: Impish
          Posts: 4,291
          Quote:
          Originally Posted by Nate VonGrimm View Post


          So far, every attempt to remove the entire truck seen has either failed or is extremely buggy. There is a program call SMCA (Start Map Chooser Advance) developed by HackMew that can change your starting location but for Ruby, it will not remove the truck scene.

          The only way it could be done is by doing an ASM hack but so far, there are no clean versions of Pokemon Ruby and the games source still hasn't been cracked.

          Maybe sometime in the future.
          Nah, it works. You just need two programs (or some serious intuition) to get it to work.
          __________________
          did u no there r 21 letters in the alphabet
          o i forgot 5
          uraqt


            #20207    
          Old December 28th, 2011 (2:44 PM).
          SKRoy SKRoy is offline
          Pokémon Hacker
             
            Join Date: Mar 2010
            Gender: Male
            Posts: 66
            Hallo,
            I'm making a hack but I realy can't script. I know how you make a give item script. I have made a give item script, but there is only one problem. When I obtained the item then it's still there and when I talk again to the pokéball I can take the item again. I want the same as in the normal game when you talk to a pokéball and get an item, but how can I do that?

            I know, my Englisch is not very good but I think you can understand what I mean.

            Please help me!
              #20208    
            Old December 28th, 2011 (3:48 PM). Edited December 29th, 2011 by chrunch.
            chrunch chrunch is offline
            • Gold Tier
             
            Join Date: Oct 2009
            Gender: Male
            Posts: 1,348
            Quote:
            Originally Posted by SKRoy View Post
            Hallo,
            I'm making a hack but I realy can't script. I know how you make a give item script. I have made a give item script, but there is only one problem. When I obtained the item then it's still there and when I talk again to the pokéball I can take the item again. I want the same as in the normal game when you talk to a pokéball and get an item, but how can I do that?

            I know, my Englisch is not very good but I think you can understand what I mean.

            Please help me!
            you'll need to use setflag and hidesprite commands to make items that don't come back. here's an example of a script for an item.
            Code:
            #dynamic 0x(your offset)
            
            #org @item
            hidesprite 0x(the person no. Of your pokeball)
            setflag 0x(the person ID of your pokeball)
            giveitem 0x(your item) 0x1 MSG_FIND
            release
            end
            That'll make the item disappear after you take it.

            The person ID and person number you can find in the events tab of Advance Map when you select your pokeball, just set the person ID to a number, for example, 0200, and make it the same as your setflag. :D
            __________________
              #20209    
            Old December 28th, 2011 (4:06 PM).
            WillPowerPedro's Avatar
            WillPowerPedro WillPowerPedro is offline
            https://soundcloud.com/cammdavidson
               
              Join Date: May 2009
              Age: 17
              Nature: Jolly
              Posts: 265
              Can I insert two different tiles of grass and have separate animations for them?
              __________________
              ~
                #20210    
              Old December 28th, 2011 (4:13 PM).
              Rainbow's Avatar
              Rainbow Rainbow is offline
              i never want to leave this sunset town
              • Moderator
              • Platinum Tier
              • PokéCommunity Daily
              • Discord Moderoid
              • Developer
               
              Join Date: May 2010
              Location: The Medium
              Age: 18
              Gender: Female
              Nature: Quirky
              Posts: 4,985
              Quote:
              Originally Posted by WillPowerPedro View Post
              Can I insert two different tiles of grass and have separate animations for them?
              Yeah, just add a new animation.
              How to insert tile animations.
              I think it's the behavior byte "01" that actually makes the Pokemon appear, and "02 Grass Animation (Pokemon)" is just the animation.
                #20211    
              Old December 28th, 2011 (6:08 PM).
              WillPowerPedro's Avatar
              WillPowerPedro WillPowerPedro is offline
              https://soundcloud.com/cammdavidson
                 
                Join Date: May 2009
                Age: 17
                Nature: Jolly
                Posts: 265
                Quote:
                Originally Posted by HackDeoxys View Post
                Yeah, just add a new animation.
                How to insert tile animations.
                I think it's the behavior byte "01" that actually makes the Pokemon appear, and "02 Grass Animation (Pokemon)" is just the animation.
                Thanks bro. This might be the next big thing in mapping! XD
                __________________
                ~
                  #20212    
                Old December 28th, 2011 (9:22 PM).
                Nate VonGrimm's Avatar
                Nate VonGrimm Nate VonGrimm is offline
                   
                  Join Date: Oct 2011
                  Location: Uxbridge
                  Age: 25
                  Gender: Male
                  Nature: Relaxed
                  Posts: 124
                  Quote:
                  Originally Posted by droomph View Post
                  Nah, it works. You just need two programs (or some serious intuition) to get it to work.
                  What are these two programs then?
                  __________________
                  Currently working on a new Pokemon Hack with an in-depth story line!
                  That's about as much as you're going to get for now...


                    #20213    
                  Old December 28th, 2011 (9:29 PM).
                  M.L M.L is offline
                  Invisible
                     
                    Join Date: Oct 2010
                    Gender: Male
                    Nature: Quiet
                    Posts: 765
                    Quote:
                    Originally Posted by WillPowerPedro View Post
                    Thanks bro. This might be the next big thing in mapping! XD
                    Nope sadly if you insert grass animation that way the animation will play constantly, the other way (if your using firered you need to activate this) the tall grass animation and just do it that way

                    the reason it wont work is because you want it to play a certain number of frames and then stop as the player steps on it
                    __________________
                    Fluffy
                      #20214    
                    Old December 29th, 2011 (12:33 AM).
                    SKRoy SKRoy is offline
                    Pokémon Hacker
                       
                      Join Date: Mar 2010
                      Gender: Male
                      Posts: 66
                      Quote:
                      Originally Posted by chrunch View Post
                      you'll need to use setflag and hidesprite commands to make items that don't come back. here's an example of a script for an item.
                      Code:
                      #dynamic 0x(your offset)
                      
                      #org @item
                      hidesprite 0x(the person ID of your pokeball)
                      setflag 0x(the person ID of your pokeball)
                      giveitem 0x(your item) 0x1 MSG_FIND
                      release
                      end
                      That'll make the item disappear after you take it.

                      The person ID you can find in the events tab of Advance Map when you select your pokeball, just set it to a number, for example, 0200, and make it the same as your hidesprite and setflag. :D
                      Ok I think I understand. And by the #dynamic 0x.... How do I know what the offset is?
                        #20215    
                      Old December 29th, 2011 (12:46 AM).
                      Binary's Avatar
                      Binary Binary is offline
                      え?
                         
                        Join Date: Aug 2007
                        Age: 22
                        Posts: 3,993
                        Quote:
                        Originally Posted by SKRoy View Post
                        Ok I think I understand. And by the #dynamic 0x.... How do I know what the offset is?
                        Ummm, using Free Space Finder?
                        You need an offset to compile your script. I suggest that you take a look at the XSE in-built Guide.
                        __________________
                          #20216    
                        Old December 29th, 2011 (1:24 AM).
                        WintersDreaming WintersDreaming is offline
                           
                          Join Date: Dec 2011
                          Gender: Male
                          Posts: 28
                          Quote:
                          Originally Posted by droomph View Post
                          PKSV-UI. And if you're really freaking rich and you also need to look at x86 and XBOX360 ASM then you should definitely give IDA Pro a spin.


                          You shouldn't need to use the script generator. Work your way around. If you still have problems, check each step of compiling to see if there's no "ohmygoshidontknowwhatthisis" error messages in the "Compile" box. Then check the spelling (which sucks because each function isn't blued out, unlike in C), and then check the #dynamic to see that you're not overwriting anything?

                          If all else fails, redownload.



                          Use SMCA and then the Truck Remover. Step through the crap and you'll see what the tool changes.

                          And yes, I've tried it and it works.

                          Oh, you tried it...? Mhm.
                          Thanks but I already tried that the tiles just stuff up where the truck door opening animation used to be. Does anyone know a better SMCA kind of program where I can choose my exact position? :)
                          __________________
                          Sincerely WintersDreaming
                            #20217    
                          Old December 29th, 2011 (2:50 AM). Edited December 29th, 2011 by SKRoy.
                          SKRoy SKRoy is offline
                          Pokémon Hacker
                             
                            Join Date: Mar 2010
                            Gender: Male
                            Posts: 66
                            I have a script, but it won't work. This is the script:

                            #dynamic 0x200000
                            #org @main
                            lock
                            faceplayer
                            hidesprite 0x200
                            setflag 0x200
                            msgbox @text
                            callstd 0x4
                            giveitem 0x1 0x1 0x0 0x0 0x0 0x0
                            release
                            end

                            #org @text
                            = This is something you realy need!\l Take it!

                            When you talk to the person you must get a master ball. That is the part that works, but after that the person must disappear. But when I got the item he's still standing there and when I talk again I got the item again. Please help me!

                            IT IS FOR POKéMON FIRERED!

                            Now I have this script:

                            #dynamic 0x200000

                            #org @item
                            hidesprite 0x200
                            setflag 0x200
                            giveitem 0x1 0x1 0x0
                            release
                            end

                            But it's the same effect.
                              #20218    
                            Old December 29th, 2011 (7:36 AM). Edited December 29th, 2011 by redriders180.
                            redriders180's Avatar
                            redriders180 redriders180 is offline
                            Mastermind of Pokemon Glazed
                               
                              Join Date: Jun 2010
                              Location: Path of Victory, Tunod
                              Gender: Male
                              Nature: Quirky
                              Posts: 540
                              Send a message via AIM to redriders180
                              Quote:
                              Originally Posted by SKRoy View Post
                              I have a script, but it won't work. This is the script:

                              #dynamic 0x200000
                              #org @main
                              lock
                              faceplayer
                              hidesprite 0x200
                              setflag 0x200
                              msgbox @text
                              callstd 0x4
                              giveitem 0x1 0x1 0x0 0x0 0x0 0x0
                              release
                              end

                              #org @text
                              = This is something you realy need!\l Take it!

                              When you talk to the person you must get a master ball. That is the part that works, but after that the person must disappear. But when I got the item he's still standing there and when I talk again I got the item again. Please help me!

                              IT IS FOR POKéMON FIRERED!

                              Now I have this script:

                              #dynamic 0x200000

                              #org @item
                              hidesprite 0x200
                              setflag 0x200
                              giveitem 0x1 0x1 0x0
                              release
                              end

                              But it's the same effect.
                              Your problem is that the 'hidesprite' command uses the "person event number", which is never 0x200. You can find the person event number by going into the event tab in A-map, and clicking on the person you want to hide. It'll say it right there. When you permanently hide sprites with the setflag command, it uses the person ID, however. It's easy enough to get the two mixed up

                              Edit2: A picture to help:
                              Spoiler:


                              Edit: Using a dynamic offset of 0x200000 is a very bad idea. You could overwrite very important data without meaning to. The general safe space in Firered is from about 0x800000 and up. To make it simpler, I always start with #dynamic 0x800000 when scripting, instead of dealing with a Free Space Finder.
                              __________________


                              I think I'm done with ROM hacking. I'll still pop in and visit, though.


                                #20219    
                              Old December 29th, 2011 (7:58 AM).
                              WillPowerPedro's Avatar
                              WillPowerPedro WillPowerPedro is offline
                              https://soundcloud.com/cammdavidson
                                 
                                Join Date: May 2009
                                Age: 17
                                Nature: Jolly
                                Posts: 265
                                I made a map and inserted some tiles and the map looks like this: (NOTE: Pay attention to the upper right corner's flowers.)

                                When I play it looks like this!
                                __________________
                                ~
                                  #20220    
                                Old December 29th, 2011 (8:06 AM).
                                redriders180's Avatar
                                redriders180 redriders180 is offline
                                Mastermind of Pokemon Glazed
                                   
                                  Join Date: Jun 2010
                                  Location: Path of Victory, Tunod
                                  Gender: Male
                                  Nature: Quirky
                                  Posts: 540
                                  Send a message via AIM to redriders180
                                  Quote:
                                  Originally Posted by WillPowerPedro View Post
                                  I made a map and inserted some tiles and the map looks like this: (NOTE: Pay attention to the upper right corner's flowers.)

                                  When I play it looks like this!
                                  When you edited the tileset and put in those flower tiles, did you put them on top of the rocks you see in the water? If you did, moving those flower tiles from on top of the rocks in the water to another vacant spot should do the trick
                                  __________________


                                  I think I'm done with ROM hacking. I'll still pop in and visit, though.


                                    #20221    
                                  Old December 29th, 2011 (10:13 AM).
                                  Nate VonGrimm's Avatar
                                  Nate VonGrimm Nate VonGrimm is offline
                                     
                                    Join Date: Oct 2011
                                    Location: Uxbridge
                                    Age: 25
                                    Gender: Male
                                    Nature: Relaxed
                                    Posts: 124
                                    Quote:
                                    Originally Posted by SKRoy View Post
                                    Ok I think I understand. And by the #dynamic 0x.... How do I know what the offset is?
                                    Always put #dynamic 0x800000.

                                    XSE will automatically find any offsets available from 0x800000 and up.

                                    It's also the safest to use as any lower could overwrite valuable data without meaning to.
                                    __________________
                                    Currently working on a new Pokemon Hack with an in-depth story line!
                                    That's about as much as you're going to get for now...


                                      #20222    
                                    Old December 29th, 2011 (10:18 AM). Edited December 29th, 2011 by Itcheeee.
                                    Itcheeee's Avatar
                                    Itcheeee Itcheeee is offline
                                    All Hail Shadow
                                       
                                      Join Date: Dec 2011
                                      Location: Space Colony Ark
                                      Gender: Female
                                      Posts: 529
                                      Quote:
                                      Originally Posted by redriders180 View Post
                                      I've seen the tag-along system implemented before, but it has many bugs. There's alot to it. For example, if you interact with another person or a signpost, the tagging-along person stops following you. Also, using applymovement and waitmovement cause the gameplay to be very jerky, since you have to stop afterwards and wait for the following character to make its step. Either way, it requires ASM and alot of patience.
                                      Thank you for answering my question Being new at hacking, I would love to get that working, but probably should take my first hack slow and easy XD.

                                      Quote:
                                      Originally Posted by Nate VonGrimm View Post


                                      At this time, It is not possible to get it to work efficiently. It is still extremely glitchy and full of bugs. It's still under work now but don't expect it be working any time soon.

                                      Also you would also require to do an ASM hack. A lot more complex then scripting.

                                      If your new to hacking, you'd want to learn everything there is to know about scripting before moving onto ASM hacking.
                                      Thank you for answering my question, as I'm working on my first hack, I don't think I'll attempt the tag-along system right now. But it is something I'd like to do later =p
                                        #20223    
                                      Old December 29th, 2011 (11:26 PM).
                                      Megiddo-san's Avatar
                                      Megiddo-san Megiddo-san is offline
                                      Barium - Summer '12 Return?
                                         
                                        Join Date: Dec 2007
                                        Location: Where you least expect it
                                        Age: 25
                                        Gender: Male
                                        Nature: Relaxed
                                        Posts: 1,329
                                        Send a message via Windows Live Messenger to Megiddo-san
                                        I'm having an issue with trainerbattle 0x9 0x3 [email protected]: One of the kinds of battles that allows a script to continue afterward
                                        @param2: The reserve number needed to call the Oak style battle.
                                        The problem is, when I use this command for a battle in which I have multiple pokemon,
                                        whenever I switch out pokemon, the next pokemon and its box are invisible, and if they faint the foe, the xp is given to the first pokemon(unless I open my bag prior to fainting the foe, in which case the pokemon and its box become visible, and the battle continues
                                        normally). Is there another reserve number I can use, or another command that I can call; or does an ASM routine need to be modified?
                                        __________________

                                        Hashire! Asu e tsudzuku shinka no micha wa
                                          #20224    
                                        Old December 30th, 2011 (12:47 AM).
                                        Satoshi Ookami's Avatar
                                        Satoshi Ookami Satoshi Ookami is offline
                                        Memento Mori
                                        • Gold Tier
                                         
                                        Join Date: Jul 2008
                                        Location: Abyss of Time, Great Seal
                                        Age: 24
                                        Gender: Male
                                        Nature: Calm
                                        Posts: 14,466
                                        Quote:
                                        Originally Posted by Nate VonGrimm View Post


                                        Always put #dynamic 0x800000.

                                        XSE will automatically find any offsets available from 0x800000 and up.

                                        It's also the safest to use as any lower could overwrite valuable data without meaning to.
                                        It does not need to be 0x800000 It can also start at 0x700000 There's plenty of free space between 0x700000 and 0x800000 that can be used =D
                                        __________________
                                        ROM hacking FAQ - Read before asking how to play a hack.

                                        Anime List | PSN Trophy List
                                          #20225    
                                        Old December 30th, 2011 (5:35 AM).
                                        SKRoy SKRoy is offline
                                        Pokémon Hacker
                                           
                                          Join Date: Mar 2010
                                          Gender: Male
                                          Posts: 66
                                          I want a good scripting tutorial. I only know a little bit about talking script and give item scripts. I want to learn more about scripting. Now my question: What is te best scripting tutorial, maby a few lessons? It's for Pokémon Fire Red.
                                          Closed Thread
                                          Quick Reply

                                          Sponsored Links
                                          Thread Tools

                                          Posting Rules
                                          You may not post new threads
                                          You may not post replies
                                          You may not post attachments
                                          You may not edit your posts

                                          BB code is On
                                          Smilies are On
                                          [IMG] code is On
                                          HTML code is Off

                                          Forum Jump


                                          All times are GMT -8. The time now is 6:04 PM.