Dusklight brings a classic adventure to PC and mobile platforms with a variety of fixes and improvements.
This report summarizes scanner evidence for TwilitRealm/dusklight, a C++ project with 6,169 GitHub stars. SynthScan examined 2,239,583 lines of code across 19171 source files, recording 1288 pattern matches distributed across 6 syntactic categories. The legacy adjusted pattern signal is 0.6 (Low pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.
Can maintainers explain intent, assumptions, and trade-offs? 1280 finding(s).
Are imports declared and package/API names verified? 8 finding(s).
Are wrappers, guards, and repeated structures necessary? 0 finding(s).
Which changes need focused human review? 1288 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 1288 distinct pattern matches across 6 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | include/dusk_pch.hpp | 1 | #pragma once | COMMENT |
| LOW | include/global.h | 1 | #ifndef _global_h_ | COMMENT |
| LOW | include/global.h | 21 | #define PLATFORM_SHIELD (VERSION >= VERSION_SHIELD && VERSION <= VERSION_SHIELD_DEBUG) | COMMENT |
| LOW | include/global.h | 41 | // Align X to the next N bytes (N must be power of two) | COMMENT |
| LOW | include/global.h | 61 | COMMENT | |
| LOW | include/global.h | 81 | extern int __rlwimi(int, int, int, int, int); | COMMENT |
| LOW | include/global.h | 121 | // Data symbols exported from the main exe need dllimport on the mod side. The game itself | COMMENT |
| LOW | include/global.h | 141 | COMMENT | |
| LOW | include/global.h | 181 | (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; \ | COMMENT |
| LOW | include/global.h | 201 | #define UNSET_FLAG(var, flag, type) (var) &= (type)~(flag) | COMMENT |
| LOW | include/global.h | 221 | return out; | COMMENT |
| LOW | include/global.h | 241 | #if defined(__MWERKS__) || defined(DECOMPCTX) | COMMENT |
| LOW | include/global.h | 261 | #define IF_DUSK_ARG(expr) | COMMENT |
| LOW | include/global.h | 281 | #define DUSK_GIVE_TAG(name) IF_DUSK_ARG(::dusk::mods::item_give_tag(name)) | COMMENT |
| LOW | include/angle_utils.h | 1 | #ifndef _ANGLE_UTILS_H_ | COMMENT |
| LOW | include/angle_utils.h | 21 | #define S8_SUB(x, y) VAR_SUB_CAST(x, y, s8) | COMMENT |
| LOW | include/angle_utils.h | 41 | #define S8_ADD_2 VAR_ADD | COMMENT |
| LOW | include/angle_utils.h | 61 | #else | COMMENT |
| LOW | include/weak_bss_1109_to_1009.h | 1 | #ifndef WEAK_BSS_1109_TO_1009_H | COMMENT |
| LOW | include/f_pc/f_pc_manager.h | 1 | #ifndef F_PC_MANAGER_H_ | COMMENT |
| LOW | include/f_pc/f_pc_profile_lst.h | 1 | #ifndef F_PC_PROFILE_LST_H_ | COMMENT |
| LOW | include/m_Do/m_Do_audio.h | 1 | #ifndef M_DO_M_DO_AUDIO_H | COMMENT |
| LOW | include/m_Do/m_Do_graphic.h | 1 | #ifndef M_DO_M_DO_GRAPHIC_H | COMMENT |
| LOW | include/m_Do/m_Do_MemCard.h | 1 | #ifndef M_DO_M_DO_MEMCARD_H | COMMENT |
| LOW | include/f_op/f_op_actor_mng.h | 1 | #ifndef F_OP_ACTOR_MNG_H_ | COMMENT |
| LOW | include/TRK_MINNOW_DOLPHIN/Os/dolphin/usr_put.h | 1 | #ifndef OS_DOLPHIN_USR_PUT_H | COMMENT |
| LOW | include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/dispatch.h | 1 | #ifndef METROTRK_PORTABLE_DISPATCH_H | COMMENT |
| LOW | include/SSystem/SComponent/c_math.h | 1 | #ifndef C_MATH_H | COMMENT |
| LOW | include/SSystem/SComponent/c_angle.h | 1 | #ifndef C_ANGLE_H | COMMENT |
| LOW | include/Z2AudioLib/Z2AudioMgr.h | 1 | #ifndef Z2AUDIOMGR_H | COMMENT |
| LOW | include/d/d_drawlist.h | 1 | #ifndef D_D_DRAWLIST_H | COMMENT |
| LOW | include/d/d_msg_class.h | 1 | #ifndef D_MSG_D_MSG_CLASS_H | COMMENT |
| LOW | include/d/d_msg_class.h | 721 | #define MSGTAG_TYPE 2 | COMMENT |
| LOW | include/d/d_msg_class.h | 741 | #define MSGTAG_UP_ARROW 22 | COMMENT |
| LOW | include/d/d_msg_class.h | 761 | #define MSGTAG_WHITE_TARGET 42 | COMMENT |
| LOW | include/d/d_msg_class.h | 781 | #define MSGTAG_CURRENT_LETTER_PAGE 62 | COMMENT |
| LOW | include/d/d_msg_class.h | 801 | #define MSGTAG_WII_NUNCHUK 16 | COMMENT |
| LOW | include/d/d_msg_class.h | 821 | #define MSGTAG_GLYPH_CENT 13 | COMMENT |
| LOW | include/d/d_msg_class.h | 841 | #define MSGTAG_REFMARK 5 | COMMENT |
| LOW | include/d/d_file_select.h | 1 | #ifndef D_FILE_D_FILE_SELECT_H | COMMENT |
| LOW | include/d/d_com_inf_game.h | 1 | #ifndef D_COM_D_COM_INF_GAME_H | COMMENT |
| LOW | include/d/d_stage.h | 1 | #ifndef D_D_STAGE_H | COMMENT |
| LOW | include/d/d_camera.h | 1 | #ifndef D_D_CAMERA_H | COMMENT |
| LOW | include/d/d_s_play.h | 121 | * Short Reg(00-09) ... -32768 - +32768 | COMMENT |
| LOW | include/d/d_s_play.h | 141 | #define SREG_F(i) g_regHIO.mChildReg[3].mFloatReg[i] | COMMENT |
| LOW | include/d/d_s_play.h | 161 | #define BREG_F(i) g_regHIO.mChildReg[8].mFloatReg[i] | COMMENT |
| LOW | include/d/d_s_play.h | 181 | #define WREG_F(i) g_regHIO.mChildReg[13].mFloatReg[i] | COMMENT |
| LOW | include/d/d_s_play.h | 201 | #define ZREG_F(i) g_regHIO.mChildReg[18].mFloatReg[i] | COMMENT |
| LOW | include/d/d_s_play.h | 221 | #define aREG_F(i) g_regHIO.mChildReg[23].mFloatReg[i] | COMMENT |
| LOW | include/d/d_s_play.h | 241 | #define IREG_F(i) (0.0f) | COMMENT |
| LOW | include/d/d_s_play.h | 261 | #define KREG_F(i) (0.0f) | COMMENT |
| LOW | include/d/d_s_play.h | 281 | #define NREG_F(i) (0.0f) | COMMENT |
| LOW | include/d/d_s_play.h | 301 | #define XREG_F(i) (0.0f) | COMMENT |
| LOW | include/d/d_s_play.h | 321 | #define yREG_F(i) (0.0f) | COMMENT |
| LOW | include/d/dolzel.h | 1 | #ifndef DOLZEL_H | COMMENT |
| LOW | include/d/d_demo.h | 1 | #ifndef D_D_DEMO_H | COMMENT |
| LOW | include/d/d_bg_w.h | 1 | #ifndef D_BG_D_BG_W_H | COMMENT |
| LOW | include/d/d_save.h | 1 | #ifndef D_SAVE_D_SAVE_H | COMMENT |
| LOW | include/d/d_a_horse_static.h | 1 | #ifndef D_A_D_A_HORSE_STATIC_H | COMMENT |
| LOW | include/d/dolzel_rel.h | 1 | #ifndef DOLZEL_REL_H | COMMENT |
| 1214 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | libs/dolphin/src/ar/ar.c | 257 | u32* dummy_data; | CODE |
| LOW | libs/dolphin/src/ar/ar.c | 275 | dummy_data = (u32*)(OSRoundUp32B((u32)(dummy_data_pad))); | CODE |
| LOW | libs/dolphin/src/ar/ar.c | 286 | *(dummy_data + i) = 0xBAD0BAD0; | COMMENT |
| LOW | libs/dolphin/src/ar/ar.c | 290 | DCFlushRange((void*)dummy_data, 0x20); | CODE |
| LOW | libs/dolphin/src/ar/ar.c | 323 | __ARWriteDMA((u32)dummy_data, ARAM_size + 0x0200000, 0x20); | CODE |
| LOW | libs/dolphin/src/ar/ar.c | 339 | __ARWriteDMA((u32)dummy_data, ARAM_size + 0x1000000, 0x20); | CODE |
| LOW | libs/dolphin/src/ar/ar.c | 356 | __ARWriteDMA((u32)dummy_data, ARAM_size + 0x0000200, 0x20); | CODE |
| LOW | libs/dolphin/src/ar/ar.c | 374 | __ARWriteDMA((u32)dummy_data, ARAM_size + 0x0400000, 0x20); | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | src/d/d_menu_collect.cpp | 804 | #if TARGET_PC // Since we allow changing wallet sizes, do something more robust. | COMMENT |
| MEDIUM | src/d/d_menu_collect.cpp | 804 | #if TARGET_PC // Since we allow changing wallet sizes, do something more robust. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | README.md | 18 | > Dusklight's official website is https://twilitrealm.dev/, any other website is not affiliated and may be promoting AI- | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | libs/JSystem/src/J3DGraphAnimator/J3DModel.cpp | 95 | J3D_WARN1(149, "%s", "Don't forget to call J3DModel::setSkinDeform\n if you set J3DMdlFlag_SkinPosCpu."); | CODE |
| LOW | libs/JSystem/src/J3DGraphAnimator/J3DModel.cpp | 99 | J3D_WARN1(154, "%s", "Don't forget to call J3DModel::setSkinDeform\n if you set J3DMdlFlag_SkinNrmCpu."); | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/mant_tear_exporter.py | 118 | CODE |