Jump to content
DarkMatters Celebrates
20 Years of Wyntertyde in Ancaria

From the Sacred 2 Christmas Island Soundtrack
Click to Open Player!

Lindor

DarkMatters Sacred Specialist Modder
  • Posts

    1,264
  • Joined

  • Last visited

  • Days Won

    46

Lindor last won the day on December 10 2024

Lindor had the most liked content!

Reputation

572 Fine
About Lindor
 
 
  • Rank
    Carbon Necromancer
    Carbon Necromancer
 
Profile Information
 
 
  • Gender
    Array
  • Interests
    Array
 
Previous Fields
 
 
  • Favorite pizza topping
    Array
  • Why do you want to join DarkMatters?
    Array
  • All time best video game ever played
    Array
  • Country
    Array
 
Recent Profile Visitors
 
 
8,509 profile views
 
  1. Sacred 2 Aspects & Spells localization ressources Editor View File # Sacred 2 Aspects & Spells ressources Editor ## Description This is a Sacred 2 Modding tool for allowing to quickly edit all the hash-value-entries in a decoded global.res file that are in some way related to aspects / spells. global.res is part of the localization for i18n and defines all the text strings that are displayed somewhere ingame. It's heavily encrypted, using Huffman-Coding and Hash-Functions, but there exists a tool made by Pesmontis to edit it, S2rw.exe. This tool aims to be a quality-of-life complementary to the usage of S2rw.exe. ## Requirements - Desktop OS (Unix Based (e.g. Linux), Windows or macOS) - Python 3.x Interpreter - If you want to use the results you need S2rw.exe ## Usage #### Editing You don't edit the entries for each hash directly, instead hashes that should have the same value (like e.g. spell name and rune name) are grouped together into categories. The Editing is straightforward. The BASE (default) values come from PFP. #### Saving Any valid changes you make get instantly saved in your RAM. These changes are preserved on changing the selected parameter like language, hero, aspect or spell. They are however not preserved in-between sessions. For that you need to manually click the save button. #### Exporting This tool exports ALL possible hashes that are in some way related to aspects / spells, even those without an entry. If you delete an entry, the hash-value-pair is still exported (with an empty value). This way you can keep track of the values that you deleted. It does NOT export a full decoded.txt, it ONLY exports hash-value-pairs that are in some way related to aspects / spells. The format is the same as S2rw.exe exports to, UTF-16LE-BOM with the syntax HASH - TAB - VALUE for each entry. So in general, you need to manually insert the exported ressources into your global.res files using S2rw.exe or you can use my [other global.res tool](https://github.com/General-Lindor/global.res) for that. ## Support Currently only de_DE and en_EN languages are supported. However you can easily extend the support itself by using the 'scripts/\_\_GEN\_\_/Loka.py' tool to convert a decoded global.res named decoded.txt into a valid res.json file. You can then move the res.json into a folder inside ressources/BASE/yourlanguage and copy it into MODIFIED as well. test Submitter Lindor Submitted 01/15/2025 Category Ice & Blood Miscellaneous  
  2. Well if you try to download the Addendum or EE or D2F etc., it takes you directly to the Google Drive Page where the file is hosted. And the file size was indeed too large to upload it directly. I tried to accomplish the same as Dmitriy and Flix did, I created a new file download, clicked at the button to upload a new file and there inserted the link to the GitHub repo. That failed with an error message. Then I tried to do the same, but with the file uploaded to Google Drive. I wasn't able to upload a new version however, it said 'access denied' in spite of being logged in: So I created a second download instead and went with it. That worked without an error message, it created a file called view[1]. But when I tested it to download, it just downloaded the view[1] as a dummy file directly. It contained some html and js code which, when opened with a browser, would lead to the google drive download. I tried to do change the file extension to htm and html, but it still did not work, it always jsut downloads this automatically generated file instead of linking to the correct page. So I gave up. At least for now.
  3. I created a new quality-of-life tool for modders for quickly editing any hash-value-pairs from a decoded global.res that are related to spells or aspects in some way. It's a convenience tool so you don't have to edit the same group of hash entries again and again and you don't have to search and collect the hashes anymore. Everything further is explained in the README.md. Unfortunately I failed to create a proper dowload for this, so I'll just post the link in this topic instead. Link: https://github.com/General-Lindor/Sacred-2-editor-for-aspect-and-spell-related-localization-entries/releases/tag/Modding It is the first release, so I don't have much testing data. Feel free to use and feedback.
  4. I have a confession to make. For some time I tried to create a file download where the download button leads you to an external link, first I tried with a GitHub Release, second I tried with Google Drive. I wanted it to wark the same like the Addendums or EEs download sections. I tried my best and failed. @gogoblender I'm sorry for having caused any trouble. Please Ignore these Downloads or Delete them: https://darkmatters.org/forums/index.php?/files/file/834-sacred-2-aspects-spells-localization-ressources-editor/ https://darkmatters.org/forums/index.php?/files/file/835-sacred-2-aspects-spells-localization-ressources-editor-actual-download/1 For anyone interested: The GitHub Release link would be https://github.com/General-Lindor/Sacred-2-editor-for-aspect-and-spell-related-localization-entries/releases/tag/Modding I think I'm gonna delete the file from my google drive now and start a topic instead.
  5. Version 0.0.0

    9 downloads

    This download doesn't work. Read more about it here: https://darkmatters.org/forums/index.php?/topic/18959-how-to-upload-files-to-darkmatters-download-section-successfully/#comment-7148108 If you're interested, you can go to this topic to get the actual download link: https://darkmatters.org/forums/index.php?/topic/72796-sacred-2-aspects-spells-localization-editor/#comment-7148109
  6. @Flix @dimitrius154 Hmm. Nearly all LokaIDs for the shadow warriors heavy combat aspect use "SK_HEAVYCOMBAT" except one: "EA_SK_HARDCOMBAT". It's the only major discrepancy I found so far. Are there known ingame UI text bugs for this aspect?
  7. Oh wow. Maybe you're right, nevertheless it is a huge help. The other syntax I was looking for is UI_TT_ATMO_xxxxxx_xxx where the first argument is the character class name and the second is "GOOD" or "BAD".
  8. @Flix @dimitrius154 Does someone of you two know the LokaID Syntax for the Aspect names? Like I know for the lore. focus and masteries, but for the aspects themself? Like 2504570625 Drachenmagie 0756600528 Voodoo 1011308535 Schwerer Kampf ... etc. I'm having a hard time dinding out the LokaIDs. Also I know the LokaID Syntax for the character names, but what about the character descriptions? Like 2237981759, 3157784037 and so on. What are their LokaIDs?
  9. Try one of these: FX_PESTBEULE1 FX_TLECK FX_TSTRAHL FX_ENEMY_TENERGY_FIREBALL FX_DWARFTOSSING FX_WISPWHITE FX_IRRLICHT FX_GEN_FIREBALL_DRAGON4 Some of these have particle scripts and/or materials (images), so you can recolorize them too if you want to. Some of these are so large it could be kinda hillarious
  10. I think I have found the fastest possible 'guessing' algorithm if you know the letter count. Now if you don't know the letter count, one could of course just iterate. But that would be kinda bad, as there's a way to reuse the results of a lower count for higher counts, I just haven't implemented that yet. I used maths to approximate the sweet spot between recursive and iterative guessing. Written in Python, again if someone wants to transpile into C for speed, go for it. Here's my code: RV'ing 8 letters is possible in less than a minute and the number of results is pretty overviewable. 9 letters take a couple of minutes and have like a million results, and you have to manually find the one that makes sense. I'm guessing 10 letters would probably take around half a day, 11 letters few weeks and 12 letters around a year. The best non-guessing-algorithm would probably the one I proposed in the download section in july 2022. But even with that I think it's not humanly possible to go beyond 8 letters due to the sheer amount of posible solutions. Maybe in the future it's possible to go beyond that by using an AI to filter out the garbage, but even then I suppose the non-guessing algorithm would be too slow to go beyond 12 letters in human lifetime. And Loka-IDs typically have around 50 letters. Yeah. I think the brute-forceing known Loka-ID-Syntaxes method is still the best. Issue is what happens when we don't know the syntax. In this case one has to take the puzzle pieces s2rw extracts from s2logic.dll in order to guess the syntax. That's how I found the UI_TT_DM_DM_spellname_NAME syntax.
  11. The wobble is built into the spellclass. FX behave differently for different spellclasses, most famous example being the dragon mage earth wall FX with the spellclass of radiant pillar. Try using "cSpellProjectile" as spellclass.
  12. LOL and what a wierd coincidence that was - it was just random after all
  13. OMG I found it. Each spellname has two global.res entries, one for the spellname and one for the blueprint of the rune. 2219550735 <-> UI_TT_DM_DM_EWIGESFEUER_NAME 1245775004 <-> BLUEPRINT_3131 newBlueprint = { id = 3131, name = "rune_dm_dm_ewigesfeuer", (...) } mgr.createBlueprint(3131, newBlueprint); Never thought about changing the name of the rune when modding spells - good that I was so stubborn to find the Loka-ID
  14. I found that the Loka-ID for hash 2219550735 is UI_TT_DM_DM_EWIGESFEUER_NAME. That's good to knnow the syntax. But still doesn't explain 1245775004.
  15. It's interesting that one of the Thousands of possible Loka-IDs is "_EWG5K8R". This is pretty close to the german spell name "EWIGESFEUER"

×
  • Create New...