Lightweight Mod for Speeding Up the Leveling Process

The reason why it is not working with GI but /basemods, is that the order of overwriting is different between the two.

For GI it probably works like this: base game < crucible < mod
For /basemods: base game < mod < crucible

So for GI, my modified files overwrite the crucible, which is why it won’t work. You can only get it working by deleting these files/folders from the installation folder of my mod (…/Source/Non Lightweight/database/records/) and then fully reinstalling it (as in deleting dom):

  • scriptentities
  • creatures/defenses
  • creatures/npcs - everything except merchants folder

Not sure if this works, though. Can’t do more about that.


You can check out the guide here, if this is what you meant!

I never noticed this. Popping multiple sphere (in my testings mostly legendary spheres), they always yield the expected loot - popping 4 drop like 4 to 6 uniques, while 1 only 0 to ~1.

I also tried to drop them onto merchants, NPCs, the riftgate, a note, and they always popped. Note, loot spheres can not be destroyed next to a stash, they won’t pop then, maybe you tried it close to one?

I also tried it with the drop key, of which existence I did not know of, same result. I might play through my other mod Nydiamar soon, which also has these spheres, and will then play around a bit more, maybe I can reproduce it there instead!

Sorry, I already followed that guide, been playing for 100+ hours with it, works well. I didn’t use the full feature version because I don’t want to unbalance the game, just save time. I’d like to upgrade if it’s possible to enable console & use your recent help for disabling those features for a hard modded install. Ultimately shifting the saves & paths for my in-progress char was too time consuming & added too many complications to justify for a mod intended to save time.

As for the loot orbs:
I have an older computer, so it’s likely dependent on lag. I already have to deliberately space inputs in combat or the game will drop them. This is also why it may not be reproducible, and why slowing down and spacing out my actions helps prevent it.

My thinking is it’s not a bug or logic error but a result of the engine. It occurs more in system intensive situations and concurrent function calls, but not always. I imagine the call stack should usually resemble:

drop orb
destoy item confirmation ui
orb loot spawn
component replacement per component
pathing & movement
interaction, npc & dialogue ui

Except the processing lag jumbles it up and doesn’t call the spawn scripts hooked to item destruction and/or misses some component replacements. Similar deal with the stack spawns, if it doesn’t multiply/sum the spawns and rather calls the script for each instance.

I am a very novice programmer and don’t have much free time to pull logs/parse the actual scripts to give weight, just a gut feeling, sorry.

Simply use these archives after installing the full feature version through the /basemods method to disable the God Events (I guess why you want the console?), as well as enabling the Mystic River for Normal & Elite. All other kinda unbalanced features can be ignored. The dog inside the hideout has all Ultimate dialog options shown on lower difficulties. Though max level will still be 125.

Faster Leveling (N) archives.zip (59.9 KB)


Hmm, can’t really do anything about the loot spheres. I’m kinda clueless, so no idea if there would be a better way to do them.

If you are interested, when I released them some time ago, I also wrote how I did them:

When the player destroys a sphere, some function gets called that spawns a breakable loot container right on top of them, and then instantly breaks it to drop the loot.

This function also gets called when the player:

  • Receives a sphere as a reward directly or through dialog
  • Drops one from an enemy or chest
  • Combines two stacks inside their inventory
  • Uses the dialog option to pop the last available sphere (stacks somehow do not call the function)
  • Loads into the world for the first time
  • Puts one inside their stash

Now we only want the function to pop something when they actually destroy one by dropping it.

For the first three cases, we check if the amount of spheres the player previously had were reduced or not, since this would only be the case if they destroyed one by their own. The function that gets called can only count the current amount they have after destroying the sphere(s), so we need a count from before that point to compare to — which we get on loading into the world, on picking up a sphere (to update the count) and on leaving the stash area (since they could put some away).

For the dialog option, we count the spheres each time and ignore the dialog pop for the last sphere, so it pops through the new function instead (or else there would be two pops).

For the stash we need to disable the function while the player is next to it, which we do through a trigger that also enables the function again when the player leaves the stash area. There seems to be no way to differentiate between putting something into the stash and destroying something — this unfortunately means that if the player destroys one next to it, nothing happens.

For the loading into the world, we just add a short downtime of one second for the function.

Then we also got the problem with popping stacks of spheres instead of individual ones, since the function only gets called once. Solved by looping the pops for the difference of the previous and current amount of spheres the player has.

Lots of opportunities for it to not work, or worse, to be exploitable — which is why I had not done it previously.

Thank you very much for the help, very much appreciated. As for the orb loot, I wouldn’t bother. The function being disabled near the stash may explain 60-80% of the disappearing orbs, and the rest can be mitigated. I don’t expect you to compensate for my crap PC, I thought I’d just bring it up in case their was a known solution / user error, which may indeed be the case.

I also use grim internals. I want to play in Crucible mode. Many different solutions have been suggested. I didn’t understand how to do it. Can you tell me what should I do from the beginning?

I think playing it through GI is too much trouble with a high risk of stuff still not working properly (due to my fault). So if you want to also play Crucible, you should rather play the mod through the /basemods method. This is very easy to set up, simply follow the guide I linked perviously: This guide I’m talking about.

You current characters would still be saved as Custom Game characters. To port them over:

  1. Go to Documents/My Games/Grim Dawn/save/ and do a backup of that save folder
  2. Go into each of your characters folder inside user and rename maps_world001.map to levels_world001.map
  3. Copy the characters inside user over to main
  4. Copy the contents (transfer.gst and so on) of the folder named after this mod (e.g. Faster Leveling (N)) outside of it (inside the save folder), overwrite everything — Note, this overwrites all your base game stuff (shared stash, transmog)! Therefore the backup!
  • Alright, that somehow does not work, you might have to put what you want into your personal stash before moving
  1. Remove the in-Mod flag of all your modded characters through GD Stash

That’s it, probably. Loading the base game now also loads the mod. If you no longer want to play this way, simply remove the /basemods launch option.

2 Likes
Type this: character.GrantPlayerToken ULTIMATE_MECHANIC_DEACTIVATED

What content exactly does writing this code disable? Is it just corruption events (reanimator, zombies etc.)?

It disables the trigger for all possible God Events, including the good ones. All other changes to the game can simply be ignored (such as the summoning mechanic), I think — except the increased level cap and the slightly increased Ultimate difficulty.


EDIT 29th December: Updated the Diablo 3 Classes to DE.

I’d like to see the affixes for uniques work with Dawn of Masteries. In your post you specifically mention not to use that one with DoM. I suppose it’s not that easy to make it compatible with DoM, especially considering their epic/legendary token drops and the DoM added item types such as spears.

Unfortunately making it compatible would be a lot of work for me, Dawn of Masteries is HUGE and probably has completely different file paths I would have to figure out first.

Fair enough. Also, literally just stumbled upon the miniature house playing through the campaign in DoM. It was a ton of fun, but I died in Basement level 3 for being too cocky “Surely I’m powerful enough to trigger all tiles at once?”. So perhaps I didn’t get to see the end of it, but it was amazing nonetheless. Looking forward to the other goodies that aren’t/weren’t there in Nydiamar!

:heart:

Been messing with his mod for about 3/4 hours and still need some clarification on things (I am using the non lightweight version) in regards to what is added. I also have it mixed with the DoM mod as well.

1.) Not sure if it is intended but when you create a new character and go into ultimate, everything works fine. However if you go back to main menu or exit the game and go back (switching difficulty back from normal to Ultimate) and go in, the dog is there but when you click on them, it says you need to be playing Ultimate to unlock the features despite having set it to that difficulty beforehand). The only fix is to switch to elite, log in, exit back to menu, switch to Ultimate, then back in. Not sure if this is how it was meant to be done.

2.) I take it that all the options in the first part of the list (blessing, Beutekugen, scrolls, etc) are also available in the Non Lightweight version?

3.) I split my time between Ultimate and normal and the entire time I don’t think I seen a single Beutekugeln drop. I even checked through this entire post and pressed ALT with drops and haven’t seen one. I know it is rare but I am wondering if it didn’t bug out or just not work (does it only show up in Ultimate? At certain levels?

4.) Finally, how can you tell if recycle is working? I have had it enabled and through the course of about 30 minutes, I am still getting components and seeing gear and nothing else so I have no idea if the option is even working.

Hey, thanks for reporting the issues.

  1. Not how it is supposed to work, gotta rethink the way I handle spawning the dog. For now, you can simply use the dog inside your hideout too, which should always be the right one (though there is a small issue on Normal/Elite with the Nightmare dialog, gotta fix that too).

  2. Yes.

So I went ahead and installed Dawn of Masteries + Non Lightweight the way one would do it from this site (downloading it fresh and everything).

  1. The common loot spheres for example are not rare at all. It took me about two to three minutes to drop the first one on a new character on Ultimate. Have not tried Normal, but there should be no difference. I myself never have to hold ALT to find them, they normally get picked up automatically.

  2. Instead of white/yellow/green items, you get a small visible explosion with iron bits when the item would normally drop. You still get components, and sometimes an item converts into a components loot explosion. If you open a Beutekugel (Monster Infrequents), which you obviously did not do yet, it disables the recycle feature.
    There could be some items that won’t convert, basically any new items added through DOM, but for me it converted all items just fine in the five minutes I played with it. Make sure when you click the hammer inside your inventory, that the text “Recycling Enabled” pops up.

Not sure why you don’t drop loot spheres. The step with the AssetManager might take up to 30 minutes, did you maybe cancel it before it finished, so the loot tables did not get updated?

I appreciate the response.

I spent around 3 hours playing after the post and tried to keep an eye on things.

If the items are automatic on pick up, maybe that is why I didn’t see some of them being picked up but perhaps I need to change my graphics for the small explosions to show (3).

Do you have a picture or another visual aid to show what I should be looking for in terms of the Beutekugel drops (I know someone posted a picture which might have been you that showed what looked to be a sphere with a blue aura around it which I believe was one of these spheres) but I have yet to see a single one put into my inventory.

As for AssetManager, I had no issues since I let it run till it was completed (took almost an hour on my end) but I will try and do a fresh install if I still don’t get any of the spheres or recycle isn’t working.

As the creator perhaps you have the best answer but I know in one instruction, it is said to delete either the light or non light to determine what you want to use, so I ended up deleting the light folder before I started the process with AssetManager. Could that be the problem with not getting any spheres or recycle to work?

The loot spheres look exactly like the hero spheres when on the ground, and inside your inventory they have different art depending on the type, but all are simply spheres, you would notice them easily!

You don’t have to delete anything during the installation process, you can delete the folder after you are done, though. But even doing so, it should not have caused any issues.

You can use my already patched dom database so you don’t have to do that again: dom.zip. The database is HUGE, almost 150MB big, and getting over 100MB might cause some issues (though I’m not aware of any right now) with the AssetManager packing the database.

I downloaded the dom.zip but don’t recall what program I use to make use of the arz (since it came out to be 147,293 KB).

I did do a fresh install though but this time I didn’t delete the folders after it was done with no luck. You got it to work so it is something on my end so ill go through the process of what I do.

Download both _Lightweight and Dom into Grim Dawn>Mod folder
Cut/paste _Lightweight folder from Grim Dawn>mods>mod folder to Grim Dawn>mod
Change the value of max playerlevel and devotion points beforehands like it says in the readme.
I delete the folders in the nonlightweight>database>records>items
Go through the process of the read me with opening the .bat file. Put in nonlight (which than starts the download of the 52,540 files until the entire process is complete). Close that.
Open assetManager
Working, Build, and Tools are all E:\Steam\steamapps\common\Grim Dawn
Additional Browse E:\Steam\steamapps\common\Grim Dawn\gdx2
Additional Source E:\Steam\steamapps\common\Grim Dawn\mods\gdx2
Follow the steps in AssetManager with the build. I wait until it is done seeing both the done and build time xx:xx. It does hang up on records/house/scaleup/weapons/sword2h01 before finishing.
Close the program and delete the lightweight mod folder along with records in mods>dom>database
Open up Grim Dawn, make sure I have Custom Game>Dom selected
Make a new character on the normal difficulty (since I guess you have to be higher level for Ultimate to do well in it)
Summon dog for both blessing and the recycle hammer then go to leveling.

Unsure if these small changes matter (such as using grimmfest to increase mob density or messing with the loot filter to only show what I want). I played up to level 10 on normal without a single sphere with that blue aura).

If worst comes to worst, perhaps we can communicate on discord and I can stream the process step by step just to make sure that everything is correct.

I think there is an issue with the AssetManager packing the database, due to the size. Maybe the loottables are not added during the process or something like this? You did install everything right, considering that he dog item appears and works.

I’m going to upload the whole merged mod (minus untouched dom files) for you, this would be the easiest solution and won’t take me long.
Let me know what max level and devotion cap you want to have. The suggested levels were 125 and 68.

I always went with Max level of 200 and devotion of 90 (both just random numbers I chose).

I am just surprised that so far it seems I am the only one having an issue with them not spawning.

Here you go: Dawn of Masteries + (Non) Lightweight

These are only the merged files, so (cleanly) install Dawn of Masteries v1.3.0a and then copy & overwrite with the files from above. I tested it, and I did drop loot spheres (including on Normal!), and recycling was working too. I also fixed the issue you had with the dialog when switching difficulties.

You can change Max Level and Devotion Cap yourself. Change the values (either in the AssetManager, or in database/records/…), then do exactly this: AssetManager > Select dom > Go to the Database tab > Right-click dom/database > Build. This takes a while, check in-game the Devotion Cap afterwards.


Here are some tips:

  1. Make sure to use the Difficulty Merits from Honck (if you want to skip Normal/Elite) so that the difficulty selection won’t reset back to Normal every time.

  2. No reason to start on Normal, though you can if you want so. Use the Blessings from the dog to make Ultimate survivable.

  3. There’s a dog inside the Personal Hideout too, in case the summon item is on cooldown.

  4. Play singleplayer. Hosting multiplayer might cause issues (even when playing alone).

  5. Staves and such won’t get recycled, only vanilla Grim Dawn items.

  6. You can disable God Events, check here: guide

Pretty sure we are close at the end and I do feel bad it is taking all this time just for one part of the mod to work for me.

So I downloaded the zip and did fresh install to make sure it worked.

Downloaded DoM into Grim Dawn>mods
Copied the database/resources folders into dom folder and overwrite
Went into the database/records etc to change the maxlevel and devotion level. Saved.
Went into AssetManager (work offline)
Went to Mod>select>dom
Went to the database tab (next to assets on the bottom) and saw dom/database
Right click dom/database folder and clicked on build.
When I do, I get the error of Couldn’t load template for record: Records/creatures/pc/playerlevels.dbr (database/templates/experiencelevelcontrol.tpl)

Now if I followed all the steps correctly (I didn’t download any of the files in the first post and only the one you posted in the latest post), maybe a file is missing or a folder?

I will try it again and this time without changing the values to see if that made any difference.

Edit: I didn’t change the values and no error so far. Seems changing the values manually without AssestManager has caused the error.