tickmender-1.3.0.jar
Curse Maven Snippet
What's new
1.3.0 - 2026-10-14
No new switch: TickMender still has 40. Two of them do more. The log filter can now remove noise that a server owner cannot act on (the grave lines of You're in Grave Danger, scanner noise in the Netty pipeline, the death notices of named mobs), and the JVM arguments hint now also speaks on a dedicated server. The other 38 switches are unchanged.
Log filter (logFilter)
- Two new, optional lists in
config/tickmender-logfilter.json, next toexactandregex:thrown: a WARN or ERROR event that carries an exception, and that neitherexactnorregexmatched, is also removed when one of these expressions is found in its message, a colon, a space and the exception as text. This is for messages that are the same for noise and for a real error, where only the exception tells them apart.info: an INFO message in which one of these expressions is found is removed. It is the only list that touches INFO events;exact,regexandthrownstill mean WARN and ERROR only. While the list is empty the filter does not even format INFO messages.
- The defaults are now 58 patterns instead of 52: 39
exact, 15regex, 2thrown, 2info. The six new ones, each naming one known message of one mod:Tried to load invalid item: 'No key id in MapLike[{Slot:...,dropRule:"...",visible:...b}]': the empty slots of the graves of You're in Grave Danger 2.4.18, written without an item id (452 lines per server start). Only that exact shape is matched. Any otherTried to load invalid itemstays visible.Ignoring unknown attributefor six names only:minecraft:movement_speed,minecraft:follow_range,minecraft:attack_damage,minecraft:armor,minecraft:armor_toughnessandporting_lib:step_height_addition. Any other attribute stays visible, exceptporting_lib:entity_gravity, which was filtered before.Exception occurred in netty pipelinewhen the exception is aReadTimeoutExceptionor aNativeIoExceptionthat saysConnection reset by peer(thrown): internet scanners that connect and leave. The same message with any other exception, for instance aDecoderExceptionor anEncoderException, is a real error and stays in the log; the message is the same in every case, which is why this list looks at the exception.Named entity ... died: ...andVillager ... died, message: '...'(info): about 5000 lines in ten days on a production server, almost all of them mobs that mods spawn with a name.
- A trade-off you should know about. With the
infodefaults the death of a player's name-tagged pet is not in the log either, because it is a named entity like the others. Remove the^Named entity .+ died:entry frominfoinconfig/tickmender-logfilter.jsonif you need those lines. - Still visible, on purpose:
Error upgrading chunk,Failed to load chunk, and every other error the old list did not name. - The summary line has a clause for the INFO events, after the WARN/ERROR figure and only when
there were any:
TickMender: log filter: 76 of 423 WARN/ERROR events suppressed and <m> INFO events; most hits: .... INFO events are not counted as "looked at", so the first figure is still a share of the WARN and ERROR events. The fallback that writes the summary when the JVM shuts down without any of the usual moments (a crash of the client) now also writes it after a stretch in which the filter only removed INFO events. - The state in the start-up line reads
active (58 patterns, installed in ...).
JVM arguments hint (jvmArgumentsHint) on dedicated servers
- Until now the hint was for players only. A dedicated server that was started without the
recommended JVM arguments now says so, once the game has logged its "Done" line: one line in the
log of what was decided, and, while the flags are missing, one WARN with the line to copy:
TickMender: JVM arguments hint: this server was started without the recommended JVM arguments (preset g1-server). Add this to the start command and restart: <line> | Instructions are in tickmender-jvm-arguments.txt in the server folder; -Dtickmender.jvmHint=off silences this line. tickmender-jvm-arguments.txtin the server folder has the same line with instructions, in English and in server wording: where in the start script it goes (afterjava, before-jar; a hosting panel has a field for it), that you keep your own-Xmsand-Xmx, and that the flags expect both to be the same value. The line itself never contains a heap flag. A server gets no sentence about memory.- Aikar's flags, not measured on the pack. The two server presets are Aikar's flags, a widely
used set for Minecraft servers. They were not measured with this modpack, unlike the client line,
and the file says so.
g1-serveris for a heap of 6000 to 12999 MB,g1-server-largefor 13000 MB and more (G1 with a larger young generation and a later start of the mixed collections); both need 2 CPUs and Java 21. A smaller heap, one CPU, Java below 21 or a JVM that is not HotSpot gets no hint. - A server has no "shown once": it warns at every start until the flags are set (the hint is
silent when the JVM was started with every flag of the line, or with another garbage collector)
or
-Dtickmender.jvmHint=offis given.-Dtickmender.jvmHint=showforces the WARN even with the flags set."jvmArgumentsHint": falseinconfig/tickmender.jsonswitches it off on both sides. - The preset table gets an optional
"side":client,serverorboth. A preset without it is a client preset, so a table written before this version never reaches a server. Any other value makes the table unusable (one warning, the table is ignored). - The state in the start-up line is
active (decides at the title screen)on a client andactive (decides when the server has started)on a dedicated server. It is no longeridle (client only)on a server. LikelogFilterandcameraShakeLimit, the hint now reports its own state: three switches do.
Updating from 1.2.0
Replace the jar. There is no new switch and config/tickmender.json is unchanged.
- An existing
config/tickmender-logfilter.jsonis not rewritten, by this update either, so it keeps exactly the patterns it has: withoutthrownandinfoit filters as before. The new patterns reach an existing install only in one of two ways: the pack ships the updated file, or you delete the file and let TickMender write the new defaults at the next start (write down any hand-made entries first; and ifconfig/nytheriaoptimiser.jsonis still there, its patterns are imported instead of the defaults, with both new lists empty). - A preset table of your own in
config/tickmender-jvm-presets.jsonthat has nosidestays client-only. To give a dedicated server a line from your own table, write"side": "server"(or"both") on that preset. - A dedicated server logs one WARN at every start until the flags are set or
-Dtickmender.jvmHint=offis given, and writestickmender-jvm-arguments.txtin its folder. If you do not want either, give the property or set"jvmArgumentsHint": false.
This mod has no additional files