
Light Weight 2d Ascii RPG Python Game Engine
S.P.A.R.K Versão 1.0
S.P.A.R.K é um motor de jogo RPG ASCII retrô 2D leve. Ele é construído na biblioteca padrão, portanto nenhuma instalação com PIP é necessária.
O propósito do motor é educacional. Considero-o uma extensão da minha série de tutoriais de 15 minijogos em Python, ele funciona como um playground onde você pode aplicar o que aprendeu em suas próprias mini aventuras.
S.P.A.R.K. fornece os sistemas centrais necessários para construir um RPG ASCII tradicional, incluindo:
Lógica de jogador e inimigo, Combate por turnos, Navegação em mapas, Animações ASCII, Tela de título e interface, Suporte básico de som, Armas, armaduras, estatísticas, sistema de nivelamento, sistema de inventário e eventos (para criar missões e histórias)
Os tipos de jogos RPG que você pode criar são semelhantes aos feitos com o motor de jogo Bitsy ou a série de livros-jogos Fighting Fantasy.
Requisitos Python 3.10+
Windows recomendado (para reprodução de som). Sugiro usar pygame se quiser reprodução de som nos outros sistemas operacionais.
Criei um jogo de exemplo com uma simples missão de busca intitulado 'S.P.A.R.K ( Spoon Quest Example )'. Ele fornece um bom estudo de caso sobre como você 'codificaria uma missão' no motor. Você pode usá-lo como base para o seu próprio jogo, mas se quiser trabalhar do zero, use o S.P.A.R.K Game Engine (Blank Canvas)
│ animations.py
│ armour.py
│ battle.py
│ enemy.py
│ events.py
│ game.py
│ instructions.py
│ maps.py
│ player.py
│ sound.py
│ title_screen.py
│ weapon.py
│
└───music
background.wav
Game Loop (game.py) Controla o fluxo principal do jogo: Tela de título, Entrada do jogador, Movimento, Combate, Eventos, Renderização
Sistema de Combate (battle.py) Lida com: Rolagens de ataque, Cálculo de dano, Efeitos de arma, Mitigação de armadura
Jogador e Inimigos player.py define o personagem do jogador e enemy.py define os tipos e comportamento dos inimigos
Mapas (maps.py) Gerencia: Layout de tiles, Regras de movimento, Detecção de colisão
Animações (animations.py) Fornece transições ASCII e efeitos visuais.
Som (sound.py) Reproduz arquivos .wav no Windows.
Você pode facilmente estender o S.P.A.R.K. adicionando:
Novas armas (weapon.py)
Novas armaduras (armour.py)
Novos tipos de inimigos (enemy.py)
Novos eventos (events.py)
Novos mapas (maps.py)
Novas animações (animations.py)
A base de código é intencionalmente simples para que você possa modificá-la livremente.
Licença MIT — livre para usar, modificar e distribuir.
Uma pasta de milestones foi fornecida para aqueles interessados em como o Motor foi construído a partir do zero.
Além do exemplo 'The Spoon Quest', aqui estão exemplos de jogos que podem ser construídos neste Motor:
Ambos foram construídos como jogos independentes muitos anos atrás e eu refatorei seus códigos para construir o S.P.A.R.K
A maior diferença é que para o S.P.A.R.K, usei a biblioteca msvcrt para pressionamento instantâneo de teclas, enquanto para os jogos abaixo você precisará 'pressionar enter' após cada comando.
https://github.com/Ninedeadeyes/Grimlore-Land-of-the-Heretic-Hand
Vídeo de demonstração / guia abaixo