Can you send me your moonloader.log file?GTA_GamerZ escreveu: ↑25 Jul 2022, 05:59I've installed the newer version because the error suddenly started with the old version but it's still the same problem.
Pesquisa resultou em 12 ocorrências
Voltar para “[SA][Lua] Downforce Mod V3.0 - English/Português”
- 25 Jul 2022, 22:41
- Fórum: Scripts & Códigos
- Tópico: [SA][Lua] Downforce Mod V3.0 - English/Português
- Respostas: 31
- Exibições: 9015
- Gênero:
Re: [SA][Lua] Downforce Mod V3.0 - English/Português
- 22 Jul 2022, 21:40
- Fórum: Scripts & Códigos
- Tópico: [SA][Lua] Downforce Mod V3.0 - English/Português
- Respostas: 31
- Exibições: 9015
- Gênero:
Re: [SA][Lua] Downforce Mod V3.0 - English/Português
You need to give that car more downforce than its weight. Usually it is only achievable at high speeds.
Adicionado após 2 minutos 41 segundos:
What's the version of your moonloader? Check if you have the recommended version installed.GTA_GamerZ escreveu: ↑22 Jul 2022, 05:17Could you actually help me? Because the downforce mod just stop working by itself and when I read the moonloader.log it says there is an error in loading the script. It used to work before, I don't know.
- 20 Nov 2021, 15:15
- Fórum: Scripts & Códigos
- Tópico: [SA][Lua] Downforce Mod V3.0 - English/Português
- Respostas: 31
- Exibições: 9015
- Gênero:
Re: [SA][Lua] Downforce Mod V3.0 - English/Português
(EN) UPDATE V3.0
-Removed comments from files. Explanations moved to this post.
-Added the possibility of driving upside down with a vehicle (if it has enough downforce).
-Added the possibility of bursting tires if they are subjected to great loads.
-Fixed a force conversion constant.
-Moved car list to a separate module. Now it's easier to create and switch different setups.
-Improved code organization.
(PT) UPDATE V3.0
-Removido comentários dos arquivos. Movida explicações para essa postagem.
-Adicionada possibilidade de dirigir de ponta cabeça com um veículo (se ele tiver downforce o suficiente).
-Adicionada possibilidade de estourar os pneus caso passem de um limiar de carga.
-Corrigida constante para conversão de força.
-Movida lista de carros para módulo separado. Agora é mais fácil criar e alternar entre configurações.
-Melhorada organização do código.
-Removed comments from files. Explanations moved to this post.
-Added the possibility of driving upside down with a vehicle (if it has enough downforce).
-Added the possibility of bursting tires if they are subjected to great loads.
-Fixed a force conversion constant.
-Moved car list to a separate module. Now it's easier to create and switch different setups.
-Improved code organization.
(PT) UPDATE V3.0
-Removido comentários dos arquivos. Movida explicações para essa postagem.
-Adicionada possibilidade de dirigir de ponta cabeça com um veículo (se ele tiver downforce o suficiente).
-Adicionada possibilidade de estourar os pneus caso passem de um limiar de carga.
-Corrigida constante para conversão de força.
-Movida lista de carros para módulo separado. Agora é mais fácil criar e alternar entre configurações.
-Melhorada organização do código.
- 02 Abr 2020, 08:08
- Fórum: Scripts & Códigos
- Tópico: [SA][Lua] Downforce Mod V3.0 - English/Português
- Respostas: 31
- Exibições: 9015
- Gênero:
Re: [SA][Lua] Downforce Mod V2.5 / Mod de aerodinâmica
Na próxima atualização provavelmente vou implementar isso, se eu conseguir, eu já tentei mas não é tão simples kkk.
Não me lembro de usar nenhum mod pra isso, talvez porque eu alterei o arquivo handling.cfg?.
- 25 Abr 2019, 21:58
- Fórum: Scripts & Códigos
- Tópico: [SA][Lua] Downforce Mod V3.0 - English/Português
- Respostas: 31
- Exibições: 9015
- Gênero:
Re: [SA][Lua] Downforce Mod V2.0 / Mod de aerodinâmica
I haven't tested this mod for added vehicles, but you can add a line in the lua file just below the last native car, just put the added car id between the brackets, like in this image:
Then you just fine tune the properties the way you want.
- 30 Jan 2019, 17:33
- Fórum: Scripts & Códigos
- Tópico: [SA][Lua] Downforce Mod V3.0 - English/Português
- Respostas: 31
- Exibições: 9015
- Gênero:
Re: [SA][Lua] Downforce Mod V2.0 / Mod de aerodinâmica
Nem sabia dessa, estranho essas partes serem chamadas de 'wing', mas enfim vlw pela correção.Junior_Djjr escreveu: ↑30 Jan 2019, 02:46Você usou o nomewing
, mas o para-lama danificável (a parte onde se encaixa a roda) se chamawing_rf_dummy
ewing_lf_dummy
, assim os carros com para-lama danificável iriam ter mais aerodinâmica, o que não faz sentido.
Eu removi isto ao postar na Mix, deixando somentespoiler
.
- 29 Jan 2019, 16:15
- Fórum: Scripts & Códigos
- Tópico: [SA][Lua] Downforce Mod V3.0 - English/Português
- Respostas: 31
- Exibições: 9015
- Gênero:
Re: [SA][Lua] Downforce Mod V2.0 / Mod de aerodinâmica
Agora que eu percebi, no comentário anterior eu respondi a uma citação que eu tinha feito do seu comentário ahsuaushau.Junior_Djjr escreveu: ↑01 Dez 2018, 05:19Não rode isto todos os frames pois o FPS vai lá embaixo.
Rodar só uma vez quando entrar no carro é melhor.
Enfim, a função de fato não ta perdendo nenhum desempenho, se puder testar e der algo, só falar.
- 28 Jan 2019, 23:29
- Fórum: Scripts & Códigos
- Tópico: [SA][Lua] Downforce Mod V3.0 - English/Português
- Respostas: 31
- Exibições: 9015
- Gênero:
Re: [SA][Lua] Downforce Mod V2.0 / Mod de aerodinâmica
Junior_Djjr escreveu: ↑01 Dez 2018, 05:19Não rode isto todos os frames pois o FPS vai lá embaixo.
Rodar só uma vez quando entrar no carro é melhor.
Consegui usar uma função com o MoonAdditions que nem precisa de recursão, até onde eu testei não reduziu o muito o desempenho, mas ainda sim não estou checando o tempo todo.
Atualizei o mod e download, versão 2.0.
- 03 Dez 2018, 12:00
- Fórum: Scripts & Códigos
- Tópico: [SA][Lua] Downforce Mod V3.0 - English/Português
- Respostas: 31
- Exibições: 9015
- Gênero:
Re: [SA][Lua] Downforce Mod V1.1 / Mod de aerodinâmica
Blz, assim que eu tiver mais um tempinho livre eu começo a tentar isso.Junior_Djjr escreveu: ↑01 Dez 2018, 05:19Não rode isto todos os frames pois o FPS vai lá embaixo.
Rodar só uma vez quando entrar no carro é melhor.
Ai sim, não esperava que esse mod iria ficar meio popular kkk, vlw pela divulgação.Junior_Djjr escreveu: ↑03 Dez 2018, 03:41O pessoal curtiu mesmo o seu mod, postei na Mix e já deu 1,4 mil views, muito acima do normal, na semana ultrapassou até RenderHook.
Adicionado após 2 minutos 24 segundos:
Isso parece (pelo que eu entendi) a inercia do player dentro do carro, seria bem difícil representar isso no gta sa (pelo menos pra mim)...Victor_Troquetti escreveu: ↑01 Dez 2018, 16:21No GTA v, qnt mais forte vc aperta a tecla de acelerar mais forte é a arrancada, msm assim parece que o carro meio q fica puxando pra trás (sabe qnd vc tá no carro e seu corpo vai pra trás e vc força pra frente?) Depois da 4° marcha ele acelera normalmente, isso seria legal..
- 01 Dez 2018, 02:34
- Fórum: Scripts & Códigos
- Tópico: [SA][Lua] Downforce Mod V3.0 - English/Português
- Respostas: 31
- Exibições: 9015
- Gênero:
Re: [SA][Lua] Downforce Mod V1.0 / Mod de aerodinâmica
Vlw pela correção, eu achei que apenas tendo o indievehhandlings.cs já seria o suficiente pra não alterar todos os modelos.Junior_Djjr escreveu: ↑30 Nov 2018, 23:36O seu mod vai editar o handling de todos os carros de mesmo modelo caso você entrar num carro no mesmo frame que ele for criado.
Não parece grande coisa, mas pense isto acontecer diversas vezes, vai mudando o valor por cima do anterior, mais e mais.
Solução: Simplesmente um wait(0) na linha 401, mas já que foi adicionado um frame, provavelmente no próximo frame o CJ tenha sido removido do carro e o carro deletado, então daria crash, portanto tem que checar de novo se o CJ está no carro...
Interessante que o cálculo de ar do mod faz referência até ao site da Nasa kkk.
edit: eu corrigi isto e botei uma maneira mais rápida de desativar as informações na tela.
Parando pra pensar daria até pra dar uma adaptada nesse mod pra testar se o veiculo que o player está usando tem um aerofólio ou algum outro aparato aerodinâmico adicionado (pelo tuning mod por exemplo) e assim aumentando a área efetiva que o veiculo tem, poderia ser mais um combo assim como o turbo lag mod.
- 20 Nov 2018, 15:53
- Fórum: Scripts & Códigos
- Tópico: [SA][Lua] Downforce Mod V3.0 - English/Português
- Respostas: 31
- Exibições: 9015
- Gênero:
Re: [SA][Lua] Downforce Mod V1.0 / Mod de aerodinâmica
Seria bem interessante, mas antes de ver se ficaria bom eu preciso fazer uns testes pra ver como a resistência do ar (drag) dos veiculos no gta sa se comporta.Penguinumber9 escreveu: ↑19 Nov 2018, 23:57Não sei se seria possível colocar no mod, mas poderia fazer com que os carros que estiverem correndo atrás e alinhados com um outro carro em movimento ganhassem velocidade (pois isso diminui a resistência do ar) igual nos jogos Need for Speed e GTA V. Eu não sei se isso é realmente realista, mas deixaria os policiais do jogo mais legais.
- 15 Nov 2018, 15:15
- Fórum: Scripts & Códigos
- Tópico: [SA][Lua] Downforce Mod V3.0 - English/Português
- Respostas: 31
- Exibições: 9015
- Gênero:
[SA][Lua] Downforce Mod V3.0 - English/Português
English version:
Installation:
-MoonAdditions, imgui and indievehhandlings required.
-Read all instructions before proceding.
-Extract the file "downforce-mod.lua" to the moonloader folder.
-Extract the folder "lib/downforce-mod" to the "lib" subfolder within the moonloader folder.
-Extract the file "strings.lua" in the "en-us" folder to the "lib/downforce-mod" folder within the moonloader folder.
-In case you have an old configuration, copy and paste the "cars" lines to the "cars.lua" file within the "lib/downforce-mod" folder.
-Delete the old .lua file of a previous version of the downforce-mod from the moonloader folder.
What is downforce?
"Downforce" (also called negative lift) is an aerodynamic force that some vehicles, especially racing vehicles, generate along their body.
This force helps to "glue" the vehicle on the ground, increasing its grip/traction. As a consequence of it, the vehicle can go faster around corners. And also, it can accelerate and brake harder before the tires start to skid.
To put it simply, we can calculate the downforce as follows:
Where:
F = Downforce (Newtons).
Ea = Effective Area (m^2) (definition of it below)
p = air density (Kg/m^3).
v = Vehicle speed (m/s).
And the effective area (Ea) of the vehicle can be defined like this:
Where:
Ea = Effective Area (m^2).
Cl = Coefficient of lift (dimensionless).
Fa = Frontal area of the vehicle (m^2).
Did you notice the minus sign on the lift coefficient? That's because when the lift is negative - that is, when there is downforce - the resulting force will be positive and it'll make the results of other calculations more intuitive.
The density of the air for any given altitude can be calculated using a mathematical model. In that case, what would be better than using a model provided by NASA itself?
https://www.grc.nasa.gov/www/k-12/airpl ... osmet.html
To put it simply, the maximum grip/traction of a vehicle can be approximated as follows:
Where:
grip = overall grip (Gs).
m = vehicle's mass (Kg).
F = downforce (Kgf)
Tgrip = tires' base grip.
Do you understand now how the grip of a vehicle depends on the normal force generated by it?
But of course, a vehicle's grip depends on other variables such as it's mass. Based on this, we can conclude that if 2 vehicles generate the same amount of downforce, the lighter vehicle will have a greater increase in it's grip.
We can also infer that if a vehicle is generating more downforce than its weight, it is possible (in theory) to drive it upside down. For example, you could drive it on a tunnel roof.
But not everything is that simple. A vehicle's tires do not react to a force applied to them in a constant manner.
Generally speaking, the greater is the force applied to a tire, the less grip it has. This phenomenon is called load sensitivity. You can read more about it here: https://en.wikipedia.org/wiki/Tire_load_sensitivity and here: http://theracingline.net/2018/race-car- ... ensitivity /
There are several ways a vehicle can generate more downforce. The simplest one is installing a wing.
Fortunately, this mod gives you the possibility to simulate this. When installing an aerodynamic device using Tunning Mod, rename it to some name that contains "spoiler", or a name that you can define in the main .lua file.
Now, allow me to explain some important attributes in the main .lua file (I don't recomend changing any other attributes that aren't in this list):
-cars: This is the list of configured vehicles. As of 3.0 version, this list is defined in the file "moonloader/lib/downforce-mod/cars.lua".
-shouldCalculateAirDensity: Should the script calculate the air density dynamically? (based on your altitude). Leave true to calculate, or false to always use sea level density.
-loadSensitivityMultiplier: Represents the tire load sensitivity multiplier. If you want to disable it, set it to 0. If you want it to become more intense, leave it at a number greater than 1.
-downforceMultiplier: The downforce (or lift) multiplier. It's a quick way to decrease or increase the downforce generated by all vehicles in the list.
-mode: Sets the way the downforce is applied to vehicles. Modes 1 to 3 only change handling values. Mode 4 literally applies a force to the vehicle based on its orientation. It is only possible to drive on a tunnel's roof if you are in mode 4.
-shouldImproveBrakes: Whether the brake force should be increased according to the downforce. It's not exactly realistic, but a convenient option nonetheless.
-editorCheat: Set the cheat to open/close the ingame menu to change vehicles' properties.
-drawInfos: Whether the script should display information on the screen (true/false).
-drawName: Whether the script should display the current vehicle's name on the screen (true/false).
-drawArea: Whether the script should display the effective area of the current vehicle on the screen (true/false).
-drawDownforce: Defines whether the script should display the vehicle's current downforce on the screen (true/false).
-drawGrip: Whether the script should display the current relative grip of the vehicle on the screen.
-drawTractionMult: Whether the script should display the fTractionMultiplier of the vehicle's handling on the screen.
-drawTractionLoss: Whether the script should display the fTractionLoss of the vehicle's handling on the screen.
-textPosition: In this section you can edit the relative position of each information on the screen. Just change the x and y values. These values must be between 0 and 1.
-bonusPerWing: Defines the increase in the effective area a vehicle gains for each aerodynamic device installed on it.
-namesToSearchFor: Defines the vehicle's part names the script should consider as an aerodynamic device.
Properties of the "cars.lua" file
This file contains the settings for your game's vehicles. If you want to add a vehicle that you've added, just add another line at the end of the list with the same properties as the others, just changing the ID (the number between the [ ]) and the other properties to the values you want.
-cars[xxx]: Defines the vehicle ID, xxx being the ID number.
-name: Defines the vehicle name. It's just for convenience, in case you want to search for a specific name.
-effectiveArea: Defines the effective area of the vehicle. Effective area = Coefficient of downforce X frontal area of the vehicle.
-loadSensitivity: Sets the load sensitivity of the vehicle's tires. The larger, the more grip the tires will lose as downforce increases. I strongly recommend you to set it to a value between 0 and 0.1, it's very sensitive.
Video demo:
UPDATE V3.0
-Removed comments from files. Explanations moved to this post.
-Added the possibility of driving upside down with a vehicle (if it has enough downforce).
-Added the possibility of bursting tires if they are subjected to great loads.
-Fixed a force conversion constant.
-Improved code organization.
Download:
Versão em português:
Estava eu fazendo uns testes em lua e acabei tendo uma ideia de fazer um script pra adicionar uns efeitos aerodinâmicos (além do drag que já tem no jogo) em alguns veículos.
Instalação:
-Requer MoonAdditions, imgui e indievehhandlings.
-Leia todas as instruções antes de prosseguir.
-Extraia o arquivo "downforce-mod.lua" na pasta do moonloader.
-Extraia a pasta "lib/downforce-mod" para a subpasta "lib" na pasta do moonloader.
-Extraia o arquivo "strings.lua" da pasta "pt-br" para a pasta "lib/downforce-mod" na pasta do moonloader.
-Caso tenha uma configuração antiga, copie e cole as linhas dos veículos no arquivo "cars.lua" que se encontra na pasta "lib/downforce-mod".
-Exclua da pasta do moonloader o arquivo .lua da versão antiga do downforce-mod caso você possua.
O que é downforce?
A "downforce" (também chamada de sustentação negativa ou força vertical descendente) é uma força aerodinâmica que alguns veículos, principalmente os de corrida, geram ao longo de sua carroceria.
Essa força ajuda a "prensar" o veículo no solo, aumentando sua aderência/tração. Como consequência, o veículo pode ir mais rápido em curvas. E também ele pode acelerar e frear com mais intensidade antes dos pneus começaram a derrapar.
De maneira simples, a downforce pode ser calculada da seguinte maneira:
Onde:
F = Força vertical descendente (Newtons) (ou força prensando o veículo no chão).
Ea = Área efetiva (m^2) (definição dela abaixo).
p = Densidade do ar (Kg/m^3).
v = Velocidade do veículo (m/s).
E a área efetiva (Ea) do veículo pode ser definida assim:
Onde:
Ea = Área efetiva (m^2).
Cl = Coeficiente de sustentação (sem dimensão).
Fa = Área frontal do veículo (m^2).
Notou que o coeficiente de sustentação veio com o sinal de menos na frente? É para quando a sustentação for negativa - ou seja, quando se tem downforce - o resultado vir positivo e tornar os resultados de outros cálculos mais intuitivos.
A densidade do ar para uma determinada altitude pode ser calculada usando um modelo matemático. Nesse caso, o que seria melhor do que um modelo fornecido pela própria NASA?
https://www.grc.nasa.gov/www/k-12/airpl ... osmet.html
De maneira simplificada, a aderência/tração máxima de um veículo pode ser aproximada assim:
Onde:
grip = aderência/tração (Gs).
m = massa do veículo (Kg).
F = downforce (Kgf)
Tgrip = aderência/tração base dos pneus.
Percebeu como a aderência de um veículo depende da força normal gerada por ele?
Claro que também, a aderência depende de outras variáveis como a massa do veículo. Com base nisso, podemos concluir que se 2 veículos geram a mesma downforce, o veículo mais leve vai se beneficiar mais.
Podemos também inferir que se um veículo está gerando mais downforce do que seu peso, é possível (em teoria) digerir ele de ponta cabeça. Como dirigir em um teto de um túnel.
Mas nem tudo é tão simples assim. Os pneus de um veículo não reagem de maneira constante a qualquer força aplicada neles.
De maneira geral, a medida que mais força é aplicada em um pneu, menos aderência ele tem. Esse fenômeno é chamado de sensibilidade a carga. Você pode ler mais sobre aqui: https://en.wikipedia.org/wiki/Tire_load_sensitivity e aqui: http://theracingline.net/2018/race-car- ... nsitivity/
Há varias maneiras para um veículo gerar mais downforce. A mais simples é instalando um aerofólio.
Felizmente, esse mod lhe da a possibilidade de simular isso. Basta ao instalar um aparato aerodinâmico pelo Tunning Mod, renomeá-lo para algum nome que contenha "spoiler", ou algum nome que você pode definir no arquivo .lua principal.
Agora, vamos a explicação de atributos importantes no arquivo .lua principal (não mexa em nenhum outro atributo que não esteja nessa lista):
-cars: Essa é a lista de veículos configurados. Na versão atual, essa lista é definida no arquivo "moonloader/lib/downforce-mod/cars.lua".
-shouldCalculateAirDensity: Define se o script deve calcular a densidade do ar dinamicamente (baseando-se na sua altitude). Deixe true para calcular, ou false para usar sempre a densidade do nível do mar.
-loadSensitivityMultiplier: Representa o multiplicador da sensibilidade a carga dos pneus. Se quiser desativar ela, deixe em 0. Se quiser que ela fique mais intensa, deixe em um número mais que 1.
-downforceMultiplier: Representa o multiplicador da downforce (ou lift) gerada por um veículo. Serve como uma maneira rápida para diminuir ou aumentar a downforce gerada por todos os veículos na lista.
-mode: Define o modo que a downforce é aplicada nos veículos. Os modos 1 ao 3 apenas alteram valores da handling do veículo. O modo 4 aplica literalmente uma força no veículo, baseando-se na orientação dele. Só é possível dirigir no teto de tuneis se estiver no modo 4.
-shouldImproveBrakes: Define se a força dos freios devem ser aumentadas conforme a downforce. Não é exatamente realista, mas uma opção conveniente.
-editorCheat: Define o cheat para abrir/fechar o menu ingame para alterar as propriedades de veículos.
-drawInfos: Define se o script deve exibir informações na tela (true/false).
-drawName: Define se o script deve exibir o nome do veículo atual na tela (true/false).
-drawArea: Define se o script deve exibir a área efetiva do veículo atual na tela (true/false).
-drawDownforce: Define se o script deve exibir a downforce atual do veículo na tela (true/false).
-drawGrip: Define se o script deve exibir a aderência relativa atual do veículo na tela.
-drawTractionMult: Define se o script deve exibir o fTractionMultiplier da handling do veículo na tela.
-drawTractionLoss: Define se o script deve exibir o fTractionLoss da handling do veículo na tela.
-textPosition: Nessa secção você pode editar a posição relativa de cada informação da tela. Basta alterar os valores x e y. Esses valores devem estar entre 0 e 1.
-bonusPerWing: Define o aumento da área efetiva que um veículo ganha para cada aparato aerodinâmico instalado nele.
-namesToSearchFor: Nessa lista você pode adicionar os nomes que o script deve considerar uma peça como um aparato aerodinâmico.
Propriedades do arquivo "cars.lua"
Esse arquivo contém as configurações desse mod dos veículos do seu jogo. Caso queira adicionar um veículo que você adicionou sem substituir, basta adicionar no fim da lista mais uma linha com as mesmas propriedades das outras, apenas mudando o ID (o número entre os [ ]) e as outras propriedades para os valores que você achar melhor.
-cars[xxx]: Essa parte define o ID do veículo, xxx sendo o número do ID.
-name: Define o nome do veículo. Apenas por conveniência, caso você queira procurar por um nome especifico.
-effectiveArea: Define a área efetiva do veículo. Área efetiva = Coeficiente de downforce X área frontal do veículo.
-loadSensitivity: Define a sensibilidade a carga dos pneus do veículo. Quanto maior, mais aderência os pneus vão perder conforme a downforce aumenta. Deixe um valor entre 0 e 0.1. Essa propriedade é bem sensível.
Demonstração:
UPDATE V3.0
-Removido comentários dos arquivos. Movida explicações para essa postagem.
-Adicionada possibilidade de dirigir de ponta cabeça com um veículo (se ele tiver downforce o suficiente).
-Adicionada possibilidade de estourar os pneus caso passem de um limiar de carga.
-Corrigida constante para conversão de força.
-Melhorada organização do código.
Download:
Criticas, sugestões, angustias e/ou desabafos são bem-vindos :P
Installation:
-MoonAdditions, imgui and indievehhandlings required.
-Read all instructions before proceding.
-Extract the file "downforce-mod.lua" to the moonloader folder.
-Extract the folder "lib/downforce-mod" to the "lib" subfolder within the moonloader folder.
-Extract the file "strings.lua" in the "en-us" folder to the "lib/downforce-mod" folder within the moonloader folder.
-In case you have an old configuration, copy and paste the "cars" lines to the "cars.lua" file within the "lib/downforce-mod" folder.
-Delete the old .lua file of a previous version of the downforce-mod from the moonloader folder.
What is downforce?
"Downforce" (also called negative lift) is an aerodynamic force that some vehicles, especially racing vehicles, generate along their body.
This force helps to "glue" the vehicle on the ground, increasing its grip/traction. As a consequence of it, the vehicle can go faster around corners. And also, it can accelerate and brake harder before the tires start to skid.
To put it simply, we can calculate the downforce as follows:
Where:
F = Downforce (Newtons).
Ea = Effective Area (m^2) (definition of it below)
p = air density (Kg/m^3).
v = Vehicle speed (m/s).
And the effective area (Ea) of the vehicle can be defined like this:
Where:
Ea = Effective Area (m^2).
Cl = Coefficient of lift (dimensionless).
Fa = Frontal area of the vehicle (m^2).
Did you notice the minus sign on the lift coefficient? That's because when the lift is negative - that is, when there is downforce - the resulting force will be positive and it'll make the results of other calculations more intuitive.
The density of the air for any given altitude can be calculated using a mathematical model. In that case, what would be better than using a model provided by NASA itself?
https://www.grc.nasa.gov/www/k-12/airpl ... osmet.html
To put it simply, the maximum grip/traction of a vehicle can be approximated as follows:
Where:
grip = overall grip (Gs).
m = vehicle's mass (Kg).
F = downforce (Kgf)
Tgrip = tires' base grip.
Do you understand now how the grip of a vehicle depends on the normal force generated by it?
But of course, a vehicle's grip depends on other variables such as it's mass. Based on this, we can conclude that if 2 vehicles generate the same amount of downforce, the lighter vehicle will have a greater increase in it's grip.
We can also infer that if a vehicle is generating more downforce than its weight, it is possible (in theory) to drive it upside down. For example, you could drive it on a tunnel roof.
But not everything is that simple. A vehicle's tires do not react to a force applied to them in a constant manner.
Generally speaking, the greater is the force applied to a tire, the less grip it has. This phenomenon is called load sensitivity. You can read more about it here: https://en.wikipedia.org/wiki/Tire_load_sensitivity and here: http://theracingline.net/2018/race-car- ... ensitivity /
There are several ways a vehicle can generate more downforce. The simplest one is installing a wing.
Fortunately, this mod gives you the possibility to simulate this. When installing an aerodynamic device using Tunning Mod, rename it to some name that contains "spoiler", or a name that you can define in the main .lua file.
Now, allow me to explain some important attributes in the main .lua file (I don't recomend changing any other attributes that aren't in this list):
-cars: This is the list of configured vehicles. As of 3.0 version, this list is defined in the file "moonloader/lib/downforce-mod/cars.lua".
-shouldCalculateAirDensity: Should the script calculate the air density dynamically? (based on your altitude). Leave true to calculate, or false to always use sea level density.
-loadSensitivityMultiplier: Represents the tire load sensitivity multiplier. If you want to disable it, set it to 0. If you want it to become more intense, leave it at a number greater than 1.
-downforceMultiplier: The downforce (or lift) multiplier. It's a quick way to decrease or increase the downforce generated by all vehicles in the list.
-mode: Sets the way the downforce is applied to vehicles. Modes 1 to 3 only change handling values. Mode 4 literally applies a force to the vehicle based on its orientation. It is only possible to drive on a tunnel's roof if you are in mode 4.
-shouldImproveBrakes: Whether the brake force should be increased according to the downforce. It's not exactly realistic, but a convenient option nonetheless.
-editorCheat: Set the cheat to open/close the ingame menu to change vehicles' properties.
-drawInfos: Whether the script should display information on the screen (true/false).
-drawName: Whether the script should display the current vehicle's name on the screen (true/false).
-drawArea: Whether the script should display the effective area of the current vehicle on the screen (true/false).
-drawDownforce: Defines whether the script should display the vehicle's current downforce on the screen (true/false).
-drawGrip: Whether the script should display the current relative grip of the vehicle on the screen.
-drawTractionMult: Whether the script should display the fTractionMultiplier of the vehicle's handling on the screen.
-drawTractionLoss: Whether the script should display the fTractionLoss of the vehicle's handling on the screen.
-textPosition: In this section you can edit the relative position of each information on the screen. Just change the x and y values. These values must be between 0 and 1.
-bonusPerWing: Defines the increase in the effective area a vehicle gains for each aerodynamic device installed on it.
-namesToSearchFor: Defines the vehicle's part names the script should consider as an aerodynamic device.
Properties of the "cars.lua" file
This file contains the settings for your game's vehicles. If you want to add a vehicle that you've added, just add another line at the end of the list with the same properties as the others, just changing the ID (the number between the [ ]) and the other properties to the values you want.
-cars[xxx]: Defines the vehicle ID, xxx being the ID number.
-name: Defines the vehicle name. It's just for convenience, in case you want to search for a specific name.
-effectiveArea: Defines the effective area of the vehicle. Effective area = Coefficient of downforce X frontal area of the vehicle.
-loadSensitivity: Sets the load sensitivity of the vehicle's tires. The larger, the more grip the tires will lose as downforce increases. I strongly recommend you to set it to a value between 0 and 0.1, it's very sensitive.
Video demo:
UPDATE V3.0
-Removed comments from files. Explanations moved to this post.
-Added the possibility of driving upside down with a vehicle (if it has enough downforce).
-Added the possibility of bursting tires if they are subjected to great loads.
-Fixed a force conversion constant.
-Improved code organization.
Download:
Versão em português:
Estava eu fazendo uns testes em lua e acabei tendo uma ideia de fazer um script pra adicionar uns efeitos aerodinâmicos (além do drag que já tem no jogo) em alguns veículos.
Instalação:
-Requer MoonAdditions, imgui e indievehhandlings.
-Leia todas as instruções antes de prosseguir.
-Extraia o arquivo "downforce-mod.lua" na pasta do moonloader.
-Extraia a pasta "lib/downforce-mod" para a subpasta "lib" na pasta do moonloader.
-Extraia o arquivo "strings.lua" da pasta "pt-br" para a pasta "lib/downforce-mod" na pasta do moonloader.
-Caso tenha uma configuração antiga, copie e cole as linhas dos veículos no arquivo "cars.lua" que se encontra na pasta "lib/downforce-mod".
-Exclua da pasta do moonloader o arquivo .lua da versão antiga do downforce-mod caso você possua.
O que é downforce?
A "downforce" (também chamada de sustentação negativa ou força vertical descendente) é uma força aerodinâmica que alguns veículos, principalmente os de corrida, geram ao longo de sua carroceria.
Essa força ajuda a "prensar" o veículo no solo, aumentando sua aderência/tração. Como consequência, o veículo pode ir mais rápido em curvas. E também ele pode acelerar e frear com mais intensidade antes dos pneus começaram a derrapar.
De maneira simples, a downforce pode ser calculada da seguinte maneira:
Onde:
F = Força vertical descendente (Newtons) (ou força prensando o veículo no chão).
Ea = Área efetiva (m^2) (definição dela abaixo).
p = Densidade do ar (Kg/m^3).
v = Velocidade do veículo (m/s).
E a área efetiva (Ea) do veículo pode ser definida assim:
Onde:
Ea = Área efetiva (m^2).
Cl = Coeficiente de sustentação (sem dimensão).
Fa = Área frontal do veículo (m^2).
Notou que o coeficiente de sustentação veio com o sinal de menos na frente? É para quando a sustentação for negativa - ou seja, quando se tem downforce - o resultado vir positivo e tornar os resultados de outros cálculos mais intuitivos.
A densidade do ar para uma determinada altitude pode ser calculada usando um modelo matemático. Nesse caso, o que seria melhor do que um modelo fornecido pela própria NASA?
https://www.grc.nasa.gov/www/k-12/airpl ... osmet.html
De maneira simplificada, a aderência/tração máxima de um veículo pode ser aproximada assim:
Onde:
grip = aderência/tração (Gs).
m = massa do veículo (Kg).
F = downforce (Kgf)
Tgrip = aderência/tração base dos pneus.
Percebeu como a aderência de um veículo depende da força normal gerada por ele?
Claro que também, a aderência depende de outras variáveis como a massa do veículo. Com base nisso, podemos concluir que se 2 veículos geram a mesma downforce, o veículo mais leve vai se beneficiar mais.
Podemos também inferir que se um veículo está gerando mais downforce do que seu peso, é possível (em teoria) digerir ele de ponta cabeça. Como dirigir em um teto de um túnel.
Mas nem tudo é tão simples assim. Os pneus de um veículo não reagem de maneira constante a qualquer força aplicada neles.
De maneira geral, a medida que mais força é aplicada em um pneu, menos aderência ele tem. Esse fenômeno é chamado de sensibilidade a carga. Você pode ler mais sobre aqui: https://en.wikipedia.org/wiki/Tire_load_sensitivity e aqui: http://theracingline.net/2018/race-car- ... nsitivity/
Há varias maneiras para um veículo gerar mais downforce. A mais simples é instalando um aerofólio.
Felizmente, esse mod lhe da a possibilidade de simular isso. Basta ao instalar um aparato aerodinâmico pelo Tunning Mod, renomeá-lo para algum nome que contenha "spoiler", ou algum nome que você pode definir no arquivo .lua principal.
Agora, vamos a explicação de atributos importantes no arquivo .lua principal (não mexa em nenhum outro atributo que não esteja nessa lista):
-cars: Essa é a lista de veículos configurados. Na versão atual, essa lista é definida no arquivo "moonloader/lib/downforce-mod/cars.lua".
-shouldCalculateAirDensity: Define se o script deve calcular a densidade do ar dinamicamente (baseando-se na sua altitude). Deixe true para calcular, ou false para usar sempre a densidade do nível do mar.
-loadSensitivityMultiplier: Representa o multiplicador da sensibilidade a carga dos pneus. Se quiser desativar ela, deixe em 0. Se quiser que ela fique mais intensa, deixe em um número mais que 1.
-downforceMultiplier: Representa o multiplicador da downforce (ou lift) gerada por um veículo. Serve como uma maneira rápida para diminuir ou aumentar a downforce gerada por todos os veículos na lista.
-mode: Define o modo que a downforce é aplicada nos veículos. Os modos 1 ao 3 apenas alteram valores da handling do veículo. O modo 4 aplica literalmente uma força no veículo, baseando-se na orientação dele. Só é possível dirigir no teto de tuneis se estiver no modo 4.
-shouldImproveBrakes: Define se a força dos freios devem ser aumentadas conforme a downforce. Não é exatamente realista, mas uma opção conveniente.
-editorCheat: Define o cheat para abrir/fechar o menu ingame para alterar as propriedades de veículos.
-drawInfos: Define se o script deve exibir informações na tela (true/false).
-drawName: Define se o script deve exibir o nome do veículo atual na tela (true/false).
-drawArea: Define se o script deve exibir a área efetiva do veículo atual na tela (true/false).
-drawDownforce: Define se o script deve exibir a downforce atual do veículo na tela (true/false).
-drawGrip: Define se o script deve exibir a aderência relativa atual do veículo na tela.
-drawTractionMult: Define se o script deve exibir o fTractionMultiplier da handling do veículo na tela.
-drawTractionLoss: Define se o script deve exibir o fTractionLoss da handling do veículo na tela.
-textPosition: Nessa secção você pode editar a posição relativa de cada informação da tela. Basta alterar os valores x e y. Esses valores devem estar entre 0 e 1.
-bonusPerWing: Define o aumento da área efetiva que um veículo ganha para cada aparato aerodinâmico instalado nele.
-namesToSearchFor: Nessa lista você pode adicionar os nomes que o script deve considerar uma peça como um aparato aerodinâmico.
Propriedades do arquivo "cars.lua"
Esse arquivo contém as configurações desse mod dos veículos do seu jogo. Caso queira adicionar um veículo que você adicionou sem substituir, basta adicionar no fim da lista mais uma linha com as mesmas propriedades das outras, apenas mudando o ID (o número entre os [ ]) e as outras propriedades para os valores que você achar melhor.
-cars[xxx]: Essa parte define o ID do veículo, xxx sendo o número do ID.
-name: Define o nome do veículo. Apenas por conveniência, caso você queira procurar por um nome especifico.
-effectiveArea: Define a área efetiva do veículo. Área efetiva = Coeficiente de downforce X área frontal do veículo.
-loadSensitivity: Define a sensibilidade a carga dos pneus do veículo. Quanto maior, mais aderência os pneus vão perder conforme a downforce aumenta. Deixe um valor entre 0 e 0.1. Essa propriedade é bem sensível.
Demonstração:
UPDATE V3.0
-Removido comentários dos arquivos. Movida explicações para essa postagem.
-Adicionada possibilidade de dirigir de ponta cabeça com um veículo (se ele tiver downforce o suficiente).
-Adicionada possibilidade de estourar os pneus caso passem de um limiar de carga.
-Corrigida constante para conversão de força.
-Melhorada organização do código.
Download:
Criticas, sugestões, angustias e/ou desabafos são bem-vindos :P