# Character Files

Dungeonsheets expects one file per character, with a `.dnd` extension. An older python file format is still supported, but not recommended for security reasons. Details for this older style are provided below.

# Old Python Character Files

Warning

The mechanism described below is insecure since it involves directly running python modules. Do not run files that you did not write yourself and do not trust completely. Maliciously-crafted files can run python code during import time.

Previous versions of this library used python files that are directly imported to produce the appropriate values. The benefit is that this allows much more versatile content, but at the expense of allowing these files to run un-sanitized python code on your machine. This behavior is still supported for now for backwards compatibility reasons, but do so at your own risk.

An example of this syntax can be found in :ref:`this wizard example<Wizard Example (Python)>`.

System Message: ERROR/3 (`character_files.rst`, line 29); backlink

Unknown interpreted text role "ref".