搜索
亲,你还没有登录哦,马上登录。如果还没有帐号,请立即注册X
查看: 1348|回复: 5

教你新建一个火红行走图调色板~!【框架初步翻译】

[复制链接]
  • TA的每日心情
    激动
    6 天前
  • 签到天数: 372 天

    [LV.9]以国为家II

    发表于 2012-5-19 22:25:01 | 显示全部楼层 |阅读模式
    常常因为调色板不够用导致火红行走图颜色错乱,这下好了,可以新建火红行走图调色板了+ |4 [  W# {8 B6 A
    ! t6 h# G  K+ k) ]9 o6 r( L

    2 }' J: p( Y! x1 J3 {  K部分已翻译
    % k7 c3 Q4 l4 S% h
    1 _' \( _: T! z1 K9 m7 p
    " () "内内容为原注。
    " Q, [+ i3 N% b" j5 [" c! E/ [ " 【】"内内容为译者注。
    , o1 ]) g) @% x4 Y" 『』"为站内超链接。
    * C- i) M( S) o6 Z0 Y% ~( P"[]"为材料或工具的英文原名。

    ! ^8 f  K; \( D: L. l
    1 @" t+ B9 C% F- Y. {4 w3 ~9 sThis is my first tutorial, and I want to make it as simple as possible and easy to follow. Thanks to JPAN for his hacked engine and metapod23 for his overworld tutorial which helped me understand everything better.
    ; Y5 B+ I5 e1 V0 D' }( Q0 {: N6 c2 B8 d/ _& i- U1 ?, y' M
    本教程需要的材料及工具
    . a, S/ @' F0 uPokemon 火红 (未修改及已修改)的ROM + d; C2 k) f& [% C) e! E/ ]
    Pokemon 火红 改版引擎 补丁[Hacked Engine]
    2 Y. U, [. b6 J5 |6 F. ~十六进制编辑器 – 我将使用Translhextion进行编辑 点击我跳转到Translhextion 下载
    ! h3 R- W- i9 w" b2 rFSF [空档查找器]【HACKMEW大神做的那个】: @" b, i. U. {& T
    Overworld 编辑器 : 重生版 【HACKMEW修改】
    ( c! \$ |; }3 |9 g无名人物编辑器 (I will be using classic)- c8 Z9 K" m; }$ s6 t# `
    IPS补丁机器
    - ?) r  U6 H4 D(HackMew大神的工具我建议从这里PGE 下载) 点击我跳转到 HackMew 中文版 下载   ! }4 {- S( \' k6 `$ }

    5 ?$ i2 b2 R+ o; H' Y/ Y2 ]) i请注意备份你的ROM~
    " ~! ?+ k  Y3 A/ R7 S$ w
    # n/ W0 @; u. k( ]; ?( V/ x第一步-Applying the hacked engine.
    , u' s' F3 f: A$ o& a# L; f7 H
    + B& r* d' W' l* {& A) aIf you’re reading this, I hope you know how to do this. If not, click here http://www.pokecommunity.com/showthread.php?t=73966 and look at the alternate method of working with patches.
    / l6 H" e  U! R- g2 x6 Y! Y; f9 _  @1 G" F
    第二步 – Understanding the data.
    # R* k: J9 {+ K: f; J% C- ~9 q- E: P& s6 j! ]
    As JPAN states in his guide, a palette pointer consists of PPPPPPPP nn110000, with P = palette pointer and n = palette number. For example, if I wanted to write a pointer to a palette located at 0x800000 with a palette number of 32, I would use this.
    4 N- p$ i: u3 ?( s) q
    * V: i) A2 \+ t+ T; b. c& h& A3 F" f00008008 20110000
    7 w4 L% r: O: C6 u' a3 ~/ k5 _" Y1 `, _. L0 X) g' v' y
    When typing pointers, you need to break the original address into three blocks of two and rearrange them like so. 80 00 00 -> 00 00 80 80. You had the 80 because it is located within the rom.
    1 Y9 h: \8 u- R0 W! l2 ], T  F8 N" r& y0 ?
    20 is actually 32 in hex, so make sure you convert. I would use the calculator that came with your computer.
    0 I: W9 V) H) ]; z( `: L( J9 m1 K
    ! i6 t; V) M, e1 G9 d

      H; N4 ], l4 U* |5 u  \  B
    ) |- X3 b& d7 {3 K$ u' U9 z1 I第三步 – Finding the free space needed
    & \2 R0 ?& X1 z4 R; @  S$ K( s6 k& }4 G4 d5 d- e
    In the JPAN rom, the palette table is located at 0x1A2400, giving you room for 256 pointers, so that should be enough.
    & p3 T1 P, ]- F" _& S9 D1 E& }+ @
    Each palette takes up 64 bytes. So multiply 64 by the number of palettes you will be inserting. 9 [" r& W; M' O2 i) W7 \& z% Y5 I# d

    - T$ a; S& U2 i3 ^" OEX. 64 * 12 = 768- Q5 A/ J' n2 m( p

    ; X8 r8 @$ Y6 D* n  O7 j: y# e$ i& \You would need 768 bytes of free space to insert 12 new palettes. But for simplicity, I will be adding 1 so I need 64 bytes of free space. 4 N- s) {1 Q$ E4 f5 t
    a495xf.png 0 J, Y+ q: D. Z
    I will be using 0x800000.
    ' M- S5 ]+ ]; r4 w# l/ k

    - Q8 p' H$ j9 T: A3 n5 a
    / r( v) \$ X9 u% e8 z
    " Q9 [8 D1 w& ]9 X+ n$ h& q第四步 – Editing Palette& Z( _; J* H- J; V# D2 V( S

    5 [4 n7 W" ?. v4 V* N% D1 |  P- JNow my way is a sort of a hassle, so if anyone knows an easier way, please tell me.
    1 m( x. n+ J: _, x+ v! Y9 H
    + `; U) h4 Q  s5 n* JOpen your unmodified rom in NSE. Then edit a palette to your liking.
    1 Z. ], N6 U) K& L* `
    24zkk7b.png 2 q4 m7 c$ D# e7 D7 x
    I just edit the palette of the hero, as it is the first sprite. Once you’re done we can finally move into Hex! Take note that the palette offset is at $H35B968 or x35B968.

    $ D% p' u* ~" y4 ~
    * \. {4 }& Z+ M: x1 Q/ C4 A# `3 z
    ' U# A6 D+ A- [/ T. Y

    : s7 w* G+ C5 x  |4 A5 `& u9 N第五步 – Hex editing
      T, D) Q* d0 W$ z/ R3 M6 x& }9 F5 A+ p0 s) T* |( |
    Remember that offset we found for free space, well were going to use it! Open you modified rom into a hex editor and navigate to 0x1A2400.- f+ _- w; i  c' v3 a- }7 j3 C
    33ymbyh.png . {! d  W" D8 v) F* t
    1 L% }& e+ ]/ ^/ @* B
    Go to the end of the table and insert your pointer before the 00000000 FF110000 as shown. I just rewrote the ending afterwards. Make sure your table ends with that or else in will NOT work at all.
    * ^& \# R2 U/ v+ m- h/ Q0 `
    1zr1jkg.png 5 @6 [* _: ]6 e1 j( T7 g

    # R# f5 m* M4 w  f6 cSave.
    2 s$ E3 F: T0 z& R7 B- P: j" H0 ~3 Z+ m0 u" _
    Now open your unmodified rom in a hex editor. Navigate to the palette offset and copy 64 bytes.
    3 K0 L3 L& y7 S0 g( s5 eGo back to your hex editor with the modified rom and navigate to 0x800000 and paste the data.; W0 E+ q) {( u& W8 Y* `, W) k
    2py9ens.png
    6 b4 R% {" ?( T% b( PSave.# Q8 j, p. Y3 G0 q
    2 z; Y4 f) n+ ?& z; E7 ~
    Success!

    $ T4 ~9 p; N1 a$ \

    : c9 y; M& e5 q' k: b7 L( `4 [2 q
    3 V1 D. [3 Z7 C4 X$ ~! C3 N) o. J; Z9 D9 ^% n. i2 a, _2 ~- {
    第六步 – Editing the sprites.
    & }) u  c: V% q( u+ \3 _4 y3 X  D& y
    Say you wanted to edit the male hero from Ruby’s sprite. See what he sprite offsett is in NSE and write it down. 0x3A3C64
    & x) r$ U. f, y: K& n# }  A
    1 P' z. c+ O: pGo to that address in the modified rom. The palette number is the third byte over. So change that to a 20.
    7 l8 D) |1 V8 G% o8 N
    wjiafq.png   `7 v/ H; v0 X0 j

    0 [: X' p! s1 |4 l- ]Save!
    & v( {0 r- k5 z6 z' q$ K' f
    3 ^# K# K/ n$ }; r; Y0 c, L7 ONow open your Overworld Editor Rebirth sprites.ini file. Go down to the English Fire red and change the SpritePaletteHeader pointer to 1A2400.4 C3 k, M: O7 g4 T, U" q
    ) v$ D; ?6 {# g" `
    Save.
    2 y, N5 o& N8 d; z" c
    % L" _* d8 P' ROpen the rom in Overworld Editor Rebirth and go to Ruby hero sprite. As you can see, the palette number is now 32. Edit away. Im just inserting the male Fire Red hero since it will look nice.
    6 Z: h9 C$ u+ n
    fnafpg.png
    ' ~% d. d2 d3 G8 S

    7 |# w% \0 e9 ~& `

    9 Z3 m7 ?9 c& w: j) O
    8 W7 z5 i; _, d5 W
    " W/ y, T& u% q$ G第七步 – Fixing a glitch!
    9 D2 Q9 O" u: }. {5 A5 i1 g$ D: XSpoiler:
    . e6 \1 `4 e8 o: b/ \/ gFollow these instructions to make it work.
    ; p; Z" H  F9 K$ _/ ]& O- i% A. G; r, l
    Quote:
    5 B2 r% j; G1 P6 c2 y
    That is a problem I didn't encounter until mentioned, as I always tested with OW palette 0 and A (no reason why, though, just happened). As such, I didn't know about the "forced load" on start that only happens once per map. This should fix it.
    $ x" w) ?0 `/ IUsing a hex editor, replace the following values; M. I( A- J2 r' M. X/ `* _
    starting at 0x0805E5E0, place 70 88 09 07 09 0f 00 29 01 d0 05 e0, & Y, D- q8 a; m6 O. S
    then at 0x0805e5f8 place 03 e0
    ) W" X/ l7 O6 V6 F3 E( e) z. y. c8 N/ \3 |. C
    Also, another "problem" arises from the mist weather. palette slot 0x1, 0x6 to 0x9 and 0xb are reserved for the mist weather effect. If you don't plan on using it on your hack, and need the extra palettes, you can use them after disabling the effect.
    ! K+ `& X- b8 \9 }# X7 eat 0x0805f680 place 22 e0 (for palette slots 0x6-0x9 + 0xb),2 c7 Q3 E3 x2 S- m3 J6 }+ `9 i
    at 0x0805f60c place 20 e0 (for palette slot 0x1, the player mist slot).
    ; w2 e, f+ b* e7 e1 y. L5 c3 y  m! |- oIf you wish to have the player enter misty areas, do not apply the last one." l8 Q3 p( M1 p! V& K; h& h
    3 m4 v( K" l9 c  T% e2 ~- p+ Z
    And now you are done! Here is the finished product.; f% H6 X' _5 ?. k2 ^& d
    15vuwp.png - U' C* x7 \3 B$ I. \* B6 C

    . o; N8 _) G6 Q7 v$ S

    0 V2 h& N2 m" ^: ?- b! w
    * P( b  |/ y' v+ r8 G7 R
    6 i* }  H% P  `) s& {& r* |5 B+ @3 x
    If you have any questions, have suggestions about thread cleanliness, or this tutorial is unclear, be sure to say something! I hope I was able to help!  w" Y0 a0 i3 l1 G, e4 E! U& ~. H$ L
  • TA的每日心情
    淡定
    2014-1-31 21:15
  • 签到天数: 435 天

    [LV.9]以国为家II

    发表于 2012-5-20 00:25:55 | 显示全部楼层
    本帖最后由 crazyXD 于 2012-5-20 04:13 编辑 4 o, r* [( g6 _6 O+ P9 b
    4 B" W4 J' o5 B. u
    但是这教程是打过Hacked Engine补丁专用的.. (不是hacked routine applier)
    5 a) V4 g6 H) s貌似Hacked routine applier煤油重指向指针功能的,,
    # x$ z. m" `/ b* Y, N9 r7 Z所以也估计无法用到中文版ROM(增益版火红)上...4 W' R+ a8 o! s0 X, J% |- p8 E6 Y
    但是既然已知道了颜色表的指针的格式...估计也可以自己制作了..6 s2 o: V& z9 n# h$ N9 s
    比如搜索指针的指针然后修改这个估计就可以修改了..6 X# B; O; i5 T' G
    好吧..' |( r: c1 X6 W: n& _, N
    待一会儿翻译试试吧..求Pokewiz分工...
    ; K4 ]$ D. B2 G  _: M1 l(其实在原版火红里面也有些空位..但是也只能添加一个色板...虽然还没试过...火红的色板指针的地址是0x3A5158)
  • TA的每日心情
    开心
    2021-1-29 11:50
  • 签到天数: 104 天

    [LV.6]王国居民II

    发表于 2012-5-20 10:42:43 | 显示全部楼层
    英文的
  • TA的每日心情

    2012-9-14 20:19
  • 签到天数: 18 天

    [LV.4]偶尔看看III

    发表于 2012-6-25 10:39:37 | 显示全部楼层
    看起来很牛逼啊  尽管看不懂
  • TA的每日心情

    2012-11-29 12:03
  • 签到天数: 51 天

    [LV.5]王国居民I

    发表于 2012-7-19 13:48:25 | 显示全部楼层
    等待翻译         
  • TA的每日心情

    2013-12-28 13:27
  • 签到天数: 140 天

    [LV.7]王国居民III

    发表于 2012-7-29 17:14:51 | 显示全部楼层
    绿宝石的可以这样用吗
    您需要登录后才可以回帖 登录 | 加入王国!

    本版积分规则

    关于我们|联系我们|口袋王国|Poke The Kingdom.

    GMT+8, 2024-11-23 16:26 , Processed in 0.033830 second(s), 12 queries .

    Powered by PokeTK V5

    © 2011-2021 Poke The Kingdom.

    返回顶部