Como criar mods para GTA San Andreas?

Para quem não me conhece, sou Junior_Djjr, atualmente quem mais criou mods para GTA no mundo. Eu tenho certa noção de como é criar cada tipo de mod, e assim eu escrevi este grande resumo caso você queira saber como começar a criar mods para GTA San Andreas de PC.
Tenha a nota de que grande parte do que é falado aqui também vale para o GTA III e GTA VC.

Isto pode lhe servir muito agora — um passa tempo para a quarentena.



Como criar mods para GTA San Andreas



  

Como criar mods CLEO

Mod CLEO é o tipo mais simples e comum de mods de código/scripting para GTA III, VC e SA.
Durante muitos anos foi utilizado Sanny Builder, mas a partir de 2017 nós utilizamos GTA3script (veja aqui explicações), que é uma programação ainda mais simples e fácil.
A maneira de criar os mods CLEO é a mesma maneira que a Rockstar North usou para criar as missões, sistemas de lojas e algumas inteligências artificiais. Isto é chamado por nós de "SCM".
Eu (Junior_Djjr) escrevi o atual melhor tutorial de criar mods CLEO do mundo, e está em português (Google Tradutor para inglês também fica bom):
Índice de tutoriais - CLEO Script - GTA3script


Como criar mods Lua (MoonLoader)

MoonLoader no momento (2020) ainda é novo e em fase beta, mas é mais potente que CLEO.
MoonLoader utiliza a programação Lua, que é uma das programações mais usadas do mundo, portanto você facilmente encontra excelentes tutoriais, cursos, snippets, soluções de problemas etc. Mas será necessário outros tutoriais para aprender especificamente o uso do MoonLoader.
O lado bom é que por ser o mesmo jogo, a maneira de criar mods para MoonLoader é muito semelhante à criar mods para CLEO, e quase todos os mods hoje ainda estão em CLEO (uma melhor fonte de aprendizado). Sendo assim, eu recomendo você primeiramente aprender a criar mods CLEO, e depois MoonLoader (ou passar direto para ASI, que é mais potente ainda, mas mais difícil para iniciantes).
Mods escritos em Lua para MoonLoader são simples e avançados ao mesmo tempo (só não tão simples quanto CLEO, e não tão avançados quanto ASI), portanto é uma excelente maneira de criar mods avançados de maneira simples.


Como criar mods ASI

Mods .asi são arquivos .dll renomeados, portanto o que você faz é simplesmente criar um .dll e o ASI loader injetará no jogo.
Isto quer dizer que você antes precisa se familiarizar com programações como C++. Ter conhecimento em engenharia reversa também ajuda muito, visto que mods são hacks.
Atualmente é utilizado plugin-sdk, que é um kit de desenvolvimento extremamente completo e poderoso, possibilitando criar mods avançados de maneira simples. Ele utiliza C++ e no momento pode ser usado no Visual Studio (recomendado; download grande) ou Code::Blocks (mais básico; download pequeno). Se você tem dúvida, veja isto como aprender a tocar um instrumento novo: prefira o mais sofisticado para o trabalho de aprendizado ser mais agradável.
Mesmo com a facilidade do plugin-sdk, no momento não há muitos tutoriais sobre ele (mas há exemplos no download) e ainda é necessário estudar C++, algo que requer muito tempo de estudo, mas por ser uma das programações mais usadas do mundo, você facilmente encontra excelentes tutoriais, cursos, soluções de problemas etc.
Lembre-se que mods ASI são adequados para coisas mais avançadas, não são adequados para mods simples, muito menos missões. Mods ASI não são mods de script, portanto mesmo que dê, não serve para mods relacionados com controle de cenas.


Como criar modelos 3D

Modelar: Você pode usar literalmente qualquer programa de modelagem para modelar novos veículos, armas, objetos etc. Em seguida basta utilizar alguma das ferramentas citadas abaixo para exportar o seu modelo para .dff. Se você ainda não sabe modelar, simplesmente pesquise por vídeo-aulas. Para veículos e pessoas, eu recomendo Blender; para casas e construções, eu recomendo Sketchup com este meu tutorial. Modelagens lowpoly são fáceis e normalmente muito bem vistas pela comunidade de GTA III/VC/SA, mas requer cuidados adicionais para o resultado ficar agradável (como o alto cuidado com a topologia 3D), enquanto highpoly o maior erro é que as pessoas criam seguindo a ideia de um modelo para render (principalmente quando é carro), e não para gameplay, portanto pense nisto, otimize, use menos vértices/polígonos possíveis, e principalmente, um menor número de diferentes materiais (algo que é até mais importante do que o número de vértices).
Editar: Normalmente as mesmas ferramentas para exportar um modelo em .dff, também importam, assim você pode importar e editar o modelo conforme necessário. No entanto, algumas pessoas bloqueiam os arquivos .dff para evitar modificações de terceiros, além de casos onde um .dff foi salvo por exemplo no 3DS Max e não consegue importá-lo no ZModeler, mas tudo há solução, basta pesquisar ou pedir ajuda.
Converter: Para converter um veículo de algum jogo, site de downloads etc, se resume em conseguir aquele modelo em algum formato de arquivo comum, como .fbx, .dae, .obj, .3ds etc, e assim abrir este arquivo em alguma das ferramentas que exportam em .dff, em seguida, você precisa adaptar o modelo para que ele possa funcionar no GTA SA, e isto você aprende em diferentes tutoriais. Lembre-se que ZModeler só abre .obj e .3ds, enquanto Blender e 3DS Max incluem mais opções.
Sobre isto: Dependente do tipo de mod (se é carro, pedestre, arma, objeto etc) pode ser necessário usar diferentes ferramentas e tutoriais, portanto leia também as outras seções abaixo que explicam especificamente o tipo de mod.


Como criar veículos (carros, motos etc)

Sobre isto: Leia "Como criar modelos 3D" acima.
Modelagem: Você trabalhará principalmente com .dff e .txd. Veja as explicações e links para as ferramentas na seção "DFF" e "TXD" abaixo.
Configurações: Muita gente ignora, mas um carro não é só modelo, é também configuração. Você também precisa aprender como configurar handling.cfg, vehicles.ide, carmods.dat e carcols.dat (lembrando que hoje se usa arquivos .txt dentro do ModLoader em vez de editar estes arquivos). É aí onde você define qual é o peso, velocidade, suspensão, valor, cores, tuning, animações, tamanho de roda etc etc... Há softwares de edição de handling por aí (prefira algum que tenha uma lista de flags nomeadas para selecionar, você vai entender), também há um in-game handling editor.

Tutoriais:
Índice: Tutorial teórico completo de criar carros para GTA — explica de maneira técnica como é o funcionamento dos modelos de veículos do GTA SA, não ensina o lado prático da modelagem, mas sim como realizar uma boa adaptação e conversão.
(Mais tutoriais sobre veículos no Fórum MixMods).
Ainda não há muitos por aqui. Em geral ainda é difícil indicar bons tutoriais deste assunto.


Como criar armas

Sobre isto: Leia "Como criar modelos 3D" acima.
Modelagem: Você trabalhará principalmente com .dff e .txd. Veja as explicações e links para as ferramentas na seção "DFF" e "TXD" abaixo.
Configurações: Muita gente ignora, mas é interessante o mod de arma vir também com configuração própria de weapon.dat. O modloader suporta a leitura de linhas do weapon.dat como .txt, ou fusão de arquivos weapon.dat, assim como funciona em handlings etc de veículos. Você consegue facilmente ajustar coisas básicas como quantidade de munição em cada pente e dano de cada arma com algum editor de texto, mas para alterações mais avançadas, você pode precisar usar softwares como o SA Ammunation Tool (ps: a cadência de tiro na verdade é configurada no loop da animação, é confuso). Uma coisa muito importante a ser notada, é que se você trocar a animação da arma, quase sempre terá que editar o nome do arquivo .ifp no "default.ide" (o modloader também faz fusão deste arquivo). Senão pode causar crashes.

Tutoriais:
(Mais tutoriais sobre armas no Fórum MixMods).


Como criar pedestres ou roupas

Sobre isto: Leia "Como criar modelos 3D" acima.
Modelagem: Você trabalhará principalmente com .dff e .txd. Veja as explicações e links para as ferramentas na seção "DFF" e "TXD" abaixo.
Texturas: Editar as texturas das roupas são simples, bastando extrair do "player.img" (ver "IMG") e editar. Mas você não pode ativar compressão DXT nem mipmapping nas texturas das roupas, pois o jogo não suporta. E na escolha do formato da textura, sempre use "8888" (com transparência) em vez de "888", pois o jogo usa a informação da transparência para definir a visibilidade, sem ela você terá bugs estranhos. Outra nota é que a textura de torso é misturada junto com outras, como camisas regatas e tatuagens do CJ, portanto todas essas texturas precisam ter exatamente a mesma resolução, em outras palavras, você não consegue aumentar a resolução das tatuagens do jogo sem também aumentar do torso e algumas camisas.
Skinned meshes: A grande diferença ao precisar editar os modelos (DFF) é que pedestres e roupas funcionam por um modelo de "pele" com "esqueleto", com "ossos". Softwares de modelagem 3D como ZModeler não suporta tais modelos para GTA SA e outros, portanto terá que usar 3DS Max ou Blender.
Roupas: Mesmo explicado acima, só que, as roupas do GTA SA funcionam como se fosse diversos modelos do CJ separados que depois são juntos num só, e cada peça de roupa ou penteado é separado em 3 clumps para o CJ normal, gordo e musculoso, que precisam obrigatoriamente ter o mesmo modelo com a mesma ordem de vértices, e se quiser engordar etc, você só pode mover as vértices de posição e mais nada, se não quiser adaptar à isto, basta usar o mesmo modelo em todos os clumps ou usar o mod BeSlim. Tirando isto, nada diferente de criar um simples modelo de pedestre, se você quer criar modelos de roupas para o CJ (além de só texturas), você pode usar tutoriais de como criar pedestres, mas use o esqueleto de alguma roupa do CJ.
Configurações: A definição das peças de roupas e quis roupas aparecem em cada loja são definidas no "shopping.dat", não suporta linhas em .txt, mas o modloader faz fusão deste arquivo. "clothes.dat" define regras das peças de roupas, por exemplo tirar penteado quando coloca boné, trocar modelo da calça quando coloca bota etc. Você consegue adicionar algumas novas peças de roupas adicionando sem substituir simplesmente adicionando os arquivos no modloader e mais linhas no "shopping.dat", mas é necessário aumentar o limite para adicionar várias.
Instalação: A roupa "coach" é necessário estar instalada dentro de uma subpasta com nome "player.img" no modloader, por exemplo "modloader/mod/player.img", assim ele difere o coach da roupa, do coach do ônibus. Roupas adicionadas sem substituir também precisam desta separação.


Como criar objetos (mapa, casas etc)

Sobre isto: Leia "Como criar modelos 3D" acima. É um assunto muito amplo, portanto não dá para cobrir aqui todos os casos.
Modelagem: Você trabalhará principalmente com .dff e .txd. Veja as explicações e links para as ferramentas na seção "DFF" e "TXD" abaixo. Também será necessário .col, que é o arquivo de colisão (onde define o modelo que você possa se colidir com o objeto, e outros detalhes), também explicado abaixo em "COL".
Adicionar, editar, posicionar objetos no mapa: Se você só quer posicionar os objetos que o jogo já tem, é outro assunto, e o SAMP Map Construction com o conversor para .ipl pode ser útil para casos mais simples, enquanto MEd é mais completo e possibilita inclusive mover os objetos originais do jogo, mas sinceramente ele é horrível de trabalhar. Muitas vezes, em coisas simples como posicionar somente um objeto, eu prefiro escrever o arquivo .ipl manualmente em um editor de texto (a estrutura é bem simples).
Colisão, LOD, prelighting: Além de modelar o que você quer, você tem que passar pela chata parte, a de criar colisão (o modelo que define onde define onde se colide, seus materiais, sombras etc, é um tanto opcional, mas o básico é obrigatório), o LOD (Level Of Detail, nível de detalhe, que é o modelo de baixa definição quando visto de longe, necessário para casas, prédios etc), e o pre-lighting/vertex color (que define a iluminação, sombreado de dia e noite). A boa notícia é que muita coisa é opcional, a má notícia é que sem os opcionais, o resultado gráfico e prático não é tão bom, você precisa configurar bem o .col para que os materiais do modelo façam sentido e o CJ, peds, carros etc fiquem com iluminação correta quando pisam neste modelo, o prelighting para que o modelo se encaixe na iluminação que há por volta e LOD para visualizar ele longe, e de maneira otimizada, que requer uma modelagem adicional mais simplificada do mesmo objeto. Mas note que não é necessário para objetos pequenos como lixeiras etc, só o modelo de colisão. Estes são os motivos de ser difícil das pessoas não quererem fazer alterações drásticas no mapa do jogo.

Tutoriais:
Como usar Sketchup para GTA / desenvolvimento de jogos
[III/VC/SA] Como adicionar objetos sem substituir
1. SA-MP Map Construction - Apresentação (há mais partes lá)
Como criar prelighting no ZModeler
Como criar prelight por radiosity (3DS Max)
(Mais tutoriais sobre mapa e objetos no Fórum MixMods)
Ainda não há tantos, mas já temos uma quantia significativa e de alta qualidade. Caso não haja tutorial para algo mais específico, peça ajuda ou pesquise por tutoriais em inglês (mas tome cuidado pois é comum encontrar tutoriais muito desatualizado).


Como criar texturas

Sobre isto: É um dos tipos de mod mais fáceis de todos. Se você só está afim de tentar algo nesse mundo, eu recomendo começar por aqui.
Editando texturas: Leia a seção "TXD" abaixo para ter o download do que você precisa. Normalmente você vai querer descobrir qual o nome de um arquivo .txd (onde é armazenado nas texturas dos objetos etc), por exemplo, se você quer editar as texturas da Grove Street, você terá que usar SAMP Map Construction, ir na Grove Street e clicar duas vezes no objeto para visualizar o nome do arquivo .txd, e em seguida ter acesso à este arquivo, por exemplo abrindo o "models/gta3.img" (leia a seção "IMG" abaixo). Basta colocar o arquivo no modloader como qualquer outro mod.
Fontes de texturas: Quando alguém pretende criar um mod de textura normalmente só pesquisa por algum no Google Images e usa a primeira coisa que encontrar. Lembre-se de procurar por texturas "seamless" (sem emenda) e de preferência em sites especializados, mas com boas palavras-chave (sempre em inglês) você também encontra bons resultados no Google Images. Aqui você encontra uma boa lista de sites para baixar texturas grátis. Se você pretende criar um modelo SA style, utilizando as texturas originais do GTA San Andreas, nós criamos um banco de texturas para isto.
Trabalhe nas suas texturas: Mesmo que você possa simplesmente baixar algo pronto por aí, às vezes você vai precisar fazer algum tipo de ajuste numa imagem. Se você já sabe usar Photoshop, certo, se não sabe, passe a usar, ou equivalente, como GIMP. MS Paint não é recomendado, nem ao menos para alterar a resolução das imagens, pois ele não utiliza boa filtragem/sampling. Às vezes você precisa mudar a área que a textura foi feita para fazer sentido com o mapeamento da textura dentro do jogo, caso contrário você terá por exemplo tijolos de 2 metros de largura, e coisas assim requerem edição de imagem. Se você está usando uma foto como textura, você precisará fazer muitos ajustes, por exemplo de iluminação e cor (remover color noise etc). O lado bom é que GTA SA não precisa de maps de materiais, tudo funciona numa só imagem de color map, e normal map é algo opcional.
Instale as texturas corretamente: Sempre use compressão DXT1 para texturas sem transparência e DXT5 para texturas com transparência, também, sempre resoluções potência de 2 (4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048 ou 4096) e mipmapping (exceto em sprites da interface, pois podem ficar borradas, e roupas e efeitos especiais, pois o jogo não suporta). Há exceções, mas é basicamente isto. Assim o mod fica mais leve, corrige serrilhado e evita artefatos visuais.

Tutoriais:
Na verdade, tudo acima já foi basicamente um tutorial. Mas este meu vídeo de Photoshop também é bom.


Como criar animações

Sobre isto: É um dos tipos de mods menos comuns, não há muitos mods de animações com qualidade aparentemente por falta de conhecimento, pois há coisas promissoras que as pessoas quase nunca fazem, como IK e conversão de anims.
Editando e criando: Leia a seção "IFP" abaixo. Diferente do que muita gente pensa, você pode sim importar novas animações, por exemplo de arquivos .fbx e .dae, o problema está na estrutura do esqueleto das pessoas do GTA SA, a animação precisa estar compatível com o esqueleto, e há maneiras de converter, inclusive há tutoriais para converter animações do Endorphin para o GTA SA. É uma área pouco explorada e não há muitas ferramentas ainda. Para piorar, quando as pessoas tentam criar uma animação para GTA SA, do zero, usam FK em vez de IK, por falta de conhecimento, e por isso as animações ficam robóticas. Você pode usar IK, desde que você em seguida converta para FK. De fato você consegue até gravar animações utilizando motion capture (mocap). Não é fácil encontrar informações sobre os métodos, ferramentas etc ainda (provavelmente enquanto você lê isto o cenário já mudou).

Tutoriais:
SweetRig 1.0 - Faça Animações para GTA SA
GTA SA Animations Rig [2.0]
Trocar animações entre IFPs (misturar .ifp) (GTA Anim Manager)


Como criar efeitos especiais

Sobre isto: É um dos tipos de mods mais chatos de serem criados. Felizmente Effects Loader chegou para simplificar a organização de múltiplos efeitos/partículas, mas a maneira que são criados, até hoje, não existe nenhum software especializado na edição deles.
Editando e criando: Tudo se resume nos arquivos "models/effects.fxp" e "models/effectsPC.txd", mas prefira usar instalação por Effects Loader, onde cada efeito é separado num arquivo .fxs. Há o tutorial no download dele, não há mistérios. Alterar as texturas do "effectsPC.txd" já dá pra ter algo minimamente legal (leia a seção "TXD" abaixo), o problema é ao editar o código do efeito em si, que até o momento não há boas documentações, e é manualmente, por edição de texto. Eu recomendo o uso do Notepad++ com algum modo de linguagem para que o texto fique com os números coloridos, assim fica mais legível.


Como editar sons

Sobre isto: Com o ModLoader a instalação de novos sons ficou muito fácil. Há explicações de como instalar sons no tutorial do ModLoader. O triste é que a maneira que os sons do GTA SA funcionam, deixa difícil conseguir realmente boas qualidades sonoras, ainda mais em sons de motor de carros, mas mesmo tiros das armas, que há mudanças de pitch/frequência em cada tipo de armas etc. Portanto não espere nada mágico, pelo menos por enquanto, no futuro pode ser que exista soluções melhores para isto. E não há como adicionar sons sem substituir, também, ainda.


Como criar mods para mobile

Sobre isto: Ainda não há muito sobre o modding no mobile no nosso fórum, mas como sempre, basta pesquisar no Google (de preferência em inglês). Os conceitos são iguais ao PC, uma das maiores diferenças é a falta de modloader, CLEO precária e o modo que as texturas são editadas e instaladas. Muitos arquivos do PC inclusive funcionam direto no mobile, mas modelos e texturas precisam de conversão, e somente mods CLEO muito básicos podem ser convertidos facilmente, os mods CLEO mais complexos são difíceis, muitas vezes quase impossíveis, assim como, mesmo que seja possível, não há boas ferramentas para a criação do que equivale ao .asi do PC. Uma coisa que muita gente faz em mods para mobile, é converter dos mods do PC.
Problemas: Até hoje, 2020, o modding para GTA SA mobile (onde o foco sempre é Android) ainda é uma criança, totalmente incomparável ao nível que o modding do PC é. Na minha opinião, pessoas que falam "não, mas o modding de GTA SA pra Android é evoluído sim" está desrespeitando quem cria os mods, pois não é, é difícil fazer muita coisa lá, e praticamente não existe grandes modders fazendo boas soluções, documentações etc. A CLEO para mobile até poucos meses atrás nem ao menos funcionava na nova versão do jogo (corrigido pelo fastman92 limit adjuster, que também quebra vários limites do jogo e deixou o modding bem mais interessante), enquanto a nova versão do jogo é indispensável pois corrigiu o bug dos artefatos (como o SilentPatch corrigiu pro PC), e ainda, a nova versão só roda no Android 7 acima, portanto nem eu (Junior_Djjr) tenho smartphone para rodar, enquanto a antiga causa crashes constantes aqui devido ao bug dos artefatos. E por ter diferentes versões principais, diferentes pessoas ainda usam diferentes versões, a CLEO dele é ainda muito básica (à grosso modo, é comparável à CLEO 1 do PC (na prática)) e até o momento não vi documentações e ferramentas (como sdk) para a criação de bibliotecas adicionais (equivalente aos mods .asi do PC; fla inclui ferramentas de desenvolvimento mas ainda requer trabalhos de engenharia reversa). Sem contar a falta de modloader e relativamente difícil edição dos arquivos de texturas. Portanto não espere algo lindo de modificar, o modding dele ainda é precário e há pessoas até dispostas a pagar dinheiro à quem levar isto à diante, se você for um grande programador com vontade de passar isto à diante, será excelente.


Como criar mods para PS2

Sobre isto: A partir de 2019 a comunidade por volta da MixMods, principalmente o Daniel69, literalmente criou o modding de GTA SA para PS2, algo que antes era praticamente nulo. Ele já fez dezenas de tutoriais sobre criar mods para PS2 no Fórum MixMods, portanto, se você tem interesse, você pode criar mods especificamente para o PS2, lembrando que não há tanto público como PC, mas o hype até o momento está grande pois é uma grande novidade e nostalgia, portanto facilmente vídeos sobre mods de PS2 caem em youtubers grandes.
Problemas: A potência do hardware do PC, e o fato dele utilizar um processador de arquitetura diferente do Assembly (ele usa MIPS), deixa tudo muito mais difícil, como explicado pelo Daniel69 neste vídeo.

Tutoriais:
(Mais tutoriais sobre mods para PS2 no Fórum MixMods)


Como editar outras configurações (data)

Sobre isto: A pasta "data" há dezenas de arquivos que podem ser abertos em algum editor de texto, como Bloco de Notas, mas eu recomendo Notepad++ com algum modo de linguagem para que os números fiquem coloridos e mais legível. Não há como explicar cada um deles aqui, mas o resumo é: você pode fazer muita coisa! Cada arquivo configura alguma coisa do jogo, é claro que o jogo inteiro não está lá, mas há várias coisas que podem ser úteis. Por exemplo com uma simples edição no arquivo "popcycle.dat" é possível criar uma distribuição populacional mais realista para o GTA SA. Os primeiros mods de GTA que criei na vida, mesmo quando eu nem sabia da existência da palavra "mod", foi justamente abrindo os arquivos .dat do jogo e tentando entender sozinho, afinal, a Rockstar North colocou até minis-tutoriais de como editar estes arquivos dentro do próprio arquivo, incluindo a documentação de cada coisa (nem sempre, a documentação no handling.cfg é do GTA VC). Portanto é interessante fazer algo com estes arquivos, e lembre-se de sempre instalá-los numa pasta do modloader antes de editar, assim você não precisa fazer backup. Lembre-se também que modloader faz fusão destes arquivos (praticamente qualquer um, veja ".data\plugins\gta3\std.data.md"), quando uma linha é alterada, o modloader detecta a alteração comparando com o original na pasta "data" do seu jogo, e aplica somente aquela alteração, junta tudo num só arquivo que fica guardado num cachê na appdata, então você pode ter vários arquivos .dat dentro do modloader, e alguns deles suportam linhas separadas num arquivo .txt, que fica ainda mais prático.
Com pesquisa você encontra diversos tutoriais específicos para configurar cada arquivo, mas com um pouquinho de vontade você consegue editá-los sem ao menos precisar de tutoriais. Lembre-se de usar Notepad++ para uma melhor visualização, pois as colunas ficam desorganizadas no Bloco de Notas normal.


Como fazer coisas que as pessoas não fazem

Normalmente quando alguém começa a criar mods parte direto à coisas muito simples, como trocar a textura de algum lugar que todo mundo também troca, como a Grove Street, garagem do CJ, Binco etc, ou então vão direto à coisas complicadas, como CLEO, onde nem sempre é difícil, mas muita gente decide aprender com o objetivo de criar um mod difícil, e logo desiste. Tá certo que texturas de fato é um excelente início para aprender o básico de mods, e CLEO é muito legal, principalmente pois o aprendizado é infinito e causa maior satisfação quando você consegue simplesmente criar coisas básicas, mas pense fora da caixa, hoje em dia a tecnologia e internet permite muitas coisas (hoje você pode por exemplo usar inteligência artificial para fazer upscale nas texturas do jogo), e o modding de GTA SA é muito bem documentado com uma excelente comunidade, você consegue fazer coisas diferentes, há coisas possíveis e promissoras que pouca gente faz, ou ninguém ainda fez, não há como fazer uma lista aqui, mas muitas vezes eu penso "por que ninguém faz isto?" e eu não estou falando só de sistemas complexos, como recriar o sistema de movimentação do personagem, I.A. etc, há mesmo coisas simples que quase ninguém pensa em fazer. Se você quer um exemplo, você já viu algum mod que remasteriza os objetos das cutscenes do jogo? Há bilhões de mods de carros para GTA SA, e enquanto eu digito isto eu ainda não vi nenhum mod que troque os carros das cutscenes pelas versões HD (agora que eu falei provavelmente existirá, detalhe, eles são objetos animados com bones, não veículos). Eu só conheço 1 mod que alterou algum arquivo da pasta "data/Decision", este, não que seja arquivos fáceis de editar, mas não são tão inúteis assim ao ponto de não existir mods pra eles, eles controlam as decisões da inteligência artificial do jogo, não há muita documentação e pesquisa, mas nada impede de você ir atrás disso e tentar criar algo, mesmo que básico. Não leia isto como um pedido, mas como um exemplo para você ter noção de que há como fazer mais do que o que já existe. Eu acho que as pessoas precisam pensar mais fora da caixa.




São arquivos que armazenam diversos outros arquivos para o carregamento e descarregamento durante o jogo.
Normalmente .dff e .txd, mas também podem incluir outros como .ifp, .ipl, .dat etc.

Principais ferramentas:
IMG Manager — mais completo e avançado
Alci's IMG Editor — mais simples e rápido

Usos:
models/gta3.img — os principais arquivos .dff e .txd do jogo, onde há os modelos e texturas do mapa, carros, pedestres, armas etc. Lá também inclui arquivos .ifp, .ipl, .dat etc.
models/gta_int.img — mesmo propósito do gta3.img, mas especificamente para os objetos de interiores, por exemplo o modelo e textura do interior de casas, lojas etc.
models/player.img — onde todos os arquivos .dff e .txd de roupas, penteados etc estão armazenados.
models/cutscene.img — onde há todos os arquivos .dff e .txd de cutscenes (filmes de missões).
anim/cuts.img — arquivos .ifp, .cut e .dat que determina a apresentação das cutscenes.
data/script/script.img — arquivos .scm para o sistema de lojas, missões de trabalho e algumas inteligências artificiais do jogo. Ele trabalha diretamente com o main.scm, portanto normalmente quando você substitui um, irá substituir o outro. Não é comum editar este .img.

Notas:
Atualmente não é comum editar arquivos .img devido a existência do ModLoader.
Com o ModLoader, basta colocar os arquivos .dff, .txd, .ifp etc em alguma pasta e eles serão carregados da mesma forma.
A única recomendação para continuar utilizando arquivos .img, é casos como uma re-texturização completa do jogo (como RoSA Project) onde substitui milhares de arquivos, portanto neste caso um .img é melhor para a velocidade de carregamento do que colocar milhares de arquivos no ModLoader.


Os arquivos Dive File Format armazenam modelos 3D.
São usados junto com um .txd (onde oferece as texturas para serem usadas).
Eles também podem incluir informações adicionais, como a renderização de luzes, objeto quebrável, modelo de colisão, posições para pedestres realizarem animações (como olhar para vitrines) etc. No entanto isto é pouco usado.
É também no arquivo .dff que as informações de sombras e luzes de objetos do mapa estão armazenados (onde simula sombras ou luzes falsas, caso esteja de dia ou de noite, o chamado "prelighting" ou "day/night vertex color").

Principais ferramentas:
ZModeler 2 — atualmente o mais usado por ser simples, recomendado somente para carros e armas, outros objetos também são suportados
DragonFF para Blender — atualmente o mais recomendado, especialmente por usar o Blender
RWIO para 3DS Max — atualmente o mais recomendado para 3DS Max, excelente funcionamento
Kam's Max Script (unofficial) para 3DS Max — é uma ferramenta antiga (mesmo que ela esteja passando por atualizações não oficiais) mas é extremamente completa

Notas:
A adição de novos .dff no jogo (sem substituir) pode necessitar ter Open Limit Adjuster instalado, ou então algum outro limit adjuster bem configurado.


Os arquivos Texture Dictionary armazenam coleções de texturas (imagens usadas para envolver os modelos 3D).
Normalmente os arquivos .ide cuidam da ligação entre os arquivos .dff (modelos) e .txd (texturas).
Se um .dff não encontrar as texturas necessárias no .txd ligado à ele, o modelo (ou parte dele) ficará branco.
É importante lembrar que um .txd não é um arquivo de textura, mas sim um dicionário de texturas, há várias texturas dentro de cada arquivo .txd, e um .txd pode ser ligado à vários diferentes arquivos .dff.

Principais ferramentas:
Magic.TXD — muito completo, com excelente funcionamento e muito fácil de usar, inclui vários idiomas, inclusive português.

Notas:
O jogo tem um grande limite de arquivos .txd, portanto você pode adicionar novos (sem substituir) sem se preocupar.
Não é comum um arquivo .txd causar crash no jogo, e mesmo que você sempre deva se preocupar com o tamanho dos arquivos, um .txd grande não causa grande perda de FPS, mas é sempre recomendado usar compressão DXT1 em texturas sem transparência e DXT5 com transparência, além de resolução potência de 2. Leia melhor as explicações sobre como criar texturas acima.


COL
São arquivos que armazenam coleção de modelos que são usados para cálculos de colisão e física do jogo.
Por exemplo, se você tem uma casa, o que você verá é o modelo 3D armazenado no .dff e sua textura no .txd, mas para que você possa se colidir com as paredes desta casa, é necessário um arquivo .col que inclua um modelo de colisão para ela.
O modelo de colisão é uma versão simplificada do modelo real (sem pequenos detalhes), afim do sistema do jogo conseguir fazer cálculos mais rápidos, assim evitando a perda de FPS.
Além de um modelo 3D (que aqui seria o "mesh collision"), o modelo de colisão também utiliza primitivos, como esferas e cubos para simplificar ainda mais os cálculos.
No caso de veículos, no GTA SA, o modelo de colisão é armazenado dentro do arquivo .dff.
É importante lembrar que um arquivo .col não é um arquivo de colisão, mas sim um dicionário de modelos de colisões, há várias colisões dentro de cada arquivo .col, e um .col pode ser ligado à vários diferentes arquivos .dff.
É no modelo de colisão que está a informação do material físico da superfície (se aquilo é grama, ou concreto etc.). Há também a opção de um modelo de sombra, que é utilizado para as sombras dos gráficos "Médios" ("Medium") ou superior, chamadas de "sombras stencil".
É também no modelo de colisão que está a informação de iluminação. Isto é, se um modelo de colisão apresenta um chão com 50% de brilho, quando um pedestre ou carro passar por aquele chão, o pedestre ou carro ficará com 50% de brilho.

Principais ferramentas:
Coll Editor — o principal e mais usado, não tão user friendly mas faz todo o necessário

Notas:
O arquivo "models\coll\vehicles.col" não é usado, como dito, os modelos de colisão dos veículos estão dentro dos seus respectivos .dff.
É possível utilizar modelo de colisão dentro do .dff mesmo em objetos de mapa.
O jogo tem um baixo limite de arquivos .col, portanto adicionar alguns arquivos .col no ModLoader ou .img causará crash, você pode ignorar este limite utilizando linha de carregamento (você encontra mais detalhes em tutoriais, como este) ou configurando algum limit adjuster, como o fastman92 limit adjuster.


IDE
Item Definition são arquivos que armazenam definições de modelos, com o ID, nome do arquivo .dff, nome do arquivo .txd e outras informações associadas ao modelo, seja objeto, veículo, pedestre ou arma.
São simplesmente arquivos de texto, bem simples de trabalhar.


IPL
Item Placement são arquivos que armazenam definições de posições de objetos de mapa, mas que também inclui outros tipos de posicionamentos, como carros estacionados (nem todos), marcas de entrada para interiores, garagens, pickups (nem todos), atributos de zonas, oclusão, saltos, modificador de timecycle, zonas de áudio etc.
São simplesmente arquivos de texto, o que normalmente você pode editar a maioria das coisas diretamente no arquivo consultando a documentação, o posicionamento de objetos normalmente é feito utilizando algum software editor de mapa.

Principais ferramentas:
MEd — muito completo, mas também muito precário e ruim de usar, mal otimizado, desatualizado etc. Ele também possibilita adicionar objetos sem substituir (não só sobre posicionamento, mas o próprio modelo com colisão etc). Mas tome cuidado, prefira este.
SAMP Map Construction — para SAMP, mas há conversor para .ipl que possibilita você adicionar novos objetos pelo mapa facilmente, mas não possibilita editar os objetos originais.
SPE - SA Placement Editor — editor de arquivos .ipl e .ide em forma de texto, com ferramentas para auxiliar na configuração das seções sem a necessidade de consultas constantes à documentação.
fastman92 processor — excelente conversor de arquivos ipl, para operações mais avançadas. Muito usado para converter arquivos .ipl de texto em binários.


IFP
São os arquivos que armazenam uma coleção de animações. O principal deles é o ped.ifp, que inclui centenas das animações básicas do jogo. Os outros arquivos .ifp usados para streaming (carregados só quando necessários, como animações de armas) estão no gta3.img (todos os mesmos arquivos também estão no "anim/anims.img", mas este arquivo não é carregado pelo jogo, é útil para carregar no GTA Anim Manager). As animações das cutscenes estão no "anim/cuts.img".
Leia acima as informações sobre como criar animações.

Principais ferramentas:
GTA Anim Manager — possibilita visualizar, adicionar, deletar, misturar, substituir e renomear as animações, além de fazer correções finais como desativar as keys de certos bones e remover a transição de posição (para deixar só rotação dos bones). Muito útil, mas infelizmente não possibilita editá-las. Há crashes aleatórios, portanto se você estiver trabalhando, salve constantemente.
Kam's Max Script (unofficial) para 3DS Max — a atual única maneira de editar as animações do jogo.



Eu (Junior_Djjr) demorei muitas horas para digitar tudo isso, e ainda vai passar por melhorias.

Você pode dar sugestões do que falta colocar, o que não ficou claro etc.

Lembre-se que você pode sempre pedir ajuda no Fórum MixMods, mas leia as regras e evite criar novos tópicos para pedir ajuda com coisas muito básicas. Também temos um servidor no Discord para desenvolvedores de mods, mas afim de criar um melhor ambiente de trabalho, ele é muito restrito. Pode ser que no futuro exista algo aberto, por enquanto as coisas rodam no fórum.

Aviso:
Download quebrado?
Precisa atualizar?
Problemas com a postagem?
Dê sugestões de mods para serem postados aqui (fórum) ou aqui (formulário).
Dê ideias de mods para GTA aqui.
É proibido discutir política, ideologias e religião aqui. Isto é um site de jogos, não facebook.
Abrir Comentários