Vou dar uma direção basica pra vc fazer o q postou ae:
Pra uma unidade que ja existe no banco de dados ser recrutável durante a campanha ela tem que estar estipulada nas seguintes partes:
building_units_allowed -> Define em qual construção uma unidade pode ser recrutada
commander_unit_permissions -> Define qual unidade pode ser usada como general
units_to_groupings_military_permissions -> Define qual facção ou grupo de facções, podem usar uma certa unidade
Tem outras uteis tb que eu falo depois.
Bom… A primeira coisa q vc precisa saber é que algumas unidades estão incluídas em alguns desses bancos de dados e em outros não… Depende da função de cada uma delas no jogo.
Exemplo:
Pra alguma unidade poder ser recrutável como general ela precisa estar incluída tanto no commander_unit_permissions, como no
units_to_groupings_military_permissions, e pra uma unidade ser recrutável sem ser general, numa região que tenha um quartel lvl 4 (exemplo), ela vai precisar estar estipulada no units_to_groupings_military_permissions daquela facção e estar incluída no building_units_allowed do quartel lvl4 da cultura q vc quiser.
Mas como eu disse… não é necessário que todas estejam estipuladas em tudo… Um general por exemplo não precisa estar vinculado no banco de dados do building_units_allowed pq ele por default ja vai ser recrutável em qualquer região sua.
Dando outro exemplo… Pra adicionar os Oathsworn pra Galatia como general, vc só precisa adicionar eles no commander_unit_permissions. Você não precisa adicionar eles tb no units_to_groupings_military_permissions pq se Galatia consegue recrutar eles normalmente, então eles ja estão incluídos la.
Editado: Mal como vc me falou por mensagem galatia não tem Oathsworns… então vc teria que adicionar ele no units_to_groupings_military_permissions tb… Mal por isso ^^"
Porém, Se pra adicionar os Royal Thorax Swordsmen (Por exemplo) pra Atenas como general, vc terá que incluir essa unidade tanto no commander_unit_permissions, como units_to_groupings_military_permissions. Pq os thorax não estão incluídos pra atenas.
Fora isso, como vc notou tb… a especificação das facções no units_to_groupings_military_permissions… é meio complicada… Algumas facções estão muito bem especificadas como “sparta” ou “seleucid”… Ja outras estão como um sub conjunto de facção como por exemplo “african” ou “gallic”… Nesses dois últimos existem várias facções incluídas nesse subgrupo… Em gallic provavelmente esta nervii, galatia, arverni, boii, etc… Então se vc adiciona uma unidade pra gallic… todas essas facções vão poder usa-la tb.
Então pra colocar alguma unidade como exclusiva de algum deles é meio chato, mas da pra fazer tb…
Nesse caso em vez de adicionar a unidade no units_to_groupings_military_permissions, vc adiciona na
parte do banco de dados com o nome units_to_exclusive_faction_permissions, a única dificuldade de usar esse banco de dados é que ele é o oposto do outro… o outro é especifico de menos, e esse é específico demais ^^"…
PS: Eu corrigi essa parte pq estava errada, ao contrário do que eu disse antes pra usar units_to_exclusive_faction_permissions, vc não pode adicionar no units_to_groupings_military_permissions tb… Tipo… se vc colocar nos dois não vai dar certo ^^"… Então se for usar o units_to_exclusive_faction_permissions pra adicionar alguma unidade pra uma facção, não adicione a mesma unidade no outro.
Tipo vc vai achar vários tipos de especificação de fação nos diversos bancos de dados do jogo… Como eu disse antes… "african" no units_to_groupings_military_permissions vale pra todas as facções africanas, como Gaetuli, Masaesyli, Garamantia, em qualquer campanha do jogo… Ja em outras partes como no units_to_exclusive_faction_permissions, vc tem definições bem mais específicas, como: rom_garamantia (garamantia na campanha principal) emp_garamantia (garamantia na campanha de augustos), etc… tem diferenciação inclusive entre facções rebeldes ou não rebeldes (no caso de guerra civil)…
Então se vc quiser que algum tipo de unidade seja exclusiva apenas dos arvernis vc precisaria incluir todas as subcategoria deles tipo:
rom_arverni -> arverni na campanha principal
rom_arverni_civil_war ->facção rebelde dos arverni na campanha principal
gaul_arverni -> arverni na campanha de caesar em gaul
rom_arverni_civil_war -> facção rebelde dos arverni na campanha de caesar em gaul
etc…
Em geral existe os prefixos: rom (pra campanha principal) pun (pra haniball at the gates), gaul (pra caesar in gaul) emp (pra campanha de augustos e pel (pra campanha do wrath of sparta) e o sufixo _civil_war pra facções que são jogáveis e portanto possuem rebeldes no caso de guerra civil… Porém nem toda as facções estão presentes em todas as campanhas então não é preciso usar todos eles pra todas as facções… (inclusive acho q se vc usar um prefixo pra uma facção que não existe numa campanha, o jogo vai dar erro na abertura… Esse é um dos motivos que torna importante vc usar essas referências só na base do Ctrl+C Ctrl+V… Tipo se vc copiou todos os dados do banco de dados original, significa q vc só vai usar um pun_arveni_civil_war se ele realmente existe la… Mas enfim… vc precisa ter esse tipo de detalhe na cabeça. E claro se vc não colocar em algum deles… ele não vai ter … Ex: se vc excluir uma unidade apenas de rom_arverni apenas arverni da campanha principal não terá essa unidades, a facção rebelde de arverni dessa campanha e o arverni das outras campanhas ainda vão ter essa unidade. Pois é… complicado XD
Mas prosseguindo…
Se você quiser adicionar uma unidade de uma facção para outra com culturas diferentes, ou mesmo deixar uma unidade como sendo específica para generais… Você vai precisar mexer na parte building_units_allowed… Aqui vc vai remover ou adicionar as unidades pra cada construção e nivel de construção que você quer q a unidade especificada seja recrutável (ou que vc não quer que seja recrutável)… Nessa parte não tem muito segredo… acho que o único detalhe q vc tem q ter cuidado é colocar um número ÚNICO pra coluna “key” q vc adicionar… Isso é tipo um código de diferenciação que o jogo usa… então esse número tem que ser diferente de todos os outros números q tem no jogo original, e de preferência diferente de qualquer outro número que outro mod usar (pro seu mod ficar compatível com os outros)… Eu aconselho vc usar um número bem grande… assim aumenta as chances dele ser único… E eu acho que não tem limite pro tamanho do número… (acho) Então escolhe aleatório como 12654792… q deve funcionar de boa.
Bom eu ja falei pra vc que a parte de custom battle fica numa parte específica do banco de dados não é?.. Então se você quiser fazer mudanças que alterem as custom battle alem da campanha, vc tem que alterar os valores do banco de dados: units_custom_battle_permissions
Só tem um detalhe a mais que eu precisaria te falar… seria em relação as unidades que podem dar upgrades… Que são especificas de roma e cartago… Tipo no caso o praetorian q vc quer mudar… Pra ficar certo, e a atualização de um triari ser um praetorian, vc precisa mexer no banco de dados technology_unit_upgrades… Aqui vc estipula a tecnologia que vai transformar uma unidade na outra… No caso… vc precisa tirar a referencia que faz pro triari se tornar um vet legionário, e colocar uma com triari virando praetorian no lugar… Pra isso vc vai precisar apagar todas as referencias antigas do triari e colocar as novas do triari pro praetorian, do praetorian pro guard praetorian e tb do triari por guard praetorian… PS: Tem o detalhe que os triari tb estão em barcos, vc vai notar que nesse mesmo banco de dados tem as referências pra eles… Mas trocar eles nos barcos é um pouco mais complicado… Então eu deixo pra falar nisso depois se vc quiser fazer essas troca tb.
Bom tem um esquema que vc mencionou ae que eu na verdade não sei fazer pq eu nunca tentei antes XD… que é adicionar auxiliares… Isso pq eu imagino q vc quer que os auxiliares sejam recrutáveis apenas em regiões específicas do mapa não é? Bom… eu até imagino como faz isso… mas eu não tenho certeza… precisaria dar uma fuçada antes.
E por ultimo deixa só eu reforçar aquela questão de sobescrever ou adicionar informações no banco de dados.
Eu acho que eu complico muito essa parte (bom provavelmente eu complico muito todas as partes XD… Mas enfim)… Porém é bem simples
Se você deixar o nome do banco de dados do jeito que ele é originalmente, o jogo vai substituir aquela parte dos dados pela sua… Ou seja… se vc deixar a parte units_to_groupings_military_permissions… do jeito que ta com esse mesmo nome… O na hora de carregar o jogo vai ignorar essa parte do banco de dados original, e usar a q vc fez no lugar… então se vc apagar alguma coisa de la… o jogo não vai usar aquela parte… Isso é importante qdo vc quiser remover alguma coisa do jogo e não apenas adicionar.
Se por outro lado vc renomear pra qualquer outra coisa como por exemplo MEESAAL_units_to_groupings_military_permissions… então o jogo vai adicionar o q vc colocou la ao units_to_groupings_military_permissions original… (inclusive cuidado pra não criar linhas duplicadas… q seriam linhas que existem tanto no original como na adição do seu mod… isso pode bugar o jogo)…
E como eu ja expliquei fazer essa renomeação é muito util pra vc deixar seu Mod compatível com outros…
MAS se vc não pretende usar nenhum outro mod… e usar apenas o seu… vc pode deixar sem renomear mesmo… Mas ae vc não pode retirar nada que vc não quiser alterar no jogo.
Bom acho que é isso… qualquer duvida é só perguntar.