
Tudo que Dwarfer postou
-
(Resolvido)[VIP] no nome, faltando a parte do "old name" (nao criar o char com o mesmo nick) ajuda
Realmente, faltava um %. Já editei lá.
-
(Resolvido)[VIP] no nome, faltando a parte do "old name" (nao criar o char com o mesmo nick) ajuda
O script já verifica isso, se tiver um player com esse nome, terá que escolher outro.
-
(Resolvido)[VIP] no nome, faltando a parte do "old name" (nao criar o char com o mesmo nick) ajuda
Não. Já existe um char chamado [VIP] Joao, aí o cara vai e cria um char chamado Joao. No primeiro login dele vai ser verificado se já existe algum [VIP] com esse nome, se tiver, ele será obrigado a mudar o nome para outro.
-
(Resolvido)top fragger effect on player
What did you mean with topguild? Guild with more frags, right? If yes, you can try:
-
(Resolvido)[VIP] no nome, faltando a parte do "old name" (nao criar o char com o mesmo nick) ajuda
Acredito que para fazer a verificação no account manager, você teria que modificar algo nas sources do servidor. Uma alternativa é bloquear o player que tem o nome de um [VIP] e fazer ele alterar o nome. Em creaturescripts/scripts: checkName.lua Adicione a tag no creaturescripts.xml: <event type="login" name="NameVip" event="script" value="checkName.lua"/> Em talkactions/scripts: unlock.lua E em talkactions.xml: <talkaction words="!unlock" event="script" value="unlock.lua"/>
-
(Resolvido)Modificar script
Aqui:
-
(Resolvido)top fragger effect on player
When player with top frags login the game, the effect will be shown. Create a file in creaturescripts/scripts: frageffect.lua In creaturescripts.xml, add the tag: <event type="login" name="TopFrags" event="script" value="frageffect.lua"/>
-
(Resolvido)sacrificio por storage
Realmente, falha minha ali na verificação da storage, acabou que me passei. Com relação a voltar para a bp você não disse que teria que voltar. Segue com as modificações:
-
Job System
ACABOU A MOLEZA! Você que sempre fez os NPC's trabalharem dia e noite, disponíveis a qualquer momento mesmo que seja apenas para receber um "hi, buy rope, yes". A COISA MUDOU! Agora você vai ter que ralar. E olhe que os monstros estão com muito gold para gastar devido às mortes de aventureiros, despreparados de AOL ou de bençãos, que acabam por deixar dinheiro nas suas backpacks. VÁ TRABALHAR, SEU VAGAB..! Depois dessa ladainha toda, estava eu testando algumas funções, umas coisitas aqui e ali e ao misturar tudo saiu isso aí meio que sem querer. Tem uns pontos que podem ser melhorados, mas como disse serviu apenas como uns testes para mim, mas resolvi compartilhar, mesmo sendo simplesinho. Acho que será útil para servidor com um pouquinho de RPG. Testado em TFS 0.4 e versão 8.60. O Job System é um sistema no qual o player atenderá pedidos dos monstros. Cada pedido correto, o player ganha 1 job point que pode ser utilizado para comprar itens no npc ou como você queira fazer, em quests, acessos, seja lá o que for. O funcionamento é demonstrado no vídeo abaixo: Segue o código do sistema (MOD) e do NPC. jobsystem.xml CONFIGURAÇÃO: Desde que configure corretamente o mapa, não tem praticamente nada para modificar. monsters = { [1] = {"Amazon", "Dwarf", "Elf Scout"}, [2] = {"Barbarian Bloodwalker", "Dwarf Guard", "Warlock"}, [3] = {"Vampire Bride", "Dwarf Geomancer", "Infernalist"} } times = { deal = 30, lever = 2 } Aqui deal é o tempo em segundos entre cada pedido. Lever é o tempo em minutos para poder usar a alavanca novamente. Aconselho deixá-los nesses valores, já testei e funcionou certinho assim. A configuração ocorre praticamente no mapa: 1 - Crie uma "loja" do mesmo tamanho e com a mesma configuração que as mostradas no vídeo e na imagem abaixo. Apenas com a posição do meio livre. Não importa a "orientação" da loja. A única exigência é que a alavanca sempre esteja do lado do braço direito do char, conforme a imagem. MUITO IMPORTANTE: NÃO USE ITENS STACKABLES NA LOJA 2. Definindo o rank da loja: ALAVANCA DE ACTION ID: 4421 - Rank Apprentice 4422 - Rank Merchant 4423 - Rank Rashid 3. Todos os itens que não devem ser arrastados (itens da loja ou de decoração que não devam ser arrastados como o royal axe que mostrei lá no vídeo) devem receber o actionid 4420. 4. Os pisos onde os monstros serão criados devem ter actionid 4420. Além disso, ser área no-pvp e no logout (apenas por precaução). 5. Toda a área restante deve ser Protection Zone (PZ). Além disso, os locais do centro da loja onde os players ficarão devem ser No Logout Area. Dwarfer.xml job.lua Configuração do NPC: promote = {tomerchant = 50, torashid = 100}, tomerchant = 50 -> São necessários 50 pontos no rank Apprentice para avançar torashid = 100 -> São necessários 100 pontos no rank Merchant para avançar entice_rank = {-- Apprentice [2154] = {price = 1}, [2158] = {price = 3}, [2155] = {price = 7}, [2156] = {price = 100} }, merchant_rank = { -- Merchant [1998] = {price = 15}, [5950] = {price = 25}, [1987] = {price = 70}, [2402] = {price = 100} }, rashid_rank = { -- Rashid [9993] = {price = 15}, [9992] = {price = 25}, [9992] = {price = 70}, [7399] = {price = 100}} } [id_do_item] = {price = preço do item} que aparecerá na lista do NPC. É isso aí, seus vagal's
-
(Resolvido)Modificar script
E fez o que? Ficou meio difícil decifrar isso que você falou, é antes ou depois?
-
(Resolvido)Modificar script
- ANTI MC - EVENTOS - GLOBALEVENTS
removemc.lua local hour = "00:00" --- altere para a hora que desejar local frompos, topos = {x = 25477, y = 25134, z = 7},{x = 25490, y = 25139, z = 7} function onThink(interval, lastExecution) if hour == tostring(os.date("%X")):sub(1, 5) then removeMc(frompos, topos) end return true end function removeMc(frompos, topos) local ips = {} for a,b in pairs(getPlayersOnline()) do if isInArea(getThingPos(b),frompos, topos) then if isInArray(ips,getPlayerIp(b)) then doTeleportThing(b,getTownTemplePosition(getPlayerTown(b))) end table.insert(ips,getPlayerIp(b)) end end end <globalevent name="RemoveMc" interval="60000" event="script" value="removemc.lua"/>- (Resolvido)Runas inf exceto sd
Vamos tentar meio que uma "gambiarra". Substitua o que tem no arquivo da sd por isso aí acima. Vê aí se funciona.- "Usar" itens "não usáveis"
Se o martelo tem a opção de usar em outro item, você pode fazer algo como essas três opções: local msg = "FORJED!" function onUse(cid, item, fromPosition, itemEx, toPosition) -- [1] if itemEx.itemid == ID_DA_BIGORNA then doCreatureSay(cid, msg) end -- [2] if itemEx.actionid == AID_DA_BIGORNA then doCreatureSay(cid, msg) end -- [3] local p = getThingFromPos(toPosition) if p.itemid == ID_DA_BIGORNA then doCreatureSay(cid, msg) end --[e outras..] end E: <action itemid="ID_DO_MARTELO" script="forja.lua" />- (Resolvido)sacrificio por storage
@JcA Não testei, qualquer erro fala aí. Em movements/scripts: sacrificio.lua Em movements.xml, adicione a tag: <movevent type="AddItem" tileitem="1" actionid="ACTION_ID_DOS_BASINS" event="script" value="sacrificio.lua"/>- Grizzly Adams não da storage.
E no login.lua na sua pasta de creaturescripts tem o evento registrado? registerCreatureEvent(cid, "KillingInTheNameOf")- Grizzly Adams não da storage.
Isso aqui: não deve estar no seu creaturescripts.xml né? No seu creaturescripts.xml tem a tag para esse script. Você registrou o evento no arquivo login.lua? Se não, faça isso.- Problemas com RaidEvent
Verifique se sua tag no globalevents está em segundos ou milisegundos.- Porta com chave e teleport
@Hunterii Sim, já editei lá, pode pegar.- Ajuda com getDataString
Ah, entendi sua dúvida. Assim: local total = db.getResult("SELECT COUNT(*) as count FROM `players` where `created` > unix_timestamp(CURRENT_TIMESTAMP()) - 86400;") doPlayerSendTextMessage(cid, 18, total:getDataInt("count"))- Ajuda com getDataString
db.getResult("SELECT COUNT(*) FROM `players` where `created` > unix_timestamp(CURRENT_TIMESTAMP()) - 86400;")- Monstro que vira item
- Monstro que vira item
- Porta com chave e teleport
@Hunterii Se você tiver configurado corretamente, o script funcionará. Testei aqui agora e funcionou. A chest pode ser usada infinita vezes porque você não disse que não poderia, eu não sei o que você tá tentando fazer, então tente explicar mais detalhadamente. chest: local id, door_aid = 1111, 2222 -- id da chave, aid da porta function onUse(cid, item, fromPosition, itemEx, toPosition) if getPlayerStorageValue(cid, 11672) > 0 then return doCreatureSay(cid, "Your chest is empty.", TALKTYPE_ORANGE_1) end local key = doPlayerAddItem(cid, id, 1) setPlayerStorageValue(cid, 11672, 1) doItemSetAttribute(key, "aid", door_aid) doCreatureSay(cid, "You have received your key.", TALKTYPE_ORANGE_1) return true end porta (com alteração pedida):- Porta com chave e teleport
Baú para pegar a chave pegarkey.lua local id, door_aid = 1111, XXXX -- id da chave, actionid_da_porta function onUse(cid, item, fromPosition, itemEx, toPosition) local key = doPlayerAddItem(cid, id, 1) doItemSetAttribute(key, "aid", door_aid) doCreatureSay(cid, "You have received your key.", TALKTYPE_ORANGE_1) end <action actionid="ACTION_ID_DO_BAÚ" script="pegarkey.lua" /> portatp.lua local new_pos = {x=1, y = 1, z=1} function onUse(cid, item, fromPosition, itemEx, toPosition) if item.actionid == itemEx.actionid and itemEx.itemid ~= item.itemid then doTeleportThing(cid, new_pos) doSendMagicEffect(new_pos, CONST_ME_TELEPORT) end end <action actionid="ACTIONID_DAPORTA" script="portatp.lua" /> - ANTI MC - EVENTOS - GLOBALEVENTS
Informação Importante
Confirmação de Termo