Clone of the Age of Empires II engine 🚀
This report presents the forensic synthetic code analysis of SFTtech/openage, a Python project with 14,308 GitHub stars. SynthScan v2.0 examined 190,902 lines of code across 1433 source files, recording 1492 pattern matches distributed across 14 syntactic categories. The overall adjusted score of 16.2 places this repository in the Moderate AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 1492 distinct pattern matches across 14 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. 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 diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …onvert/processor/conversion/ror/pregen_subprocessor.py | 82 | # ======================================================================= | COMMENT |
| MEDIUM | …onvert/processor/conversion/ror/pregen_subprocessor.py | 84 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 183 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 185 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 189 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 329 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 331 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 337 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 339 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 368 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 370 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 376 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 458 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 460 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 463 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 465 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 468 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 470 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 500 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 502 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 505 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 547 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 549 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 553 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 555 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 561 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 563 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 606 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 608 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 611 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 613 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 674 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 676 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 681 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 683 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 972 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 974 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 979 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 981 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 988 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 990 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 996 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 998 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 1036 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 1038 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 1044 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 1046 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 1058 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 1060 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 1066 | # ======================================================================= | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 1068 | # ======================================================================= | COMMENT |
| MEDIUM | …/convert/processor/conversion/ror/nyan_subprocessor.py | 207 | # ======================================================================= | COMMENT |
| MEDIUM | …/convert/processor/conversion/ror/nyan_subprocessor.py | 209 | # ======================================================================= | COMMENT |
| MEDIUM | …/convert/processor/conversion/ror/nyan_subprocessor.py | 316 | # ======================================================================= | COMMENT |
| MEDIUM | …/convert/processor/conversion/ror/nyan_subprocessor.py | 318 | # ======================================================================= | COMMENT |
| MEDIUM | …/convert/processor/conversion/ror/nyan_subprocessor.py | 399 | # ======================================================================= | COMMENT |
| MEDIUM | …/convert/processor/conversion/ror/nyan_subprocessor.py | 401 | # ======================================================================= | COMMENT |
| MEDIUM | …/convert/processor/conversion/ror/nyan_subprocessor.py | 521 | # ======================================================================= | COMMENT |
| MEDIUM | …/convert/processor/conversion/ror/nyan_subprocessor.py | 523 | # ======================================================================= | COMMENT |
| MEDIUM | …/convert/processor/conversion/ror/nyan_subprocessor.py | 630 | # ======================================================================= | COMMENT |
| 606 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …e/convert/entity_object/conversion/combined_terrain.py | 0 | return the sound file location relative to where the file is expected to be in the modpack. | STRING |
| HIGH | …ge/convert/entity_object/conversion/combined_sprite.py | 0 | return the sound file location relative to where the file is expected to be in the modpack. | STRING |
| HIGH | …age/convert/entity_object/conversion/combined_sound.py | 0 | return the sound file location relative to where the file is expected to be in the modpack. | STRING |
| HIGH | …age/convert/entity_object/conversion/ror/genie_tech.py | 0 | upgrades attributes of units/buildings or other stats in the game. | STRING |
| HIGH | …/convert/entity_object/conversion/swgbcc/genie_tech.py | 0 | upgrades attributes of units/buildings or other stats in the game. | STRING |
| HIGH | …age/convert/entity_object/conversion/aoc/genie_tech.py | 0 | upgrades attributes of units/buildings or other stats in the game. | STRING |
| HIGH | …nvert/entity_object/export/formats/terrain_metadata.py | 0 | set the scale factor of the animation. :param factor: factor by which sprite images are scaled down at default zoom leve | STRING |
| HIGH | …onvert/entity_object/export/formats/blmask_metadata.py | 0 | set the scale factor of the animation. :param factor: factor by which sprite images are scaled down at default zoom leve | STRING |
| HIGH | …onvert/entity_object/export/formats/sprite_metadata.py | 0 | set the scale factor of the animation. :param factor: factor by which sprite images are scaled down at default zoom leve | STRING |
| HIGH | …/convert/processor/conversion/ror/tech_subprocessor.py | 0 | returns the patches for a converter group, depending on the type of its effects. | STRING |
| HIGH | …nvert/processor/conversion/swgbcc/tech_subprocessor.py | 0 | returns the patches for a converter group, depending on the type of its effects. | STRING |
| HIGH | …/convert/processor/conversion/aoc/tech_subprocessor.py | 0 | returns the patches for a converter group, depending on the type of its effects. | STRING |
| HIGH | …/convert/processor/conversion/de2/tech_subprocessor.py | 0 | returns the patches for a converter group, depending on the type of its effects. | STRING |
| HIGH | …/convert/processor/conversion/ror/tech_subprocessor.py | 0 | creates the patches for modifying attributes of entities. | STRING |
| HIGH | …nvert/processor/conversion/swgbcc/tech_subprocessor.py | 0 | creates the patches for modifying attributes of entities. | STRING |
| HIGH | …/convert/processor/conversion/aoc/tech_subprocessor.py | 0 | creates the patches for modifying attributes of entities. | STRING |
| HIGH | …/convert/processor/conversion/de2/tech_subprocessor.py | 0 | creates the patches for modifying attributes of entities. | STRING |
| HIGH | …nvert/processor/conversion/ror/modpack_subprocessor.py | 0 | organize export data (nyan objects, media, scripts, etc.) into modpacks. | STRING |
| HIGH | …nvert/processor/conversion/de1/modpack_subprocessor.py | 0 | organize export data (nyan objects, media, scripts, etc.) into modpacks. | STRING |
| HIGH | …onvert/processor/conversion/hd/modpack_subprocessor.py | 0 | organize export data (nyan objects, media, scripts, etc.) into modpacks. | STRING |
| HIGH | …rt/processor/conversion/swgbcc/modpack_subprocessor.py | 0 | organize export data (nyan objects, media, scripts, etc.) into modpacks. | STRING |
| HIGH | …nvert/processor/conversion/aoc/modpack_subprocessor.py | 0 | organize export data (nyan objects, media, scripts, etc.) into modpacks. | STRING |
| HIGH | …nvert/processor/conversion/de2/modpack_subprocessor.py | 0 | organize export data (nyan objects, media, scripts, etc.) into modpacks. | STRING |
| HIGH | …/processor/conversion/aoc_demo/modpack_subprocessor.py | 0 | organize export data (nyan objects, media, scripts, etc.) into modpacks. | STRING |
| HIGH | …nvert/processor/conversion/ror/modpack_subprocessor.py | 0 | return all modpacks that can be created from the gamedata. | STRING |
| HIGH | …nvert/processor/conversion/de1/modpack_subprocessor.py | 0 | return all modpacks that can be created from the gamedata. | STRING |
| HIGH | …onvert/processor/conversion/hd/modpack_subprocessor.py | 0 | return all modpacks that can be created from the gamedata. | STRING |
| HIGH | …rt/processor/conversion/swgbcc/modpack_subprocessor.py | 0 | return all modpacks that can be created from the gamedata. | STRING |
| HIGH | …nvert/processor/conversion/aoc/modpack_subprocessor.py | 0 | return all modpacks that can be created from the gamedata. | STRING |
| HIGH | …nvert/processor/conversion/de2/modpack_subprocessor.py | 0 | return all modpacks that can be created from the gamedata. | STRING |
| HIGH | …/processor/conversion/aoc_demo/modpack_subprocessor.py | 0 | return all modpacks that can be created from the gamedata. | STRING |
| HIGH | …essor/conversion/ror/upgrade_attribute_subprocessor.py | 0 | creates a patch for the starting popspace modify effect (id: 4). :param converter_group: tech/civ that gets the patch. : | STRING |
| HIGH | …sor/conversion/swgbcc/upgrade_resource_subprocessor.py | 0 | creates a patch for the starting popspace modify effect (id: 4). :param converter_group: tech/civ that gets the patch. : | STRING |
| HIGH | …cessor/conversion/aoc/upgrade_resource_subprocessor.py | 0 | creates a patch for the starting popspace modify effect (id: 4). :param converter_group: tech/civ that gets the patch. : | STRING |
| HIGH | …onvert/processor/conversion/ror/pregen_subprocessor.py | 0 | creates nyan objects for things that are hardcoded into the genie engine, but configurable in openage. e.g. hp. | STRING |
| HIGH | …ert/processor/conversion/swgbcc/pregen_subprocessor.py | 0 | creates nyan objects for things that are hardcoded into the genie engine, but configurable in openage. e.g. hp. | STRING |
| HIGH | …e/convert/processor/conversion/aoc/pregen_processor.py | 0 | creates nyan objects for things that are hardcoded into the genie engine, but configurable in openage. e.g. hp. | STRING |
| HIGH | …onvert/processor/conversion/ror/pregen_subprocessor.py | 0 | generate pathtype objects. :param full_data_set: genieobjectcontainer instance that contains all relevant data for the c | STRING |
| HIGH | …e/convert/processor/conversion/aoc/pregen_processor.py | 0 | generate pathtype objects. :param full_data_set: genieobjectcontainer instance that contains all relevant data for the c | STRING |
| HIGH | …ert/processor/conversion/swgbcc/pregen_subprocessor.py | 0 | generate pathtype objects. :param full_data_set: genieobjectcontainer instance that contains all relevant data for the c | STRING |
| HIGH | …cessor/conversion/ror/upgrade_resource_subprocessor.py | 0 | creates a patch for the bengali conversion resistance effect (id: 262). :param converter_group: tech/civ that gets the p | STRING |
| HIGH | …sor/conversion/swgbcc/upgrade_resource_subprocessor.py | 0 | creates a patch for the bengali conversion resistance effect (id: 262). :param converter_group: tech/civ that gets the p | STRING |
| HIGH | …cessor/conversion/aoc/upgrade_resource_subprocessor.py | 0 | creates a patch for the bengali conversion resistance effect (id: 262). :param converter_group: tech/civ that gets the p | STRING |
| HIGH | …cessor/conversion/de2/upgrade_resource_subprocessor.py | 0 | creates a patch for the bengali conversion resistance effect (id: 262). :param converter_group: tech/civ that gets the p | STRING |
| HIGH | openage/convert/processor/conversion/ror/processor.py | 0 | input game speification and media here and get a set of modpacks back. :param gamespec: gamedata from empires.dat read i | STRING |
| HIGH | openage/convert/processor/conversion/de1/processor.py | 0 | input game speification and media here and get a set of modpacks back. :param gamespec: gamedata from empires.dat read i | STRING |
| HIGH | …enage/convert/processor/conversion/swgbcc/processor.py | 0 | input game speification and media here and get a set of modpacks back. :param gamespec: gamedata from empires.dat read i | STRING |
| HIGH | openage/convert/processor/conversion/hd/processor.py | 0 | input game speification and media here and get a set of modpacks back. :param gamespec: gamedata from empires.dat read i | STRING |
| HIGH | openage/convert/processor/conversion/aoc/processor.py | 0 | input game speification and media here and get a set of modpacks back. :param gamespec: gamedata from empires.dat read i | STRING |
| HIGH | …age/convert/processor/conversion/aoc_demo/processor.py | 0 | input game speification and media here and get a set of modpacks back. :param gamespec: gamedata from empires.dat read i | STRING |
| HIGH | openage/convert/processor/conversion/de2/processor.py | 0 | input game speification and media here and get a set of modpacks back. :param gamespec: gamedata from empires.dat read i | STRING |
| HIGH | openage/convert/processor/conversion/ror/processor.py | 0 | store data from the reader in a conversion container. :param gamespec: gamedata from empires.dat file. :type gamespec: c | STRING |
| HIGH | openage/convert/processor/conversion/de1/processor.py | 0 | store data from the reader in a conversion container. :param gamespec: gamedata from empires.dat file. :type gamespec: c | STRING |
| HIGH | …enage/convert/processor/conversion/swgbcc/processor.py | 0 | store data from the reader in a conversion container. :param gamespec: gamedata from empires.dat file. :type gamespec: c | STRING |
| HIGH | openage/convert/processor/conversion/ror/processor.py | 0 | convert api-like python objects to nyan. :param full_data_set: genieobjectcontainer instance that contains all relevant | STRING |
| HIGH | openage/convert/processor/conversion/de1/processor.py | 0 | convert api-like python objects to nyan. :param full_data_set: genieobjectcontainer instance that contains all relevant | STRING |
| HIGH | openage/convert/processor/conversion/hd/processor.py | 0 | convert api-like python objects to nyan. :param full_data_set: genieobjectcontainer instance that contains all relevant | STRING |
| HIGH | …enage/convert/processor/conversion/swgbcc/processor.py | 0 | convert api-like python objects to nyan. :param full_data_set: genieobjectcontainer instance that contains all relevant | STRING |
| HIGH | openage/convert/processor/conversion/aoc/processor.py | 0 | convert api-like python objects to nyan. :param full_data_set: genieobjectcontainer instance that contains all relevant | STRING |
| HIGH | openage/convert/processor/conversion/de2/processor.py | 0 | convert api-like python objects to nyan. :param full_data_set: genieobjectcontainer instance that contains all relevant | STRING |
| 99 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | libopenage/renderer/demo/demo_6.cpp | 1 | // Copyright 2024-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/demo/demo_7.cpp | 1 | // Copyright 2025-2025 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/demo/demo_5.cpp | 1 | // Copyright 2023-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/demo/demo_4.cpp | 1 | // Copyright 2015-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/demo/tests.cpp | 1 | // Copyright 2015-2025 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/demo/demo_1.cpp | 1 | // Copyright 2023-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/demo/demo_3.cpp | 1 | // Copyright 2023-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/demo/demo_2.cpp | 1 | // Copyright 2023-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/demo/stresstest_0.cpp | 1 | // Copyright 2023-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/demo/stresstest_1.cpp | 1 | // Copyright 2024-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/stages/world/render_stage.cpp | 1 | // Copyright 2022-2025 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/stages/world/object.cpp | 1 | // Copyright 2022-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/stages/world/object.h | 1 | // Copyright 2022-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/stages/screen/render_stage.cpp | 1 | // Copyright 2022-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/stages/screen/screenshot.cpp | 1 | // Copyright 2014-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/stages/terrain/render_stage.cpp | 1 | // Copyright 2022-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/stages/terrain/model.cpp | 1 | // Copyright 2022-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/stages/skybox/render_stage.cpp | 1 | // Copyright 2022-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/stages/hud/render_stage.cpp | 1 | // Copyright 2023-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/camera/camera.h | 1 | // Copyright 2022-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/resources/texture_data.h | 21 | COMMENT | |
| LOW | libopenage/renderer/resources/texture_data.cpp | 1 | // Copyright 2015-2023 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/resources/texture_info.h | 1 | // Copyright 2017-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/resources/parser/parse_sprite.cpp | 1 | // Copyright 2021-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/resources/parser/parse_texture.cpp | 1 | // Copyright 2021-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | …bopenage/renderer/resources/parser/parse_blendmask.cpp | 1 | // Copyright 2023-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | …openage/renderer/resources/parser/parse_blendtable.cpp | 1 | // Copyright 2023-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/resources/parser/parse_palette.cpp | 1 | // Copyright 2023-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/resources/parser/parse_terrain.cpp | 1 | // Copyright 2023-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/resources/assets/asset_manager.cpp | 1 | // Copyright 2023-2023 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/vulkan/windowvk.cpp | 1 | // Copyright 2017-2023 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/gui/gui.cpp | 1 | // Copyright 2015-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/gui/guisys/link/gui_item.h | 1 | // Copyright 2015-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | …nage/renderer/gui/guisys/private/gui_renderer_impl.cpp | 1 | // Copyright 2015-2023 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | …nage/renderer/gui/guisys/private/gui_renderer_impl.cpp | 41 | // Add callbacks so that input events from the main window are propagated to the | COMMENT |
| LOW | …openage/renderer/gui/guisys/private/gui_subtree_impl.h | 61 | // QString root_dir); | COMMENT |
| LOW | …ge/renderer/gui/guisys/private/opengl_debug_logger.cpp | 1 | // Copyright 2017-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | …bopenage/renderer/gui/guisys/private/gui_ctx_setup.cpp | 1 | // Copyright 2017-2023 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | …enage/renderer/gui/guisys/private/gui_subtree_impl.cpp | 1 | // Copyright 2015-2023 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | …enage/renderer/gui/guisys/private/gui_subtree_impl.cpp | 181 | // subtree{}, | COMMENT |
| LOW | …enage/renderer/gui/guisys/private/gui_subtree_impl.cpp | 201 | // this->engine->add_root_dir_path(this->root_dir); | COMMENT |
| LOW | …enage/renderer/gui/guisys/private/gui_subtree_impl.cpp | 221 | // } | COMMENT |
| LOW | …enage/renderer/gui/guisys/private/gui_subtree_impl.cpp | 241 | // return *this; | COMMENT |
| LOW | …penage/renderer/gui/guisys/private/gui_renderer_impl.h | 1 | // Copyright 2015-2023 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | …erer/gui/guisys/private/livereload/gui_live_reloader.h | 1 | // Copyright 2015-2023 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/opengl/vertex_array.h | 21 | /// in the vector. Each buffer is bound according to its input info and each subsequent vertex | COMMENT |
| LOW | libopenage/renderer/opengl/window.cpp | 1 | // Copyright 2018-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/opengl/error.cpp | 21 | // An unacceptable value is specified for an enumerated argument. | COMMENT |
| LOW | libopenage/renderer/opengl/context.cpp | 1 | // Copyright 2015-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/opengl/context.cpp | 181 | // A numeric argument is out of range. | COMMENT |
| LOW | libopenage/renderer/opengl/shader_program.cpp | 1 | // Copyright 2013-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/renderer/opengl/renderer.cpp | 1 | // Copyright 2017-2025 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/util/pty.h | 1 | // Copyright 2014-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/util/os.cpp | 1 | // Copyright 2014-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/util/compiler.h | 21 | // clang-format off | COMMENT |
| LOW | libopenage/util/compiler.h | 41 | #endif | COMMENT |
| LOW | libopenage/util/compiler.cpp | 1 | // Copyright 2015-2025 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/util/path.h | 1 | // Copyright 2015-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/util/misc.h | 1 | // Copyright 2013-2024 the openage authors. See copying.md for legal info. | COMMENT |
| LOW | libopenage/util/strings.cpp | 1 | // Copyright 2013-2024 the openage authors. See copying.md for legal info. | COMMENT |
| 98 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | openage/assets.py | 6 | CODE | |
| LOW | openage/util/observer.py | 17 | CODE | |
| LOW | openage/util/files.py | 6 | CODE | |
| LOW | openage/util/version.py | 6 | CODE | |
| LOW | openage/util/hash.py | 6 | CODE | |
| LOW | openage/util/fsprinting.py | 7 | CODE | |
| LOW | openage/util/fslike/abstract.py | 14 | CODE | |
| LOW | openage/util/fslike/directory.py | 10 | CODE | |
| LOW | openage/util/fslike/filecollection.py | 7 | CODE | |
| LOW | openage/game/main.py | 8 | CODE | |
| LOW | openage/cabextract/cab.py | 9 | CODE | |
| LOW | openage/cabextract/test.py | 5 | CODE | |
| LOW | openage/codegen/main.py | 50 | CODE | |
| LOW | openage/testing/main.py | 5 | CODE | |
| LOW | openage/cvar/config_file.py | 7 | CODE | |
| LOW | openage/main/main.py | 6 | CODE | |
| LOW | openage/convert/main.py | 7 | CODE | |
| LOW | …age/convert/entity_object/conversion/stringresource.py | 5 | CODE | |
| LOW | openage/convert/entity_object/conversion/modpack.py | 7 | CODE | |
| LOW | …e/convert/entity_object/conversion/combined_terrain.py | 7 | CODE | |
| LOW | …e/convert/entity_object/conversion/converter_object.py | 11 | CODE | |
| LOW | …ge/convert/entity_object/conversion/combined_sprite.py | 7 | CODE | |
| LOW | …age/convert/entity_object/conversion/combined_sound.py | 7 | CODE | |
| LOW | …ge/convert/entity_object/conversion/ror/genie_sound.py | 8 | CODE | |
| LOW | …age/convert/entity_object/conversion/ror/genie_tech.py | 8 | CODE | |
| LOW | …age/convert/entity_object/conversion/ror/genie_unit.py | 8 | CODE | |
| LOW | …/convert/entity_object/conversion/swgbcc/genie_tech.py | 7 | CODE | |
| LOW | …/convert/entity_object/conversion/swgbcc/genie_unit.py | 7 | CODE | |
| LOW | …entity_object/conversion/aoc/genie_object_container.py | 8 | CODE | |
| LOW | …ge/convert/entity_object/conversion/aoc/genie_sound.py | 6 | CODE | |
| LOW | …/convert/entity_object/conversion/aoc/genie_terrain.py | 6 | CODE | |
| LOW | …age/convert/entity_object/conversion/aoc/genie_tech.py | 6 | CODE | |
| LOW | …nage/convert/entity_object/conversion/aoc/genie_civ.py | 7 | CODE | |
| LOW | …e/convert/entity_object/conversion/aoc/genie_effect.py | 7 | CODE | |
| LOW | …age/convert/entity_object/conversion/aoc/genie_unit.py | 8 | CODE | |
| LOW | …/convert/entity_object/conversion/aoc/genie_graphic.py | 6 | CODE | |
| LOW | …nvert/entity_object/conversion/aoc/genie_connection.py | 7 | CODE | |
| LOW | …e/convert/entity_object/export/media_export_request.py | 8 | CODE | |
| LOW | openage/convert/entity_object/export/metadata_export.py | 7 | CODE | |
| LOW | openage/convert/entity_object/export/texture.py | 7 | CODE | |
| LOW | openage/convert/entity_object/export/texture.py | 24 | CODE | |
| LOW | openage/convert/entity_object/export/data_definition.py | 7 | CODE | |
| LOW | …nvert/entity_object/export/formats/terrain_metadata.py | 8 | CODE | |
| LOW | …onvert/entity_object/export/formats/blmask_metadata.py | 8 | CODE | |
| LOW | …nage/convert/entity_object/export/formats/nyan_file.py | 7 | CODE | |
| LOW | …onvert/entity_object/export/formats/sprite_metadata.py | 8 | CODE | |
| LOW | …ge/convert/entity_object/export/formats/media_cache.py | 8 | CODE | |
| LOW | …nvert/entity_object/export/formats/bltable_metadata.py | 6 | CODE | |
| LOW | …/convert/processor/conversion/ror/tech_subprocessor.py | 11 | CODE | |
| LOW | …e/convert/processor/conversion/ror/civ_subprocessor.py | 8 | CODE | |
| LOW | …nvert/processor/conversion/ror/modpack_subprocessor.py | 9 | CODE | |
| LOW | …essor/conversion/ror/upgrade_attribute_subprocessor.py | 11 | CODE | |
| LOW | …ocessor/conversion/ror/upgrade_ability_subprocessor.py | 12 | CODE | |
| LOW | …onvert/processor/conversion/ror/pregen_subprocessor.py | 9 | CODE | |
| LOW | …cessor/conversion/ror/upgrade_resource_subprocessor.py | 11 | CODE | |
| LOW | openage/convert/processor/conversion/ror/processor.py | 7 | CODE | |
| LOW | …ert/processor/conversion/ror/auxiliary_subprocessor.py | 10 | CODE | |
| LOW | …convert/processor/conversion/ror/media_subprocessor.py | 8 | CODE | |
| LOW | …nvert/processor/conversion/ror/ability_subprocessor.py | 12 | CODE | |
| LOW | …nvert/processor/conversion/de1/modpack_subprocessor.py | 9 | CODE | |
| 91 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | openage/util/system.py | 13 | CODE | |
| LOW | openage/util/threading.py | 14 | CODE | |
| LOW | openage/util/filelike/abstract.py | 117 | CODE | |
| LOW | openage/util/fslike/path.py | 38 | CODE | |
| LOW | openage/util/fslike/path.py | 113 | CODE | |
| LOW | openage/util/fslike/filecollection.py | 39 | CODE | |
| LOW | openage/util/fslike/union.py | 228 | CODE | |
| LOW | openage/cabextract/cab.py | 307 | CODE | |
| LOW | openage/cabextract/cab.py | 369 | CODE | |
| LOW | openage/codegen/coord.py | 10 | CODE | |
| LOW | openage/codegen/main.py | 113 | CODE | |
| LOW | openage/codegen/main.py | 119 | CODE | |
| LOW | openage/codegen/codegen.py | 108 | CODE | |
| LOW | openage/testing/main.py | 117 | CODE | |
| LOW | openage/cvar/config_file.py | 17 | CODE | |
| LOW | openage/convert/main.py | 34 | CODE | |
| LOW | …age/convert/entity_object/conversion/aoc/genie_unit.py | 133 | CODE | |
| LOW | …age/convert/entity_object/conversion/aoc/genie_unit.py | 1170 | CODE | |
| LOW | …age/convert/entity_object/conversion/aoc/genie_unit.py | 1229 | CODE | |
| LOW | openage/convert/entity_object/export/metadata_export.py | 92 | CODE | |
| LOW | …/convert/processor/conversion/ror/tech_subprocessor.py | 74 | CODE | |
| LOW | …/convert/processor/conversion/ror/tech_subprocessor.py | 100 | CODE | |
| LOW | …e/convert/processor/conversion/ror/civ_subprocessor.py | 25 | CODE | |
| LOW | openage/convert/processor/conversion/ror/processor.py | 243 | CODE | |
| LOW | openage/convert/processor/conversion/ror/processor.py | 448 | CODE | |
| LOW | …ert/processor/conversion/ror/auxiliary_subprocessor.py | 32 | CODE | |
| LOW | …nvert/processor/conversion/ror/ability_subprocessor.py | 35 | CODE | |
| LOW | …convert/processor/conversion/de1/media_subprocessor.py | 37 | CODE | |
| LOW | …/convert/processor/conversion/hd/media_subprocessor.py | 39 | CODE | |
| LOW | …nvert/processor/conversion/swgbcc/tech_subprocessor.py | 112 | CODE | |
| LOW | …nvert/processor/conversion/swgbcc/tech_subprocessor.py | 187 | CODE | |
| LOW | …onvert/processor/conversion/swgbcc/civ_subprocessor.py | 60 | CODE | |
| LOW | …or/conversion/swgbcc/upgrade_attribute_subprocessor.py | 310 | CODE | |
| LOW | …enage/convert/processor/conversion/swgbcc/processor.py | 196 | CODE | |
| LOW | …enage/convert/processor/conversion/swgbcc/processor.py | 355 | CODE | |
| LOW | …enage/convert/processor/conversion/swgbcc/processor.py | 515 | CODE | |
| LOW | …enage/convert/processor/conversion/swgbcc/processor.py | 610 | CODE | |
| LOW | …enage/convert/processor/conversion/swgbcc/processor.py | 780 | CODE | |
| LOW | …/processor/conversion/swgbcc/auxiliary_subprocessor.py | 35 | CODE | |
| LOW | …/processor/conversion/swgbcc/auxiliary_subprocessor.py | 408 | CODE | |
| LOW | …rt/processor/conversion/swgbcc/ability_subprocessor.py | 78 | CODE | |
| LOW | …rt/processor/conversion/swgbcc/ability_subprocessor.py | 606 | CODE | |
| LOW | …rt/processor/conversion/swgbcc/ability_subprocessor.py | 845 | CODE | |
| LOW | …rt/processor/conversion/swgbcc/ability_subprocessor.py | 1421 | CODE | |
| LOW | …/convert/processor/conversion/aoc/tech_subprocessor.py | 114 | CODE | |
| LOW | …/convert/processor/conversion/aoc/tech_subprocessor.py | 183 | CODE | |
| LOW | …/convert/processor/conversion/aoc/tech_subprocessor.py | 397 | CODE | |
| LOW | …e/convert/processor/conversion/aoc/civ_subprocessor.py | 62 | CODE | |
| LOW | …e/convert/processor/conversion/aoc/civ_subprocessor.py | 187 | CODE | |
| LOW | …e/convert/processor/conversion/aoc/civ_subprocessor.py | 422 | CODE | |
| LOW | …essor/conversion/aoc/upgrade_attribute_subprocessor.py | 355 | CODE | |
| LOW | …essor/conversion/aoc/upgrade_attribute_subprocessor.py | 2198 | CODE | |
| LOW | openage/convert/processor/conversion/aoc/processor.py | 513 | CODE | |
| LOW | openage/convert/processor/conversion/aoc/processor.py | 631 | CODE | |
| LOW | openage/convert/processor/conversion/aoc/processor.py | 740 | CODE | |
| LOW | openage/convert/processor/conversion/aoc/processor.py | 963 | CODE | |
| LOW | openage/convert/processor/conversion/aoc/processor.py | 1202 | CODE | |
| LOW | openage/convert/processor/conversion/aoc/processor.py | 1227 | CODE | |
| LOW | openage/convert/processor/conversion/aoc/processor.py | 1340 | CODE | |
| LOW | …/convert/processor/conversion/aoc/nyan_subprocessor.py | 625 | CODE | |
| 66 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | openage/util/fslike/path.py | 365 | # Create a temporary directory using tempfile.mkdtemp | COMMENT |
| MEDIUM | …nage/convert/entity_object/conversion/aoc/genie_civ.py | 93 | # Create an object for the team bonus. We use the effect ID + 10000 to avoid | COMMENT |
| MEDIUM | …nage/convert/entity_object/conversion/aoc/genie_civ.py | 98 | # Create an object for the tech tree bonus. We use the effect ID + 10000 to avoid | COMMENT |
| MEDIUM | openage/convert/processor/conversion/ror/processor.py | 66 | # Create a new container for the conversion process | COMMENT |
| MEDIUM | openage/convert/processor/conversion/ror/processor.py | 75 | # Create the custom openage formats (nyan, sprite, terrain) | COMMENT |
| MEDIUM | openage/convert/processor/conversion/ror/processor.py | 299 | # Create the villager task group | COMMENT |
| MEDIUM | openage/convert/processor/conversion/de1/processor.py | 57 | # Create a new container for the conversion process | COMMENT |
| MEDIUM | openage/convert/processor/conversion/de1/processor.py | 66 | # Create the custom openage formats (nyan, sprite, terrain) | COMMENT |
| MEDIUM | openage/convert/processor/conversion/hd/processor.py | 57 | # Create a new container for the conversion process | COMMENT |
| MEDIUM | openage/convert/processor/conversion/hd/processor.py | 66 | # Create the custom openage formats (nyan, sprite, terrain, etc.) | COMMENT |
| MEDIUM | …enage/convert/processor/conversion/swgbcc/processor.py | 72 | # Create a new container for the conversion process | COMMENT |
| MEDIUM | …enage/convert/processor/conversion/swgbcc/processor.py | 81 | # Create the custom openae formats (nyan, sprite, terrain) | COMMENT |
| MEDIUM | …enage/convert/processor/conversion/swgbcc/processor.py | 561 | # Create the villager task group | COMMENT |
| MEDIUM | …enage/convert/processor/conversion/swgbcc/processor.py | 652 | # Create a stat upgrade for other techs | COMMENT |
| MEDIUM | …nvert/processor/conversion/aoc/modpack_subprocessor.py | 91 | # Create the files | COMMENT |
| MEDIUM | …nvert/processor/conversion/aoc/modpack_subprocessor.py | 115 | # Create an import tree from the files | COMMENT |
| MEDIUM | openage/convert/processor/conversion/aoc/processor.py | 84 | # Create a new container for the conversion process | COMMENT |
| MEDIUM | openage/convert/processor/conversion/aoc/processor.py | 93 | # Create the custom openae formats (nyan, sprite, terrain) | COMMENT |
| MEDIUM | openage/convert/processor/conversion/aoc/processor.py | 858 | # Create a stat upgrade for other techs | COMMENT |
| MEDIUM | openage/convert/processor/conversion/aoc/processor.py | 1007 | # Create the villager task group | COMMENT |
| MEDIUM⚡ | …/convert/processor/conversion/aoc/nyan_subprocessor.py | 712 | # Create a diff | COMMENT |
| MEDIUM | …vert/processor/conversion/aoc/modifier_subprocessor.py | 135 | # Create a modifier for each matching resource spot | COMMENT |
| MEDIUM | …rocessor/conversion/aoc/upgrade_effect_subprocessor.py | 74 | # Create a new attack effect, then patch it in | COMMENT |
| MEDIUM | …rocessor/conversion/aoc/upgrade_effect_subprocessor.py | 356 | # Create a new attack resistance, then patch it in | COMMENT |
| MEDIUM | …nvert/processor/conversion/aoc/ability_subprocessor.py | 7427 | # Create the animation object | COMMENT |
| MEDIUM | openage/convert/processor/conversion/de2/processor.py | 63 | # Create a new container for the conversion process | COMMENT |
| MEDIUM | openage/convert/processor/conversion/de2/processor.py | 72 | # Create the custom openae formats (nyan, sprite, terrain) | COMMENT |
| MEDIUM | …age/convert/processor/conversion/aoc_demo/processor.py | 56 | # Create a new container for the conversion process | COMMENT |
| MEDIUM | …age/convert/processor/conversion/aoc_demo/processor.py | 65 | # Create the custom openae formats (nyan, sprite, terrain) | COMMENT |
| MEDIUM | openage/convert/processor/export/media_exporter.py | 262 | # Create a manager for sharing data between the workers and main process | COMMENT |
| MEDIUM | openage/convert/processor/export/media_exporter.py | 273 | # Create a pool of workers | COMMENT |
| MEDIUM | openage/convert/value_object/read/genie_structure.py | 338 | # Create an array from the subdata structures | COMMENT |
| MEDIUM | openage/convert/value_object/read/genie_structure.py | 506 | # Create the array | COMMENT |
| MEDIUM | openage/nyan/nyan_structs.py | 115 | # Create a new member for every child with self as parent and origin | COMMENT |
| MEDIUM | openage/nyan/nyan_structs.py | 138 | # Create a new member with self as parent and origin | COMMENT |
| MEDIUM | openage/nyan/nyan_structs.py | 151 | # Create a new member with self as parent | COMMENT |
| MEDIUM | openage/nyan/nyan_structs.py | 308 | # Create a new member for every child with self as parent | COMMENT |
| MEDIUM | buildsystem/codecompliance/clangtidy.py | 25 | # Create the checks string | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | openage/util/files.py | 35 | def read_nullterminated_string(fileobj: FSLikeObject, maxlen: int = 255) -> bytes: | CODE |
| LOW | openage/util/fslike/test.py | 132 | def is_filesystem_case_sensitive(): | CODE |
| LOW | …e/convert/entity_object/conversion/combined_terrain.py | 81 | def get_relative_terrain_location(self) -> str: | CODE |
| LOW | …e/convert/entity_object/conversion/combined_terrain.py | 97 | def resolve_graphics_location(self) -> str: | CODE |
| LOW | …e/convert/entity_object/conversion/converter_object.py | 279 | def _create_raw_api_object_dict(self, subobject_list: list[RawAPIObject]) -> None: | CODE |
| LOW | …ge/convert/entity_object/conversion/combined_sprite.py | 91 | def get_relative_sprite_location(self) -> str: | CODE |
| LOW | …ge/convert/entity_object/conversion/combined_sprite.py | 110 | def resolve_graphics_location(self) -> str: | CODE |
| LOW | …age/convert/entity_object/conversion/combined_sound.py | 83 | def get_relative_file_location(self) -> str: | CODE |
| LOW | …age/convert/entity_object/conversion/aoc/genie_tech.py | 498 | def replaces_researchable_tech(self) -> typing.Union[GenieTechEffectBundleGroup, None]: | CODE |
| LOW | …cessor/conversion/ror/upgrade_resource_subprocessor.py | 31 | def building_conversion_upgrade( | CODE |
| LOW⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 344 | def building_line_to_game_entity(building_line): | CODE |
| LOW⚡ | …/convert/processor/conversion/ror/nyan_subprocessor.py | 475 | def ambient_group_to_game_entity(ambient_group): | CODE |
| LOW | …ert/processor/conversion/ror/auxiliary_subprocessor.py | 32 | def get_creatable_game_entity(line: GenieGameEntityGroup) -> None: | CODE |
| LOW | …nvert/processor/conversion/ror/ability_subprocessor.py | 35 | def apply_discrete_effect_ability( | CODE |
| LOW | …nvert/processor/conversion/ror/ability_subprocessor.py | 360 | def game_entity_stance_ability(line: GenieGameEntityGroup) -> ForwardRef: | CODE |
| LOW | …ert/processor/conversion/swgbcc/pregen_subprocessor.py | 220 | def generate_exchange_objects( | CODE |
| LOW | …sor/conversion/swgbcc/upgrade_resource_subprocessor.py | 31 | def assault_mech_anti_air_upgrade( | CODE |
| LOW | …sor/conversion/swgbcc/upgrade_resource_subprocessor.py | 56 | def berserk_heal_rate_upgrade( | CODE |
| LOW | …sor/conversion/swgbcc/upgrade_resource_subprocessor.py | 148 | def building_conversion_upgrade( | CODE |
| LOW | …sor/conversion/swgbcc/upgrade_resource_subprocessor.py | 353 | def faith_recharge_rate_upgrade( | CODE |
| LOW | …sor/conversion/swgbcc/upgrade_resource_subprocessor.py | 654 | def shield_dropoff_time_upgrade( | CODE |
| LOW | …sor/conversion/swgbcc/upgrade_resource_subprocessor.py | 679 | def shield_power_core_upgrade( | CODE |
| LOW | …sor/conversion/swgbcc/upgrade_resource_subprocessor.py | 704 | def shield_recharge_rate_upgrade( | CODE |
| LOW⚡ | …nvert/processor/conversion/swgbcc/nyan_subprocessor.py | 369 | def building_line_to_game_entity(building_line: GenieBuildingLineGroup) -> None: | CODE |
| LOW⚡ | …nvert/processor/conversion/swgbcc/nyan_subprocessor.py | 530 | def ambient_group_to_game_entity(ambient_group: GenieAmbientGroup) -> None: | CODE |
| LOW | …/processor/conversion/swgbcc/auxiliary_subprocessor.py | 35 | def get_creatable_game_entity(line: GenieGameEntityGroup) -> None: | CODE |
| LOW | …rt/processor/conversion/swgbcc/ability_subprocessor.py | 41 | def active_transform_to_ability(line: GenieGameEntityGroup) -> ForwardRef: | CODE |
| LOW | …rt/processor/conversion/swgbcc/ability_subprocessor.py | 57 | def apply_continuous_effect_ability( | CODE |
| LOW | …rt/processor/conversion/swgbcc/ability_subprocessor.py | 78 | def apply_discrete_effect_ability( | CODE |
| LOW | …rt/processor/conversion/swgbcc/ability_subprocessor.py | 385 | def attribute_change_tracker_ability(line) -> ForwardRef: | CODE |
| LOW | …rt/processor/conversion/swgbcc/ability_subprocessor.py | 540 | def exchange_resources_ability(line: GenieGameEntityGroup) -> ForwardRef: | CODE |
| LOW | …rt/processor/conversion/swgbcc/ability_subprocessor.py | 1324 | def provide_contingent_ability(line: GenieGameEntityGroup) -> ForwardRef: | CODE |
| LOW | …rt/processor/conversion/swgbcc/ability_subprocessor.py | 1340 | def regenerate_attribute_ability(line: GenieGameEntityGroup) -> ForwardRef: | CODE |
| LOW | …rt/processor/conversion/swgbcc/ability_subprocessor.py | 1693 | def send_back_to_task_ability(line: GenieGameEntityGroup) -> ForwardRef: | CODE |
| LOW | …essor/conversion/aoc/upgrade_attribute_subprocessor.py | 517 | def attack_warning_sound_upgrade( | CODE |
| LOW | …essor/conversion/aoc/upgrade_attribute_subprocessor.py | 1113 | def garrison_capacity_upgrade( | CODE |
| LOW | …essor/conversion/aoc/upgrade_attribute_subprocessor.py | 2665 | def tribute_inefficiency_upgrade( | CODE |
| LOW | …ocessor/conversion/aoc/upgrade_ability_subprocessor.py | 43 | def apply_continuous_effect_ability( | CODE |
| LOW | …ocessor/conversion/aoc/upgrade_ability_subprocessor.py | 229 | def apply_discrete_effect_ability( | CODE |
| LOW | …ocessor/conversion/aoc/upgrade_ability_subprocessor.py | 438 | def attribute_change_tracker_ability( | CODE |
| LOW | …ocessor/conversion/aoc/upgrade_ability_subprocessor.py | 2055 | def create_command_sound_patch( | CODE |
| LOW | …cessor/conversion/aoc/upgrade_resource_subprocessor.py | 31 | def berserk_heal_rate_upgrade( | CODE |
| LOW | …cessor/conversion/aoc/upgrade_resource_subprocessor.py | 207 | def building_conversion_upgrade( | CODE |
| LOW | …cessor/conversion/aoc/upgrade_resource_subprocessor.py | 375 | def chinese_tech_discount_upgrade( | CODE |
| LOW | …cessor/conversion/aoc/upgrade_resource_subprocessor.py | 400 | def construction_speed_upgrade( | CODE |
| LOW | …cessor/conversion/aoc/upgrade_resource_subprocessor.py | 425 | def conversion_resistance_upgrade( | CODE |
| LOW | …cessor/conversion/aoc/upgrade_resource_subprocessor.py | 450 | def conversion_resistance_min_rounds_upgrade( | CODE |
| LOW | …cessor/conversion/aoc/upgrade_resource_subprocessor.py | 475 | def conversion_resistance_max_rounds_upgrade( | CODE |
| LOW | …cessor/conversion/aoc/upgrade_resource_subprocessor.py | 525 | def faith_recharge_rate_upgrade( | CODE |
| LOW | …cessor/conversion/aoc/upgrade_resource_subprocessor.py | 705 | def gather_food_efficiency_upgrade( | CODE |
| LOW | …cessor/conversion/aoc/upgrade_resource_subprocessor.py | 730 | def gather_wood_efficiency_upgrade( | CODE |
| LOW | …cessor/conversion/aoc/upgrade_resource_subprocessor.py | 755 | def gather_gold_efficiency_upgrade( | CODE |
| LOW | …cessor/conversion/aoc/upgrade_resource_subprocessor.py | 780 | def gather_stone_efficiency_upgrade( | CODE |
| LOW | …cessor/conversion/aoc/upgrade_resource_subprocessor.py | 920 | def herding_dominance_upgrade( | CODE |
| LOW | …cessor/conversion/aoc/upgrade_resource_subprocessor.py | 1334 | def starting_villagers_upgrade( | CODE |
| LOW | …cessor/conversion/aoc/upgrade_resource_subprocessor.py | 1359 | def starting_population_space_upgrade( | CODE |
| LOW | …cessor/conversion/aoc/upgrade_resource_subprocessor.py | 1493 | def tribute_inefficiency_upgrade( | CODE |
| LOW | …cessor/conversion/aoc/upgrade_resource_subprocessor.py | 1518 | def wonder_time_increase_upgrade( | CODE |
| LOW | openage/convert/processor/conversion/aoc/processor.py | 266 | def extract_genie_effect_bundles( | CODE |
| LOW | openage/convert/processor/conversion/aoc/processor.py | 359 | def extract_building_connections( | CODE |
| 65 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | openage/util/fslike/path.py | 351 | # Close the file descriptor to release resources | COMMENT |
| LOW | openage/convert/processor/conversion/ror/processor.py | 317 | # Check if the tech unlocks other lines | COMMENT |
| LOW | …nvert/processor/conversion/ror/ability_subprocessor.py | 168 | # Check if the object for the animation has been created before | COMMENT |
| LOW | …enage/convert/processor/conversion/swgbcc/processor.py | 408 | # Check if this is a stacked unit (gate or command center) | COMMENT |
| LOW | …enage/convert/processor/conversion/swgbcc/processor.py | 435 | # Check if we have to create a GenieStackBuildingGroup | COMMENT |
| LOW | …enage/convert/processor/conversion/swgbcc/processor.py | 632 | # Check if the tech is an age upgrade | COMMENT |
| LOW | …rt/processor/conversion/swgbcc/ability_subprocessor.py | 192 | # Check if the object for the animation has been created before | COMMENT |
| LOW | …/convert/processor/conversion/aoc/tech_subprocessor.py | 445 | # Check if the tech actually costs an amount of the defined resource | COMMENT |
| LOW | …essor/conversion/aoc/upgrade_attribute_subprocessor.py | 628 | # Check if the unit line actually costs food | COMMENT |
| LOW | …essor/conversion/aoc/upgrade_attribute_subprocessor.py | 733 | # Check if the unit line actually costs wood | COMMENT |
| LOW | …essor/conversion/aoc/upgrade_attribute_subprocessor.py | 838 | # Check if the unit line actually costs gold | COMMENT |
| LOW | …essor/conversion/aoc/upgrade_attribute_subprocessor.py | 943 | # Check if the unit line actually costs stone | COMMENT |
| LOW | openage/convert/processor/conversion/aoc/processor.py | 655 | # Check if we have to create a GenieStackBuildingGroup | COMMENT |
| LOW | openage/convert/processor/conversion/aoc/processor.py | 666 | # Check if the building is part of an existing line. | COMMENT |
| LOW | openage/convert/processor/conversion/aoc/processor.py | 695 | # Check if the upgrade target is correct | COMMENT |
| LOW | openage/convert/processor/conversion/aoc/processor.py | 804 | # Check if the tech is an age upgrade | COMMENT |
| LOW | …vert/processor/conversion/aoc/modifier_subprocessor.py | 108 | # Check if the work value is 1 (with some rounding error margin) | COMMENT |
| LOW⚡ | …e/convert/processor/conversion/aoc/pregen_processor.py | 1796 | # Assign property to modifier | COMMENT |
| LOW⚡ | …e/convert/processor/conversion/aoc/pregen_processor.py | 1836 | # Assign property to modifier | COMMENT |
| LOW | …e/convert/processor/conversion/aoc/pregen_processor.py | 218 | # Check if command is in queue | COMMENT |
| LOW | …e/convert/processor/conversion/aoc/pregen_processor.py | 1876 | # Assign property to modifier | COMMENT |
| LOW | …nvert/processor/conversion/aoc/ability_subprocessor.py | 170 | # Check if the object for the animation has been created before | COMMENT |
| LOW | …nvert/processor/conversion/aoc/ability_subprocessor.py | 464 | # Check if the object for the animation has been created before | COMMENT |
| LOW | …nvert/processor/conversion/aoc/ability_subprocessor.py | 2321 | # Check if the object for the animation has been created before | COMMENT |
| LOW | …nvert/processor/conversion/aoc/ability_subprocessor.py | 2726 | # Check if the object for the animation has been created before | COMMENT |
| LOW | …nvert/processor/conversion/aoc/ability_subprocessor.py | 4159 | # Check if the object for the animation has been created before | COMMENT |
| LOW | …nvert/processor/conversion/aoc/ability_subprocessor.py | 4431 | # Check if the object for the animation has been created before | COMMENT |
| LOW | …nvert/processor/conversion/aoc/ability_subprocessor.py | 6802 | # Check if terrain type is covered by terrain restriction | COMMENT |
| LOW | …nvert/processor/conversion/aoc/ability_subprocessor.py | 7125 | # Check if contingents are stored in the unit before creating the ability | COMMENT |
| LOW | openage/convert/value_object/read/value_members.py | 402 | # Check if members have correct type | COMMENT |
| LOW | openage/convert/service/init/version_detect.py | 41 | # Check if any of the known paths for the file exists | COMMENT |
| LOW | openage/convert/service/init/version_detect.py | 104 | # Check if any of the known paths for the file exists | COMMENT |
| LOW | openage/convert/service/init/version_detect.py | 228 | # Check if there is a media cache file and save the path if it exists | COMMENT |
| LOW | openage/nyan/import_tree.py | 350 | # Check if the fqon is in the namespace by comparing their identifiers | COMMENT |
| LOW | openage/nyan/import_tree.py | 358 | # Check if the namespace node is an object | COMMENT |
| LOW | openage/nyan/nyan_structs.py | 1041 | # Check if operator type matches with member type | COMMENT |
| LOW | openage/nyan/nyan_structs.py | 1048 | # Check if value is compatible with member type | COMMENT |
| LOW | openage/nyan/nyan_structs.py | 1168 | # Check if the line gets too long | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | openage/util/observer.py | 103 | def set_changed(self) -> None: | CODE |
| LOW | …e/convert/entity_object/conversion/converter_object.py | 546 | def set_filename(self, filename: str, suffix: str = "nyan") -> None: | CODE |
| LOW | …e/convert/entity_object/conversion/converter_object.py | 557 | def set_location(self, location: typing.Union[str, ForwardRef]) -> None: | CODE |
| LOW | …e/convert/entity_object/export/media_export_request.py | 56 | def set_source_filename(self, filename: str) -> None: | CODE |
| LOW | …e/convert/entity_object/export/media_export_request.py | 68 | def set_target_filename(self, filename: str) -> None: | CODE |
| LOW | …e/convert/entity_object/export/media_export_request.py | 80 | def set_targetdir(self, targetdir: str) -> None: | CODE |
| LOW | openage/convert/entity_object/export/data_definition.py | 35 | def set_filename(self, filename: str) -> None: | CODE |
| LOW | openage/convert/entity_object/export/data_definition.py | 47 | def set_targetdir(self, targetdir: str) -> None: | CODE |
| LOW | …nvert/entity_object/export/formats/terrain_metadata.py | 122 | def set_blendtable(self, table_id: int, filename: str) -> None: | CODE |
| LOW | …nvert/entity_object/export/formats/terrain_metadata.py | 136 | def set_scalefactor(self, factor: typing.Union[int, float]) -> None: | CODE |
| LOW | …onvert/entity_object/export/formats/blmask_metadata.py | 77 | def set_scalefactor(self, factor: typing.Union[int, float]) -> None: | CODE |
| LOW⚡ | …nage/convert/entity_object/export/formats/nyan_file.py | 124 | def set_import_tree(self, import_tree: ImportTree) -> None: | CODE |
| LOW⚡ | …nage/convert/entity_object/export/formats/nyan_file.py | 134 | def set_modpack_name(self, modpack_name: str) -> None: | CODE |
| LOW⚡ | …nage/convert/entity_object/export/formats/nyan_file.py | 140 | def set_targetdir(self, targetdir: str) -> None: | CODE |
| LOW | …onvert/entity_object/export/formats/sprite_metadata.py | 132 | def set_scalefactor(self, factor: typing.Union[int, float]) -> None: | CODE |
| LOW | …nvert/entity_object/export/formats/modpack_manifest.py | 60 | def set_hashing_func(self, hashing_func: str) -> None: | CODE |
| LOW | …ge/convert/entity_object/export/formats/media_cache.py | 90 | def set_hash_func(self, hash_func: str) -> None: | CODE |
| LOW | …nvert/entity_object/export/formats/bltable_metadata.py | 40 | def set_blendtabe(self, table: tuple) -> None: | CODE |
| LOW | …nvert/processor/conversion/aoc/modpack_subprocessor.py | 147 | def _set_static_aliases(modpack: Modpack, import_tree: ImportTree) -> None: | CODE |
| LOW | openage/convert/tool/api_export.py | 124 | def set_static_aliases(import_tree: ImportTree) -> None: | CODE |
| LOW | openage/nyan/import_tree.py | 122 | def set_alias(self, alias: str) -> None: | CODE |
| LOW | openage/nyan/nyan_structs.py | 287 | def update_inheritance(self, new_inherited_member: InheritedNyanMember) -> None: | CODE |
| LOW | openage/nyan/nyan_structs.py | 966 | def set_value(self, value, operator: MemberOperator = None) -> None: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | libopenage/renderer/renderer.h | 79 | /// Stores the display framebuffer into a CPU-accessible data object. Essentially, this takes a screenshot. | COMMENT |
| LOW | …ert/processor/conversion/aoc/auxiliary_subprocessor.py | 728 | # we can just return the logic element of the only required tech | COMMENT |
| LOW | openage/convert/value_object/read/read_members.py | 384 | # no xrefs supported yet.. just set to true as if they were resolved. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | openage/testing/list_processor.py | 93 | except Exception as exc: | CODE |
| LOW | openage/convert/service/read/gamedata.py | 79 | except Exception: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | doc/code_style/mom.cpp | 233 | // TODO: implement | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | libopenage/renderer/gui/guisys/link/gui_item_link.h | 120 | static_assert(can_call<F, Args...>{}, "One of possible causes: if you're passing SomethingLink*, then don't forget to # | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …e/convert/entity_object/export/formats/modpack_info.py | 153 | CODE |