OpenTS2
OpenTS2 é uma reimplementação de código aberto do The Sims 2, usando o motor de jogo Unity. Também visa fornecer uma série de bibliotecas modulares para trabalhar com formatos TS2 em um ambiente C#.
Progresso
Atualmente está implementado um menu principal básico com um seletor de bairro. As informações do bairro podem ser visualizadas e uma visualização básica do bairro pode ser acessada.
Agradecimentos
- Tomate Invertido.CRC
- Leitor de imagens TGA
- Plug-in de cursor de hardware
- Lua afiada
- GrátisSO
- DBPFSharp
- NAudio
- Nspeex
Projetos semelhantes
- FreeSO - Reimplementação Open Source do The Sims Online usando C# e Monogame. OpenTS2 empresta muito código e estrutura deste projeto.
- Las Marionetas - Projeto semelhante, com o objetivo de reimplementar The Sims 2 por meio da engenharia reversa de seu código binário em código-fonte C/C++.
- SimUnity2 - Tentativa anterior de reimplementação do TS2 no mecanismo Unity. Abandonado, sucedido por este projeto.
- OpenTPW - Reimplementação de código aberto do Sim Theme Park / Theme Park World.
- OpenRCT2 - Reimplementação de código aberto do Rollercoaster Tycoon 2.
Licença
Este Formulário de Código Fonte está sujeito aos termos da Licença Pública Mozilla, v. 2.0. Se uma cópia do MPL não foi distribuída com este arquivo, você pode obter uma em http://mozilla.org/MPL/2.0/.
Desenvolvimento
Pré-requisitos
- Unity 2020.3.32f1 - Pode ser encontrado em "Unity 2020.x", você também pode baixar o Unity Hub e instalar a partir dele. A versão do Unity está sujeita a alterações, fique de olho nisso!
- Estúdio Visual 2019
- Uma cópia da Coleção The Sims 2 Ultimate
Configurar
- Você precisa ter um arquivo "config.json" na pasta raiz que fornece caminhos para a instalação do Sims 2 UC e diretórios de usuários. Copie o arquivo “config.example.json” e renomeie-o para “config.json” para começar e digite seus próprios caminhos.
- No Unity, certifique-se de que Editar > Preferências > Ferramentas Externas > Editor de Script Externo esteja definido como Visual Studio. Por padrão, ele abre arquivos separadamente, em vez de uma solução.
Estrutura do Projeto
Seguimos o layout de um projeto normal do Unity, exceto:
-
Assets/Scripts/OpenTS2
– Contém a maior parte do código C# que lida com formatos e arquivos TS2. -
Assets/Tests/OpenTS2/
- Testes unitários seguindo a mesma estrutura de diretórios da pasta Scripts
. -
Assets/Scenes/Test
- Testes, mas mais no nível de integração envolvendo cenas do Unity.-
Assets/Scripts/OpenTS2/Engine/Tests
- Scripts de controlador para os testes acima.
Teste
Atualmente usamos o Unity Test Runner para código de teste de unidade. Esses testes podem ser executados dentro da unidade por meio da guia executor de testes ou, se você usar o Rider como editor C#, dentro dela.