Advertisement
SirZer0

UMvC3 Mission Format Stuff Day 1

Mar 13th, 2017
210
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.91 KB | None | 0 0
  1. General:
  2. Missions files are stored in the 'mission' folder, with a single arc file for each character (numbered). Arc files are un-/re- packageable using the UMvC3 Tool found in the subreddit wiki (https://www.reddit.com/r/mahvelmods/wiki/getstarted). Once unpacked, the misChar.361EA2A5 can be opened in a Hex Editor (HxD for Windows, Hex Fiend for Mac, or whatever you want) and analyzed. You're gonna see a lot of useless stuff. Once repackaged, the file will be slightly smaller than the original because the tool omits nulls in the header, but they still work.
  3.  
  4. Useful Info:
  5. 0x00C8 - Point ID
  6. 0x00FC - A1 ID //Assist type 0x10 later (apparently true, I can't seem to find them)
  7. 0x0130 - A2 ID
  8. 0x0164 - Enemy ID //Difference of 0x32 between each
  9. 0x0198 - Enemy ID 2 //Denotes enemy changes throughout missions
  10. 0x01CC - Enemy ID 3
  11.  
  12. The point ID and assist info is repeated at the start of every mission. Offset should be 0x630 for mission 2-10.
  13.  
  14. Missions appear to be in the same spot for every character, this means making a tool to modify them would be simple and that there is a maximum mission command length. I think Morrigan #10 is the longest mission, although C.Viper #10 is probably close behind it, and there may be others I'm forgetting about. Addresses indicate where combo notation starts.
  15. 0x03A0 - Mission 1 //Difference of 0x630 between each
  16. 0x09D0 - Mission 2
  17. 0x1000 - Mission 3
  18. 0x1630 - Mission 4
  19. 0x1C60 - Mission 5
  20. 0x2290 - Mission 6
  21. 0x28C0 - Mission 7
  22. 0x2EF0 - Mission 8
  23. 0x3520 - Mission 9
  24. 0x3B50 - Mission 10
  25.  
  26. Characters tested: Ryu, Morrigan, Chun-Li (#10), Trish (#10), Super Skrull (#4?, 10)
  27. Move inputs (stored in 4 bytes, although at most 3 are used):
  28. 05 - Air dash
  29. 68 01 - st.S
  30. 96 - st.L
  31. 97 - st.M
  32. 98 - st.H
  33. 99 - cr.L
  34. 9A - cr.M
  35. 9B - cr.H
  36. 9C - j.L
  37. 9D - j.M
  38. 9E - j.H
  39. 9F - j.S
  40. A9 - j.X-factor
  41. AA - X-factor
  42. AF - f.M / j.d.M (Chun)
  43. B0 - f.H
  44. B3 - ~H (Chun Li Kikoanken)
  45. B8 0B - extra jump
  46. BE - qcf.L
  47. BF - qcf.M
  48. C0 - qcf.H
  49. C1 - LLL... (Tenderizer)
  50. C1 - qcb.L
  51. C2 - qcb.M / dp.H (Shadow Blade)
  52. C3 - qcb.H
  53. C4 - rdp.L (Ryu donkey kick)/hcb.L (Morrigan command grab)
  54. C6 - rdp.H
  55. C9 - dp.H
  56. CA - j.qcf.L
  57. CC - j.qcf.H / j.SBK
  58. CE - j.qcb.M / j.dp.M (Air Shadow Blade M)
  59. CF - j.qcb.H (Air Tatsu H)
  60. D1 - j.MMM (Lightning Legs)
  61. D2 - qcf.S (Baku Hadouken)
  62. D3 - EX SBK
  63. DD - j.qcf.LMH (Air Shinku Hadouken)
  64. DF - dp.LMH (Shin Shoryu)/j.qcb.LMH (Air Darkness Illusion)
  65. E0 - dp.LMH (Shadow Servant)
  66. E2 - dp.MH (Death Penalty MH)
  67. E5 - j.qcf.LMH (Air Denjin Shinku Hadouken)
  68. EA 03 - A2
  69. F0 - ~qcb.H (Fatal Buster)
  70.  
  71. //39 01 seems to indicate that the move doesn't hit, but strangely doesn't flag air-dashes this way
  72. 17 39 01 (st.M before assist call, Ryu #9, THIS HITS)
  73. 1F 39 01 (Morrigan j.S before Astral)
  74. 3E 39 01 (Hadoken L, before XF / Orbital Grudge L, miss)
  75. 40 39 01 (Kikoken miss for Kikoanken)
  76. 62 39 01 (dd.LMH, Ryu power-up super)
  77. FD 39 01 (Morrigan j.Flight activation)
  78. FE 39 01 (Morrigan j.Flight cancel)
  79.  
  80. Notes about the above:
  81. - 39 01 may also flag for assist calls overlapping/inbetween normals. The game does care that things happen in order, though, as can be easily seen in Frank #10
  82. - Adding passive 39 01s to something st.M/st.L (once appropriate IDs have been found for those) to ignore failures due to plinked dashes may be a good idea...unless that means you HAVE to do a plink dash. Then it's terrible.
  83. - Moves seem to move up in the assignment list if the character doesn't have a special using that motion. I'm assuming Ryu is the base template. Looks like we'll have to make an association table for the entire cast, which is a shame. The obvious thing was to check if the Command List listed moves in the order that they're prioritized, but nope (Ryu lists Hadous, Shoryus, Tatsus)
  84. - Doom and Mag can be used to test for other-direction air-dashes, which will likely all have unique numbers
  85. - Mag can also be used to test for fly/unfly consistency
  86. - It's likely that 96-FF all have unique actions throughout the cast, and potentially everything from 01-FF, although most of these will include the 39 01 instances, which seem to have unique IDs.
  87. - Dante will probably yield a lot of useful info about 39 01s and will hopefully fill some of the void around B3 with all of his double-input specials.
  88.  
  89. Skrull Mission 10 dissection (0s omitted):
  90. cr.H,S | 9B 68 01
  91. j.dash | 05
  92. j.M,H,S | 9D 9E 9F
  93. H(hold) | 98 //normal st.H
  94. cr.H,S | 9B 68 01
  95. j.dash | 05
  96. j.M,H,S | 9D 9E 9F
  97. cr.H (hold) | 9B //normal cr.H
  98. qcf.L(miss) | 3E 39 01 //"miss" flag
  99. qcb.H | F0
  100. LLL | C1
  101. dp.MH | E2
  102. Oddly enough, these files don't think anything's special about Stone Smite or the charged cr.H (or presumably charged j.S), the same can be said for Ryu's direction-dependent Shinku Hadouken. This strongly indicates that the displayed text isn't generated based on the value in the tables, but are hard-coded somewhere (likely within the executable).
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement