Skip to content

Enhance output summary of converter run for debugging #1343

@heinezen

Description

@heinezen

Required skills: Python

Difficulty: Easy

During a converter run, a bunch of intermediary objects are created in the processor stage, specifically AoE-like and API-like objects. These are used in the transformation from Genie Engine formats to openage formats (e.g. nyan).

The content and helper functions of the intermediary objects are used to map properties of the objects in the original game to properties in the openage API (e.g. a unit's ability). The motivation for having debug output for these objects is that this will help us detect semantic errors in the converter implementation. Because of the high number of objects in the game data, checking this during a live debug is very hard to do.

Debug output of a run contains a plaintext dump of the most relevant content and output of helper functions. We store it in a dedicated directory (assets/converted/debug) and distinguish between the runs by using timestamps for folder names. The debug output is separated by conversion stage (init, read, processor, export). A lot of stuff is already implemented (see here), but improving it can't hurt can it?

  • Log the sound files that were requested for export but not found in the export stage here
  • Execution time for each stage (read, conversion, export)

Further reading:

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: assetsInvolved with assets (images, sounds, ...)good first issueSuitable for newcomersimprovementEnhancement of an existing componentlang: pythonDone in Python code

    Type

    No type

    Projects

    Status

    ✅ Done

    Status

    converter

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions