[III/VC/SA] SCRLog 2020.3 (descobrir crash em mod CLEO)

Atualizado 23/11/20
Corrigido GET_COLPOINT_DEPTH e GET_COLPOINT_SURFACE com opcode diferente do newOpcodes.

Atualizado 07/10/20

Arquivos .ini atualizados com mais novos comandos da CLEO+.
Atualizado 07/10/20

Adicionado cheat “SCRL” para ativar/desativar o SCRLog durante o jogo. Fica salvo no arquivo .ini.
Está pré-adaptado para a nova versão do CLEO+ que eu devo lançar em breve.
A janela de crash agora é mais confiável (antes existia uma mínima chance de ser mostrada sem necessidade). O log mudou um pouco também.
Correções para a compatibilidade do GTA III e VC.
As opções de configurações que vêm no download foram refeitas, agora há mais opções mais leves ainda.
Como notado pelo HzanRsxa2959, a janela de crash não aparece com GInput instalado, mas estranhamente o problema é corrigido ao renomear a pasta “GInput” dentro do ModLoader para qualquer outro nome, como “GInputSA”.
 
Atualizado 07/09/20
Mod de 2012, com uma pequena atualização do lazyuselessman, e eu (Junior_Djjr), que o deixei compatível com uma futura atualização da CLEO, adicionei mais algumas opções no arquivo .ini e uma janela de crash que mostra o nome do script causador do crash.
O problema do lag foi corrigido instalando o SCRLog no ModLoader, mas se isto não funciona para você, o mod agora inclui novas opções para gerar o log com menos impacto no FPS.
Também adicionado os comandos do CLEO+.
Em geral, o mod agora está mais “user friendly”, há pré-configurações no download, e eu refiz o tutorial de como usá-lo.

SCRLog é um mod ASI que faz um log (registro) dos últimos scripts processados do seu GTA III, VC ou SA, para, por exemplo, descobrir qual mod CLEO causou crash no seu jogo, inclusive o motivo do crash. É um sucessor do velho SCMLog.
gta-mod-scrlog-crash-script-log-1046176
Compatível com praticamente qualquer versão do III, VC e SA.
Além de uma janela de crash, caso o erro tenha sido diretamente num script, também gerará um arquivo “scrlog.log” que é útil tanto para pessoas leigas, quanto para quem cria mods descobrirem qual é o motivo exato do crash, e assim corrigi-lo.
Lembrando que nem sempre o problema é no mod, por exemplo, um crash ao criar um carro pode ser problema do carro.
  
Isto pode abaixar um pouco o FPS do seu jogo caso o seu PC seja fraco e tenha muitos mods CLEO, mas é por um bem maior. Na configuração padrão o impacto é muito baixo, mas você precisa testar se realmente está funcionando. Você pode querer desativar o mod em gameplays casuais com um jogo já bem testado.
  
Leia o tutorial abaixo para entender como usá-lo da maneira correta.
Se o SCRLog não mostrar o crash pra você, provavelmente não tem relação com scripts CLEO. Então use a Lista de Crash.
  
‎Autor: LINK/2012
Melhorias: Junior_Djjr
Suporte ao GTA:VC JP: lazyuselessman
download-baixar-4532137
  
Recomendado usar junto com:
  
Veja também:
Como usar:
Básico:
Sempre que o jogo iniciar, o mod criará um arquivo “scrlog.log” (não .ini!) na mesma pasta do arquivo scrlog.asi.
Quando o jogo causar crash, as informações do último script processado estarão no final do scrlog.log, e caso de fato o crash seja causado por um script, aparecerá uma janela de crash com o nome dele e última linha.
Somente pela janela do crash você já sabe o nome do script causador do crash, mas caso essa janela não apareça:
Antes de tudo, leia o Leiame/Readme do mod para fazer o teste para saber se o mod realmente está funcionando.
No momento GInput faz a janela de crash não aparecer, e estranhamente foi corrigido renomeando o nome da pasta dele no modloader para outro nome, como “GInputSA”.
Caso a janela realmente não esteja aparecendo e o motivo é realmente um script, abra o seu “scrlog.log” com o bloco de notas e procure pelo último script no final. Continue lendo:
Como descobrir qual script deu erro:
No exemplo da imagem acima, o nome do script causador do erro é “testcra“:
Normalmente o nome do script é o nome do início do arquivo (por exemplo “testcrash.cs”), ou então um nome semelhante à proposta do mod.
Caso você não encontre, abra o “cleo.log” na pasta do jogo e pesquise (CTRL+F) pelo nome do script, na linha de cima você terá o nome do arquivo.
Caso o nome seja “noname”, normalmente é porque o crash foi causado no main.scm, o que não é normal no jogo vanilla.
Caso o final do log, no último script, termine com “Finished processing.” IGNORE! O log neste caso é inútil (mas você pode confiar na janela do crash) e provavelmente não foi um mod CLEO que causou o crash. Use a Lista de Crash para saber o real motivo. A Lista de Crash também pode ajudar algumas vezes mesmo com o scrlog, servindo como complemento.
Sabendo qual é o script causador do problema, contate o autor do mod enviando o “scrlog.log” para ele, assim ele saberá corrigir.
Entendendo de modo técnico:
Se você quer entender mais a fundo: O problema em específico aparece na janela do crash, e na última linha do tal script no scrlog.log, por exemplo.
Neste exemplo, o comando “[0A8C]” causou problema. Lembrando que “[0001] WAIT” é só a finalização, se terminar com WAIT, TERMINATE_THIS_CUSTOM_SCRIPT, RETURN_SCRIPT_EVENT ou “Finished processing.”, ignore!
Você pode pesquisar por isso, neste exemplo em específico, por “[0A8C]”, na Lista de Crash (CTRL+F). No entanto, isto raramente te ajudará, pois normalmente o erro é do mod. Qualquer pessoa que entenda o mínimo de CLEO/SCM, principalmente GTA3script, consegue te ajudar e/ou corrigir.

[Tutorial] Adicionar carros sem substituir

Atualizado: Adicionado instruções para adicionar veículos sem substituir no GTA Vice City e GTA SA 2.0 mobile (Android). Entre outras pequenas melhorias e instruções para o “model_special_features.dat”.
01/06/20: A partir do FLA 5.2 o limite de handling está também disponível para a versão 2.0 no Android.

[Tutorial] Adicionar ARMAS sem substituir


Simples, direto, eficaz.

Agora você pode adicionar carros sem substituir no GTA SA e GTA VC!
Inclusive motos, aviões, barcos etc!
Inclusive usando ModLoader!
mod-3-2934343

Se você caiu de para-quedas aqui e só quer instalar carros substituindo os antigos, basta usar ModLoader.

(for english, click here)

Aviso de compatibilidade:
Só é compatível com o Tuning Mod v1.5 adiante.
Só é compatível com Real Traffic Fix v1.2 adiante.
Só é compatível com atualizações não oficiais do First Person Mod.
Há vários outros mods antigos (ou mesmo novos) que controlam handling, se ativam por modelo etc, assim também não funcionarão e você terá que pedir para o autor atualizar o mod dele.
Se você é autor de um desses mods, eu ou alguém pode te ensinar a adaptá-lo.
(diga mais incompatibilidades para colocar aqui)

Necessidades
Silent’s ASI Loader (para GTA SA) ou Ultimate ASI Loader (para GTA VC).
fastman92 limit adjuster (GTA VC e GTA SA Android disponível após a versão 5.0)
(use as versões GTA SA 1.0 US e GTA VC 1.0 US; faça downgrade se você usa versões Steam ou RLG).
(a instalação por Modloader é opcional)
Instale o fastman92 limit adjuster e abra o seu “fastman92limitAdjuster_GTASA.ini” (caso GTA SA) ou “fastman92limitAdjuster_GTAVC.ini” (caso GTA VC).

Também serve para o GTA SA 2.0 de Android.
GTA Vice City possibilita que veículos sejam adicionados pelo Maxo Vehicle Loader, mas MVL causa muitas incompatibilidades. Mesmo que seja mais difícil, fastman92 limit adjuster faz um melhor trabalho, e se você já sabe fazer isto no GTA SA, você também já sabe para GTA VC (são iguais).


Preparando o .ini

Para encontrar as linhas, use “CTRL+F” (ou CTRL+T ou outro, depende do seu editor de texto).

IMPORTANTE: No início de cada linha citada abaixo terá um “#” que faz a linha não ser carregada. Remova esse “#” da tal linha e só assim altere o valor, senão não fará mudança alguma!!!

Apply handling.cfg patch = 0
Deixe “1

Number of standard lines = 210
Número de linhas comuns pro handling.cfg
Você tem a opção de ir aumentando com a quantidade de veículos que você vai instalando, aumentando para 211, 212 e assim sucessivamente.
Mas é muito mais simples você deixar um número grande como 300 ou mais e assim adicionar uns 100 novos veículos sem se preocupar em voltar a editar o .ini. (só não exagere colocando por exemplo 9999, tudo custa um pouco de memória RAM).

Enable vehicle audio loader = 0
Lá no fim do .ini. Deixe “1” nesta linha para ativar as configurações dos sons dos veículos (senão seu carro ficará mudo)

Vehicle Models = 212

Número de linhas pro vehicles.ide
O mesmo explicado em “Number of standard lines”, você pode ir aumentando, ou se preferir deixe uns 300 ou mais para não se preocupar com isso.
Importante: Se você usa Open Limit Adjuster, NÃO EDITE ESTA LINHA! O Open Limit Adjuster configura esse número automaticamente para você de modo ilimitado. Se você o usa, pule esta etapa! E deixe “#” no início dessa linha para ela não ser carregada! Ou se preferir, desative-o no OLA.
Importante 2: Esta configuração somente funciona caso você esteja instalando fora do ModLoader, se você está instalando pelo ModLoader, terá que usar o OLA.

Salve o arquivo.

Linhas
Como exemplo, usarei o carro Mallard.
Vehicles.ide
Pegue a linha do datavehicles.ide do seu carro e renomeie o nome do carro para um novo nome de sua preferência.
O nome escolhido será usado por todo esse tutorial. Escolha um nome único e curto.
No caso do nosso Mallard, a linha ficará assim:
549, mallardmallard, car, MALLARDMALLARD, null, poorfamily, 10, 0, 0, -1, 0.684, 0.684, 0
Importante: O nome escolhido não pode ter mais do que 7 letras!!! Se o seu carro for por exemplo um Lamborghini Gallardo, não use “gallardo” pois tem 8 letras, invente, coloque por exemplo “gallard”. (na verdade você pode usar 8 no nome do modelo e handling, mas pela simplicidade, vamos usar sempre 7).
O “549” é o ID (identificação/index) do modelo.
Já que sou um cara que gosta de organizar, por compatibilidade, vamos usar os IDs “12500 até 12599” (se precisar até mais, né).
Você pode ter uma lista de IDs vazios aqui. (eu a uso para peças pro Tuning Mod). Ferramentas como Free ID List Generator podem gerar uma lista de IDs disponíveis no seu jogo.
E assim ficará a nossa linha pronta:
12500mallardmallard, car, MALLARDMALLARD, null, poorfamily, 10, 0, 0, -1, 0.684, 0.684, 0
Quando for instalar um novo carro, use 12501, 12502 etc. (não é uma regra, mas vamos nos organizar, né?)
Handling.cfg
Simplesmente, também renomeie o nome do carro na linha. Por exemplo:
MALLARD 1700.0 4166.4 2.5 0.0 0.15 0.0 70 0.60 0.85 0.52 4 160.0 24.0 10.0 R P 8.17 0.52 0 35.0 0.7 0.08 3.0 0.30 -0.16 0.5 0.50 0.3 0.52 19000 40000004 4 1 1 1
Cuidado, esta linha só funciona caso digitar em maiúsculo!
Carcols.dat
Mesma coisa.
mallard, 74,39, 72,39, 75,39, 79,39, 83,36, 84,36, 89,35, 91,35
Carmods.dat
Também, mas é um tanto opcional, pode até pular isso.
No caso de moto etc, obviamente não é necessário, mas pode.
mallard, bnt_b_sc_p_l, bnt_b_sc_p_m, bntl_b_ov, bntl_b_sq, exh_b_l, exh_b_t, exh_b_ts, nto_b_l, nto_b_s, nto_b_tw, spl_b_bab_m, spl_b_bbb_m, spl_b_mab_m, wg_l_b_ssk
OPA! Mas o carro que eu baixei não veio a linha de carcols e/ou carmods!
Sem problemas, se o carro que você baixou veio sem uma ou até mesmo sem nenhuma linha, pegue as linhas diretamente do seu handling.cfg, vehicles.ide, carcols.dat e carmods.dat e use-as na instalação.
No caso do carmods.dat, se o seu carro não é tunável mas você ainda quer entrar na Transfender trocar cores, rodas etc. Use a seguinte linha:
mallard, nto_b_l, nto_b_s, nto_b_tw
Como sempre, trocando o “mallard” pelo nome do seu carro (.dff).


Voltando ao .ini

Count of killable model IDs = 800
No exemplo do tutorial, nós usamos o ID 12500, mas o limite do jogo para identificar como um veículo (ou pedestre) é até “800” (ou melhor, 799). Nós devemos aumentar este limite conforme o ID que usamos.
Podemos deixar uns “12600” (ou mais) e assim você poderá adicionar veículos em qualquer ID desde o 0 até o 12599.
O jogo precisa disso para o funcionamento algumas coisinhas (só stats ou também algo mais importante?).


Motos, aviões, barcos
Se você está instalando um carro, pule esta parte.
Faça exatamente o mesmo! A única diferença é que há uma linha a mais de handling e precisa aumentar mais um limite.
Dica de moto: Ductape 99P
Preparando o .ini
No caso de moto, procure pela linha:
Number of bike lines = 13
Também. Mesma coisa explicada lá em “Number of standard lines”, você pode deixar uns 20 ou 30 aqui, ou mais caso você pense em adicionar muitas motos novas.
No caso de avião:
Number of flying lines = 24
Também.
No caso de barco:
Number of boat lines = 12
Mesma coisa.
Linhas
Além de uma linha de handling comum (controlando peso, suspensão, velocidade etc), também temos uma linha de handling especial (fica quase no fim do arquivo handling.cfg).
Faça a mesma coisa de sempre, coloque o nome da sua moto/avião/barco nessa linha.
Se a moto, avião ou barco que você baixou não veio com uma linha desse tipo, como dito antes, copie a linha diretamente do seu handling.cfg e use-a.
Exemplo de moto (linha começa por “!”):
! FCR900 0.33 0.15 0.28 0.15 45.0 38.0 0.93 0.70 0.5 0.1 35.0 -40.0 -0.009 0.7 0.6
Exemplo de barco (linha começa por “%”):
% SPEEDER 0.65 0.5 0.5 8.0 0.70 -0.5 3.0 0.7 0.998 0.999 0.85 0.98 0.96 4.0
Exemplo de avião (linha começa por “$”):
$ DODO 0.5 0.40 -0.00015  0.002 0.10 0.003 -0.002 0.0003 0.0020 0.020 0.15 1.0 1.0  0.2 1.0 0.998 0.998 0.995 20.0 50.0   20.0

Como sempre, basta mudar o nome pelo nome da sua moto, barco ou avião.


Adicionar som

Abra o “gtasa_vehicleAudioSettings.cfg” (caso GTA SA) ou “gtavc_vehicleAudioSettings.cfg” (caso GTA VC). Ele vem numa pasta “data” junto com o fastman92 limit adjuster.
Neste arquivo você tem todas as configurações dos sons dos veículos, você inclusive pode editar eles normalmente.
Escolha o som de algum veículo (você é livre!).

No caso do Mallard, vou usar o ronco do Tampa:
tampa                                       0             95     94     0         0.65         1.0          2         0.943874     1           0          9          0           1                 0.0
Adivinha o que tem que fazer? Renomear…
mallard                                       0             95     94     0         0.65         1.0          2         0.943874     1           0          9          0           1                 0.0
E cole ela em algum lugar do arquivo. Como organização, temos a escolha de colar lá no fim dele, assim:
tutorial-add-cars-4749984
Não adicione a linha abaixo de “;the end”!!! Nada abaixo desta linha é lido pelo FLA!

Instalação
Se você ainda não fez, renomeie os arquivos .dff e .txd do seu carro também para o mesmo nome.
Neste exemplo, “mallard.dff” e “mallard.txd
Você pode sim instalar tudo no Modloader.
tutorial-add-cars-4460997
Lembrando que no Modloader você pode simplesmente criar um .txt com qualquer nome e colar as linhas lá de qualquer jeito que ele identifica e instala elas para você. Mágica.
O carro já está funcionando.
Se você não pode usar ModLoader por algum motivo, instale da forma convencional como qualquer outro veículo (editando o arquivo .img (normalmente em “models/gta3.img”) e arquivos .dat e .cfg files (na pasta data) manualmente com editores de texto e IMG).
Para mobile, você precisa de TxdFucker ou TXD Tool por VIS Apps para instalar novas texturas (dos arquivos .txd). Pesquise por isto.

Adicionando nome ao carro (opcional)

Para mostrar o nome do carro quando entrar nele:
Abra o bloco de notas e digite, como no exemplo:
MALLARD Mallard
(não importa ser maiúscula ou não)
No caso, o primeiro “MALLARD” é o nome de identificação do seu carro (entrada GXT), e o segundo é o nome para ele aparecer no jogo.
Anteriormente eu dei um exemplo de adicionar um Gallardo com nome “gallard”. Naquele exemplo, você pode fazer isso:
GALLARD Lamborghini Gallardo
E assim, salve o arquivo em formato “.fxt” dentro de alguma pasta no ModLoader, ou da pasta “CLEOCLEO_TEXT”, ou numa pasta “FXT” na pasta raiz do seu GTA SA.
O nome do arquivo não importa, você inclusive pode criar um arquivo “veículos.fxt” e colocar todos os futuros novos veículos lá, um em cada linha.
Eu normalmente crio um novo arquivo de texto pelo menu de contexto na pasta e renomeio para .fxt (configure para o Windows mostrar as extensões dos arquivos).
Caso ao salvar com o bloco de notas ficar por exemplo “veículos.fxt.txt”, tente salvar DESTE MODO. Ou simplesmente tire uma cópia de algum .fxt, abra com o bloco de notas, apague todo o conteúdo, digite e salve.

Fazer o carro aparecer na rua (opcional)

Também simples.
Abra o seu “cargrp.dat” na pasta data. Ou tire uma cópia dele e coloque dentro do ModLoader. Recomendo para não precisa de backup, mas certifique-se de que não tenha outro cargrp.dat também instalado lá.
No fim de cada linha tem alguma coisa assim:
# POPCYCLE_GROUP_BEACHFOLK
No exemplo, esta é a linha da praia (BEACHFOLK), portanto, os carros dessa linha são os carros que aparecerão na praia (beach).
Coloque o nome de identificação do seu carro lá (cuidado com a vírgula!).
taxi, cabbie, bfinject, faggio, glendale, oceanic, mesa, bmx, mtbike, mrwhoop, washing, previon, pcj600, cadrona, sunrise, yosemite, bravura, primo, mallard     # POPCYCLE_GROUP_BEACHFOLK
Veja ali no final o “mallard” adicionado.
Clique aqui para um tutorial relacionado a isso.

Peças tuning e paintjobs

Para peças tuning, veja este tutorial do Daniel69.
Para paintjobs funcionarem em carros adicionados sem substituir é necessário alterar a linha “#Make paintjobs work for any ID = 0” do fastman92 limit adjuster para:
Make paintjobs work for any ID = 1

Funcionalidades especiais

As tais “funcionalidades especiais” são coisas como suspensões funcionais (como lowriders, Bandito etc), faróis pop-up (lembrando que VehFuncs tem uma substituição pra isto), fazer algum avião funcionar como um Hydra… Coisas assim.
A partir da versão 5.0 o fastman92 limit adjuster utiliza um arquivo chamado “data/model_special_features.dat“.
Isto substitui o uso de outros mods, como Vehicle Special Abilities do Alexander Blade (na qual causa vários problemas, diferente do fastman92 limit adjuster que funciona muito bem).
Primeiramente, procure pela linha “#Enable model special feature loader = 0” no .ini do FLA e ative-a:
Enable model special feature loader = 1
Isto requer que o “Apply ID limit patch” seja ativado também:
Apply ID limit patch = 1
Abra o seu “data/model_special_features.dat” com algum editor de texto.
A configuração do arquivo é bem auto-explicativa e user friendly:
Basta você adicionar o nome do modelo do seu veículo e em seguida o nome do modelo do veículo que você quer as funcionalidades especiais.
Lá dentro há um exemplo “#new_hydra hydra” (perceba que a linha está comentada (#) para não ser carregada). Neste exemplo (se você tirar o “#”) fará o FLA tratar o modelo “new_hydra” como as funcionalidades do “hydra”.
Por exemplo, se você adicionar esta linha:
mallard zr350
Aplicará as funcionalidades do “zr350” (isto é, os faróis pop-up) no “mallard” (caso ele seja adaptado à isto, é claro).
É simplesmente isto. Um em cada linha.
Nota: Isto não serve só para veículos adicionados, mas também substituídos.
Nota: Isto não serve para por exemplo fazer um carro ser tratado como carro da polícia, isto é outro assunto.


Spawner
Há alguns car spawners (geradores de carros) adaptados para veículos adicionados sem substituir, útil para você testar rapidamente.
mod-4-4899792
Djjr Car Spawner (você cria o carro digitando o nome do .dff dele, em breve será chamado de Vehicle Name Spawner).
Car Spawner by fastman92 (por menu; necessário configurações adicionais)

Notas finais:
  • O próprio fastman92 limit adjuster pode te informar de más configurações quando tentar iniciar o jogo.
  • Qualquer tipo de crash, você pode usar a Lista de Crash. A maioria dos crashes que este tutorial pode dar já está listado lá, espero eu. Uma das diferenças para as informações de alguns crashes que o FLA informa, é que FLA informa o problema literal, enquanto a Lista de Crash tenta informar possibilidades daquele problema acontecer.
  • Olhando o Modloadermodloader.log você pode ter um crash desse tipo (clique aqui), onde a última linha carregada foi o vehicles.ide, portanto, o erro foi baseado ao tentar carregar este arquivo. Mas lembre-se, só neste caso, não é sempre em qualquer tipo de crash que isso irá ajudar! Irá ajudar agora, nesse caso. Não leve isto como uma verdade absoluta, pode te enganar.
  • Ao adicionar muitos veículos em alguma linha dentro do cargrp.dat, você pode necessitar aumentar o limite caso a linha ficar muito longa. Aumente o número na linha “Cargrp cars per group = 23“, não necessariamente o número exato (24, 25 etc), pode colocar diretamente uns 30. Aumentando você pode acabar precisando também aumentar o “VehicleStructs”, mas, se você usa Open Limit Adjuster não precisa se preocupar com isso pois ele se ajusta automaticamente.
  • Para adicionar pedestres sem substituir não tem mistério, é muitíssimo mais simples. Você pode ver um exemplo aqui.

Autor do tutorial: Junior_Djjr (MixMods) – Ao copiar, deixe o link da postagem de origem.