Jump to content

Kaphotics

Helpful Member
  • Posts

    6884
  • Joined

  • Last visited

  • Days Won

    322

Posts posted by Kaphotics

  1. 0085 xxxx yyyy ???? - opponent0, opponent1, ????

    0086 xxxx yyyy zzzz ???? - ally, opponent0, opponent1, ????

    No idea what ???? is for.

    yMoP8.png

    some script commands with some sense so far
    
    0000 nop
    0001 nop1
    0002 --
    000C XXXX XXXX
    0012 xxxx
    001A xxxx
    001E XXXXXXXX
    002F -
    0030 - 					doinstant
    0032 -					waitbuttonthen
    003C 0400 xxxx yyyy zzzz aaaa		textA
    003D 0400 xxxx yyyy zzzz		textB
    003E -
    003F -
    0046 xx xx
    0049					textC
    004C xx
    0057 xx XXXX				Text Variables
    0085 xxxx xxxx zzzz			start 1v# battle with ????
    0086 yyyy xxxx xxxx zzzz		start 2v# battle with ????
    0098 xxxx				PlayBGM
    00BE mmmm xxxx yyyy ffff		f2b mapchange nosound
    00BF mmmm xxxx yyyy ffff		spinwarp
    00C0					soundless variable door warp
    00C1 					sandpit
    00C2 mmmm xxxx yyyy ffff		f2b mapchange with sound
    00C3					goto union
    00C4					instant change, bad
    00C5					play surf anim
    00C6					gooey push
    00C7					play cut anim
    0178 dddd ll				wildencounter dex level
    

  2. above ^ dry skin not yet implemented (don't know if other typebased absorbs are either)

    http://vsplayer.pokecheck.org/?bid=797522964094

    On Turn 4, the foe's Swanna uses Hurricaine on my Vespiquen and missed, but the log says it hit and I failed to make a Sub

    Random event(1) at the end of turn 2 when Volcarona faints looks to be the error -- life orb recoil faint?

    the first sign of the desync is when Haxorus is put 38 HP instead of 32 (vsplayer predict)

    useful memlocs for tracking HP

    022D10D0	Left Ally
    022D11D0	Right Ally
    
    022D1150	Right Opponent
    022D12D0	Left Opponent

  3. I have a question.

    If i happen to use pokecheck for several of my newly hatched dwebbles and i accidently release the wrong dweeble in my game. Would downloading it from my account count as cloning or an illegal infraction in a official tourney since it now holds a Gift Ribbon?

    If it has an illegal ribbon and the Pokemon is in your battle box (for battling) = DQ

    ONLY IF IT IS USED FOR BATTLING (and you get hack checked).

    Any stuff in your boxes won't be checked.

    you can clone on GTS if you register your save file, and those won't come with ribbons. Alternatively, you can download the PKM and use another fakegts to deliver without a ribbon.

  4. Error 13275:

    "The Nintendo Wi-Fi Connection is currently experiencing problems due to a high amount of players, or is temporarily down. Please try again later."

    you should set both your primary and secondary to ensure you're connecting to Pokemon selector.

    Please refrain from bumping a thread

  5. Teleportation script

    2E 00 - Start Interaction Script
    .. other data
    BF 00 - Warp (spinning upwards, fade, spinning downwards, land) MXYF
    89 00 - M
    1F 00 - X
    30 00 - Y
    00 00 - Face
    30 00 - Do Instant
    2F 00 - Close Crap
    02 00 - End

    BE - Soundless Map Change (no animation, just fade to black and to new position)

    C0 - Door exit sound warp, might use stored variables for positions (doesn't MXYF)

    After checking the DPP scripting wiki, I noticed that most of BW's are in the same relative order as DPPHS's format. Of course there are new/deleted commands & parameters, but it's a good resource to get a general idea of what a particular command does.

  6. i recently had questions about the my poke being "likely" rng abuse when he was not...

    now, I'd like to know why does it give me the yellow text on my galvatula when i comes to the nickname.

    is it not natural to nickname a poke after it evolves?

    also whats the deal with the hacked pokerus :/

    just want to know what makes this 'issues' pop up

    http://i.imgur.com/VpTQu.png

    there's nothing wrong with it

    it's just a notice that it doesn't have typical trashbytes & was renamed.

    default strain is the most commonly hacked strain

    edited/rng abused only appears with ~5 IVs >=30

    they aren't issues, just things to watch out for.

  7. so many post bumps, but hey im doin shit

    [video=youtube;SYCTHahfzFA]

    Getting into more custom stuff:

    Modified zonedata to change the battlepads and allowing the bike on the map

    Modified overworld to change the NPC sprite to Mew

    Modified script to trigger encounter with a level 10 Mew

    Didn't bother trying to change the playsound to mew's cry, rather not waste time searching for that hex... additionally didn't bother changing the text as it's trivial :)

    002F - close text
    0178 - proc battle
    0097 - pokemon #
    000A - level
    
    8021 - I have no idea what this shit is but it makes the overworld pop back up after the battle
    017B - it also removes the NPC from the map
    8010 - since the NPC spawn doesn't depend on any flags, the NPC will re-appear when the map is refreshed.
    0009 - taken from musharna's spawn, maybe each map has its own set of flags which can disable events?
    8010
    0008
    0001
    0011
    0001
    001F
    FF
    0010
    0000
    006C - this might be the flag setting to prevent re-spawning
    0000
    0023
    02EC
    0179
    0002 - originally 001E, changing to 0002 gave player control back asap
    0002 - end

  8. more scripting adventures; this time: warping

    [video=youtube;N7j2ihs-OSc]

    30 00 - do instantly
    C2 00 - Fade2Black warpto(mxyf)
    78 00 - map
    A9 01 - x
    AE 00 - y
    00 00 - facedirection (0 up, 1 down, 2 left, 3 right 

    other commands functions I've finally nailed down:

    2F 00 - clear dialog box

    After recording that video, I realized I forgot to clear the text from the screen. So, I added that line right before the warp script after the 0030... so the proper ending part of her script was

    0030 - do instant
    002F - clear dialog
    00C2 - warpto with fadetoblack (64 bits following with conditions m,x,y,f)
    0078 - map
    01A9 - x coord
    00AE - y coord
    0000 - facedirection (0 up, 1 down, 2 left, 3 right)
    0002 - end

    ======

    I looked at other scripts and there's some that determine the variables for the displayed text. The Rotom for Ditto trade has this:

    57 00 01 DF 01 			Trade Recieve		Rotom					-- TextVar1 = Rotom
    57 00 00 84 00 			Trade Give		Ditto					-- TextVar0 = Ditto
    
    thus, 0057 xx YYYY is the structure of this function
    
    0057 - get-text pokedex(i)
    01   - text variable number
    01DF - i ~ pokemon hex
    
    This makes it display what Pokemon the person wants to trade.

    edit: some more instructions similar to the warp command, haven't bothered figuring out the condition structure after the instruction though:

    C1	SandPit Falling (directionals?)->position
    C2	WarpTo M,X,Y,Face (auto level)		With FadeToblack/Sound
    C3	WarpTo Union Room
    C4	WarpTo MXYZ,Face			No FadeToBlack/Sound change
    C5	Start Surfing?
    C6	Gooey Directional? (Bug Gym)
    C7	Cut Animation and Subsequent text?
    C8	Warp Out animation.... maybe the undersea "out of breath"?

  9. Still looking at script structures, namely the headers this time.

    As we already know, there's data before 0xFD13. But what does it mean? It's the offset pointers for each script.

    Here's an example image -- first portion being for the above post (with only one script for one NPC on the map).

    ============

    pWaxf.png

    ============

    As you can see, the NPC scriptstart pointer is 0x00000002, which means "2 bytes after this position, my script starts".

    ~~

    For the latter 3 examples, we have 3 NPCs in the Rest Home @ Route 6.

    Script0 has a value of 0x0000000A, and the image confirms this is where the script starts (with 2E 00)

    Script1 has a value of 0x00000091, and the image confirms this is where the script starts (...)

    Script2 has a value of 0x00000022, and .....

    As you can see, when adding new scripts to the script file, you have to insert the offset distance to it correctly!

    edit:

    make sure the script file is padded correctly at the end such that

    (amount of data after pointers)%4 = 0, pad with 00 as necessary..... (this would include FD13 and all following data in the total amount)

    basically just ensure that the file has n amount of dwords.

    ~~~~~~~~~~~~~

    pretty much that's it for 'hacking' the scripts and overworlds, all that's left is to pound out the rest of the script functions (like above post) and have tools :D

  10. Lostlorn Forest -- Inside the Motor Home, not the Zoroark Script. Trying to figure out more structure of scripts

    scriptfile_772

    02 00 00 00 		(Header)
    
    13 FD 			(START Scripts)
    
    2E 00 			(Script Start)
    A6 00 			(Start NPC Interaction)
    47 05  			(Play Sound, 0547)
    74 00 		 	(Turn NPC to face Player)?
    3D 00 		 	(Open White Text Dialog with)~couldnt get 3C to do anything..
    00 04 			(Text Line)~
    00 00 			(0)
    00 00 			(Screen Anchor Bitflag)
    00 00 			(Special Textbox Flag)
    
    32 00 			(WaitForInput)
    3E 00 			(WindowClose?)
    
    30 00 			(DoInstantly)
    2F 00 			(RestorePlayersAbilitytoMove)
    
    02 00 			(End Script)
    
    00 00 			(nothing)

    Now that I kind of know scripts a little better, going to mod certain ones:

    ~~~~

    A6 set to anything else makes the NPC not interact with you, the script goes off but nothing happens. This means that this is the "Start NPC Interaction" line.

    ~~~~

    0547 -> 0546 == soundless textbox pops up, changing it to 48 makes it play a different clonk sound, 49 makes it bzzbep etc

    So this part determines what sound is played for the textbox

    ~~~~

    Screen Anchoring of text message:

    00 00 displays it where the player isnt (so the interaction between NPC and player is shown)

    01 00 always has it anchored to the top

    02 00 always has it anchored to the bottom

    ~~~~

    Textbox Flag

    00 00 has the default chat bubble

    01 00 plays the !!! jagged edge sound and window border, imagine Belle's father.

    02 xx is broken

    Essentially these are just bitflags that cause something else to happen for the displayed text. Regardless of start sound, the game plays the jagged box sound instead.

    ~~~~

    32 means wait for input (AB) to proceed

    31->2E & 33 is close ASAP without input (there might be a slight variation in text speed)

    34++ breaks

    ~~~~

    30 is do instantly. Right after 2F looks like it restores player input for movement.

    So long as the script doesn't call the game to hang, the 02 00 at the end restores movement so I really couldn't figure out what the ending hexes signified

    Here's a little demo of the special textbox editing. For now it's simple hacks :)

    [video=youtube;p19VtiuMLNY]

  11. sparse list of map -> location (~26%, major locations)

    0	White Forest
    1	Black City
    --
    6	Striaton City
    28	Castelia City
    36	Castelia Left Pier (victini)
    37	Castelia Leftmid Pier
    38	Castelia Mid Pier
    62	Nimbasa City
    63	Nimbasa Gym
    64	Outside Ferris Wheel
    65	Nimbasa Pokecenter
    66	Gear Station
    67	Single Line (regular)
    68	Super Single Line 
    69	Double Line (regular)
    70	Super Double
    71	Multi
    72	Super Multi
    73	WiFi Train
    74	Train to Anville
    77	Musical Building
    79	Big Staduim Lobby
    80	Big Stadium Bleachers
    82	Big Stadium Field
    84	Small Stadium Lobby
    85	Small Stadium Bleachers
    87	Small Stadium Field
    88	House where Guy gives strength HM
    91	Route Link Left from Nimbasa
    92	Route Link Right from Nimbasa
    93	Battle Institute
    94	House next to guy who gives STR
    96	Driftveil Town
    97	Driftveil Town B1F++
    98	Driftveil Gym Ground Floor
    99	Driftveil Pokecenter
    100	Driftveil House (2nd right above with patrat)
    101	Driftveil House (right above)
    102	Driftveil House (2nd right)
    103	Driftveil House (rightmost)
    104	Driftveil Advice House (town hall?)
    105	Driftveil Market
    106	Driftveil House (left above)
    107	Mistralton City
    109	Mistralton Pokecenter
    120	Opelucid City
    136	Pokemon League
    152	Dreamyard
    154	Pinwheel Forest
    157	Desert Resort
    158	Desert Resort Deep
    159	Desert Resort Route Link
    160	Relic Castle 1F
    191	Cold Storage (South Driftveil)
    192	Cold Storage Interior
    193	Cold Storage Crate (sage)
    194	Chargestone Cave Exterior
    195	Chargestone Cave Interior (1F)
    198	Twist Mountain
    205	Dragonspiral Tower
    214	Victory Road
    230	Giant Chasm
    235	Liberty Garden
    236	Victini Outer Chamber
    237	Victini Inner Chamber
    238	P2 Lab
    240	Undella Bay
    249	Skyarrow Bridge
    253	Driftveil Drawbridge
    255	Village Bridge
    263	Marvelous Bridge
    279	Entralink
    317 	Route 1
    319	Route 2
    321	Route 3
    323	Inside the Daycare
    324	Wellspring Cave
    326	Route 4
    329	Route 5
    330	Route 5 Motor Home (ingredient)
    331	Route 6
    332	Season Research Lab
    333	Mistralton Cave
    336	Route 6 Rest House
    337	Route 7
    352	Challenger's Cave
    355	Route 10
    365	Route 11
    368	Route 12
    370	Route 13
    374	Route 14
    375	Route Link above White Forest
    376	Abundant Shrine
    378	Route 15
    379	Route Link Left White Forest
    380	Marvelous Bridge Route Link to Route 15
    381	Poketransfer Place
    382	Motor Home on Route 15 (Rotom Ditto Trade)
    383	Route 16
    384	Marvelous Bridge Route Link to Route 16
    385	Lostlorn Forest
    386	Lostlorn Forest Motor Home (Zoroark Event)
    387	Route 18
    389	Numeva Town
    397	Accumula Town
    406	Lacunosa Town
    412	Undella Town
    418	Anville Town
    419	Middle House in Anville
    420	Bottom Left house in Anville
    421	Bottom Right house in Anville	(lost item guy)
    423	Route 17
    425	White Forest Pokecenter
    426	White Forest House

  12. k so the daycare has 0xA-0xB = 0x163, which corresponds to text file 355.

    EdzeI.png

    The first four bytes of this text file are [01 00 01 00], which means there is one line of text script for the one roughneck NPC -- I'm sure you already know this!

    We need to add 8 lines to the text file in addition to the 1 pre-existing line... so we need a 9 long text file! Search the narc for [01 00 09 00]...

    The first text file with 9 lines is file 31; so we copy it, make it the new 355, and then restore the old 355 text line that it had to restore compatibility. Here's the new text file for 355 if you want to rebuild the narc with this one and test it out.

    :D

  13. I have a similar problem to GBZero in this battle between Cybertron and BlueCookies:

    http://vsplayer.pokecheck.org/?bid=259278330190

    It states that Togekiss took burn damage on Turn 1 when it didn't, causing it to faint on Turn 3 in the log instead of Turn 5 like in the video. However, the log still states that Togekiss tried to use the moves that it actually took in the battle. This also means that Garchomp wasn't put to sleep by Sleep Talk Psycho Shift in the log, causing further desyncs until it stated that Cybertron won 1-0 with Volcarona (when BC really won 2-0 with Cresselia and Garchomp).

    flame orb inflicts a burn after the burn 10% damage check happens, that's why

    that error is also present in GBZero's video -- other errors in his video are flame body trying to burn an already statused Conkeldurr and heat wave trying to status a mon whose substitute faded from the attack

×
×
  • Create New...