Olá éks.
Clientes com versões anteriores à 9.60 têm um limite de sprites de 65.535. Parece muito, mas logo esse limite é atingido e ficamos impossibilitados de adicionar novos objetos para o servidor/cliente a não ser substituindo alguns sprites. Esse tutorial pretende ensinar como configurar as principais ferramentas para aumentar o limite. A versão utilizada no tutorial foi a 8.60.
Conhecimentos Necessários:
XML
Básico nas ferramentas utilizadas.
Ferramentas Utilizadas:
Object Builder (edita os arquivos dat e spr do cliente) >> Para baixar o programa clique no Nome dele *--*
iTemEditor (edita o arquivo otb, que contém os itens usados no servidor) >> Para baixar o programa clique no Nome dele *--*
OTclient 0.6.5.
Um programa para abrir arquivos LUA.
Remere's Map Editor.
Compilando os Arquivos Estendidos:
1. Abra seus arquivos "spr" e "dat" no Object Builder.
2. Compile os arquivos com a opção extended selecionada.
Obs: Uma vez compilado estendido, a opção extended deverá estar sempre selecionada tanto ao abrir, quanto ao compilar.
Configurando o ItemEditor:
1. Abra o itemEditor, vai em File/ Preferences
2. clique em Browse e escolha o local onde está seu Arquivos "Dat" e "Spr"
3. Marque a Opção Extender
Configurando OTClient:
1. Abra o arquivo things.lua encontrado em modules/game_things
2. Adicione esta linha de código na função load:
function load()
local version = g_game.getClientVersion()
g_game.enableFeature(GameSpritesU32) -- Linha Adicionada
local datPath, sprPath
3.Adicione uma cópia dos arquivos dat e spr estendidos na pasta data/things.
Remere's Map Editor :
Infelizmente o RME não tem suporte pra arquivos estendidos.
A solução mais viável é adicionar uma versão 9.60 junto a versão do seu cliente e compilar os arquivos como 9.60 especialmente para o RME. A versão do RME deve ser 2.2 ou superior.
- Compile na sua versão para usar no cliente e no ItemEditor.
- Compile na versão 9.60 numa pasta separada para usar no RME.
Adicionando a versão:
1. Vá à pasta de instalação do RME e abra o arquivo clients.xml, encontrado na pasta data.
2. Procure a tag do seu cliente e adicione uma linha para versão 9.6
<client name="8.60" otb="8.60" visible="true" data_directory="860">
<otbm version="3"/>
<extensions from="8.20 - 8.31"/>
<data datversion="8.6" sprversion="7.0" dat="0x4C2C7993" spr="0x4C220594"/>
<data datversion="8.6" sprversion="7.0" dat="0x4C6A4CBC" spr="0x4C63F145"/>
<data datversion="9.6" sprversion="9.6" dat="0x4FFA74CC" spr="0x4FFA74F9"/> <!-- Versão Extendida -->
</client>
3. Compile seus arquivos em uma pasta separada com a versão 9.60.
4. Na versão utilizada, configure o RME para a pasta onde se encontra os arquivos compilados como 9.60
Perguntas Frequentes:
P: Qual o novo limite de sprites após ser estendido?
R: 4.294.967.295
P: Depois que compilar estendido, pode ser usando no cliente da Cip?
R: Não! Seria preciso modificar o cliente para que consiga ler os arquivos.
P: Posso usar o dat editor para modificar os arquivos depois?
R: O ObjectBuilder é um dat/spr editor, mas se você quer usar outro editor, é pouco provável que funcione. Não custa tentar.
Créditos::
EdMignari e sua Equipe