I just checked and Conduit of Whispers appear without any prefix/suffix at all. It can be fixed? At least make it random?
That is not really a bug as this is a save file editor. So if you want affixes, you will need to include them with the edit. No idea how this is done with this tool (or whether it can), but that is the only solution.
Looked into this for a bit.
You can put in the unique prefixes, but the editor doesnāt have any smarts about this yet. Soā¦ youāre going to have to do a bit of manual & detective work.
TLDR:
Just set the prefix or suffix of the item to one of these:
Prefix
- records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03a.dbr
- records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03b.dbr
- records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03c.dbr
- records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03d.dbr
- records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03e.dbr
- records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03f.dbr
- records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03g.dbr
- records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03h.dbr
- records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03i.dbr
Suffix
- records/items/lootaffixes/suffixunique/d101_conduitofeldritchwhispers_01a.dbr
- records/items/lootaffixes/suffixunique/d101_conduitofeldritchwhispers_01b.dbr
- records/items/lootaffixes/suffixunique/d101_conduitofeldritchwhispers_01c.dbr
- records/items/lootaffixes/suffixunique/d101_conduitofeldritchwhispers_01d.dbr
- records/items/lootaffixes/suffixunique/d101_conduitofeldritchwhispers_01e.dbr
Setting a prefix or suffix
Find the location of the item you want to change with the āfindā command, like so:
> find "Eldritch Whispers"
Conduit of Eldritch Whispers: inventory-sacks/0/inventory-items/80
Change the prefix like so:
set inv/0/items/80/prefix records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03a.dbr
How do I tell which prefix/suffix does what?
You can use the editor to explore the game database to find out what those affixes actually do.
> db records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03a.dbr
records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03a.dbr
<omitted>
modifiedSkillName1: records/skills/playerclass03/sigilofdestruction1.dbr
modifierSkillName1: records/skills/itemskillsgdx1/skillmodifiers/legendarygdx1/eldritchwhispers/set1_occultist1.dbr
Looks like this says it modifies a skill, āsigilofdestruction1.dbrā. It isnāt entirely clear what that is, soā¦
> db records/skills/playerclass03/sigilofdestruction1.dbr
<omitted>
skillDisplayName: Sigil of Consumption
<omitted>
Great, so that prefix changes something about the Sigil of Consumption.
How the heck did you find those affixes in the first place?
First, examine the itemā¦
> show inv/0/items/80
inventory-sacks/0/inventory-items/80
Conduit of Eldritch Whispers
<omitted>
basename : records/items/gearaccessories/necklaces/d113c_necklace.dbr
<omitted>
So item is mostly defined by this db record with quite a long path. Does any other record refer to this item?
> q value~records/items/gearaccessories/necklaces/d113c_necklace.dbr
<omitted>
records/items/loottables/gearaccessories/tdyn_craft_necklace_d101c_conduiteldritchsecrets.dbr
lootName1: records/items/gearaccessories/necklaces/d113c_necklace.dbr
prefixTableName1: records/items/lootaffixes/prefix/prefixtables/prefixd02_conduiteldritchsecrets_occultist.dbr
suffixTableName1: records/items/lootaffixes/suffix/suffixtables/suffixd02_conduiteldritchwhispers.dbr
<omitted>
0-3 / 3 matched records
So 3 records have some field containing that references our item of interest. One of them happens to be a loot table! Letās take a look at the possible prefixes.
> db records/items/lootaffixes/prefix/prefixtables/prefixd02_conduiteldritchsecrets_occultist.dbr
<omitted>
randomizerName1: records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03a.dbr
randomizerName2: records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03b.dbr
randomizerName3: records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03c.dbr
randomizerName4: records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03d.dbr
randomizerName5: records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03e.dbr
randomizerName6: records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03f.dbr
randomizerName7: records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03g.dbr
randomizerName8: records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03h.dbr
randomizerName9: records/items/lootaffixes/prefixunique/d101_conduiteldritchsecrets_03i.dbr
<omitted>
Not sure if that made any sense to you. If it all looks like a bunch of gibberish, you can always just manually set the affixes onto the item, then start the game to check how it changed the item.
Hope this helps!
Thanks a lot!
Diablo 2 mod items implented ?
Iām not familiar with the mode, but the editor does support mods that comes with its own db and localization files.
Youāll want to use the āmod pickā command to tell the editor which mods you want to use. After that, the editor ought be to able to create items defined in the modās database. There isnāt a whole lot of documentation for this feature. The related commands are listed here.
hmmm doesnt seem to find the items
āitem could not be constructedā
Lemme take a look.
Where can I get the mod? A quick google search didnāt turn up any usable links somehow.
Reign of terror , mod that makes your game look like D2 , has a database also
Howdy!
A new build is available! The editor can be found at the usual link or via a self-update.
The editor is now ever so slightly less dumb about finding database files. This makes mod supports better! (Hopefully without breaking anything in the process.)
This was minimally tested against the Diablo 2 mod. But the editor is now able to do this:
> set inv/1/items "deathspade"
Item placed in inventory-sacks/1/inventory-items/23
Deathspade
augment-name : ""
augment-seed : 0
basename : records/items/d2items/gearweapons/axe1h/c002_axe.dbr
Note that the ābasenameā field indicates that this is a ād2itemā.
Lemme know if there are any issues with this!
Hi Odie,
I downloaded the latest version today to use with my GoG based copy of GD. Iām using the latest 64-bit JVM and running the cmd as administrator). The app runs, however it spews out a bunch of errors that look like it is looking for the steam directories, despite the fact Iāve explicitly set the savedir and gamedir paths to where it should be looking.
When I run savedir I get the following (as I should) - C:\Users\PJ\Documents\My Games\Grim Dawn\save\main
Gamedir shows - C:\Program Files (x86)\GOG Galaxy\Games\Grim Dawn
Diag shows it can find everything it needs - ? JVM version: 1.8.0_241-b07
? Game directory exists
? File exists: C:\Program Files (x86)\GOG Galaxy\Games\Grim Dawn\database\database.arz
? File exists: C:\Program Files (x86)\GOG Galaxy\Games\Grim Dawn\resources\Text_EN.arc
? File exists: C:\Program Files (x86)\GOG Galaxy\Games\Grim Dawn\resources\Items.arc
Looks good! The editor should be ready to go!
After the errors I get to edit my character. I can then do things such as set iron (though I canāt rename my character)
Is the issue due to the latest GD update or something Iāve missed in setup ? Note that JVM is not part of my path settings - could this be the problem ? Would greatly appreciate guidance in how to resolve and avoid the errors messages at startup (maybe this will resolve the issue of not being able to rename a character too !)
In case it helps here is a partial the screen dump I get at app startup
C:\Users\PJ\Downloads>gd-edit
Caught exception: The system cannot find the file specified.
com.sun.jna.platform.win32.Win32Exception: The system cannot find the file specified.
at com.sun.jna.platform.win32.Advapi32Util.registryGetStringValue (Advapi32Util.java:555)
gd_edit.game_dirs$get_steam_path.invokeStatic (game_dirs.clj:23)
gd_edit.game_dirs$get_steam_path.invoke (game_dirs.clj:18)
gd_edit.game_dirs$standard_game_dirs.invokeStatic (game_dirs.clj:56)
gd_edit.game_dirs$standard_game_dirs.invoke (game_dirs.clj:44)
gd_edit.game_dirs$get_game_dir_search_list.invokeStatic (game_dirs.clj:75)
gd_edit.game_dirs$get_game_dir_search_list.invoke (game_dirs.clj:67)
gd_edit.game_dirs$get_game_dir_search_list.invokeStatic (game_dirs.clj:72)
gd_edit.game_dirs$get_game_dir_search_list.invoke (game_dirs.clj:67)
gd_edit.game_dirs$get_game_dir.invokeStatic (game_dirs.clj:149)
gd_edit.game_dirs$get_game_dir.invoke (game_dirs.clj:147)
gd_edit.game_dirs$get_file_override_dirs.invokeStatic (game_dirs.clj:174)
gd_edit.game_dirs$get_file_override_dirs.invoke (game_dirs.clj:171)
gd_edit.game_dirs$get_file_and_overrides.invokeStatic (game_dirs.clj:208)
gd_edit.game_dirs$get_file_and_overrides.invoke (game_dirs.clj:195)
gd_edit.inventory$bind_texture_slot_dims_fn.invokeStatic (inventory.clj:84)
gd_edit.inventory$bind_texture_slot_dims_fn.invoke (inventory.clj:72)
gd_edit.inventory$fn__14766.invokeStatic (inventory.clj:103)
gd_edit.inventory/fn (inventory.clj:101)
clojure.lang.ARef.notifyWatches (ARef.java:81)
clojure.lang.Atom.reset (Atom.java:157)
clojure.core$reset_BANG_.invokeStatic (core.clj:2373)
clojure.core$reset_BANG_.invoke (core.clj:2368)
gd_edit.command_handlers$load_settings_file.invokeStatic (command_handlers.clj:1233)
gd_edit.command_handlers$load_settings_file.invoke (command_handlers.clj:1229)
gd_edit.core$initialize.invokeStatic (core.clj:491)
gd_edit.core$initialize.invoke (core.clj:487)
gd_edit.core$start_editor.invokeStatic (core.clj:535)
gd_edit.core$start_editor.invoke (core.clj:532)
gd_edit.core$_main.invokeStatic (core.clj:567)
gd_edit.core$_main.doInvoke (core.clj:549)
clojure.lang.RestFn.invoke (RestFn.java:397)
clojure.lang.AFn.applyToHelper (AFn.java:152)
clojure.lang.RestFn.applyTo (RestFn.java:132)
gd_edit.core.main (:-1)
20-02-29 16:19:35 PaulsPC INFO [gd-edit.game-dirs:?] -
gd_edit.core.main
ā¦
gd-edit.core/-main core.clj: 549
gd-edit.core/-main core.clj: 567
gd-edit.core/start-editor core.clj: 535
gd-edit.core/initialize core.clj: 491
gd-edit.command-handlers/load-settings-file command_handlers.clj: 1233
clojure.core/reset! core.clj: 2373
ā¦
gd-edit.inventory/fn inventory.clj: 103
gd-edit.inventory/bind-texture-slot-dims-fn inventory.clj: 84
gd-edit.game-dirs/get-file-and-overrides game_dirs.clj: 208
gd-edit.game-dirs/get-file-override-dirs game_dirs.clj: 174
gd-edit.game-dirs/get-game-dir game_dirs.clj: 149
gd-edit.game-dirs/get-game-dir-search-list game_dirs.clj: 72
gd-edit.game-dirs/get-game-dir-search-list game_dirs.clj: 75
gd-edit.game-dirs/standard-game-dirs game_dirs.clj: 56
gd-edit.game-dirs/get-steam-path game_dirs.clj: 23
com.sun.jna.platform.win32.Advapi32Util.registryGetStringValue Advapi32Util.java: 555
com.sun.jna.platform.win32.Win32Exception: The system cannot find the file specified.
HR: -2147024894
gd-edit 0.1.9-SNAPSHOT [build 749177e]
save directories:
C:\Users\PJ\Documents\My Games\Grim Dawn\save\main
game directory:
C:\Program Files (x86)\GOG Galaxy\Games\Grim Dawn
Please choose a character to load:
Caught exception: The system cannot find the file specified.
- BobyourUncle (local save)
com.sun.jna.platform.win32.Win32Exception: The system cannot find the file specified.
at
com.sun.jna.platform.win32.Advapi32Util.registryGetStringValue (Advapi32Util.java:555)
gd_edit.game_dirs$get_steam_path.invokeStatic (game_dirs.clj:23)
gd_edit.game_dirs$get_steam_path.invoke (game_dirs.clj:18)
gd_edit.game_dirs$get_steam_library_folders.invokeStatic (game_dirs.clj:30)
gd_edit.game_dirs$get_steam_library_folders.invoke (game_dirs.clj:27)
gd_edit.game_dirs$standard_game_dirs.invokeStatic (game_dirs.clj:56)
gd_edit.game_dirs$standard_game_dirs.invoke (game_dirs.clj:44)
gd_edit.game_dirs$get_game_dir_search_list.invokeStatic (game_dirs.clj:75)
gd_edit.game_dirs$get_game_dir_search_list.invoke (game_dirs.clj:67)
gd_edit.game_dirs$get_game_dir_search_list.invokeStatic (game_dirs.clj:72)
gd_edit.game_dirs$get_game_dir_search_list.invoke (game_dirs.clj:67)
gd_edit.game_dirs$get_game_dir.invokeStatic (game_dirs.clj:149)
gd_edit.game_dirs$get_game_dir.invoke (game_dirs.clj:147)
gd_edit.game_dirs$get_gdx2_dir.invokeStatic (game_dirs.clj:164)
gd_edit.game_dirs$get_gdx2_dir.invoke (game_dirs.clj:161)
gd_edit.game_dirs$get_file_override_dirs.invokeStatic (game_dirs.clj:176)
gd_edit.game_dirs$get_file_override_dirs.invoke (game_dirs.clj:171)
gd_edit.game_dirs$get_file_and_overrides.invokeStatic (game_dirs.clj:208)
gd_edit.game_dirs$get_file_and_overrides.invoke (game_dirs.clj:195)
gd_edit.command_handlers$load_localization_files.invokeStatic (command_handlers.clj:966)
gd_edit.command_handlers$load_localization_files.invoke (command_handlers.clj:964)
gd_edit.command_handlers$load_db_in_background$fn__17896.invoke (command_handlers.clj:995)
clojure.core$binding_conveyor_fn$fn__5476.invoke (core.clj:2022)
clojure.lang.AFn.call (AFn.java:18)
java.util.concurrent.FutureTask.run (:-1)
java.util.concurrent.ThreadPoolExecutor.runWorker (:-1)
java.util.concurrent.ThreadPoolExecutor$Worker.run (:-1)
java.lang.Thread.run (:-1)
Please choose a character to load:
- BobyourUncle (local save)
Howdy!
At first glance, it looks like itās throwing an exception when it was trying to read the install path for steam from the windows registryā¦ I guess that means you donāt have steam installed at all? Iāll try to fix this tomorrow. =)
Hi - I donāt have steam at all, just the GoG version ! Thanks for looking in to it so quickly !
Hey Odie, Iāve used this editor before, it worked like a charm but now, the updated version doesnāt work. I still have the older version which works fine but not the latest version.
It just starts and exits in under a sec, like a program with no pause function.
Please HELP!!!
cant find Runes
Hi @MSoniSama
I canāt reproduce the problem youāre describing. Does manually downloading the editor make this go away?
A wild New Version has appeared!
The editor will now silently accept the fact that steam may not be installed without constantly yammering about it.
Lemme know if you run into any more problems!
cant find Runes
Can you show me the exact command youāre running and its output?
Same issue here, have never used this editor before though.
Not great with cmd, but had a crack at trying to manually open it from cmd:
āC:\Users\alexm>C:\Users\alexm\Downloads\gd-edit.exe
Error occurred during initialization of VM
Could not reserve enough space for 2097152KB object heapā
Not sure if this helps
That looks like itās saying it doesnāt like it that the program is trying to reserve 2GB of memory.
This matches a change I made in the last published version that says it could (but not always) use up to 2GB of memory.
Maybe this has something to do with the version of java youāre running?
Can you run
java -version
on the commandline and see what the output is?
It should say something like this:
java version "1.8.0_112"
Java(TM) SE Runtime Environment (build 1.8.0_112-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.112-b15, mixed mode)
If it says 32 bit, that might be the problem. In that case, can try installing the 64 bit version?
Thanks!