Mas engraçado, na teoria cada criatura tem um uid e é nesse uid que vai armazenar o storage, nao? E de qualquer forma, se estiver sobrescrevendo, nao tem problema desde que eu nao use esse storage para players, correto? Tem so que ver se vai funcionar sempre.
info
Grupo: Herói
Registrado: 25/02/07
Posts: 859
Reputação: +331
Gênero: Masculino

info
Grupo: Visconde
Registrado: 20/08/06
Posts: 250
Reputação: +146

Na verdade as storages são utilizadas nas criaturas em geral, tanto que a função original é doCreatureSetStorage/getCreatureStorage (na versão 0.3.6 e 0.4).
A única diferença de colocar no player é que salva no banco de dados no save, já no monstro/npc não salva quando ele morre ou desaparece.
E também não tem como uma storage no monstro sobrescrever uma no player, como você disse a storage vai estar vinculada a um uid. No máximo, em alguns casos, você vai precisar checar se a criatura é um monstro, npc ou player nos scripts.
Editado Janeiro 18 por kydrai
info
Grupo: Herói
Registrado: 25/02/07
Posts: 859
Reputação: +331
Gênero: Masculino

Na verdade as storages são utilizadas nas criaturas em geral, tanto que a função original é doCreatureSetStorage/getCreatureStorage (na versão 0.3.6 e 0.4).
A única diferença de colocar no player é que salva no banco de dados no save, já no monstro/npc não salva quando ele morre ou desaparece.
E também não tem como uma storage no monstro sobrescrever uma no player, como você disse a storage vai estar vinculada a um uid. No máximo, em alguns casos, você vai precisar checar se a criatura é um monstro, npc ou player nos scripts.
Valeu, me esclareceu um pouco. O melhor seria usar o creature, mas quando usei o CreatureStorage não deu certo, rs. Não queria que salvasse na db não ![]()
Na verdade, pra ultima versao que fiz substitui e funcionou. xD
Editado Janeiro 18 por Skulls
info
Grupo: Conde
Registrado: 14/02/13
Posts: 702
Reputação: +196
Gênero: Masculino

Fazer isso pela source é muito simples, em lua é mais complicado, o problema de fazer isso em lua é, isso em grande escala ( 1000 - 5000 ) monstros executando um creaturescripts vai consumir MUITO do servidor, então tem que avaliar o custo de criar isso em lua, e fazer em c++
E sobre compilar o servidor, isso é a coisa mais simples do mundo.
1° baixe o Stian's Repack Dev-Cpp 0.2, 64bit
2° abrir o arquivo .dev
3° aperte ctrl + f9
pronto, agora você compilou seu tfs 0.3 / 0.4, mas eu recomendo usar o TFS 1.1 assim você tem uma source atualizada, e que consegue compilar usando Visual Studio.
info
Grupo: Herói
Registrado: 25/02/07
Posts: 859
Reputação: +331
Gênero: Masculino

Fazer isso pela source é muito simples, em lua é mais complicado, o problema de fazer isso em lua é, isso em grande escala ( 1000 - 5000 ) monstros executando um creaturescripts vai consumir MUITO do servidor, então tem que avaliar o custo de criar isso em lua, e fazer em c++
E sobre compilar o servidor, isso é a coisa mais simples do mundo.
1° baixe o Stian's Repack Dev-Cpp 0.2, 64bit
2° abrir o arquivo .dev
3° aperte ctrl + f9
pronto, agora você compilou seu tfs 0.3 / 0.4, mas eu recomendo usar o TFS 1.1 assim você tem uma source atualizada, e que consegue compilar usando Visual Studio.
Not that simple, aqui da pau. Sempre da pau.. auehuauhehau ![]()
Será que o custo é tão alto assim? Pq eu já rodei ele com algo proximo de mil monstros e ficou sussa, mas eu to sozinho no server né? xD
" C:\Users\lucas\Downloads\forgottenserver-trunk.r3884\trunk.r3884\dev-cpp\gcc TheForgottenServer_private.rc: No such file or directory. "
Editado Janeiro 18 por Skulls
info
Grupo: Conde
Registrado: 14/02/13
Posts: 702
Reputação: +196
Gênero: Masculino

info
Grupo: Herói
Registrado: 25/02/07
Posts: 859
Reputação: +331
Gênero: Masculino

Funcionou, porem deu erro na hora de executar: LIBMYSQL.dll missing..
Compartilhei o sisteminha que fiz em lua para tal:
http://www.xtibia.com/forum/topic/238899-monstros-duelando-entre-si/
info
Grupo: Conde
Registrado: 07/04/15
Posts: 926
Reputação: +335
Gênero: Masculino

Tópico movido para dúvidas / pedidos resolvidos.
Na verdade as storages são utilizadas nas criaturas em geral, tanto que a função original é doCreatureSetStorage/getCreatureStorage (na versão 0.3.6 e 0.4).
A única diferença de colocar no player é que salva no banco de dados no save, já no monstro/npc não salva quando ele morre ou desaparece.
E também não tem como uma storage no monstro sobrescrever uma no player, como você disse a storage vai estar vinculada a um uid. No máximo, em alguns casos, você vai precisar checar se a criatura é um monstro, npc ou player nos scripts.
Kydrai desculpa fugir um poco do assunto, mais seu systema vip 1.0 teve algum update para tfs 0.4?
ou alguma maneira de conseguir fazer a compatibilidade?





info
Grupo: Herói
Registrado: 14/02/14
Posts: 341
Reputação: +285
Gênero: Masculino
Char no Tibia: Night Wolf
@@Skulls, funcionou? não era pra funcionar.. funções de storage são restritas à players pois envolvem modificações na database. Acho q se pá vc tá pegando o uid de um monstro e na hora de salvar na database deve estar com o mesmo numero (uid) de um player existente. Mas sei lá né, pelo menos no 0.4 que eu mexo é assim, não sei se alguma source tem suporte pra storage em monstros