444Ro666 / MapleEzorsia-v2

v83 Standalone HD dll client/localhost
GNU Affero General Public License v3.0
85 stars 42 forks source link
client dll dll-client dll-localhost ezorsia hd localhost maplestory out-of-the-box standalone v83

MapleEzorsia v2 (Standalone HD dll client/localhost for v83)

Please follow setup instructions here for optimal setup, gameplay after optimal setup. see the change log to make sure you're up to date. Is your game not working? Go to Troubleshooting Section of the setup guide and see if any fixes help _____IMPORTANT NOTE: make sure you re-download config.ini and dependent files when updating, there could be changes

2023/11/17 - in addition to its original functionality, this DLL is now an independent standalone localhost that will work when dropped into any fresh install along with the config

NOTE: so i've notice some ppl dunno what this is. to clarify: this is a cr@ck that turns the default .exe (from NXXXON) into a HD client/localhost useable for singleplayer or with any server.
it still works for it's original design of turning any previously released localhost into HD as well, and also has a few other configurable capabilities specified by the user
it doesn't need an injector or other extra .exe file to work because MapleStory already loads up dinput8.dll automatically. just needs the dll to be in the same folder. i did this purposely because so many .exe files in the hacking scene are viruses that make you mine coin
first to be released, one of a kind, and truly unique in this scene(or any hacking scene): a cr@ck that is open source, with zero strings attached, designed to be the safest, most transparent setup any end user can get

2023/11/17 - if you used this before this date, ijl15.dll is no longer supported, instead re-follow the instructions and put dinput8.dll in the folder, delete ijl15.dll, and rename 2ijl15.dll(the original) back to ijl15.dll

2023/10/23 - if you used this before this date, nmconew.dll is no longer supported, instead re-follow the instructions and name ijl15.dll to 2ijl15.dll, place new ijl15.dll in the folder, delete old nmconew.dll, and rename nmconew2.dll back to nmconew.dll

This DLL modifies addresses in a default, packed, v83 MapleStory client fresh from installation to enable the game to run; as well as changes the game window and canvas resolution to HD.
Most in-game component boundaries are also modified to scale with the custom resolution.

The original goal of this DLL is to allow an old 4:3 aspect ratio game to work on 16:9 aspect ratio modern monitors while perserving the original gameplay experience as much as possible. However i also do believe that it is the individual player's choice on how they wish to play the game so i am willing to be flexible regarding optional functionality. As such this project has expanded into also becoming a development base that allows plenty of room for expansion and allows the user to play the game their way.

This standalone DLL client is designed to provide a quality, relatively safe, open source client setup to work alongside open source servers. I do not have the skill or resources available to make a fully working custom client from scratch so this is the best i can do

This DLL will work with any client or localhost, including the one that comes from a default installation of the game. Deletion of files that come from a default installation is also unnecessary for it to work.

This code can only be compiled on the x86 platform. (Compilation settings) (if DLL from compilation settings doesn't work try this)

Default config.ini

The default config.ini file is included. put it in your game folder (where the .dll is) and the program will try to use it. try to avoid extending the comments (behind ;comment) inside of it or INIReader will be unable to read from it and crash you

How to use (DLL only)

In your v83 MapleStory directory,

  1. insert this dinput8.dll from here in the game directory
  2. Run your Game and see how it looks. if you are satisfied then play!
    • if not satisfied or if the game didnt open, close the game, and open the config.ini that is generated and edit the values to your liking!
      • for compatibility with your own wz edits see the troubleshooting section. i suggest doing all your edits in your own EzorsiaV2_UI.wz or MapleEzorsiaV2wzfiles.img (if using .IMG) file to avoid WZ conflicts with the base game, and to ensure you can keep track of them. You can load your edits from these custom files by using the stringpool hook provided in the release source code.
  3. Run your Game and enjoy!
  4. Game still not working? Try manually downloading the config and WZ/IMG files here and inserting them into the appropriate locations manually

Features

improvements in source from original:

Want to help me?

My To-do list is what im currently looking to improve on for the patch in the future. development will be slower now that it is releasable compared to pre-release. click here to see how you can help. you can also see the guide here on how to develop the patch

Credits

i'd like to thank the members of the maple dev community who took the time to help me when they did. I'd also like to thank the creator of the original ezorsia for creating the base i used to work off of and learn from. A special mention to the creators of MapleClientEditTemplate whose re-written utility functions and type definitions helped transition this project towards more advanced client modifications. Another special mention to hendi's localhost workshop for the guidance about which functions to re-write in order to implement a working standalone client dll, and for providing a unvirtualized localhost to analyze. Finally, I'd like to thank everyone who provided the releases and resources in the setup and development page; i would not have been able to do this work without the work that which was done before me.

License

AGPL-3.0 license Ezorsia v2 uses the same copyleft license as cosmic and it's predecessor heavenms. It is a copyleft license where if the source is used, in part or in whole, in another project, then the resulting "modified" version must also come under the same license (GNU Affero General Public License v3.0)