[cross-platform] QD2CharRenamer - rename any D2 character

This would be the forum for questions about how to work with mod making tools which can be a problem of its own.

Moderator: Paul Siramy

Post Reply
kambala
Dark Alliance Beta Test
Crusader
Posts: 70
Joined: Wed Nov 25, 2009 4:32 pm
Location: Moscow
Contact:
Russia

[cross-platform] QD2CharRenamer - rename any D2 character

Post by kambala » Fri Apr 15, 2011 9:31 pm

I've made a small tool that can rename any Diablo 2 character regardless of mod and game version. You can use lots of ANSI characters, but there're some limitations:
  • 15 characters max
  • codes 32-127: all except ?*<>.|:"/\
  • codes 145, 146 and 160-191
  • name can't start with _ (underscore) or end with - (hyphen)
However, keep in mind, that it may "corrupt" character in some mods (e.g. Dark Alliance - character loads fine, but some important items can't be used on him any more). Original character is not modified.

So far the tool has been successfully tested on all Diablo II versions the following mods: Median XL, Battle for Elements, Aftermath.

QD2CharRenamer is written in C++ using Qt library, hence it's a cross-platform application. It can run on any Windows version (starting from Win98), Mac OS X (Intel/PPC, starting from 10.5) and Linux (where Qt can be installed). Windows and Mac OS X versions include binary, necessary Qt dynamic libraries (QtCore and QtGui) and russian translation. Source includes Visual Studio 2008 and QtCreator project files; requires Qt 4.7.0 I believe or higher (v1.2 for Windows is compiled with 4.7.3, for Mac OS X - with 4.7.2).

QD2CharRenamer 1.2 downloads: Installation:
  • Windows: unrar wherever you want and run exe
  • Mac OS X: unzip and copy app bundle wherever you want (e.g., to /Applications)
  • Linux: no idea
  • Translations: unpack to Translations folder and restart the app if it's running*
* Translation'll work "out of the box" only if you have OS of the same language. If you want to use not your OS's language, then you have to manually rename the localization folder and files' suffixes in it.
Example: you're running English OS and want to use Spanish language. Then you have to rename folder es_ES to en_US (or en_GB or w/e - google for details on these codes, second pair of letters depends on your OS's current location setting), and files inside from *_es.ts to *_en.ts

This time sources have almost no comments because everything is purely straightforward.
I haven't included any license information, but you may copy and modify the code as you wish, so I guess it's the GPL license. However, mentioning me in credits would be nice :)

TODO: in-app language change

Changelog
v1.2 (30.04.2011)
[+] color support - standard (except black, because it's invisible in the LCS, but you can always add it manually if you really want to) and non-standard ("dynamic colors" are those that are different in each act) colors, name in the character list doesn't display properly
---
[f] looked more carefully at working character codes

v1.1 (15.04.2011)
[+] saves from all Diablo II versions support (1.00-1.13)
[+] character version display in the window title
[+] nice-looking "About" messagebox
---
[f] found out which name characters the game actually supports
[f] renaming character with "blank" (all spaces/nbsps) name will show warning alert

v1.0 (10.04.2011)
- initial release


Credits:
Last edited by kambala on Sun Jul 21, 2013 8:15 pm, edited 6 times in total.
cross-platform tools: K.A.M.B.A.L.A.: Kinetic Artificial Machine Built for Assassination and Logical Analysis

User avatar
kidpaddle94
Forum Legend
Principality
Posts: 2056
Joined: Thu Aug 13, 2009 2:54 pm
Location: localhost
Canada

Re: QD2CharRenamer - rename any D2 character

Post by kidpaddle94 » Fri Apr 15, 2011 9:37 pm

cool, now I can color my character names without hexing tool on hero editor.

thank you.

kambala
Dark Alliance Beta Test
Crusader
Posts: 70
Joined: Wed Nov 25, 2009 4:32 pm
Location: Moscow
Contact:
Russia

Re: QD2CharRenamer - rename any D2 character

Post by kambala » Sat Apr 16, 2011 12:44 pm

Coloring names... I didn't even think about it :)

I tried to insert color code (the same as used in tbl files) right before the character name, but it doesn't seem to work... Do you mind sharing your coloring algorithm/code, so that I could add it to v1.2?
cross-platform tools: K.A.M.B.A.L.A.: Kinetic Artificial Machine Built for Assassination and Logical Analysis

User avatar
kidpaddle94
Forum Legend
Principality
Posts: 2056
Joined: Thu Aug 13, 2009 2:54 pm
Location: localhost
Canada

Re: QD2CharRenamer - rename any D2 character

Post by kidpaddle94 » Sat Apr 16, 2011 5:38 pm

ÿcX where x is a number. example, ÿc8 = orange.
does this help?

User avatar
ChaosMarc
Dark Alliance Beta Test
Paladin
Posts: 231
Joined: Fri May 28, 2004 2:00 pm
Germany

Re: QD2CharRenamer - rename any D2 character

Post by ChaosMarc » Sat Apr 16, 2011 7:14 pm

but if I put those strings in front of the name, QD2CharRenamer tells me not to use such characters

User avatar
Lurix
Dark Alliance Beta Test
Champion of the Light
Posts: 491
Joined: Tue Aug 31, 2010 9:30 am
Location: Birmingham, UK
Bulgaria

Re: QD2CharRenamer - rename any D2 character

Post by Lurix » Sat Apr 16, 2011 7:24 pm

This means that someone who has not tested the features of the Tool, decided to say something which is not sure if it's possible, but anyway decided to say it..

I don't want my reply to be also a spam.
So I'd say it's a good tool, and it would be great if it wasn't for renaming the characters but allows you to use all the signs ingame, but this will require a lot more knowledge, and problems with diff patches.

Anyway good to see Toolmakers ;)

kambala
Dark Alliance Beta Test
Crusader
Posts: 70
Joined: Wed Nov 25, 2009 4:32 pm
Location: Moscow
Contact:
Russia

Re: QD2CharRenamer - rename any D2 character

Post by kambala » Sat Apr 16, 2011 7:33 pm

kidpaddle94" wrote:ÿcX where x is a number. example, ÿc8 = orange.
does this help?
that's the same thing I did, but it didn't work... could you please send me a "colored" character?
and actually X can also be ./;: ;)
themastercaster" wrote:but if I put those strings in front of the name, QD2CharRenamer tells me not to use such characters
of course it doesn't allow those characters, because at the moment of release I didn't even think about colors :)
Lurix" wrote:and it would be great if it wasn't for renaming the characters but allows you to use all the signs ingame, but this will require a lot more knowledge, and problems with diff patches.
and it requires code edits of game's dll(s), and I'm not familiar with assembly :(
cross-platform tools: K.A.M.B.A.L.A.: Kinetic Artificial Machine Built for Assassination and Logical Analysis

User avatar
ChaosMarc
Dark Alliance Beta Test
Paladin
Posts: 231
Joined: Fri May 28, 2004 2:00 pm
Germany

Re: QD2CharRenamer - rename any D2 character

Post by ChaosMarc » Sat Apr 16, 2011 9:11 pm

found a tut via google "diablo 2 coloring character name" (very evil page :twisted: )
here is a colored save game (1.13) http://www17.zippyshare.com/v/53923554/file.html

looks funny ingame ^^
Image
Last edited by ChaosMarc on Sat Apr 16, 2011 9:48 pm, edited 1 time in total.

kambala
Dark Alliance Beta Test
Crusader
Posts: 70
Joined: Wed Nov 25, 2009 4:32 pm
Location: Moscow
Contact:
Russia

Re: QD2CharRenamer - rename any D2 character

Post by kambala » Wed May 11, 2011 11:05 pm

thank you very much!

now I've understood why my colored character didn't work. this stupid game reads save files using local 8-bit encoding. I have russian windows and 0xFF for me is 'я', not 'ÿ'. so I renamed the character from 'ÿc1Hÿc3Aÿc2X' to 'яc1Hяc3Aяc2X' and the game "saw" it.

v1.2 released!

12.05.11: added Spanish translation
cross-platform tools: K.A.M.B.A.L.A.: Kinetic Artificial Machine Built for Assassination and Logical Analysis

Post Reply

Return to “Tools”