Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

Getting started with server/client modifications

Newbie Spellweaver
Joined
Jun 14, 2018
Messages
5
Reaction score
1
Hi all,

I have recently joined this forum, and would like to help out with the decompilations/development of modifications on the client and server files. Is there some sort of tutorial, or can someone point me in the right direction of where to start? I don't mind learning new languages/tools if needs be.
 
Junior Spellweaver
Joined
Dec 21, 2016
Messages
142
Reaction score
248
Here's some basic stuff to start with.

DB Browser for SQLite is what I found to be the best for editing the 'heroes.db3' file for the Client in the Vindictus/sql folder and 'heroesContents.db3' for the Server. Most changes have to be identical in both server and client DB3 files.

The game uses HFS files as encrypted containers for all the game files. The HfsList.rar I included is a list someone uploaded earlier that shows which HFS file has which file inside. The 'hfs.rar' file is the HFS Decrypter. Just place any .hfs file in the same folder and then run the 'unHFS_All.bat'. I recommend copying all of your HFS files from the client and doing a mass HFS Decryption on them so that you have every single file available to look at.

When you unpack all the HFS however you get an issue where most get a .comp extension added to them and you have to manually rename them unless you use a .bat file like this:

rename *.comp *.

Which will just delete all comp extensions automatically.

The best modding plugin to use currently is this which lets you put almost any file into the data folder and have it be read properly. The old version used PerX for injecting which wasn't quite as reliable. You don't have to repack the HFS files if you use this plugin, just drop the files into the /data folder in the correct folder structure.

The config_default.zip includes the .cfg file that the game reads from for certain options you can change like 'fps_max' which I put to 144 FPS. The file goes in '\\VindictusEU\en-EU\data\cfg'.

Some tools that I've found that work is Entspy which lets you edit BSP files like this one http://forum.ragezone.com/f944/rebuilt-colhen-mod-bsp-1142178/ which is a nice map modification which adds every single NPC from the other towns to Colhen. You can use Entspy to edit things and even execute commands like 'command,Command,exec my_binds.cfg; cc_system_message Applying Binds from my_binds.cfg,0,-1' which I edited into a 'OnStartTouch' entity and made it so that you can refresh the 'my_binds.cfg' file I placed in my 'data/cfg/' folder to test binding commands. This let me refresh any changes I made the .cfg file by touching that entity without having to reset the game.

'heroes_text_english.txt' or 'heroes_text_english_eu.txt' is what is used for every single line of text the client reads. There will be certain items that will be difficult to find in the 'ItemClassInfo' section of the DB3 because they're badly named. Example: You are trying to find the item name for 'Eflame Heart' but you can't find that anywhere. Go into 'heroes_text_english.txt' and type in 'Eflame Heart' and it will point to a item called 'HEROES_ITEM_NAME_SPIRIT_ESSENCE_YELLOW' and then you can just spawn 'spirit_essence_yellow'. You can create new item names by adding new HEROES_ITEM_NAME's to the file. This file goes in the 'data\resource\localized_text\english'.

You can edit motion files and then place them in the '\data\scripts' folder. The 'weapon_javelin.txt' and 'projectile.txt' I included makes it so that all the throwing spears are basically instant and do not have a dropoff. They go extremely fast and completely straight. You can edit other interesting files like 'item_data.txt' or 'projectile.txt' as well. All the player motion files go into '\data\scripts\actionstate' like 'player_action_state_fiona.txt'.

Some interesting mods that are worth a look at are http://forum.ragezone.com/f944/vindictus-fashion-build-v1-69-a-1143526/ which the creator was able to edit the XML files in the Server files so that they were able to add custom shops to the Marketplace. The XML files are located on the server VMWare in the folder 'C:\Server\zh-tw-x-gm\Data\XML' and you can edit them with Notepad++.

The game packs animation files into the .mdl files. You can use to decompile .mdl files like 'pc_fiona_actor_motion.mdl' and you get the '.qc' file and the '.smd' files which include all animations. I haven't been able to recompile the mdl however because of the walkframe not compiling correctly.

BSP SRC let's you view any BSP files you have. It has issues seeing textures however so it's not super good at actual editing but it is useful to use with EntSpy because you can use BSP SRC to view the map and look at all the entites and then make the edits in EntSpy.

I personally use this mod and then use the Rainy version of Colhen. The problem however is that it has an annoying screen effect where the rain creates ripples on the screen. If you go and edit the 'screen_rain.efx' file and change all the "material" to "effects/invisible" then you can remove it. Then place the file in 'data/effects'. There's also a Malina version .

You can also change the music by using this mod to learn the file structure of 'data\sound\bgm' and then the name of the .mp3 files you want to change.

Lastly you should build off of this Bin for the EU version http://forum.ragezone.com/f944/release-delia-server-files-1145005/ which includes Delia. Also this XML modification for Season 3 http://forum.ragezone.com/f944/updated-storyline-xmls-1142177/
 

Attachments

You must be registered for see attachments list
Last edited:
Upvote 0
Newbie Spellweaver
Joined
Jun 14, 2018
Messages
5
Reaction score
1
Thanks for the detailed reply! :)

I've already messed around a bit with the db3 files, currently trying to build a list of which records need to be duplicated in the client when any changes are made to the server db.

I will attempt to play around with the HFS files and modding once I am happy with the stability of my server, but they are all interesting reads. I will probably not modify models/animations just yet, since I'm just a developer and the artsy stuff is out of my league :/

I was already eyeing the mod you sent, in fact it is on top of my list :p I can't remember how many times me and my friends would wish for all the NPCs to be in one place and not waste more times running around the cities than actual questing.

Regarding the server, when people mention BINs they mean the service dlls, right? I saw that people are trying to update to Miri/Post-RISE bins, but currently do not understand this "upgrading" process. I read in a thread that someone was comparing the expected message lengths, and would add variables to the request class in order to match the expected length, and that fixed some issues. I would like to know more in detail if you can elaborate.

Right now I have a Hyper-V VM running a server pre-delia bins, and I managed to get the cash shop to work and reduce all the items' price to 0. The only problem I have is that I randomly get kicked after a long time idle, I don't know what is causing it exactly, but it's not that big an issue, since so far (jinx) it only happened in town.

Next up is what you suggested, I will update the server bins to the ones from the delia thread, and, together with my friend, go through another testing process to see what changed/was fixed/broke from the older bins.
 
Upvote 0
Junior Spellweaver
Joined
Dec 21, 2016
Messages
142
Reaction score
248
If the game kicks you out with a message about server delayed then it's likely your antivirus firewall. I use Avast and the firewall that comes with it caused issues with the server. I just disabled it and instead used the default Windows Defender Firewall without issue.

For duplicating the DB3 basically everything needs to be duplicated except for certain things like the 'MonsterInfo' which controls the enemies HP/ATK/DEF, you only need to have this changed in the client DB3. Just exit the game and join back in for client DB3 changes to take effect.

You already changed the price of cash shop items to 0 but you can alternatively just add the item 'tir_coin' to your inventory and just buy cash shop items that way too.

The Delia bin that I linked includes quite a bit of files for both client and server. It also has its own DB3 files so any changes you do now will have to be re-added to the new DB3 files. So the earlier you upgrade to Delia bins the easier it will be.
 
Last edited:
Upvote 0
Newbie Spellweaver
Joined
Jun 14, 2018
Messages
5
Reaction score
1
No firewalls currently active, I switched off both client and vm antivirus, and put the vm in my router's DMZ. It happens rarely and so far each time I was either tabbed out or afk. I will test a long gaming session soon and see if it happens mid dungeon.

I did try pushing the tir_coins to inventory using the HeroesOpTool, but balance always remains zero. I most likely still need to change some localisation values in the dbs.

Also, can you point out where the client files and db3 files are in the link you sent? Are they further down the thread and perhaps i missed them? The OP has only posted a zip with various dll, which I assume go in the server bin folder.
 
Upvote 0
Newbie Spellweaver
Joined
Jun 14, 2018
Messages
5
Reaction score
1
Lol derp, I completely missed that.

Server is updated :)

However, I tried creating a new account, and the game will crash with no error whatsoever when I try to login to town. Even the client dump files don't show anything. Creating a delia on the old account (pre delia bins) works fine. Will try to troubleshoot further, there are some suggestions near the end of that thread which seem to have my same problem, however their solutions do not apply.
 
Upvote 0
Back
Top