GTA SA - MoonLoader v.026.5 beta 5c27f

Atualizado 29/10/18
Não teve grandes mudanças, mas disseram que um mod não funcionou na versão anterior e foi necessårio baixar a nova, portanto achei importante deixar o blog atualizado.


Agora Ă© possĂ­vel instalar mods em .lua no GTA San Andreas!

GTA SA - MoonLoader

Desde 2017 os mods de script para GTA San Andreas podem ser criados em Lua, uma programação simples porém muito poderosa.
(curiosidade: Lua é uma programação criada por brasileiros, a princípio, para ser usada num projeto da Petrobras).

Lua Ă© uma linguagem fĂĄcil de aprender, e uma das mais famosas linguagens de scripting do mundo, inclusive muito utilizada na criação de jogos (Angry Birds, Far Cry, Street Fighter IV, Tibia, WoW, Metal Gear Solid V...), portanto, Ă© extremamente fĂĄcil encontrar tutoriais, dĂșvidas respondidas, cĂłdigos e sistemas prontos etc, assim como nĂŁo tem limites de programação (comparado aos mods CLEOs) e atĂ© debug incorporado.

MoonLoader foi criado pelos caras da Blast Hack (os mesmos do s0beit) e mesmo sendo uma coisa "nova" ainda em fase beta, jĂĄ estĂĄ muito estĂĄvel.

MoonLoader tem vårias vantagens comparadas com a Livraria Cleo e muitas vezes pode servir como substituição.

"Finalmente, depois de 10 anos de CLEO dominando a cena de GTA scripting, alguĂ©m conseguiu lançar um projeto competidor (nĂŁo contando o plugin-sdk, muito complexo se vocĂȘ nĂŁo Ă© um guru de C++)" — Diz Seemann, criador da CLEO e Sanny Builder.




Destaques
  • MoonLoader usa LuaJIT — Um compilador just-in-time para Lua e a engine de script mais rĂĄpida;
  • FFI — É uma biblioteca incorporada no LuaJIT, fornece interface direta entre Lua e memĂłria de processo e dĂĄ capacidade para chamar diretamente funçÔes na memĂłria, ar estruturas de dados, ar funçÔes Lua para memĂłria e atĂ© mesmo escrever em Assembly com DynASM de Lua puro. E, como todos sabem, tudo isso Ă© uma parte importante no game modding;
  • GestĂŁo de scripts — O sistema de gerenciamento de scripts permite obter informaçÔes sobre scripts e manipular a execução deles;
  • NĂŁo Ă© necessĂĄrio compilação — Os scripts podem ser compilados, mas nĂŁo Ă© necessĂĄrio, e se o script for open source, todos os usuĂĄrios podem editĂĄ-lo sem qualquer preparação;
  • Handling de erro — O MoonLoader lida com tantos erros quanto possĂ­vel. Se UM script CLEO morre devido a um erro, todo o jogo morre, mas se o um script Lua morrer devido a um erro - ele apenas imprime o erro no log e interrompe a execução do script;
  • Sem dependĂȘncias — as Ășnicas duas coisas necessĂĄrias sĂŁo um versĂŁo 1.0US do GTA San Andreas;
  • CompatĂ­vel com SA-MP — MoonLoader pretende ser compatĂ­vel com ambos jogo single player e SA-MP;
  • Eventos — Acompanhe tais eventos, como começar um novo jogo, mensagens de janelas, sair do jogo, parar o script, etc;
  • Atom como um IDE oficial — O Atom Ă© um excelente editor de cĂłdigo, Ă© moderno e completamente personalizĂĄvel. MoonLoader tem seu prĂłprio pacote para o Atom para fornecer auto-completação inteligente, pesquisa de função e realce de erro. O Notepad++ tambĂ©m possui e oficial do MoonLoader. Se vocĂȘ nĂŁo gosta do Atom por algum motivo, vocĂȘ pode escolher qualquer editor de texto, atĂ© mesmo o bloco de notas padrĂŁo. Realmente nĂŁo hĂĄ requisitos para nenhuma ferramenta especial;
  • Carregamento no estĂĄgio inicial — Os scripts do Lua carregam logo apĂłs o inĂ­cio do jogo, mas hĂĄ duas etapas de carregamento: o "estĂĄgio de inicialização" logo apĂłs o lançamento do jogo e o "estĂĄgio ativo" quando o jogo Ă© carregado;
  • Sistema de save game separado — Sistema de salvamento do jogo baseado em eventos permite controlar quando o jogador inicia um novo jogo, carrega um jogo ou o salva
  • Comunicação Inter-Script - os scripts podem trocar dados e interagir uns com os outros atravĂ©s do recurso de importação de exportação (nĂŁo Ă© a função padrĂŁo de "require");
  • Threads de script sĂ­ncronas — Os segmentos de script tornam a multitarefa sĂ­ncrona muito mais fĂĄcil;
  • Bibliotecas padrĂŁo — A distro inclui algumas bibliotecas padrĂŁo com as ferramentas comuns de desenvolvimento;
  • E, claro, um monte de novas funçÔes.


FAQ:
"Isso quer dizer que Ă© possĂ­vel utilizar scripts do MTA no Singleplayer?"
- NĂŁo. O MTA tem seu prĂłprio sistema, sua prĂłpria API de renderização e tudo mais, a Ășnica semelhança Ă© de que usam a mesma linguagem de programação. As possibilidades sĂŁo diferentes, e o que o MTA faz pode ser feito na CLEO, no plugin-sdk ou seja onde for, isso nĂŁo tem nada relacionado com a linguagem Lua. No entanto, hĂĄ planos para implementar uma API de renderização no futuro, assim podendo utilizar shaders, mas isso pode causar algumas incompatibilidades de mods.

"Isso quer dizer que o que antes nĂŁo era possĂ­vel de se fazer no GTA SA, agora serĂĄ?"
- NĂŁo necessariamente. Tudo sempre foi possĂ­vel, assim como os mods .asi (principalmente junto com plugin-sdk) jĂĄ sĂŁo o cĂșmulo das possibilidades. O que o MoonLoader nos trĂĄs Ă© simplesmente a possibilidade de programar mods na programação Lua (o que .asi era basicamente somente C++). No entanto, criar mods Lua pro MoonLoader Ă© mais simples do que criar em .asi e mais poderoso do que mods cleos, assim como jĂĄ vem vĂĄrias funçÔes Ășteis prontas que descomplicam vĂĄrios trabalhos quase impossĂ­veis em cleo.

A instalação dos mods lua é simplesmente colocando os arquivos na pasta "moonloader". Não é compatível com instalação por ModLoader.

 Todos os mods .lua postados aqui na DG terå um aviso nas descriçÔes dos posts sobre a necessidade de usar o MoonLoader.

‎Autores: FYP, hnnssy, EvgeN 1137
Agradecimentos especiais: DK22Pac, MISTER_GONWIK, 4el0ve4ik, EXPORT, Garrus, CLEO
Tamanho: 1.5 MB (manual) / 1.7 MB (instalador)


MoonLoader — Instalação manual
é só ter o Silent Asi Loader e extrair os arquivos para a pasta do seu GTA SA


MoonLoader — Instalador automático
inclui extensĂŁo para Notepad++
PĂĄgina inicial