Index: binaries/data/mods/public/simulation/templates/template_structure.xml =================================================================== --- binaries/data/mods/public/simulation/templates/template_structure.xml +++ binaries/data/mods/public/simulation/templates/template_structure.xml @@ -93,6 +93,15 @@ 2.0 + + + 1.0 + 1.0 + 1.0 + 1.0 + + + Index: source/tools/entity/checkrefs.py =================================================================== --- source/tools/entity/checkrefs.py +++ source/tools/entity/checkrefs.py @@ -285,19 +285,20 @@ cmp_researcher = entity.find('Researcher') if cmp_researcher is not None: - techString = cmp_researcher.find('Technologies').text - for tech in split(r'\s+', techString): - if not tech: - continue - if tech.startswith('-'): - continue - if '{civ}' in tech and cmp_identity is not None and cmp_identity.find('Civ') is not None: - civ = cmp_identity.find('Civ').text - # TODO: This is a hack for a custom civ phase. - if tech.startswith('phase') and civ != 'athen': - civ = 'generic' - tech = tech.replace('{civ}', civ) - self.deps.append((str(fp), f'simulation/data/technologies/{tech}.json')) + techString = cmp_researcher.find('Technologies') + if techString is not None: + for tech in split(r'\s+', techString.text): + if not tech: + continue + if tech.startswith('-'): + continue + if '{civ}' in tech and cmp_identity is not None and cmp_identity.find('Civ') is not None: + civ = cmp_identity.find('Civ').text + # TODO: This is a hack for a custom civ phase. + if tech.startswith('phase') and civ != 'athen': + civ = 'generic' + tech = tech.replace('{civ}', civ) + self.deps.append((str(fp), f'simulation/data/technologies/{tech}.json')) def append_variant_dependencies(self, variant, fp): variant_file = variant.get('file')