Olá.
Hoje vim trazer um tutorial muito simples, mas que é de grande utilidade para todos, até pelo motivo de eu não ter encontrado em nenhuma comunidade PT-BR. Tive um grande trabalho para achar um tutorial que tivesse uma línguagem mais prática e funcionasse, então devido a isso decidi postar.
Utilizar multíplos iteminfo.lub/lua.
Primeiro, como sabemos, os clientes mais novos estão usando itemInfo.lua / lub para substituir arquivos TXT para informações de item no lado do cliente, dentro da pasta System.
Acho que grande parte dos criadores de servidores mais complexos, se depararam com a situação de adicionar algum(ns) item(ns) de outro RO como idRO, iRO, & jRO, KRO e sempre receber "Item desconhecido" e "Maçãs", e não saber o verdadeiro motivo causador disso, exceto ao trocar os arquivos itemInfo.lua/lub. Eis que surgiu uma solução! Vamos lá.
Utilidade: utilizar itemInfo de outros servidores oficiais, como kRO, iRO e idRO, e fazer com que aqueles possam substituir informações não existentes de outros arquivos.
Tutorial
- 1º Passo:
Prepare os arquivos a ser utilizado, exemplo:
"itemInfo_bRO.lua" - Traduzido do BRO com todos os arquivos em PT-BR.
"itemInfo_iRO.lua" Servidor internacional iRO.
"itemInfo_idRO.lua".
"iteminfo_custom" - Seu iteminfo customizado, com seus itens criados.
"itemInfo_kRO.lua" - Servidor oficial e distribuidor do jogo RO.
- 2º Passo:
Faça um arquivo .lua vazio, dê o nome "itemInfo.lua". Este será o arquivo principal para ser lido pelo cliente.
Edite o "itemInfo.lua", e cole este código.
- 3º Passo:
entre no arquivo criado iteminfo.lua, que foi colado o código e onde estiver essa parte
main = function()
iiFiles = {
"System/itemInfo_Translation.lua", -- 1st priority
"System/itemInfo_iRO.lua", -- 2nd
"System/itemInfo_idRO.lua", -- 3rd
"System/itemInfo_kRO.lua", -- 4th
}
Mude para o nome dos seus arquivos, colocando em ordem de prioridade qual arquivo deve ser lido primeiro pelo Hexed (Geralmente iniciado com o BRO). Salve e feche.
- 4º Passo:
Em seguida, copie o arquivo e renomeie o arquivo copiado para "iteminfo.lub".
- 5º Passo:
Entre em todos seus arquivos preparados no Passo 1, e verifique se ambos começam assim:
tbl = {
...
}
Caso sim, continue no mesmo arquivo e vá para o próximo passo.
- 6º Passo:
Vá até o final do arquivo e remova a função principal. Geralmente estará assim.
Spoiler
function main()
for ItemID, DESC in pairs(tbl) do
result, msg = AddItem(ItemID, DESC.unidentifiedDisplayName, DESC.unidentifiedResourceName, DESC.identifiedDisplayName, DESC.identifiedResourceName, DESC.slotCount, DESC.ClassNum)
if not result then
return false, msg
end
for k, v in pairs(DESC.unidentifiedDescriptionName) do
result, msg = AddItemUnidentifiedDesc(ItemID, v)
if not result then
return false, msg
end
end
for k, v in pairs(DESC.identifiedDescriptionName) do
result, msg = AddItemIdentifiedDesc(ItemID, v)
if not result then
return false, msg
end
end
end
return true, "good"
end
Adicione ao lugar removido o seguinte código.
for ItemID,DESC in pairs(tbl) do
CheckItem(ItemID,DESC)
end
Fim!
Aprecie seus novos arquivos.
Notas e Créditos.
OBS¹: Apenas traduzi um tutorial já existente, no qual vou estar deixando a fonte a baixo. Mas tive que modificar praticamente todo tutorial, então os créditos são a ambos.
OBS²: Não irei fornecer nenhum arquivo, isto é apenas um tutorial, não me envie pm me solicitando nada.
OBS³: todos os arquivos devem ser decompilado .lua, não compilado.
OBS4:Se você tiver itens com ícone vazio , isso significa que sua data não tem o sprite / textura necessária ou seus arquivos itemInfo estão com o "unidentifiedResourceName" ou "identifiedResourceName" vazio ou não preenchidos.
Fonte: http://pservero.com/...iteminfo-files