Histórico de Edições
Please note that revisions older than 15 days are pruned and will no longer show here
Não há histórico de edição para mostrar, ou este comentário foi editado por um moderador.
-
Quem Está Navegando 0 membros estão online
Nenhum usuário registrado visualizando esta página.
-
Conteúdo Similar
-
Por Linus
Você pode configurar se quer que o preço aumente a cada reset, se quer que o level pra resetar aumente e se vc quer que a vida resete junto (e quanto % da vida atual será a vida após resetar).
Testado em tfs 1.1, Versão 10.77
Vá em data/npc/lib/ crie npc_resets.lua :
Você pode editar mexendo aqui. no script acima :
config = { minlevel = 150, --- Level inical para resetar price = 10000, --- Preço inicial para resetar newlevel = 20, --- Level após reset priceByReset = 0, --- Preço acrescentado por reset percent = 30, ---- Porcentagem da vida/mana que você terá ao resetar (em relação à sua antiga vida total) maxresets = 50, ---- Maximo de resets levelbyreset = 0 --- Quanto de level vai precisar a mais no próximo reset } agora em data/npc/ crie reseter.XML :
Agora em data/npc/scripts crie reseter.lua :
Img :
-
Por gpedro
Testado: MySQL & SQLite
Distro: TFS 0.4_SVN & TFS 0.3.6
MySQL
ALTER TABLE `players` ADD `resets` INT(11) NOT NULL DEFAULT "0"; SQLite ALTER TABLE players ADD resets INTEGER not null default 0 Adicionando nas sources player.h procure por: uint32_t level; logo abaixo, adicione: uint32_t resets; iologindata.cpp procure por query << "SELECT `id`, `account_id`, `group_id`, `world_id`, `sex`, `vocation`, `experience`, `level`," substitua por: query << "SELECT `id`, `account_id`, `group_id`, `world_id`, `sex`, `vocation`, `experience`, `level`, `resets`, " procure por player->level = std::max((uint32_t)1, (uint32_t)result->getDataInt("level")); logo abaixo adicione: player->resets = (uint32_t)result->getDataInt("resets"); procure por query << "`maglevel` = " << player->magLevel << ", "; logo abaixo adicione: query << "`resets` = " << player->resets << ", "; players.cpp procure por: s << " (Level " << level << ")"; substitua por: s << " (Level " << level << ") [Reset " << resets << "]"; players.h procure por: void setPromotionLevel(uint32_t pLevel); logo abaixo adicione: uint32_t getResets() { return resets;} void setResets(int32_t amount) { resets += amount; if (resets < 0) {resets = 0;} } luascript.cpp para 0.3.6 static int32_t luaDoPlayerSetIdleTime(lua_State* L); logo abaixo adicione: static int32_t luaGetResets(lua_State* L); static int32_t luaSetResets(lua_State* L); talkactions.xml <talkaction words="!rank;/rank" event="script" value="ranks.lua"/> <talkaction words="!reset;/reset" script="reset.lua"/> ranks.lua
Créditos: Dark Skyllen, Marcryzius, Mock, Kydrai, Cykotitan, gpedro*.
* adaptação para 0.4
-
Por xWhiteWolf
Fala galera do TK, hoje vim pra trazer pra vocês um npc criado por mim e pelo Nogard numa madrugada aí para solucionar a dúvida de um cara no suporte. Eu dei uma melhorada no script original, tirei umas coisas repetidas e adicionei novas funções;
Você agora pode configurar se quer que o preço aumente a cada reset, se quer que o level pra resetar aumente e se vc quer que a vida resete junto (e quanto % da vida atual será a vida após resetar).
Testado em TFS 0.3.6, Versão 8.45
Sem mais delongas, vamos ao script.
Antes de tudo crie um arquivo chamado reseter.lua na pasta data\npc\scripts\ e coloque isso daqui dentro dele:
Você pode editar tudo mexendo aqui:
local config = {
minlevel = 150, --- level inical para resetar
price = 10000, --- preço inicial para resetar
newlevel = 20, --- level após reset
priceByReset = 0, --- preço acrescentado por reset
percent = 100, ---- porcentagem da vida/mana que você terá ao resetar (em relação à sua antiga vida total)
levelbyreset = 0 --- quanto de level vai precisar a mais no próximo reset
}
Feito isso, crie agora o npc que irá utilizar esse script.. em data\npc crie um arquivo.xml chamado Reseter.xml e coloque isso dentro dele:
Agora é só colocar o seu npc no mapa pelo mapa editor e curtir
OBS 1: Se seu server for 8.6 ou maior troque no script.lua as funções db.executeQuery por db.query
OBS 2: Esse script dava pra ser diminuido ainda mais mas por hora deixa ele assim, se vc tiver alguma proposta melhor por favor poste nos comentários que eu testo a sua versão e edito o tópico se for o caso.
OBS 3: Não remova os créditos, isso é a coisa mais baixa e suja que alguém pode fazer.. eu scripto pra ajudar a comunidade do Tibia a evoluir e libero 99% doque eu faço, se vocês não removerem os créditos e não postarem em outros fórums sem minha permissão isso pode continuar assim.
--- EDIT: Coloquei algumas imagens pra vcs verem como fica no server
EDIT: Arrumei o problema de o npc não dar bye automáticamente qnd o player se afasta, bugando em algumas versões e impedindo de conversar com outros npcs. Apenas substituam o arquivo em scripts pela versão atualizada, grato.
EDIT2: Novos erros arrumados, agora o NPC dá bye automaticamente e não buga qnd te reseta.
EDIT3: Resolvido bug de dar hi, reset, yes várias vezes e derrubar o servidor (troque tanto o xml qnt o script do npc)
O script também foi identado.
-
Por Marjer
Ola! Eu tenho uma duvida!
Eu tenho 1 mapa 9.60 e ficou 1 tempo online, e assim foi crecendo.. (accs, players, etc..)
E eu consegui passar para 10.10
E gostaria de saber se tem como passa a database do 9.60 pro 10.10 ?
Tem algum jeito que eu possa fazer isso ?
Eu fiz uns test..
Quando eu coloquei a database do 9.60 na pasta do 10.10
Eu abri o executer e aparece isso de primeiro :
(Uso Distro : The Forgotten Server, version 0.3.7_7_SVN)
Updating Database Manager
Updating Database to version 37...
Updating has been updated to version: 37.
Updating Database to version 38...
Updating has been updated to version: 38.
Optimized database.
E abriu normalmente...
Nessa database tem as contas, e depois que abril certinho o mapa.
Eu tento entra e fala que o password ou o login estao errados.
E quando eu logo no account manager da esse erro :
Error during getDataInt(offinetraining_time)
Error during getDataInt(offinetraining_skill)
sqlite3_prepare_v2(): SQILITE ERRO: no such table? player_inboxitems (SELECT "pid, "sid", "itemtype", "count", "attributes" FROM "player_inboxitems" WHERE "player_id" = 1 ORDEN BY "Sid Desc;)
Toda vez que entro no jogo, com personagem, ou account manager, no Server Log aparece isso :
00:32 You must be logged out for more than 10 minutes to start offline training.
E quando entro eu ando um pouco, depois eu relogo, vai para o templo, e com a mesma mensagem acima!
E quando logo, no executer, da 1 erro muitoo grande!
Irei postar uma foto!
Foto :
Entao.. Tem como ?
---------------------------
(Uso Distro : The Forgotten Server, version 0.3.7_7_SVN)
Entao...
Eu peguei outra database, porque a da versão 9.60 dava erro!
Eu fiz varios tests com a database.
Pelo o que eu procurei e testei, essa database funcionou 100%
Massss.....
Meu mapa é Radbr, então tem o sistema de resets.
Já tentei falar, /installreset, é mesma coisa que nada!
E quando o player reseta nessa database, da 1 erro!
Mas sera que é erro no Script ? ( Mas na outra versão 8.60 ea 9.60 funcionava!.... )
E o player volta pro level 20, e com vida e mana de antes.
Mas não aparece no look, e da erro no executer :
Error during get DataInt (reset) "4 vezes aparece esse erro" e depois...
Tabela de Resets: Intalada ... [success]
Error during get DataInt (reset)
Ai desloga o char.. E quando desloga da esse erro :
sqlite3_prepare_v2(): SQLITE ERROR: no such column: reset (UPDATE "players" SET "reset" = 1 WHERE "id"=3;)
Ai loga o char... E da esse erro :
sqlite3_prepare_v2(): SQLITE ERROR: no such column: reset (SELECT "ID", "reset" FROM "players" ORDEN BY DESC;)
Tem algum jeito de arruma isso ?
Eu procurei algumas coisas mas não achei! Talvez alguma SQL query possa ajuda nisso! Talvez..
Se alguém souber... Por favor me ajuda.
Irei colocar meu servidor online, e preciso de uma database boa! Nem que não de a do 9.60
Mas uma que funcione...! E não de erro do sistema de reset!
Por favor se alguém puder me ajuda, eu agradeço!
Atenciosamente, Marjer!
EDIT : Foto postada
-
Por Cleiton Felipi
Bom dia galera!
Bom eu gostaria de saber se existe algum comando para mysql que reseta o level e mana o life e os skill dos players, sem deletar os char, e o comando que manda todos para o templo.
Não sei se estou na area correta, se não tiver desculpa.
Desde já obrigado.
-