Hi everyone. This isn't an update of the table itself, but rather an instruction set on how to hack this game.
Before I go further, some example screenshots of what I accomplished:
That's 70 million gems
I managed to reach about 14000 gems per minute (~850k per hour), or about 100k bosses per hour, by using modron automation (no scripts).
Idle Champions - Useful Tweaks and Tricks
0. Settings
You can open localsettings.Json and set the values to lower than you can set in game. This file is found in:
\AppData\LocalLow\Codename Entertainment\Idle Champions\localSettings.json
The x- and y-resolutions can get down to 500. The lower your x resolution, the faster your Briv transition will be.
You can set your UI scale to 0.5 to see all your champions in one screen, and set your targetframerate to 120 to have a faster game. You should disable many other settings, such as percent particle spawned to 0, soundvolume to 0, etc.
1. Speedhack
Cheat Engine's Enable Speedhack works well. I didn't find much benefit beyond 65x with an i5-1035G1 CPU. Slower CPUs may not speed up as much. Note that if you go too high, you have a high chance of crashing. The more champions you have on the field, you also have a higher chance of crashing.
2. Memory editable values in game
As seen in the screenshots above, you can hit the max limits of
Torogar and
Zorbu (2.1e9 assuming signed int) permanent stacks by searching for the values through Cheat Engine and editing them.
Morgaen's gold can be done by editing the gold finds of cached_defs, which I'll describe below. I couldn't edit
Black Viper's gems, but it's easy enough to rake the gems in if you're skipping 120 zones every second.
Also. you can edit some temporary stacks in game and set them to max. One easy stack is
Grimm and Beadle's rest stacks, which increase 1 every 10 seconds giving you enough time to search for them and set them to 2.1e9. Another good one is
Baeloth's morbid excitement. Even if your max stack value is below 2.1e9, you can "freeze" the stacks to force it to stay above your max stacks.
This also works for any achievements with large numbers - i.e. Briv stacks (also see below), where you can just look at the achievement slider, find the value as it ticks up, and edit it to a high value (like 2.1e9).
3. Memory Edit Special Case 1 - Briv Stacking
Briv Steelbone stack has two dependent memory values - 4 bytes and double. Search for that value until you have one 4 byte and one double value in memory, then fix it to a reasonbly high value - say, 1e5. Then, you can freeze it, and whenever modron resets, your briv will automatically have 1e5 steelbone stacks, without having to script. You can thus keep skipping zones back to back.
If you set it to a value that is too high, it can "roll over" and you will have -2.1e9 stacks - be careful and set it to a reasonable amount. 100k is enough to get you to 1500.
4. Memory Edit Special Case 2 - Events and Bounty Contracts
The number of bounty contracts are calculated client side, not server side, so you can get
infinite event tokens. First, find the number of bounty contracts you have as two 4-byte addresses. Then freeze them at some high value (say, 1e5). then, until you restart the game, you will be able to click the contract infinite times.
I would also recommend searching for the memory location for the "number of contracts per use" selection (the slider bar), and setting it to 10 (any higher slows the game down). Then, you can just script mouse clicks to click on the bounty contract and then clicking on OK, saving one click and making the process a lot more stable.
If you save more than 2.1e9 event tokens, the game display reverts to 0, but your tokens are still there in the server.
You can use Kleho's site to use all your event tokens in the last hour of the event. Also, you can use a website made by community member (check the game's discord) to buy gold boxes for year 1 champions. This way, you can get epic shiny equipment for all event champions, and get a lot of ilevels -
my Avren is at 2.1 million ilvls.
5. Memory Edit Special Case 3 - Modron Pieces
As long as you have at least one modron piece, you can find the memory address of the # of that piece you have (by placing it in and out of the storage), then freeze it at some high value (i.e. 99). Then you can get purple flow across all outlets by using epic pieces at all placements.
6. Cached_Def edits
You can edit your cached_definitions.json to get
near-infinite DPS, gold find, and speed. This file is found in:
Program Files (x86)\Steam\steamapps\common\IdleChampions\IdleDragons_Data\StreamingAssets\downloaded_files\cached_definitions.json
step 1: get notepad++.
step 2: install the jsonviewer plugin.
step 3: format cached_definitions to json.
This lets you explore and tweak many different values.
I recommend the following "enhancements":
Enhancement 1: Krond
Krond qualifies for all 3 patrons, and has an regular attack that can hit the entire screen. CTRL-F the following entries and edit them:
Cooldown for this one:
{
"id": 49,
"name": "War Magic",
"description": "Krond leaps out and attacks the front-most target with his bonded warhammer and then casts Fire Bolt, damaging several random enemies.",
"long_description": "",
"graphic_id": 0,
"target": "front",
"num_targets": 1,
"aoe_radius": 0,
"damage_modifier": 1,
"cooldown": 0.1,
"animations": [
{
"type": "melee_attack",
"damage_frame": 2,
"return_to_formation": false,
"chain_attack_id": 53,
"sequences": [
{
"target_offset_x": -80,
"start_frame": 0,
"damage_frame": 2,
"end_frame": 9,
"sound_frames": {
"3": 154
}
}
]
}
],
"tags": [
"melee"
],
"damage_types": [
"melee"
]
},
# of targets and cooldown for this one:
{
"id": 53,
"name": "Krond's Fire Bolt",
"description": "Part 2 of Kronds Attack - Fire Bolt",
"long_description": "",
"graphic_id": 0,
"target": "random",
"num_targets": 100,
"aoe_radius": 0,
"damage_modifier": 1,
"cooldown": 0.1,
"animations": [
{
"type": "ranged_attack",
"projectile": "firebolt",
"jump_from_target": true,
"shoot_frame": 11,
"sound_frames": {
"4": 84
},
"hit_sound": 69
}
],
"tags": [
"ranged"
],
"damage_types": [
"magic"
]
},
And the hero DPS for this one:
{
"id": 448,
"hero_id": 15,
"required_level": 80,
"required_upgrade_id": 0,
"upgrade_type": null,
"effect": "hero_dps_multiplier_mult,1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
"static_dps_mult": null,
"default_enabled": 1,
"name": ""
},
Enhancement 2: Briv area Skips
Next, We want to edit Briv area skips. I recommend searching for one of the upgrade ability entries for Briv, and edit the upgraded ability and quantity as follows:
{
"id": 3459,
"hero_id": 58,
"required_level": 100,
"required_upgrade_id": 0,
"upgrade_type": "upgrade_ability",
"effect": "buff_upgrade,259625000000000000000000000000000000,3452",
"static_dps_mult": null,
"default_enabled": 1,
"name": ""
},
Enhancement 3: Sentry Area Skips
Finally, we want to edit the permanent quest reduction of Sentry. Search for the following entry, and increase the reduction to 1000%:
{
"id": 493,
"flavour_text": "",
"description": "Increases the quest requirement reduction of Echo Resolution to 30%.",
"effect_keys": [
{
"effect_string": "buff_resolution_amount,1000"
}
],
"requirements": [],
"graphic_id": 0,
"properties": []
},
Conclusion and Additional Tips
After doing some or all of the above, you can then start the game and automating a formation with 5 (or 3) familiars on the field, and 1 familiar each on Krond, Briv, and Sentry. Set the target area to 999, and set the formation as Krond up front with Sentry and Briv behind. If you have less than 6 familiars, focus on getting the champions on the field first.
Remember to search for briv stacks and hold it at a high value. Further, remember that the less number of champions you have, the less likely the game will crash, so don't put any more champions on the field.
If the app crashes, you can restart and search for the same Briv stack value. If you set it to some unique value (i.e. 7e5) You should typically be left with just a few addresses, which you can then freeze in cheat engine. Leave it overnight, and over
8 hours you'll get about 5 million gems, accounting for memory leak slowdowns.