https://www.renpy.org
O desenvolvimento do Ren'Py ocorre na ramificação master
e, ocasionalmente, nas ramificações de recursos.
Ren'Py depende de vários módulos Python escritos em Cython e C. Para alterações no Ren'Py que envolvem apenas módulos Python, você pode usar os módulos encontrados na versão noturna mais recente. Caso contrário, você mesmo terá que compilar os módulos.
Os scripts de desenvolvimento assumem uma plataforma semelhante a POSIX. Os scripts devem ser executados em Linux ou macOS e podem ser executados em Windows usando um ambiente como MSYS.
As compilações noturnas podem ser baixadas em:
https://nightly.renpy.org
Observe que a última compilação noturna está no final da lista. Depois de descompactar o nightly, mude para este repositório e execute:
./after_checkout.sh <caminho para noite>
Depois que esse script for concluído, você poderá executar o Ren'Py usando renpy.sh, renpy.app ou renpy.exe, conforme apropriado para sua plataforma.
Se a compilação noturna atual não funcionar, aguarde 24 horas para que uma nova compilação ocorra. Se a compilação ainda não funcionar, entre em contato com Tom (pytom em bishoujo.us ou @renpytom no Twitter) para descobrir o que há de errado.
O link simbólico doc
ficará pendurado até que a documentação seja construída, conforme descrito abaixo.
Construir os módulos requer que você tenha muitas dependências instaladas em seu sistema. No Ubuntu e no Debian, essas dependências podem ser instaladas com o comando:
sudo apt instalar virtualenvwrapper python3-dev libavcodec-dev libavformat-dev libswresample-dev libswscale-dev libharfbuzz-dev libfreetype6-dev libfribidi-dev libsdl2-dev libsdl2-image-dev libsdl2-gfx-dev libsdl2-mixer-dev libsdl2-ttf-dev libjpeg-dev
Ren'Py requer SDL_image 2.6 ou superior. Se sua distribuição não incluir essa versão, você precisará baixá-la em:
https://github.com/libsdl-org/SDL_image/tree/SDL2
Sugerimos fortemente a instalação dos módulos Ren'Py em um virtualenv Python. Para criar um novo virtualenv, abra um novo terminal e execute:
. /usr/share/virtualenvwrapper/virtualenvwrapper.sh mkvirtualenv renpy
Para retornar a este virtualenv mais tarde, execute:
. /usr/share/virtualenvwrapper/virtualenvwrapper.sh Workon Renpy
Após ativar o virtualenv, instale dependências adicionais:
pip install -U setuptools "cython<3.0.0" future six digitação de solicitações de pefile ecdsa
Em seguida, instale o pygame_sdl2 executando os seguintes comandos:
clone do git https://www.github.com/renpy/pygame_sdl2 pushdpygame_sdl2 instalação do python setup.py python install_headers.py $ VIRTUAL_ENV popd
Em seguida, defina RENPY_DEPS_INSTALL para uma lista :-separated (;-separated no Windows) de caminhos contendo as dependências e RENPY_CYTHON para o nome do comando cython:
exportar RENPY_DEPS_INSTALL="/usr:/usr/lib/$(gcc -dumpmachine)/" exportar RENPY_CYTHON=cython
Finalmente, use setup.py no diretório module
Ren'Py para compilar e instalar os módulos que suportam Ren'Py:
módulo pushd instalação do python setup.py popd
Ren'Py será instalado no virtualenv ativado. Ele pode então ser executado usando o comando:
python renpy.py
Construir a documentação requer que o Ren'Py funcione. Você precisará vincular uma compilação noturna ou compilar os módulos conforme descrito acima. Você também precisará do gerador de documentação Sphinx. Se você tiver o pip funcionando, instale o Sphinx usando:
pip instalar -U esfinge esfinge_rtd_theme esfinge_rtd_dark_mode
Assim que o Sphinx estiver instalado, mude para o diretório sphinx
dentro do checkout do Ren'Py e execute:
./build.sh
A documentação do Ren'Py consiste em arquivos reStructuredText encontrados em sphinx/source e documentação gerada encontrada em docstrings de funções espalhados por todo o código. Não edite os arquivos em sphinx/source/inc diretamente, pois eles serão sobrescritos.
Docstrings podem incluir tags nas primeiras linhas:
function
, method
ou class
. Se omitido, kind será detectado automaticamente.Por exemplo:
def warp_speed(fator, transwarp=Falso): """ :doc: urdidura :nome: renpy.warp_speed :args: (fator) Excede a velocidade da luz. """ renpy.engine.warp_drive.engage(fator)
Para conhecer as melhores práticas quando se trata de traduzir o inicializador e o modelo do jogo, leia:
https://lemmasoft.renai.us/forums/viewtopic.php?p=321603#p321603
Para correções de bugs, melhorias na documentação e alterações simples, basta fazer uma solicitação pull. Para alterações mais complexas, pode fazer sentido registrar um problema primeiro para que possamos discutir o design.
Para os termos de licenciamento completos, leia:
https://www.renpy.org/doc/html/license.html