Skip to content

Posts from Where should I start with modding?

No ratings yet — be the first to rate!
User Avatar
Auto-translated
It's a bit easier in PMs because you can't describe such a wide range of questions, and you don't have to worry about the style of the guide. Besides, screenshots are very inconvenient on the forum. In general, here are some recommendations and life hacks for working with the editor: * It is advisable to keep all available tables open, except for those that do not reference files. I will provide a list later. * The list of tables used is configured separately for each window. You can create up to ten windows via View => GameDatabase => NewWindow. Clicking on their border with the right mouse button will open a list of tables; select the ones you need. This way, you can set up ten combinations for work. In one, I have all the tables for the UI; in another, RPGStats and creature stats; in the third, all the tables related to Character files (including textures and skeletons), and so on. And, of course, the main one with all the tables in general. You can switch between windows via View => GameDatabase => Window Number. * For correct operation, I recommend closing open mods immediately so that files are saved to the root, and not to the mod's cache (which will then be automatically deleted). The application name at the top should not contain a string like [UserMods/MyMod/123.h5u]. If it does, click Resource => Close MOD. After that, all changes will be saved to the GameFolder/data/ folder. * The editor reads changes only from data/, and archives are only *.pak. * Information about the file tree is stored in the index.bin file. You cannot delete a link from it; you can only add one. Otherwise, you need to delete the old one and start over. All links are saved in index.bin after creating the referenced files, but empty folders disappear automatically (!). * You cannot create files with the same names. * All files are created by right-clicking on the file tree of the table => New Object. The object will be created in the currently selected folder. If you need it in the root, use New Root Object. The same applies to folders, only Folder. * You can rename and delete files manually, but the editor will see empty links in index.bin to the old missing files. * Game files are mainly xdb (a version of xml), that is, with tags. The editor conveniently breaks down the tags into object classes, which are described in types.xml and can be changed as desired. The editor itself creates the necessary structure of all tags for xdb, based on the content of the object graph. * The graph has different types, which differ in possible values and usage. The main ones are described in the First Volume of the complete guide to the map editor in my vk.com/h5mmmapeditors group. * Each table in the editor corresponds to its own object type, that is, a set of graphs in the properties. * Graphs support copy, paste, and selection. You can select using Shift (from A to B) and Ctrl (A + B). After pressing Ctrl+C, the buffer will contain NOT the values of the graphs, but the path through the tags + the value. You can test this by pasting it into Notepad. This leads to a very useful thing: if you copy the contents of such a buffer into another object's properties (even without selecting anything, just clicking once in any field), the graphs will be automatically filled in (if the tag names match). For example, if you copy the Model and Effect graphs from AdvMapBuildingShared using Ctrl and paste them into AdvMapStaticShared, the values from the original will be inserted into the corresponding fields. * There are built-in type objects; links to them are not passed (because the object's properties are described in the parent), but we won't talk about that today. * When working with a modifiable list, the following hotkeys are useful: + - expand an element, - - hide an element, Insert - insert an element, Delete - delete an element. * I highly recommend that you familiarize yourself with the First Volume of the guide to the editor for a general understanding. * Many tables have a very convenient preview in the editor. For Character, Model, there is a model preview window. You can set up the ambient lighting, create an animation sequence (the grid is removed by pressing G), and put it on play - the editor will play everything sequentially. For AdvMapObjectLink, there is a preview of the adventure map object with the ability to generate an icon and draw cells (Ctrl + the desired mask). For AdvMapDesc and DialogScene, there is a preview and editing of the map; for all UI tables, there is a preview of the interface with the ability to move elements, and so on. You will gain experience, click on everything - and you will find everything. This is definitely not everything that the editor offers; this is just what I remembered right now. All of this will be systematized, supplemented, and included in the third volume of the complete guide to the editor.
С уважением, }{0TT@6bI4
_________________
Группа картостроителей
Там ответы на вопросы, руководства, гайды и прочее
Discord-сервер "Герои 5: S.T.A.L.K.E.R"
Сервер по модификации "Герои 5: S.T.A.L.K.E.R"
_________________
In reply to }{0TT@6bI4
Auto-translated
}{0TT@6bI4
This is definitely not everything the editor offers; it's just what I remembered right now.
Thank you, the idea of using the clipboard is very helpful; I need to test it. Copying data from Excel would be great, as manually changing the numbers each time is not very convenient. On the other hand, my tables are arranged a bit differently, so I need to test it.
I understood about saving data right after the first time all the changes disappeared. By the way, you wrote it incorrectly; the editor doesn't actually modify the data.pak file. Instead, it creates files in the mods folder, and when I pack the mod into name.h5m, it works from the maps folder. If I remove my mod from the maps folder, all the values revert to the vanilla state, which indicates that the data.pak file remains untouched.

Added 10 minutes ago
I've already reviewed all the available tables and realized that a large part of the game is not accessible for editing using this method. However, overall, you can do quite a bit of work with the game. I hope the Heroes community is still active so that we can test the balance improvements later (from my perspective).
In general, I believe that you shouldn't break what already works well. However, when balancing, I encountered the problem that you need to not only try to improve a specific unit but also ensure that the overall strength of the faction remains on par with the others. Sometimes, I even have to make some units weaker, just for the sake of balance, and others stronger. I could use testers who could test hypothetical battles between factions with equal calculated strength. I've created a map for testing, but it takes a considerable amount of time to test everything. If anyone is interested, I can share the mod and the testing map. We need to check the losses incurred by each faction against other factions. Statistically, this will allow us to identify shortcomings in my work and correct them. For now, I'm only testing unupgraded creatures.

Ideally, the Barbarians should defeat everyone because they immediately have Blood Fury active from level 1 and don't use magic. However, many other races are designed not only around units but also around using magic and other unique features. Therefore, it's normal if the Barbarians and Haven are at the top.
User Avatar
Auto-translated
I didn't say that the data.pak files are changing; don't put words in my mouth. I said that they are saved in the game's data folder when working with closed mods. When working through the index.bin map, a flawed map with incomplete information is created. Should I explain in detail?
С уважением, }{0TT@6bI4
_________________
Группа картостроителей
Там ответы на вопросы, руководства, гайды и прочее
Discord-сервер "Герои 5: S.T.A.L.K.E.R"
Сервер по модификации "Герои 5: S.T.A.L.K.E.R"
_________________
User Avatar
Auto-translated
I immediately recall a joke: I was preparing chicken according to your recipe, but instead of chicken, I used fish, instead of pepper, I used paprika, instead of onion, I used bananas, etc. The result was an inedible mess, so the author gets a thumbs down.

95% of the editor's tables are available for modification; I don't understand what you're referring to.
С уважением, }{0TT@6bI4
_________________
Группа картостроителей
Там ответы на вопросы, руководства, гайды и прочее
Discord-сервер "Герои 5: S.T.A.L.K.E.R"
Сервер по модификации "Герои 5: S.T.A.L.K.E.R"
_________________
In reply to }{0TT@6bI4
Auto-translated
}{0TT@6bI4
It immediately reminds me of a joke: I was following your recipe to cook chicken, but instead of chicken, I used fish, instead of pepper, I used paprika, instead of onion, I used bananas, etc. The result was an inedible mess, so I gave the author a thumbs down.

95% of the editor's tables are available for modification; I didn't understand what you were referring to.
Apparently, I misunderstood the point about the data. The joke is certainly relevant, and I didn't mean to offend you. Regarding the inaccessibility of data, I couldn't find where the scripts for perks like "Uncover Secret" and "Scholar" are modified. I also didn't see if there's any probability distribution for perks or if they always drop randomly. I didn't find where the file for the "Vigil" skill (of the Knight) is located. Also, I couldn't find where the data for modifying core skills like attack, defense, logistics, and magic resistance is stored. I did find information about combat machines, but I don't remember if all the parameters are configurable there.
There's a lot of information about all of this, including tables with names and lists, but many of them are not modifiable and are simply provided for informational purposes rather than for modding.

For example, there are two skills in the game: "Scholar" and "Battle Frenzy." Which skill would 90% of players choose? I think it's obvious that in 90% of cases, "Battle Frenzy" would be the more profitable choice. Therefore, I would like to revitalize the underused skills so that there is more room for building different character builds in the game. For single-player, useless skills are fine, but for Multiplayer, the usability and usefulness of skills are much more important.

I would also like to delve into editing the parameters of the "Ritual Pit" (the building where you can sacrifice units and, in return, receive an increase in Minotaurs and Furies). In Multiplayer, I have never used this building, although it could be balanced and made more useful. I found a file with the building's description, but there were no modifiable parameters in it, which means all the information is stored elsewhere.
User Avatar
Auto-translated
The implementation of skill and spell mechanics, etc., is not contained in files, but in the executable file.
С уважением, }{0TT@6bI4
_________________
Группа картостроителей
Там ответы на вопросы, руководства, гайды и прочее
Discord-сервер "Герои 5: S.T.A.L.K.E.R"
Сервер по модификации "Герои 5: S.T.A.L.K.E.R"
_________________
In reply to }{0TT@6bI4
Auto-translated
}{0TT@6bI4
The implementation of mechanics for skills, spells, etc., is not in files, but in the executable file.
I understand that regarding magic and the executable file, you need to contact the developers of Heroes of Might and Magic 5.5, as they have created a very good mod with a huge number of gameplay improvements. Do you think that without programming knowledge, there are options to work with this data, or does it require professional programming skills?
User Avatar
Auto-translated
You can try; there is disassembled code, and you can make changes to it. For example, you can change a certain value. What did you change? Who knows. But Heroes of Might and Magic III½ has a very extensive database of patches on its GitHub branch.
С уважением, }{0TT@6bI4
_________________
Группа картостроителей
Там ответы на вопросы, руководства, гайды и прочее
Discord-сервер "Герои 5: S.T.A.L.K.E.R"
Сервер по модификации "Герои 5: S.T.A.L.K.E.R"
_________________

Statistics

Welcome our newest member: Emil