Jump to content

Melanogaster

Member
  • Posts

    22
  • Joined

  • Last visited

Posts posted by Melanogaster

  1. I'm looking specifically for the PID and IV combos of the 9 legal Shiny Wishmaker Jirachis.

    I have the Bashful one, but I'd like to check the others too, so if anyone has them in any format I'd be grateful if you could give them to me.

    They used to be on Pokecheck but since the site is down I don't know where to find their data.

  2. repeats 4 times as it is giving 4 different forms (seasonal).

    00D2 = SetVar Season

    jump statements are "bytes forward from current position", which is at the end of the (if-then)jump statement.

    Ok, I managed to make it work properly, text and everything. But the guy who gives the pokemon keeps giving it every time you ask for it, how do I change it?

    10 00 AA 01 - Store Flag or 4C 00 00 - Set Var Hero have any relevance to my issue?

  3. 02 00 is "EndScript"

    10 00 AA 01 = CheckFlag 0x01AA

    08 00 00 00 = Logical Comparison

    11 00 01 00 = Value 1

    1F 00 FF 45 00 00 00 = IfResult (False 0xFF = -1) then jump to 0x00000045

    ...

    Can always try Spiky's DS Map Editor (SDSME) which should have script editing support; also my edited version of NPRE should show most of the script names (including give pokemon)

    My first question regards the Jump and If, is the 0x00000045 the point in the script at which it will jump, as in the 45th byte in the script?

    NPRE for some reason crashes when I try to view my script. I think because it's broken at the end I believe, but that's how it was in the original script so I'm not sure what's wrong.

    I've managed to decrypt the whole script using

    http://pastebin.com/raw.php?i=vrkp0SN8

    , but there's some things I can't understand.

    For example, why is the function for give pokemon called 4 times?

    This is the finished decrypted script I believe:

    2F 00 - Unlock All
    02 00 - End
    2E 00 - Lock All
    A6 00 47 05 - Play Sound Clink
    74 00 - Face Player
    3D 00 00 04 06 00 00 00 00 00 - Text Message
    32 00 - Wait Button 
    3E 00 - Close Message Key Press
    30 00 - Wait Moment 
    2F 00 - Unlock All
    02 00 - End
    2E 00 - Lock All 
    A6 00 47 05 - Play Sound Clink
    74 00 - Face Player
    10 00 AA 01 - Store Flag 
    08 00 00 00 - Compare to 
    11 00 01 00 - Condition 
    1F 00 FF 45 00 00 00 
    3C 00 00 04 07 00 08 00 00 00 00 00 
    47 00 10 80 - Yes or No
    09 00 10 80 - Store Var 
    08 00 00 00 - Compare to 
    11 00 01 00 - Condition 
    1F 00 FF 0C 00 00 00 - If 
    04 00 32 00 00 00 - Call Routine 
    1E 00 10 00 00 00 - Jump 
    3C 00 00 04 0C 00 08 00 00 00 00 00 - Message
    32 00 - Wait Button 
    3F 00 - Close Message Key Press 2
    1E 00 10 00 00 00 - Jump 
    3C 00 00 04 0D 00 08 00 00 00 00 00 - Message
    32 00 - Wait Button
    3F 00 - Close Message Keypress
    30 00 - Wait Moment
    2F 00 - Unlock All
    02 00 - End
    28 00 24 80 00 00 - Set Var Equal Var
    28 00 25 80 00 00 - Set Var Equal Var
    28 00 26 80 00 00 - Set Var Equal Var
    03 01 24 80 00 00 - Store Party Count More
    09 00 24 80 - Store Var
    08 00 06 00 - Compare to
    11 00 01 00 - Condition
    1F 00 FF 16 00 00 00 - If 
    3C 00 00 04 0B 00 08 00 00 00 00 00 - Message
    32 00 - Wait Button
    3F 00 - Close Message Key Press 2
    1E 00 14 01 00 00 - Jump 
    3C 00 00 04 08 00 08 00 00 00 00 00 - Message
    3F 00 - Close Mesage Key Press 2
    D2 00 25 80 - Store (? Store What?)
    09 00 25 80 - Store Var 
    08 00 00 00 - Compare to 
    11 00 01 00 - Condition 
    1F 00 FF 1A 00 00 00 - If
    0E 01 10 80 49 02 00 00 1E 00 03 00 02 00 00 00 00 00 04 00 - Give Pokemon
    1E 00 81 00 00 00 - Jump
    09 00 25 80 - Store Var
    08 00 01 00 - Compare to
    11 00 01 00 - Condition
    1F 00 FF 1A 00 00 00 - If
    0E 01 10 80 49 02 01 00 1E 00 03 00 02 00 00 00 00 00 04 00 - Give Pokemon
    1E 00 54 00 00 00 - Jump
    09 00 25 80 - Store Var
    08 00 02 00 - Compare to
    11 00 01 00 - Condition
    1F 00 FF 1A 00 00 00 - If
    0E 01 10 80 49 02 02 00 1E 00 03 00 02 00 00 00 00 00 04 00 - Give Pokemon
    1E 00 27 00 00 00 - Jump
    09 00 25 80 - Store Var
    08 00 03 00 - Compare to
    11 00 01 00 - Condition
    1F 00 FF 14 00 00 00 - If
    0E 01 10 80 49 02 03 00 1E 00 03 00 02 00 00 00 00 00 04 00 - Give Pokemon
    4C 00 00 - Set Var Hero
    A9 00 18 05 - Play Fanfare
    34 00 09 00 00 00 - Event Gray Message
    AA 00 - Wait Fanfare
    4B 00 - Close Angry Message (Why Angry?)
    34 00 0A 00 00 00 - Event Grey Message
    47 00 10 80 - Yes or No
    09 00 10 80 - Store Var 
    08 00 00 00 - Compare to 
    11 00 01 00 - Condition 
    1F 00 FF 10 00 00 00 - If 
    3F 00 - Close Message Key Press 2
    05 01 26 80 24 80 01 00 - ????
    1E 00 02 00 00 00 - Jump 
    3F 00 - Close Message Key Press 2
    3C 00 00 04 - Message (? Bytes are missing?)
    

    Is there a place I can see a more detailed explanation of some functions, like for example D2 00 XX XX or 4C 00 XX - Set Var Hero?

  4. The script works ingame, it give the player the Deerling. But there are 2 problems I'm not sure how to fix, the first being why am I asked 2 times instead of just once like the original NPC does, and the second is the NPC will give me Deerlings ad Infinitum.

    This is the code I've taken from that NPC and am using on the current NPC:

    2F 00 02 00 2E 00 A6 00 47 05 74 00 3D 00 00 04 
    06 00 00 00 00 00 32 00 3E 00 30 00 2F 00 02 00 
    2E 00 A6 00 47 05 74 00 10 00 AA 01 08 00 00 00 
    11 00 01 00 1F 00 FF 45 00 00 00 3C 00 00 04 07 
    00 08 00 00 00 00 00 47 00 10 80 09 00 10 80 08 
    00 00 00 11 00 01 00 1F 00 FF 0C 00 00 00 04 00 
    32 00 00 00 1E 00 10 00 00 00 3C 00 00 04 0C 00 
    08 00 00 00 00 00 32 00 3F 00 1E 00 10 00 00 00 
    3C 00 00 04 0D 00 08 00 00 00 00 00 32 00 3F 00 
    30 00 2F 00 02 00 28 00 24 80 00 00 28 00 25 80 
    00 00 28 00 26 80 00 00 03 01 24 80 00 00 09 00 
    24 80 08 00 06 00 11 00 01 00 1F 00 FF 16 00 00 
    00 3C 00 00 04 0B 00 08 00 00 00 00 00 32 00 3F 
    00 1E 00 14 01 00 00 3C 00 00 04 08 00 08 00 00 
    00 00 00 3F 00 D2 00 25 80 09 00 25 80 08 00 00 
    00 11 00 01 00 1F 00 FF 1A 00 00 00 0E 01 10 80 
    49 02 00 00 1E 00 03 00 02 00 00 00 00 00 04 00 
    1E 00 81 00 00 00 09 00 25 80 08 00 01 00 11 00 
    01 00 1F 00 FF 1A 00 00 00 0E 01 10 80 49 02 01 
    00 1E 00 03 00 02 00 00 00 00 00 04 00 1E 00 54 
    00 00 00 09 00 25 80 08 00 02 00 11 00 01 00 1F 
    00 FF 1A 00 00 00 0E 01 10 80 49 02 02 00 1E 00 
    03 00 02 00 00 00 00 00 04 00 1E 00 27 00 00 00 
    09 00 25 80 08 00 03 00 11 00 01 00 1F 00 FF 14 
    00 00 00 0E 01 10 80 49 02 03 00 1E 00 03 00 02 
    00 00 00 00 00 04 00 4C 00 00 A9 00 18 05 34 00 
    09 00 00 00 AA 00 4B 00 34 00 0A 00 00 00 47 00 
    10 80 09 00 10 80 08 00 00 00 11 00 01 00 1F 00 
    FF 10 00 00 00 3F 00 05 01 26 80 24 80 01 00 1E 
    00 02 00 00 00 3F 00 3C 00 00 04

    And this is what I've tried to decipher from the code, can anyone tell me if I did it wrong? It's just that some parts make no sense.

    2F 00 - Unlock All
    02 00 - (????)
    2E 00 - Lock All
    A6 00 47 05 - Play Sound Clink
    74 00 - Face Player
    3D 00 00 04 06 00 00 00 00 00 - Text Message
    32 00 - Wait Button (?)
    3E 00 - Close Message Key Press (?)
    30 00 - Wait Moment (?)
    2F 00 - Unlock All
    02 00 - (????)
    2E 00 - Lock All 
    A6 00 47 05 - Play Sound Clink
    74 00 - Face Player
    10 00 AA 01 - Store Flag (?)
    08 00 00 00 - Compare to (it's empty, is it wrong (?))
    11 00 01 00 - Condition (?)
    1F 00 FF 45 00 00 00 
    3C 00 00 04 07 00 08 00 00 00 00 00 
    47 00 10 80 - Yes or No
    09 00 10 80 - Store Var (? stores the Yes or No?)
    08 00 00 00 - Compare to (?)
    11 00 01 00 - Condition (?)
    1F 00 FF 0C 00 00 00 - If (?)
    04 00 32 00 00 00 - Call Routine (?)
    1E 00 10 00 00 00 - Jump (?)
    3C 00 00 04 0C 00 08 00 00 00 00 00 - Message
    32 00 - Wait Button (?)
    3F 00 - Close Message Key Press 2
    1E 00 10 00 00 00 - Jump (?)
    3C 00 00 04 0D 00 08 00 00 00 00 00 - Message
    32 00 - Wait Button
    3F 00 - Close Message Keypress
    30 00 - Wait Moment
    2F 00 - Unlock All
    02 00 28 00 24 80 00 00 28 00 25 80 00 00 28 00 26 80 00 00 03 01 24 80 00 00 09 00 24 80 08 00 06 00 11 00 01 00 
    1F 00 FF 16 00 00 00 - If (?)
    3C 00 00 04 0B 00 08 00 00 00 00 00 - Message
    32 00 - Wait Button
    3F 00 - Close Message Key Press 2
    1E 00 14 01 00 00 - Jump (?)
    3C 00 00 04 08 00 08 00 00 00 00 00 - Message
    3F 00 - Close Mesage Key Press 2
    D2 00 25 80 - Store (? Store What?)
    09 00 25 80 - Store Var (? Store the numbers from the function above?)
    08 00 00 00 - Compare to (? To what?)
    11 00 01 00 - Condition (?)
    1F 00 FF 1A 00 00 - If (?)
    
    00 0E 01 10 80 49 02 00 00 1E 00 03 00 02 00 00 00 00 00 04 00 1E 00 81 00 00 00 09 00 25 80 08 00 01 00 11 00 01 00 1F 00 FF 1A 00 
    
    00 00 0E 01 10 80 49 02 01 00 1E 00 03 00 02 00 00 00 00 00 04 00 1E 00 54 00 00 00 09 00 25 80 08 00 02 00 11 00 01 00 1F 00 FF 1A 
    
    00 00 00 0E 01 10 80 49 02 02 00 1E 00 03 00 02 00 00 00 00 00 04 00 1E 00 27 00 00 00 09 00 25 80 08 00 03 00 11 00 01 00 1F 00 FF 
    
    14 00 00 00 0E 01 10 80 49 02 03 00 1E 00 03 00 02 00 00 00 00 00 04 00 4C 00 00 A9 00 18 05 34 00 09 00 00 00 AA 00 4B 00 34 00 0A 
    
    00 00 00 
    47 00 10 80 - Yes or No
    09 00 10 80 - Store Var (?)
    08 00 00 00 - Compare to (?)
    11 00 01 00 - Condition (?)
    1F 00 FF 10 00 00 00 - If (?)
    3F 00 - Close Message Key Press 2
    05 01 26 80 24 80 01 00 
    1E 00 02 00 00 00 - Jump (?)
    3F 00 - Close Message Key Press 2
    3C 00 00 04 - Message (? Bytes are missing?)
    

  5. I've decided to try to find the script used to give off the Deerling on the route 6 weather institute. But I've got a few questions that maybe someone can answer as there's a problem I can't understand.

    In the overworld I'm trying to add the NPC, the NPCs already there have scripts assigned to them that have erratic numbers, instead of being assigned lower numbers like 08 00, 02 00 etc. they have numbers like 5A 1B or D0 07 as the number of their script. But in the script file for that overworld there are only 10 scripts, getting to that number seems irrational, does anyone know what this means?

  6. I tried to make an NPC that gives you a Tyrogue if you talk with him, the problem is I can't find a tutorial for this or any instructions for this specific type of script.

    I've looked into what NPCs in the game give you a pokemon, I found Amanita gives an Eevee, located her in Castelia City and found out she uses Script 988. I tried to look into script 988 but couldn't make out much of it.

    In the header it says there are 5 scripts, which is consistent with what NPRE says, but that's it, as NPRE shows 5 scripts and 28 function which I don't know what they do, and I can't pinpoint the exact part of the script responsible with giving the player a pokemon, as NPRE says it's Function 13 (I think?). It's one of the pictures.

    Meanwhile running scrparse.lua in desmume says there are 22 scripts in script file 988, as in one of the pictures.

    file1.jpg

    file2.jpg

    Untitled-1.png

    Can anyone help me? I really don't know what to make of this.

    file1.jpg.0a3f55ff8febb982e87668ecfeac3f

    file2.jpg.ab7bd0db654730e149cf8fde31aa2a

    Untitled-1.png.bc14fe755d743caaab814131d

  7. There's a few different kinds of formes. Shellos -> Gastrodon and Burmy -> Wormadam are merely graphical formes. They retain the same forme index when evolving. There is no to-forme evolution so you need to replace the actual original forme. If you evolve into any Pokemon past the max, then you get a bad egg, unfortunately. You were pretty close with the data swapping. Now you just need to swap the sprite and palette of the two formes.

    EDIT: Nevermind got it to work.

    I've got one more question though, what about the animations? Or are those included with the Sprite?

  8. I've tried some things, like replacing Aria Meloetta's data from personal.narc with that of Pirouette, while the stats and typing changed, the sprite didn't.

    I then tried to make Tyrogue evolve directly into Pirouette form, so I replaced the 88 02 from 0x04-0x05 respectively with BE 02, which would correspond with Pirouette Form's number in the personal.narc and evolutions.narc, but all I got was Tyrogue evolving into an Unown, which became a Bad Egg in the party.

    Anyone got any ideas? I tried to look as how Shellos -> Gastrodon evolves properly, but I found nothing of interest.

  9. thank you for reporting =)

    i just forgot to change maximum value on it xD, and you can download recent release (outofrange problem fixed, i hope O.o)

    It works now with every item, but, shouldn't you change the name from hold item to use item? Because adding that type of evolution means you have to use the item, not hold it while leveling-up. Like for example on Eevee it says Hold Item - Fire Stone, when it should be Use Item - Firestone.

  10. Disregarding my last post, I found a bug in Black 2 regarding evolution.

    When I set a pokemon's evolution type to Hold Item(male) or (female) if it's an item after Claw Fossil in the list it causes the program to crash.

    The error reads: (Value of '101' is not valid for 'Value'.'Value' should be between 'Minimum' and 'Maximum'.

    Parameter name: Value.

    Here's the complete error dialogue:

    See the end of this message for details on invoking

    just-in-time (JIT) debugging instead of this dialog box.

    ************** Exception Text **************

    System.ArgumentOutOfRangeException: Value of '101' is not valid for 'Value'. 'Value' should be between 'Minimum' and 'Maximum'.

    Parameter name: Value

    at System.Windows.Forms.NumericUpDown.set_Value(Decimal value)

    at NinfiaDSToolkit.Andi.vEvolutions.andiImageComboBox1_SelectedIndexChanged(Object sender, EventArgs e)

    at System.Windows.Forms.ComboBox.OnSelectedIndexChanged(EventArgs e)

    at System.Windows.Forms.ComboBox.WmReflectCommand(Message& m)

    at System.Windows.Forms.ComboBox.WndProc(Message& m)

    at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)

    at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)

    at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

    ************** Loaded Assemblies **************

    mscorlib

    Assembly Version: 4.0.0.0

    Win32 Version: 4.0.30319.18444 built by: FX451RTMGDR

    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll

    ----------------------------------------

    NinfiaDSToolkit

    Assembly Version: 1.0.0.0

    Win32 Version: 1.0.0.0

    CodeBase: file:///E:/desmume-0.9.10-win64/Pokemon%20Black%20Version%202/NinfiaDSToolkit-1.0.0-20140815_x86_min/NinfiaDSToolkit.exe

    ----------------------------------------

    System.Windows.Forms

    Assembly Version: 4.0.0.0

    Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL

    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll

    ----------------------------------------

    System.Drawing

    Assembly Version: 4.0.0.0

    Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL

    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll

    ----------------------------------------

    System

    Assembly Version: 4.0.0.0

    Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL

    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll

    ----------------------------------------

    System.Core

    Assembly Version: 4.0.0.0

    Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL

    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll

    ----------------------------------------

    WeifenLuo.WinFormsUI.Docking

    Assembly Version: 3.0.0.0

    Win32 Version: 3.0.0.0

    CodeBase: file:///E:/desmume-0.9.10-win64/Pokemon%20Black%20Version%202/NinfiaDSToolkit-1.0.0-20140815_x86_min/WeifenLuo.WinFormsUI.Docking.DLL

    ----------------------------------------

    System.Data.SQLite

    Assembly Version: 1.0.92.0

    Win32 Version: 1.0.92.0

    CodeBase: file:///E:/desmume-0.9.10-win64/Pokemon%20Black%20Version%202/NinfiaDSToolkit-1.0.0-20140815_x86_min/System.Data.SQLite.DLL

    ----------------------------------------

    System.Data

    Assembly Version: 4.0.0.0

    Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL

    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_32/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll

    ----------------------------------------

    System.Transactions

    Assembly Version: 4.0.0.0

    Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL

    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_32/System.Transactions/v4.0_4.0.0.0__b77a5c561934e089/System.Transactions.dll

    ----------------------------------------

    System.Xml

    Assembly Version: 4.0.0.0

    Win32 Version: 4.0.30319.34234 built by: FX452RTMGDR

    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll

    ----------------------------------------

    System.Design

    Assembly Version: 4.0.0.0

    Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL

    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Design/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Design.dll

    ----------------------------------------

    System.Configuration

    Assembly Version: 4.0.0.0

    Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL

    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll

    ----------------------------------------

    System.EnterpriseServices

    Assembly Version: 4.0.0.0

    Win32 Version: 4.0.30319.18408 built by: FX451RTMGREL

    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_32/System.EnterpriseServices/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.EnterpriseServices.dll

    ----------------------------------------

    SourceGrid

    Assembly Version: 4.30.5215.21782

    Win32 Version: 4.30.5215.21782

    CodeBase: file:///E:/desmume-0.9.10-win64/Pokemon%20Black%20Version%202/NinfiaDSToolkit-1.0.0-20140815_x86_min/SourceGrid.DLL

    ----------------------------------------

    SevenZipLib

    Assembly Version: 1.0.0.0

    Win32 Version: 1.0.0.0

    CodeBase: file:///E:/desmume-0.9.10-win64/Pokemon%20Black%20Version%202/NinfiaDSToolkit-1.0.0-20140815_x86_min/SevenZipLib.DLL

    ----------------------------------------

    ************** JIT Debugging **************

    To enable just-in-time (JIT) debugging, the .config file for this

    application or computer (machine.config) must have the

    jitDebugging value set in the system.windows.forms section.

    The application must also be compiled with debugging

    enabled.

    For example:

    <configuration>

    <system.windows.forms jitDebugging="true" />

    </configuration>

    When JIT debugging is enabled, any unhandled exception

    will be sent to the JIT debugger registered on the computer

    rather than be handled by this dialog box.

  11. They're unbreedable, however the species detection/determination routine within breeding would have to have a check added after the existing species cases.

    As for where the nidoran/illumise code is within the overlays, I do not know.

    Simplest solution would be to just let them breed into their own species with a Ditto.

    I understand, so a pokemon egg being able to hatch into 2 different species is an unknown element.

    But, if I would make a pokemon evolve from another pokemon (for example make tyrogue evolve into sawk), is there a known field I could edit so if sawk breeds with ditto, a tyrogue will hatch instead of sawk?

    A thing I forgot to stupidly mention is the fact I'm talking about Pokemon Black 2.

  12. I've been looking around and I can't find how to edit what comes out of an egg laid by a certain pokemon.

    For example, from an Illumise egg an Illumise or Volbeat can hatch.

    Does anyone know an editor that allows me to modify this or at least tell me where in the rom files can I find this piece of information?

    I can utilize hex editors and I think I have the tools needed to extract narcs and subnarcs from the rom.

    Any help would be appreciated.

  13. I've found the stats editor incredibly useful, but I feel it's missing something.

    More exactly, a way of editing what Pokemon might hatch from an egg laid by a specific Pokemon.

    Like Nidoran eggs or Pokemon with incenses.

    Other than that it's pretty much perfect.

    Maybe such an editor will be add later or will be brought as an extension to the Stats Editor?

    Would like to know if something like this could be done.

×
×
  • Create New...