Mod Icon

mod-tools

A mod provides various tools for modding. ----------------- Version 1.7.0 ## Highlight ## New 1. Deadlock detection watchdog: divergence heuristics for platform and virtual threads, JSON thread dumps, and a directed-graph cycle analysis that names the lock ring. Runs separately from the 5 ms CPU sampler so it cannot skew it. 2. Review element editor: edit Element fields live to see the effect, no recompile needed. 3. Layout check: LayoutIssues collects layout problems and LayoutReportWindow renders the report; cells also get a details window. 4. Tester completion rewritten: member completion, array and object destructuring bindings, arrow parameter types from generic arguments; covered by JUnit 5. 5. JS syntax highlighting for the Rhino editor, resolving members and generic types for accurate colouring. 6. Zero-allocation float formatting: Schubfach shortest round-trip conversion, DoubleConversion and FastFormat, replacing Double.toString in Vec2/Vec3/Rect/Color formatting. ## Hot swap 7. Hot swap runs on a self-contained Remold agent, attached before settings load; a -javaagent setup that lacks plugin-arc now degrades with one warning instead of failing. 8. UI hot swap: Table creator and Cell property chains are tracked, so a redefined builder rebuilds only the affected cells. 9. Lambda and anonymous class alignment: LambdaAligner, AnonClassAligner and content-hash fingerprints keep anonymous classes paired across redefinition. 10. Redefinition is gated on instance field-layout compatibility, and slot numbers held by pending aligned classes are not reused. 11. The hotswap_plus switch is split into init_fix and force_static_lambda. ## Performance 12. ValueLabel, FieldValueLabel and InlineLabel format without boxing; PairProv shares one buffer and compares content before rebuilding. 13. Flame graph: canvas clipping and culling, zero-allocation map lookups, spatial depth bucketing. 14. Fewer per-frame allocations in LimitTable, SearchedLabel and completion prefix matching. 15. Selection panel: dynamic region scanning is throttled to every 10 frames instead of running on a background executor; unit and bullet sets are cached between scans; tile and building icons are cached per block size. ## Fixes - Completion popup not showing, and candidates beyond the first page being unreachable. - Completion popup covering the line being typed on. - changedFx flash overflowing the scroll pane viewport. - Viewers: Mat and Affine2 support, opening brace alignment in pretty print, and label markup state preserved across appends. - Android: HiddenApi trimmed in favour of the bundled bypass. ## Dependencies - ASM 9.11 (security advisories), Remold 0.1.2. ----------------- WIKI: https://i-hope1.github.io/mod-tools

49kDownloads43Stars
Created 5 years agoUpdated 5 days ago

Authors:

English|中文

Mod Tools

一个mindustry v7的mod. 它为开发人员提供了许多有用的工具。

WIKI?

Build

if you receive an exception when building the project, please flush the gradle. Some code of the project is dependent on JavaDoc. Don't remove the JavaDoc.