Skip to content

Um pequeno estudo onde uso python, e sua lib ctypes, para criar cheats para o jogo Super Mario World.

Notifications You must be signed in to change notification settings

renanstn/hacking-super-mario-with-python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hacking Super Mario World with Python

screenshot

Script feito em python, que se conecta ao processo de um emulador snes9x rodando Super Mario World, e altera os valores de moedas e status do Mario.

  • Mantém as moedas sempre em 99, assim, qualquer moeda que você pegue, ganha uma vida
  • Mantém o Mario sempre com a capa, mesmo que você seja atingido, você nunca perde a capa, ficando assim invencível.

Este estudo foi possível graças a este repositório, utilizado neste vídeo onde tal proposta é apresentada e explicada (agadecimentos ao Dan Maker). Porém, fiz várias correções e adaptações ao código para facilitar a minha própria compreensão do mesmo.

Como funciona

Para que este script funcione, você precisa encontrar os endereços de memória no emulador, que armazenam a quantidade de moedas, e o status do Mario. Este processo geralmente é fácil de fazer se você utilizar o Cheat Engine, você pode aprender como fazer isso aqui.

Após encontrar os endereços, mantenha o emulador aberto, e insira os mesmos no arquivo src/addresses.py, nos campos COINS e STATUS.

Ao executar o script, ele irá se conectar com o processo do snes9x, e constantemente ler e sobrescrever na memória os valores de moedas e o status do Mario.

Executando

  • (Opcional) Crie e inicialize um ambiente virtual
python -m venv venv
venv\Scripts\activate
  • Instale as dependências
pip install -r requirements.txt
  • Execute
python src/main.py

Observação

Este projeto funciona somente em Windows.

About

Um pequeno estudo onde uso python, e sua lib ctypes, para criar cheats para o jogo Super Mario World.

Topics

Resources

Stars

Watchers

Forks

Languages