Os últimos dias foram complicados, tanto para vocês como para nós.
Os servidores reiniciavam constantemente, e a sua estabilidade esteve comprometida.
Isto foi causado por uma drástica mudança nos servidores (principalmente na estrutura da base de dados e na compatibilidade com *nix).
Depois de corrigir um bug, apareciam mais dez. E depois de corrigir esses, ainda mais apareciam.
Deu algum trabalho a conseguir estabilizar os servidores. E apesar de tudo parecer estar bem, houveram algumas perdas.
Estou a referir-me basicamente aos stats dos jogadores.
Quando estava a mudar a forma como os jogadores fazem login, apercebi-me que o código para guardar e carregar os stats estava fundamentalmente errado. Tanto de uma perspectiva de arquitectura, como de uma perspectiva de persistência.
Foi quando arranjei os erros relacionados com a persistência (e só os erros relacionados com arquitectura faltavam corrigir) que muitos de vocês perderam os vossos stats. Não porque eu os tenha apagado, mas porque não estavam a ser devidamente relacionados com a vossa conta desde o princípio.
Depois fui corrigir os problemas relacionados com a arquitectura, e apercebi-me que tinha duas opções:
1) ou tentar corrigir manualmente os stats corrompidos e deixar de fora quem já tinha perdido os stats, ou
2) introduzir a nova arquitectura e reiniciar os stats, mantendo assim a consistência com a nova arquitectura, e tratando igualmente todos os jogadores.
Acho que a minha decisão final foi bastante óbvia.
Esta será provavelmente a última vez que os stats serão reiniciados, visto que agora é fácil exportar e voltar a importar os stats, caso voltem a haver alterações no servidor/cliente.
Gostava de mencionar que os fórums foram desactivados para prevenir spam devido ao facto de os servidores estarem offline, e de terem havido perdas de stats.
Agora, falando do que mudou, podem encontrar o changelog aqui -> viewtopic.php?f=6&t=1495
Como foi mencionado anteriormente, a estrutura da base de dados foi completamente alterada (tanto nos servidores como nos fórums).
Isto vai permitir queries mais rápidas, melhor gestão de ligação, e toda uma série de funcionalidades que não tinhamos anteriormente.
Isto também tem um enorme impacto na performance do servidor.
Houve ainda muitas mudanças relacionadas com a gestão de ligações, listas de queries, etc.
Anteriormente, o servidor conseguia suportar cerca de 80 utilizadores a logar (não a estabelecer ligação) por segundo, e um total geral de cerca de 2500 utilizadores ligados.
Com as mudanças implementadas, os servidores são agora capazes de suportar aproximadamente 1000 utilizadores e logar simultâneamente (por segundo) e deve conseguir aguentar um total de cerca de 18000 utilizadores ligados.
As mudanças para melhorar a performance foram fundamentais para o futuro lançamento do projecto actualmente com o nome de código "Venice".
A API privada também teve várias mudanças e métodos implementados, devido ao futuro lançamento da API pública que vai permitir ver os stats de utilizadores específicos, listas de servidores, stats online, informações sobre servidores específicos, etc (será divulgada mais tarde mais informação sobre isto).
Finalmente, os servidores correm agora nativamente em linux (mais específicamente Ubuntu Server 12.10 x64).
Anteriormente, os servidores estavam a correr numa máquina com windows, e eram compilados em "modo" 32-bit.
Isto limitava a performance, e a funcionalidade de manutenção que tinhamos sobre eles.
O servidor está agora actualizado, capaz de compilar em 64-bit e de correr nativamente em linux, melhorando exponencialmente a performance, e permitindo-nos geri-lo e actualiza-lo mais facilmente.
Dadas todas estas mudanças, gostava de aconselhar a todos os administradores de servidores que os reiniciem, só por precaução.
Os servidores ainda não foram testados em carga, e podem manifestar-se alguns bugs. Portanto, por favor não "se passem" se eles subitamente ficarem offline.
Além disso, se encontrarem algum bug que não acontecia nas versões anteriores do jogo, digam-me, postando no fórum "Suggestions and Feedback".
Divirtam-se!
Deixem-me acrescentar que caso não tenham reparado ali em cima, o NoFaTe já identificou a causa de por vezes perderem o vosso soldier, e vos aparecer outro soldier (outro nome dentro do jogo, e outros stats).
Esse problema já foi corrigido com a nova arquitectura dos stats
