home *** CD-ROM | disk | FTP | other *** search
/ Cheats, Hacks & Hints / Cheats_Hacks_and_Hints.bin / games / ultuw1 / uweditor.txt < prev   
Text File  |  1992-06-16  |  6KB  |  139 lines

  1. Ultima Underworld Character Editor
  2. ----------------------------------
  3.  
  4. by Phat Tran
  5.  
  6. June 16, 1992
  7. -------------
  8.  
  9. This editor was written for Ultima Underworld version F1.50S, but it 
  10. will probably work for other versions as well.  To see what version you 
  11. have, enter the Abyss and press Alt-F7.  The version information will
  12. scroll up in the message area.
  13.  
  14. To install UWEditor, just copy it into your UnderWorld directory.
  15. For example, mine is d:\games\uw.  DON'T copy it into the SAVEx
  16. subdirectories!  Type UWEDITOR at the DOS prompt to start it.
  17.  
  18. This editor decodes the file PLAYER.DAT based on a hunch of mine, one
  19. which may not apply universally.  If the decoder messes up, it will
  20. require you to tell it a value for one of the attributes so that it can
  21. get its bearings again.  Once it knows what one attribute is, it will
  22. most certainly be able to decode the rest.
  23.  
  24. If you have any problems with it, feel free to contact me either on 
  25. NaNet (the games conference) or the Internet (cdexcms@watdcs.uwaterloo.ca).
  26. [Note: my Internet account may not be around for long.]
  27. If you have the patience, you can also mail me at
  28.         
  29.         81 Lennox Cr.
  30.         Kitchener, Ontario
  31.         Canada N2N 2P5
  32.  
  33. UWEditor is completely free, but don't let me stop you from sending me
  34. your loose change!  Knock yourself out!
  35.  
  36. How it works:
  37. -------------
  38.  
  39. ===========================================================================
  40.  BBS: System EX-10 Canada
  41. Date: 06-16-92 (15:59)             Number: 58
  42. From: PHAT TRAN                    Refer#: NONE
  43.   To: ALL                           Recvd: NO  
  44. Subj: Underworld Editor              Conf: (58) Games-Int
  45. ---------------------------------------------------------------------------
  46. I spent last night hacking away at the PLAYER.DAT file in one of my
  47. saved games, trying to get myself out of a trap (I was locked in a room
  48. with an unbashable porticulis(sp), and no lever in sight!).  What I did
  49. was nudge my character up against the porticulis, saved my game, and
  50. hex-edited PLAYER.DAT, changing my east-west position so that when I
  51. loaded up my game again, I was on the other side of the porticulis!
  52. It's a neat trick for getting past certain pitfalls.  If you're ever in
  53. the same predicament, the bytes that determine your east-west position
  54. are found at sector 0, offset 85-86 of PLAYER.DAT, least-significant
  55. byte first.  If you're trapped by a north-south door, let me know and
  56. I'll try to locate the bytes for the north-south position.
  57.  
  58. While dissecting the PLAYER.DAT file, I also found which bytes
  59. determined each of my character's attributes.  The bytes at offset 31 to
  60. 55 (decimal) determine your strength, dexterity, intelligence, attack,
  61. defense, ..., appraise, swimming, vitality, and mana attributes.
  62. However, the guys at Origin encoded the data by XORing each byte with
  63. a corresponding term from the sequence n + 0, n + 3, n + 6, n + 9, and
  64. so on, where n is a number that is derived from you character's name
  65. (and so is different for each person).  For my mage, the table of
  66. attributes and coding term goes as follows (remember, it's different
  67. for each character):
  68.  
  69. Attribute        Offset        Coding Term
  70.                 (Decimal)        (Hex)
  71.  
  72. Strength        31                4a
  73. Dexterity       32                4d
  74. Intelligence    33                50
  75. Attack          34                53
  76. Defense         35                56
  77. Unarmed         36                59
  78. .               .                 .
  79. Mana            41                68
  80. .               .                 .
  81. Any of the skills left out are in the same order as they are listed
  82. on the character panel.           .
  83. .               .                 .
  84. Appraise        52                89
  85. Swimming        53                8c
  86. Vitality        54                8f  'These are "reservoir" attributes,
  87. Mana            55                92  'not skills.
  88.  
  89. As you can see, each coding term is 3 greater than the previous coding
  90. term.  If you know one of your attributes, then you can easily find out
  91. the coding term for that attribute, and then extrapolate to find the
  92. coding term for each of the other attributes.  For example, my mage has
  93. strength 20 (dec), and the byte at offset 31 decimal, which holds my
  94. strength, in PLAYER.DAT is 5e (hex). To find the coding term, I would
  95. exclusive-or 20 decimal (which is 14 hex) with 5e hex:  14 XOR 5e = 4a
  96. (which is the coding term!). Add three to 4a, and I would get 4d, the
  97. coding term for the next attribute, and so on.  If I want to change my
  98. strength to 50 decimal or 32 hex, I would XOR it with 4a:  32 XOR 4a =
  99. 78 hex, which I would change the byte at offset 31 into.
  100.  
  101. If you want to edit your character using the above method, here are a
  102. few pointers:
  103.  
  104. -Normally, praying at a shrine will not increase a skill above 30, so if
  105. you want to be partially honest, don't give yourself a skill above that.
  106.  
  107. -Your mana reservoir is determined by your mana skill, and your
  108. vitality is a combination of several, as of yet unknown, factors.  Don't
  109. change your mana and vitality directly since they will be reset the next
  110. time you pray at a shrine.  Instead, change your mana skill and your
  111. strength, etc., then pray at a shrine and your vitality and mana
  112. reservoirs will increase in capacity.
  113.  
  114. -Increasing your strength will increase your carrying capacity.
  115.  
  116. -You should always pray at a shrine after editing your character to
  117. "register" your new attributes with the game. -Very high skills may
  118. "wrap around" so that you may be worse off than before.  Don't raise any
  119. skill above 50!
  120.  
  121. -Don't go overboard and max out everything--you'll just end up wrecking
  122. the game for yourself.
  123.  
  124. If anyone's interested, I gave my mage a strength attribute of 50, so
  125. that he now has a carrying capacity of about 93 units!  I also fudged
  126. his lore, sword, and mana skills.  With a mana skill of 30, my mana
  127. reservoir is now at 127/127!  I once had it up to 255/255, but didn't
  128. feel secure with it since it was way over the game's design limit.
  129.  
  130. Well, I hope this information will be useful to some of you.  If you
  131. have any questions, just ask.  I'll work on an editor utility if there's
  132. demand for it, though I'm still a neophyte DOS programmer.  In the
  133. meantime, enjoy!
  134.  
  135. Phat Tran.
  136. ---
  137.  ■ SLMR 2.1a ■
  138.  
  139.