Tudo que Guilty postou
-
NPC de troca somente uma vez por player
Interface: Scripts Interface Script ID: C:\Users\Administrator\Videos\canary-main\canary-main\data-otservbr-global/npc\yana.lua Error Description: ...anary-main\canary-main\data-otservbr-global/npc\yana.lua:3: attempt to index global 'NpcSystem' (a nil value) stack traceback: [C]: in function '__index' ...anary-main\canary-main\data-otservbr-global/npc\yana.lua:3: in main chunk --------------------------------------- [2023-29-12 13:45:38.675] [error] C:\Users\Administrator\Videos\canary-main\canary-main\data-otservbr-global/npc\yana.lua [2023-29-12 13:45:38.675] [error] está dando esse erro, consegue ajudar?
-
NPC de troca somente uma vez por player
Alguém poderia em ajudar ou disponbilizar um NPC que faz troca de um ITEM por OUTRO ITEM somente UMA VEZ POR PLAYER? Estou tentando replicar alguns códigos de outros npcs mas sempre dá erro e não consigo nada. Uso o Canary.
- Baiak Hyper [8.60][TFS 0.3] ~ King-Baiak (atualizado 20/03/23)
- Baiak Hyper [8.60][TFS 0.3] ~ King-Baiak (atualizado 20/03/23)
- Baiak Hyper [8.60][TFS 0.3] ~ King-Baiak (atualizado 20/03/23)
-
RME 8.60 (Heyron Edition) v1.5
- Baiak Hyper [8.60][TFS 0.3] ~ King-Baiak (atualizado 20/03/23)
-
Erro Site "setNickname" dbo
Tente: db->accounts->abra estrutura->nickname-> altere INT por CHAR.
-
Procuro Mapper e C/OTML p/ OTPokémon
Se tiver interesse em mapper, me manda mensagem.
-
Como funciona esse script
local shinysName = { "Blastoise", "Venusaur", "Butterfree", "Beedrill", "Flygon", "Heracross", "Milotic", "Lapras", "Pidgeot", "Rattata", "Raticate", "Raichu", "Golbat", "Paras", "Parasect", "Magmar", "Typhlosion", "Xatu", "Growlithe", "Arcanine", "Tentacruel", "Gengar", "Krabby", "Tauros", "Kingler", "Cubone", "Horsea", "Seadra","Slowking", "Weezing","Mr. mime","Sandslash", "Scyther", "Pinsir", "Crobat", "Zubat", "Tentacool", "Feraligatr", "Machamp", "Meganium", "Alakazam", "Tangela", "Ampharos", "Electabuzz", "Jynx", "Charizard", "Voltorb", "Electrode"} function onSpawn(cid) if getCreatureName(cid) == "" or getCreatureName(cid) == nil then setPlayerStorageValue(cid, 510, getCreatureNick(cid)) end --if isTwoGerenetion(doCorrectString(getCreatureName(cid))) then doRemoveCreature(cid) return false end registerCreatureEvent(cid, "GeneralConfiguration") registerCreatureEvent(cid, "WildAttack") registerCreatureEvent(cid, "Experience") registerCreatureEvent(cid, "Matou") registerCreatureEvent(cid, "PokeWalk") registerCreatureEvent(cid, "StatsChange") if not ehMonstro(cid) then registerCreatureEvent(cid, "Target") registerCreatureEvent(cid, "Matou") registerCreatureEvent(cid, "SummonDeath") getPokeDistanceToTeleport(cid) setPokemonGhost(cid) if getCreatureName(cid):find("Shiny ") then setPlayerStorageValue(cid, storages.EhShiny, 1) end return true end addEvent(doShiny, 5, cid) addEvent(Camuflagear, 5, cid) addEvent(adjustWildPoke, 5, cid) setPokemonGhost(cid) doMarkedPos(cid, getThingPos(cid)) if isPokePassive(cid) then setPokemonPassive(cid, true) end return true end function PonerSigno(cid) if isWild(cid) then setCreatureName(cid, getCreatureName(cid).."[?]", "a salvaje "..getCreatureName(cid)) end end function Camuflagear(cid) if getCreatureName(cid) == "Kecleon" and isWild(cid) then if isSummon(cid) then return true end setPlayerStorageValue(cid, 89899, -1) KecleonCamuWildOn(cid) end end function doShiny(cid) if isCreature(cid) then if isSummon(cid) then return true end if isNpcSummon(cid) then return true end local chance = 0 if isInArray(shinysName, doCorrectString(getCreatureName(cid))) then --alterado v1.9 \/ chance = 12 --1.2% chance end local sid = cid if math.random(1, 1000) <= chance then doSendMagicEffect(getThingPos(cid), 18) local name, pos = "Shiny ".. getCreatureName(cid), getThingPos(cid) if not pokes[name] then return true end doRemoveCreature(cid) --print(name .. ", " .. retireShinyName(name)) local shi = doCreateMonsterNick(sid, name, retireShinyName(name), pos, false) end else return true end end Gostaria de saber como funciona esse script., Alguém me ajuda?
- Pokemon HuatsonOT (DXP) Custom lvl sys
-
Lançamento as 23hrs precisamos de turores
Vou entrar lá agora. Meu nick é Zaksz.
-
.
amigo, qual o comando para criar itens? estou usando o /i e os itens não estão sendo criado. (nunca joguei e nem abri servidores nas versões novas kkkk).
-
[ITEM] Item que aumenta 50% velocidade de treinar skill.
Crie um arquivo em actions/scripts e em actions.xml adiciona: <action itemid="ID DO ITEM" script="NOME DO ARQUIVO.lua"/>
-
[ITEM] Item que aumenta 50% velocidade de treinar skill.
No caso uma potion que dê o dobro de velocidade para upar as skills?
-
[ITEM] Item que aumenta 50% velocidade de treinar skill.
function onUse(cid, item, fromPosition, itemEx, toPosition) local rate = 5.0 for i = 0, 7 do doPlayerSetRate(cid, i, rate) -- skills doCreatureSay(cid, "Item usado!", 19) doRemoveItem(item.uid, 1) end end Não sei se irá adicionar 50%, mais o item será removido.
-
Texto subindo quando player é donate
data\creaturescripts\scripts: local delay = xxx --Intervalo de tempo entre o efeito, em milésimos de segundo. function sendVipEffect(cid) if isPlayer(cid) and isPremium(cid) then doSendAnimatedText(getThingPos(cid), "[VIP]", math.random(1, 255)) addEvent(sendVipEffect, delay, cid) end end function onLogin(cid) sendVipEffect(cid) return true end data\creaturescripts\creaturescripts.xml: <event type="login" name="vipeffects" event="script" value="NOME DO ARQUIVO.lua"/> data\creaturescripts\scripts\login.lua: registerCreatureEvent(cid, "vipeffects")
-
[ITEM] Item que aumenta 50% velocidade de treinar skill.
Tem um script que ele dá 50% de skill, em troca ele pega 5 dias de premium. Caso seja útil: function onUse(cid, item, fromPosition, itemEx, toPosition) local storage = 445566 -- storage local storageplayer = getPlayerStorageValue(cid, storage) local agora = os.time() local dias = 5 -- dias do efeito local valordias = dias * 24 * 60 * 60 local pa = getPlayerPremiumDays(cid) if isPremium(cid) then if pa >= 5 then if getPlayerStorageValue(cid, storage) - os.time() <= 0 then time = agora + valordias else time = storageplayer + valordias end doPlayerRemovePremiumDays(cid, dias) doPlayerSetSkills(cid, 1.5) setPlayerStorageValue(cid, storage, time) doSendMagicEffect(getPlayerPosition(cid), math.random(28,30)) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Aproveite 5 dias com XP + 50%.") doRemoveItem(item.uid, 1) else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce nao possui ao menos 5 dias de premium.") end end return true end
-
Player perdendo skill quando morre, ajudem.
function onLogin(cid) local loss = getConfigValue('deathLostPercent') if(loss ~= nil) then doPlayerSetLossPercent(cid, PLAYERLOSS_EXPERIENCE, loss * 10) end Deixe o deathLostPercent = 1.
-
Erro no RME
Use essa .spr e .dat: https://www.mediafire.com/?lvz8c12b8e0y09k
-
error couldn't estabilish connection to sql
Amigo, pela configuração do seu config.lua o servidor está abrindo via mysql. sqlType = "mysql" Altera mysql para sqlite, e se o nome da sua database for esta, não precisa mudar.
-
Erro no RME
Cole os arquivos items.otb e items.xml do seu servidor dentro da pasta rme/data/8.60.
-
[Windows] Compilando Sources OTClient - VS2015
[Windows][VS2015] Compilando Sources OTClient Tutorial explicando como compilar as Sources do OTClient com o Visual Studio 2015. 1 - Downloads Necessários - Visual Studio 2015 Update 3: http://my.visualstudio.com/Downloads?pid=2086 - Microsoft Visual C++ 2015 Redistributable:https://www.microsoft.com/pt-br/download/details.aspx?id=48145 - OTClient SDK 1.0 (Bibliotecas): https://github.com/conde2/otclient-sdk - Bibliotecas Boost C++ 1.63.0: https://sourceforge.net/projects/boost/files/boost-binaries/1.63.0/boost_1_63_0-msvc-14.0-32.exe/download 2 - Instale os softwares necessários - Instale o Visual Studio 2015. - Instale as bibliotecas Boost C++ 1.63.0. 3 - OTClient SDK 1.0 - Extraia os arquivos do OTClient SDK 1.0. - Antes de rodar o arquivo "register_otclient_sdk_env.bat", clique com botão direito nele e em Editar. - Você encontrará escrito assim: setx OTCLIENTSDKDir %CD% - Você deverá colocar as "" (aspas duplas) em %CD% e adicionar "pause" no final (lembre-se de salvar o arquivo). - Ficando assim: setx OTCLIENTSDKDir "%CD%" pause - Rode o arquivo e ele irá abrir uma janela cmd informando com sucesso o valor salvo. Obs: fazendo isso, você não precisará adicionar as bibliotecas manualmente. 4 - Boost C++ 1.63.0 - Mova o arquivo "register_otclient_boost_env.bat" que está na pasta do OTClient SDK 1.0/boost 1_63_0) para o diretório onde foi instalado o Boost C++ 1.63.0 (Exemplo: C:\local\boost_1_63_0) - Antes de rodar o arquivo "register_otclient_boost_env.bat", clique com botão direito nele e em Editar. - Você encontrará escrito assim: setx BOOST_ROOT_OTCLIENT %CD% - Você deverá colocar as "" (aspas duplas) em %CD% e adicionar "pause" no final (lembre-se de salvar o arquivo). - Ficando assim: setx BOOST_ROOT_OTCLIENT "%CD%" pause - Rode o arquivo e ele irá abrir uma janela cmd informando com sucesso o valor salvo. Obs: fazendo isso, você não precisará adicionar as bibliotecas manualmente. 5 - Sources OTClient - Se você tem o cliente Git instalado, pode utilizar esse comando para fazer download das sources: git clone https://github.com/edubart/otclient.git - Se você não tem o cliente Git instalado, pode fazer o download das sources em: https://github.com/edubart/otclient/archive/master.zip 6 - Compilando as Sources do OTClient - Encontre o diretório vc14 do OTClient e abra o arquivo otclient.sln. Isso irá abrir o Visual Studio e você estará apto a compilar as sources. - No Visual Studio, escolha Release e a solução "Win32". - Para compilar as sources, clica em Build no menu e depois em Build Solution. - As sources serão compiladas com sucesso. 7 - Abrindo o OTClient - Copie as DLLs glew32.dll (bin > x86), zlib.dll (bin > x86) e openal32.dll (bin > x86) da pasta OTClient SDK 1.0 para a pasta do executável do OTClient. - OTClient será aberto com sucesso! 8 - Créditos edubart:https://github.com/edubart/otclient/wiki/Compiling-on-Windows Ninja:https://otland.net/threads/windows-how-to-set-path-environment-variables-for-tfs-1-0.207359/ Tradução, Modificações e Testes - Majesty
-
(Resolvido)Existe uma limitação no uso de alguns itens?
Adicione em actions.xml: <action itemid="ID DA CHAVE" script="chave.lua"/> Crie um arquivo chave.lua e adicione: function onUse(cid, item, frompos, item2, topos) doRemoveItem(item.uid, 1) return TRUE end Pronto!
-
Map Change
Coloque o script no tópico, por favor.