Please notice the mod is always published to curseforge first. Publication to modrinthn is done by hand and should usually soon follow CF publication, but I sometimes get lazy/forgetful and might postpone this a bit. If you downloaded a jar from modrinth and somehow while crashing it tells you the jar is not signed by me, bug me on discord so I can replace the faulty jar. Description is also more up to date there.
This is an addon to the old mod Thaumcraft 4. It is not intended to be used with newer Thaumcraft 5/6. This addon also only runs on 1.7.10.
License is AGPL 3.0 with additional exceptions on minecraft specific issues. In case you are wondering what that means, it means you are required to hand users a copy of the source code of THIS mod even if you are using TC4Tweaks only on server side. This mostly matters when you are using a custom TC4Tweaks jar, as I'd like to have your contribution back. For normal use of this mod, merely put a link to this page, the github, or curseforge page of this mod alongside your modpack/client download is enough.
Using the mod
This mod is optional on both side and the two side are free to use different version of this mod.
(Incomplete) feature list
Scrolling Through Aspect List
The original function of this addon. This will allow you to scroll through the aspect list in the research table using the mouse wheel. No more clicking yay! The mod will tell you scrolling is enabled when you hover your mouse over any research note.
Scrolling Through Research Pages
This will allow you to scroll through the indiviual pages (the pages that have descripitive texts, recipes, arcane construct illustrations, etc) in the book using the mouse wheel. No more clicking yay!
Scaling up the thaumonomicon GUI
Change the browserScale option in .minecraft/config/tc4tweaks.cfg. 2.0 is suitable for 1920x1080 screens under normal gui scale, whereas 1.0 is the same as original. You may want to use a different value if you use another gui scale or resolution.

Fix focus NPE
If you
- Equip a focus MyFocus from some TC4 addon
- Remove said addon from your game
- Congratulations! If you ever pick up this wand your game would crash.
This mod fixes this problem.
Performance boost
Basically, this will somewhat remedy the client side lag in larger modpacks when you open arcane workbench.This should also alleviate the server lag created from some player crafting 64 items using an arcane workbench.
Throttling the GUI update
Version from 1.1.0 onwards allows you to throttle the Arcane Workbench crafting result update to once every X in game ticks. By default this is 4. You can set it longer if it doesn't seems to be effective enough. This value can be changed at runtime without restarting the client by accessing this mod's config GUI (Esc | Mod Options | Select TC4 Tweaks in the mod list | Config | general).
This will somewhat remedy the lag coming from wand recharging. Starting from version 1.2.0-beta2, this alone should be enough to fix this lag and largely remove the need for more aggressive optimization (as detailed below)
Other performance patch
A few random laggy code in TC4 is made more efficient. Most of them will affect client side performance (FPS) only, yet some of them do have an impact even on dedicated servers. Most of these server-affecting patches are targeting the arcane crafting lag. Version from 1.2.0-beta12 onwards add a new patch aimed to fix alchemical furnace lag. Version from 1.4.20 onwards will reduce lag caused by energised nodes checking if they can still see relay. In general, it is suggested to install this mod on dedicated servers. It will make a difference.
Please refer to Technical explaination section if you are curious about the exact detail.
More aggressive optimizations
Version from 1.2.0-beta1 onwards ships with an experimental opt-in feature that prevents the arcane workbench from functioning as a normal crafting table. This accounts for the bulk of lag in large modpacks. As you can probably see this is an optimization with some side effects. You are encouraged to try it in game to see how it'd work.
This feature can be conveniently turned on or off at runtime (i.e. no client restart needed) by accessing this mod's config GUI (Esc | Mod Options | Select TC4 Tweaks in the mod list | Config | general). As a precaution, the feature is enabled only if checkWorkbenchRecipes is set to false, not true!
Even though this sounds like a change that needs to be turned on at both side, it actually works just as good on client side, if the server disables this (or simply doesn't have this mod installed) while the client enables it. It is suggested to keep this feature off on dedicated servers, and turn it on at client side only.

Technical explaination
This section is intended for fellow developers to only. Please don't panic if it doesn't make sense to you
ALERT: This text is not frequently updated. Please refer to source code to check what's really happening.
- ScanManager#generateItemHash(Item, int) will no longer create a million string. The hashCode will be computed directly. This conflicts with GT6's fix and will not function if GT6's loading plugin is detected. GT6's fix will take precedence.
- ResearchCategories#getResearch(String) will use a HashMap now, instead of going over every research registered. This HashMap will be recomputed whenever the server starts. HashMap lookup will be disabled if the server haven't finished starting.
- A call hook is injected into TileMagicWorkbench#setInventorySlotContents(IInventory) on client side only. It will throttle the update to once per 200ms. If any update is dropped, a flag will be set. A tick handler will then try to update once per X ticks (config value) in case of a missed update.
- FXSonic have its model changed to static and reloaded only upon resourcepack reload.
- In ThaumcraftCraftingManager findMatchingArcaneRecipe and findMatchingArcaneRecipeAspects got a simple LRU cache with configurable size (default to 16). Old entries will be evicted when cache is full.
- An Thread.currentThread().setPriority(1) is injected to the start of TC4's mapping thread. If the cache is hit somehow the priority will be reverted back to normal in an attempt to ease lock contention.
- GuiResearchRecipeVisitor was using synchronized methods and ConcurrentMap at the same time. synchronized is now removed.
- In ThaumcraftCraftingManager getObjectTags got improved. See code for details.
- Huge amount of changes in GuiResearchBrowser. Consult net.glease.tc4tweak.asm.GuiResearchBrowserVisitor for details
- Most TESR are patched to not render stuff if the chunk is not yet fully loaded.
Should you have any problem using this addon, please send your questions to the github (click the Issues tab on the side of this page). Video trailer not yet available.
All Versions
+ Add Version| Name | Game version | Platforms | Published | Downloads | Actions |
|---|---|---|---|---|---|
| 1d ago | 1 | ||||
|
R
1.5.26
|
1d ago | 1 | |||
|
R
1.5.25
|
1d ago | 1 | |||
|
R
1.5.24
|
1d ago | 1 | |||
|
R
1.5.23
|
1d ago | 1 | |||
| 1d ago | 1 | ||||
|
R
1.5.22
|
1d ago | 1 | |||
|
R
1.5.21
|
1d ago | 1 | |||
|
R
1.5.20
|
1d ago | 1 | |||
|
R
1.5.19
|
1d ago | 1 | |||
|
R
1.5.18
|
1d ago | 1 | |||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
| 1d ago | 1 | ||||
|
R
1.5.17
|
1d ago | 1 | |||
|
R
1.5.16
|
1d ago | 1 | |||
|
R
1.5.15
|
1d ago | 1 | |||
|
R
1.5.14
|
1d ago | 1 | |||
|
R
1.5.13
|
1d ago | 1 | |||
|
R
1.5.12
|
1d ago | 1 | |||
|
R
1.5.11
|
1d ago | 1 | |||
|
R
1.5.10
|
1d ago | 1 | |||
|
R
1.5.9
|
1d ago | 1 | |||
|
R
1.5.8
|
1d ago | 1 | |||
|
R
1.5.7
|
1d ago | 1 | |||
|
R
1.5.6
|
1d ago | 1 | |||
|
R
1.5.5
|
1d ago | 1 | |||
|
R
1.5.4
|
1d ago | 1 | |||
|
R
1.5.3
|
1d ago | 1 | |||
|
R
1.5.2
|
1d ago | 1 | |||
|
R
1.5.1
|
1d ago | 1 | |||
|
R
1.5.0
|
1d ago | 1 | |||
|
R
1.4.26
|
1d ago | 1 | |||
|
R
1.4.25
|
1d ago | 1 | |||
|
R
1.4.24
|
1d ago | 1 | |||
|
R
1.4.23
|
1d ago | 1 | |||
|
R
1.4.22
|
1d ago | 1 |
# Change log
Change log generated from git history.
## 1.5.26
1. fix earth shock deleting items ([@957c71be4749d70 by Glease](https://github.com/Glease/TC4Tweaks/commit/957c71be4749d709531c34e59c9feecbc93760fb))
## 1.5.26-beta.2
1. fix typo in experimental decant fix ([@8f47b8237c520a2 by Glease](https://github.com/Glease/TC4Tweaks/commit/8f47b8237c520a2d19595e2560c1b8538865b287))
## 1.5.26-beta.1
1. add experimental decant fix ([@30a96205b6bd203 by Glease](https://github.com/Glease/TC4Tweaks/commit/30a96205b6bd203fa6767dfa203e9d8e64c4b463))
Change log generated from git history.
## 1.5.25
1. save maze data only if it changed ([@185e9bc4393c78c by Glease](https://github.com/Glease/TC4Tweaks/commit/185e9bc4393c78cf4367753a3d3b3c2ee7eecf2c))
1. fix hodgepodge compat ([@8c3485acb661046 by Glease](https://github.com/Glease/TC4Tweaks/commit/8c3485acb6610467b08516837225c8c1d0bf62a2))
# Change log
Change log generated from git history.
## 1.5.24
1. fix aspect list null ([@fde79d17e1556d6 by Glease](https://github.com/Glease/TC4Tweaks/commit/fde79d17e1556d678432f948762c1a7fec7c421b))
1. fix typo preventing gadomancy compat from working ([@8d933e69b302e72 by Glease](https://github.com/Glease/TC4Tweaks/commit/8d933e69b302e7292370edffcbba3878fe166739))
1. fix coretweaks warning in golem ([@7b5a5bed43e9d5a by Glease](https://github.com/Glease/TC4Tweaks/commit/7b5a5bed43e9d5ae612f87b4b77e37914f27f996))
# Change log
Change log generated from git history.
## 1.5.23
1. fix occasional vis relay beam render glitch ([@4ee23743d2c3538 by Glease](https://github.com/Glease/TC4Tweaks/commit/4ee23743d2c35386258a04919bb4b833791cc1fb))
## 1.5.23-beta.1
1. lag fixes inspired by GTNewHorizons/Hodgepodge#359 ([@c700d15b635b6e9 by Glease](https://github.com/Glease/TC4Tweaks/commit/c700d15b635b6e92fd171d7fe8fb0ffcacd0af2d))
1. code clean up ([@4e256a5b1623a7c by Glease](https://github.com/Glease/TC4Tweaks/commit/4e256a5b1623a7c699a03cbdf17b09e938add726))
# Change log
Change log generated from git history.
## 1.5.22
1. increase biome update notification to everyone in render distance ([@e752bba4d09f59d by Glease](https://github.com/Glease/TC4Tweaks/commit/e752bba4d09f59d38c1f04fe7cc3ab2dc267254c))
# Change log
Change log generated from git history.
## 1.5.21
1. fix more hash collision ([@db2c575f6903f82 by Glease](https://github.com/Glease/TC4Tweaks/commit/db2c575f6903f8224fc2b5c5f3a531f3632243e0))
# Change log
Change log generated from git history.
## 1.5.20
1. adv furnace tesr improvements and fixes ([@5ad8c3373aaf05f by Glease](https://github.com/Glease/TC4Tweaks/commit/5ad8c3373aaf05f850623947d0c657fa0026cb7d))
# Change log
Change log generated from git history.
## 1.5.19
1. add option to tweak champion buff value ([@9a2d34a2880aef7 by Glease](https://github.com/Glease/TC4Tweaks/commit/9a2d34a2880aef7aebadf36c31540419fbc3f466))
# Change log
Change log generated from git history.
## 1.5.18
1. add option to disable search box ([@019f8202e7ad262 by Glease](https://github.com/Glease/TC4Tweaks/commit/019f8202e7ad26296ec4931ee91ecd51786c77af))
# Change log
Change log generated from git history.
## 1.5.18-beta.4
1. switch over russian translation ([@f3edaff66fab812 by Glease](https://github.com/Glease/TC4Tweaks/commit/f3edaff66fab8129acc7a13072551775d78ec328))
# Change log
Change log generated from git history.
## 1.5.18-beta.3
1. add tooltip for the red question mark ([@be973c9161842b9 by Glease](https://github.com/Glease/TC4Tweaks/commit/be973c9161842b9c534e001ed4ca26660b852753))
# Change log
Change log generated from git history.
## 1.5.18-beta.2
1. remove obfuscation since it is a bit confusing ([@3b1be491d437306 by Glease](https://github.com/Glease/TC4Tweaks/commit/3b1be491d4373068e548e623b8024c0b6ffe5184))
Change log generated from git history.
## 1.5.18-beta.1
1. add warp data to research dump ([@fd0ad12c00c8fd3 by Glease](https://github.com/Glease/TC4Tweaks/commit/fd0ad12c00c8fd32bc49bd2b94076026753ff602))
1. add completion counter ([@04b9ffb82a31ef9 by Glease](https://github.com/Glease/TC4Tweaks/commit/04b9ffb82a31ef9dc7ac61d667b7f3964d7942f0))
1. fix search module might use outdated mouse event buffer ([@79b07efeabf3534 by Glease](https://github.com/Glease/TC4Tweaks/commit/79b07efeabf3534a01eaa4ea0acefa96bba224d7))
Change log generated from git history.
## 1.5.17
1. add back functions removed by accident ([@53d04a815165c30 by Glease](https://github.com/Glease/TC4Tweaks/commit/53d04a815165c3060b8bee0454a164f12e6f6420))
Change log generated from git history.
## 1.5.16
1. release ([@7074d369d743ecb by Glease](https://github.com/Glease/TC4Tweaks/commit/7074d369d743ecbdc8855a38e8e6168446d1b123))
1. overhaul Callhook annotation to add more context ([@f5770a4ab5b5fb7 by Glease](https://github.com/Glease/TC4Tweaks/commit/f5770a4ab5b5fb7b5a21c8bf4024b17ce950d84e))
# Change log
Change log generated from git history.
## 1.5.15
1. fix hungry chest incompatibility with certain logistics tools ([@f70b9190cce742a by Glease](https://github.com/Glease/TC4Tweaks/commit/f70b9190cce742a14cf04f5c2992149abdd2a33a))
# Change log
Change log generated from git history.
## 1.5.14
1. fix inferred browserScale progressively reduce on each window open ([@aa1cc7907fa3fb2 by Glease](https://github.com/Glease/TC4Tweaks/commit/aa1cc7907fa3fb2d89b287956759fb54fdc6dcf7))
1. add button to clear bottom right notifications ([@a2f90d1878dd13d by Glease](https://github.com/Glease/TC4Tweaks/commit/a2f90d1878dd13dd722bac37bfe036199022c6f6))
# Change log
Change log generated from git history.
## 1.5.13
1. fix networked config sync ([@89f7a09e5f584fd by Glease](https://github.com/Glease/TC4Tweaks/commit/89f7a09e5f584fd4144adb634c2dda7365a6681d))
# Change log
Change log generated from git history.
## 1.5.12
1. fix crash on server side ([@7e7b26e7771ffa5 by Glease](https://github.com/Glease/TC4Tweaks/commit/7e7b26e7771ffa51e28187d5da70610011568093))
# Change log
Change log generated from git history.
## 1.5.11
1. dispensers can now shoot primal arrow ([@c181ee7e22dd71e by Glease](https://github.com/Glease/TC4Tweaks/commit/c181ee7e22dd71e4d7700f7b508f7ee50d0182b6))
1. code cleanup ([@ca31e4908b4dfc4 by Glease](https://github.com/Glease/TC4Tweaks/commit/ca31e4908b4dfc47a4aa2176d33c27756dbb151f))
1. implement sorting ([@75b57b139aa6695 by Glease](https://github.com/Glease/TC4Tweaks/commit/75b57b139aa66953e91ab4c64f62766d9cf0d9d1))
# Change log
Change log generated from git history.
## 1.5.10
1. make config file comments more readable ([@ceb409b1d13e903 by Glease](https://github.com/Glease/TC4Tweaks/commit/ceb409b1d13e9032531501420e33f4de3d3b2836))
1. add some missing localization ([@56d39dd76b70bf1 by Glease](https://github.com/Glease/TC4Tweaks/commit/56d39dd76b70bf12b221bd487c1bd08ad08fccbd))
1. add research tab user sorting ([@b973cb1a8feea23 by Glease](https://github.com/Glease/TC4Tweaks/commit/b973cb1a8feea23a5724d0561ffce72608f7d6d9))
1. add research category dump ([@87db8c7d66a4604 by Glease](https://github.com/Glease/TC4Tweaks/commit/87db8c7d66a460476caef9578e561f553bc9d338))
# Change log
Change log generated from git history.
## 1.5.9
1. Create russian localization (#35) ([@f112e819249a8df by StrangeMan1580](https://github.com/Glease/TC4Tweaks/commit/f112e819249a8df6aebd9ecc33406c835881e4b6))
# Change log
Change log generated from git history.
## 1.5.8
1. adopt golem marker fix from hodgepodge ([@6a6a36b199799ca by Glease](https://github.com/Glease/TC4Tweaks/commit/6a6a36b199799ca1ceee044bb740c8f1fc8f13fa))
# Change log
Change log generated from git history.
## 1.5.7
1. actually fix adding warp to fake player ([@ee4b116389c7307 by Glease](https://github.com/Glease/TC4Tweaks/commit/ee4b116389c73071c77e0dcbc306dd64c10fb08a))
1. add configuration to infusion oredict mode ([@d542d118002c150 by Glease](https://github.com/Glease/TC4Tweaks/commit/d542d118002c1507193d9b77f4460a90a598cc16))
1. make the all package private class ([@fbb7e39294c8373 by Glease](https://github.com/Glease/TC4Tweaks/commit/fbb7e39294c837353ea223bce797e4c3d1b88eeb))
1. allow other oredict behavior for tc4 infusion recipes ([@05752b23ec69dd6 by Glease](https://github.com/Glease/TC4Tweaks/commit/05752b23ec69dd6ec900240ebb7afc103212813c))
# Change log
Change log generated from git history.
## 1.5.6
1. fix aspect combine crash in obf env ([@9dbab09a2c3afd2 by Glease](https://github.com/Glease/TC4Tweaks/commit/9dbab09a2c3afd2e8a983a4e1a60e153f8e860b4))
# Change log
Change log generated from git history.
## 1.5.5
1. more random vis stone and enchanted book from lootbags ([@b499c2acf5a122b by Glease](https://github.com/Glease/TC4Tweaks/commit/b499c2acf5a122b4dbfb63d8f4c6d228f379efa4))
# Change log
Change log generated from git history.
## 1.5.4
1. bump version ([@78a102206b6e6a7 by Glease](https://github.com/Glease/TC4Tweaks/commit/78a102206b6e6a7b6ca3406d0c7751f8dd2e4674))
1. add patches to fix secondary research complete ([@a112448c35c0954 by Glease](https://github.com/Glease/TC4Tweaks/commit/a112448c35c0954ad64ef9fa747ec63a41a40e02))
1. add patches to fix aspect combine ([@6aaf7068519a96c by Glease](https://github.com/Glease/TC4Tweaks/commit/6aaf7068519a96c451423fb66ea07ce9834edc96))
# Change log
Change log generated from git history.
## 1.5.3
1. bump version ([@b34f029b60517eb by Glease](https://github.com/Glease/TC4Tweaks/commit/b34f029b60517ebf71fa3cfa6e87050ab37fcf85))
1. Check item type in bucket return logic ([@ab2dec8185395f2 by Raven Szewczyk](https://github.com/Glease/TC4Tweaks/commit/ab2dec8185395f22d16152a64ddca07b0be76217))
# Change log
Change log generated from git history.
## 1.5.2
1. fix small jar fix not effective in obf env ([@0d7018b2b4020a4 by Glease](https://github.com/Glease/TC4Tweaks/commit/0d7018b2b4020a47ebed1b59e5799f94ff7c0d97))
# Change log
Change log generated from git history.
## 1.5.1
1. proper sync for elemental shovel ([@d97a012ceb362c6 by Glease](https://github.com/Glease/TC4Tweaks/commit/d97a012ceb362c6468c4629897073ed5b005abf8))
1. add some log ([@eb2f73826cb4af3 by Glease](https://github.com/Glease/TC4Tweaks/commit/eb2f73826cb4af388ae9a3788b4cbd29a6c07b73))
1. proper sync for TileHole ([@ea15d3edf7a5edc by Glease](https://github.com/Glease/TC4Tweaks/commit/ea15d3edf7a5edc154f047e24e691c72ecc5a629))