MoonLoader v.026.5 beta

Atualizado 29/10/18
(change log para desenvolvedores - em russo)
Não teve grandes mudanças, mas disseram que um mod não funcionou na versão anteriormente postada aqui e foi necessário baixar a nova, portanto achei importante deixar o blog atualizado.
Também pequenas alterações no post.


Agora é possível instalar mods em .lua no GTA San Andreas!
gta sa san mod moonloader moon loader lua scripts mods logo
A partir de 2017 os mods de script para GTA SA 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 CLEO Library 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++)" — 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, acessar estruturas de dados, passar 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 ASI Loader e a 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 suporte 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.

"Qual é mais fácil de aprender? GTA3script ou Lua?"
- Está bem explicado na introdução do meu tutorial de GTA3script.


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

Clique aqui para baixar mods Lua, CLEO, ASI etc.
  

‎Autores: FYP, hnnssy, EvgeN 1137
Agradecimentos especiais: DK22Pac, MISTER_GONWIK, 4el0ve4ik, EXPORT, Garrus, CLEO


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


MoonLoader — Instalador automático
inclui extensão para Notepad++




Comece baixando seus primeiros mods:

Pack de mods lua (scripts de exemplo)
  • AutoReboot.lua — Recarrega os scripts editados automaticamente
  • Crosshair.lua — Personalizar a textura da mira da arma (necessário SAMP Funcs?)
  • incar pickup.lua — Pegar pickups mesmo dentro de um veículo (SHIFT para ativar)
  • maplimit260.lua — Expande o zoom do radar do mapa no hud, assim podendo ver mais amplamente
  • quickmap.lua — Aperte 'M' para instantaneamente aparecer o mapa na tela com todas as funções como se estivesse no menu. Muito bom, mas o comando pode atrapalhar; você pode editar o comando no "keyShow = VK_M"... viu como é fácil!?
  • RapidFire.lua — Um hack bem conhecido que faz a arma atirar super rapidamente. Você pode baixar o RapidFire em CLEO também.
  • reload_all.lua — Semelhante ao AutoReboot, você pressiona CTRL+R para recarregar os scripts lua (perceba que você pode instalar ou editar scripts sem reiniciar o jogo). Recomendado usar somente durante testes e desenvolvimento.
  • SF Integration.lua — Integra o MoonLoader com o SAMP Funcs.
  • SprintFire.lua — Corrige um "bug" do jogo, onde enquanto você está correndo você antes não podia mirar uma arma (tinha que parar de correr pra mirar).
  • weapon menu.lua — Um weapon spawner simples com ícones na tela e configuração de munição.


Links
Thread para desenvolvedores (inglês)
Thread para desenvolvedores (russo)
Thread oficial (inglês)
Thread oficial (russo)
Wiki (russo)
Páginas relacionadas
Aviso:
Download quebrado?
Precisa atualizar?
Problemas com a postagem?
Indique 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.
Devido à problemas com a regra acima e contas fakes, foi necessário ativar moderação. Seu comentário será aprovado dentro de 1 dia.
Abrir Comentários