
Tudo que Will Oliveira postou
-
Mais Health/Mana
voce pode editar isso no arquivo vocations.lua que fica na pasta data/xml, lá você vai achar as tags assim: <vocation id="1" name="Sorcerer" description="a sorcerer" needpremium="0" gaincap="10" gainhp="5" gainmana="30" gainhpticks="12" gainhpamount="1" gainmanaticks="3" gainmanaamount="2" manamultiplier="1.1" attackspeed="2000" soulmax="100" gainsoulticks="120" fromvoc="1"> <formula meleeDamage="1.0" distDamage="1.0" wandDamage="1.0" magDamage="1.0" magHealingDamage="1.0" defense="1.0" magDefense="1.0" armor="1.0"/> <skill fist="1.5" club="2.0" sword="2.0" axe="2.0" distance="2.0" shielding="1.5" fishing="1.1" experience="1.0"/> </vocation> voce edita o ganho por level de hp em gainhp e o ganho de mana em gainmana, mas se o player ja for começar lvl 50 tem que fazer um script
-
[PEDIDO] Script fácil, porém não achei
no topico nao fala nada que o item quebra mas se quiser posso editar o script, qual item que vai quebrar?
-
[PEDIDO] Script fácil, porém não achei
marca o unique id onde vai ser usado o item principal, não vai quebrar nada, se tiver duvida em fazer a tag do item é só falar
-
[PEDIDO] Script fácil, porém não achei
ta aí, só configurar as posições, colocar o unique id (uid) 6030 no slot pelo map editor, e fazer a tag do script: local old_pos = {x = 123, y = 456, z = 7} -- posição daonde o player vai usar o item local new_pos = {x = 123, y = 456, z = 7} -- posição pra onde o player será teleportado function onUse(cid, item, fromPosition, itemEx, toPosition) if getCreaturePosition(cid) == old_pos and itemEx.uid == 6030 then doTeleportThing(cid, new_pos) else doPlayerSendCancel(cid, "Sorry, not possible.") end end
-
[Livro] C++ Como programar - Deitel
Esse livro é em ingles :/
-
[Ajuda] doItemSetAttribute
vc nao entendeu minha pergunta..
-
[Ajuda] doItemSetAttribute
Seja mais especifico, o que você quer que o script faça?
-
(Resolvido)Posição do templo
Você tem que mudar a posição pela database, baixe o Sqlite Studio pra editar.
-
[Livro] C++ Como programar - Deitel
O livro C++ Como programar da editora Deitel é um ótimo livro pra aprender a programar em C++, ele ensina do básico ao avançado, se você quer aprender a programar, é mais fácil ler esse livro do que pagar um curso (hoje em dia os cursos de C++ são caríssimos). Vou postar a quinta edição do livro, que é a penúltima edição (não deixa de ser boa). Link: https://docs.google.com/file/d/0B287pYR-q5EnZjE3OWMyNDctZGU4ZC00N2Y5LWFiZjMtMDkzOTFiMzA4NTYz/edit Obs: O sumário é a partir da página 32 Espero que seja útil pra alguém
-
[MOD] Sounds
sistema de chuva já existe rs
-
[MOD] CandyBot
Depois edito o post com a print =)
-
[MOD] Sounds
Putz cara, aí já não sei :/
-
[MOD] Sounds
O que faz? Esse mod, ao definirmos posições para ele, quando você estiver entre as posições ele tocará a música definida por você. Instalação: 1 - Em sua pasta otc/mods crie uma pasta chamada rcsound, crie um arquivo chamado rcsound.lua e adicione isto: SOUNDS_CONFIG = { soundChannel = SoundChannels.Music, checkInterval = 500, folder = 'music/', noSound = 'No sound file for this area.', } SOUNDS = { -- Rook Cave {fromPos = {x=879, y=803, z=8}, toPos = {x=1079, y=963, z=15}, sound = "FF VII - Main.ogg"}, -- Boss {fromPos = {x=977, y=903, z=8}, toPos = {x=1009, y=916, z=9}, priority = 1, sound="FF VII - Main.ogg"}, {fromPos = {x=1001, y=917, z=9}, toPos = {x=1002, y=919, z=9}, priority = 1, sound="FF VII - Main.ogg"}, -- Main -- Dragon {fromPos = {x=1089, y=1110, z=8}, toPos = {x=1135, y=1142, z=8}, priority = 1, sound="Fairy Tail - Main.ogg"}, {fromPos = {x=1102, y=1128, z=9}, toPos = {x=1131, y=1149, z=9}, priority = 1, sound="Fairy Tail - Main.ogg"}, {fromPos = {x=1117, y=1124, z=9}, toPos = {x=1128, y=1127, z=9}, priority = 1, sound="Fairy Tail - Main.ogg"}, {fromPos = {x=1100, y=1104, z=10}, toPos = {x=1127, y=1131, z=10}, priority = 1, sound="Fairy Tail - Main.ogg"}, {fromPos = {x=1103, y=1108, z=9}, toPos = {x=1108, y=1112, z=9}, priority = 1, sound="Fairy Tail - Main.ogg"}, {fromPos = {x=1096, y=1088, z=5}, toPos = {x=1110, y=1100, z=6}, priority = 1, sound="Fairy Tail - Main.ogg"}, } ---------- -- Sound local rcSoundChannel local showPosEvent local playingSound -- Design soundWindow = nil soundButton = nil function toggle() if soundButton:isOn() then soundWindow:close() soundButton:setOn(false) else soundWindow:open() soundButton:setOn(true) end end function onMiniWindowClose() soundButton:setOn(false) end function init() for i = 1, #SOUNDS do SOUNDS[i].sound = SOUNDS_CONFIG.folder .. SOUNDS[i].sound end connect(g_game, { onGameStart = onGameStart, onGameEnd = onGameEnd }) rcSoundChannel = g_sounds.getChannel(SOUNDS_CONFIG.soundChannel) -- rcSoundChannel:setGain(value/COUNDS_CONFIG.volume) soundButton = modules.client_topmenu.addRightGameToggleButton('soundButton', tr('Sound Info') .. '', '/images/audio', toggle) soundButton:setOn(true) soundWindow = g_ui.loadUI('rcsound', modules.game_interface.getRightPanel()) soundWindow:disableResize() soundWindow:setup() if(g_game.isOnline()) then onGameStart() end end function terminate() disconnect(g_game, { onGameStart = onGameStart, onGameEnd = onGameEnd }) onGameEnd() soundWindow:destroy() soundButton:destroy() end function onGameStart() stopSound() toggleSoundEvent = addEvent(toggleSound, SOUNDS_CONFIG.checkInterval) end function onGameEnd() stopSound() removeEvent(toggleSoundEvent) end function isInPos(pos, fromPos, toPos) return pos.x>=fromPos.x and pos.y>=fromPos.y and pos.z>=fromPos.z and pos.x<=toPos.x and pos.y<=toPos.y and pos.z<=toPos.z end function toggleSound() local player = g_game.getLocalPlayer() if not player then return end local pos = player:getPosition() local toPlay = nil for i = 1, #SOUNDS do if(isInPos(pos, SOUNDS[i].fromPos, SOUNDS[i].toPos)) then if(toPlay) then toPlay.priority = toPlay.priority or 0 if((toPlay.sound~=SOUNDS[i].sound) and (SOUNDS[i].priority>toPlay.priority)) then toPlay = SOUNDS[i] end else toPlay = SOUNDS[i] end end end playingSound = playingSound or {sound='', priority=0} if(toPlay~=nil and playingSound.sound~=toPlay.sound) then g_logger.info("RC Sounds: New sound area detected:") g_logger.info(" Position: {x=" .. pos.x .. ", y=" .. pos.y .. ", z=" .. pos.z .. "}") g_logger.info(" Music: " .. toPlay.sound) stopSound() playSound(toPlay.sound) playingSound = toPlay elseif(toPlay==nil) and (playingSound.sound~='') then g_logger.info("RC Sounds: New sound area detected:") g_logger.info(" Left music area.") stopSound() end toggleSoundEvent = scheduleEvent(toggleSound, SOUNDS_CONFIG.checkInterval) end function playSound(sound) rcSoundChannel:enqueue(sound, 0) setLabel(clearName(sound)) end function clearName(soundName) local explode = string.explode(soundName, "/") soundName = explode[#explode] explode = string.explode(soundName, ".ogg") soundName = '' for i = 1, #explode-1 do soundName = soundName .. explode[i] end return soundName end function stopSound() setLabel(SOUNDS_CONFIG.noSound) rcSoundChannel:stop() playingSound = nil end function setLabel(str) soundWindow:recursiveGetChildById('currentSound'):getChildById('value'):setText(str) end 2 - Crie um arquivo chamado rcsound.otmod e adicione isto: Module name: rc_sound description: Handels sounds for Rising Client. author: Shawak website: none autoload: true autoload-priority: 1000 sandbox: true scripts: [ rcsound ] @onLoad: init() @onUnload: terminate() 3 - Crie um arquivo chamado rcsound.otui e adicione isto: Module name: rc_sound description: Handels sounds for Rising Client. author: Shawak website: none autoload: true autoload-priority: 1000 sandbox: true scripts: [ rcsound ] @onLoad: init() @onUnload: terminate() 4 - Crie uma pasta dentro da rcsound, chamada music, dentro dela adicione os sons desejados, lembrando que o formato tem que ser OGG. Como configurar? É bastante simples, como definir as posições e a musica que tocará quando entrar nela: {fromPos = {x=879, y=803, z=8}, toPos = {x=1079, y=963, z=15}, sound = "FF VII - Main.ogg"} Então, o frompos = da posição, topos = para a posição, ou seja, frompos vai ser onde começa e topos termina. Sound = "FF VII - Main.ogg", o que está entre aspas é o nome da musica que se encontra na pasta music, lembrando que tem que colocar o .ogg Créditos: xS0NYx Shawak
-
[MOD] CandyBot
O que faz? O CandyBot é um mod do otclient que funciona como um bot comum. Instalação: Você deve ir a página do github do candybot e clicar no botão ZIP, você estará baixando o mod compactado, descompacte e transfira a pasta do CandyBot para a pasta mods do seu otclient. ScreenShots: Créditos: BeniS (Ben Dol) - [email protected] Alexandre do Amaral Severino - [email protected] Evesys
-
[MOD] Guild Management
O que faz? Esse mod serve para administrar sua guild, criar, invitar player, promover player, desfazer guild, entre outros... Instalação: Extraia o arquivo na pasta otc/mods. Download: https://hostr.co/MfecSZIxhiUv Screenshots: Créditos: Zysen xS0NYx
-
[MOD] Changelog
O que faz? Esse mod é uma janela onde você pode escrever o que quiser, como por exemplo as atualizações do seu servidor. Instalação: 1 - Descompacte o arquivo .rar na pasta mods 2 - Pronto, o mod irá carregar automaticamente ao iniciar o client 3 - Você pode editar o texto da janela pelo arquivo changelog.lua Download: http://www.mediafire...85u58ixs4x15bxb Screenshot: Créditos: Summ Will (eu)
-
[MOD] Otclient auto-updater
Ok, vou retirar
-
[MOD] Otclient auto-updater
O que faz? Esse auto-updater, conta com as funções de: Checar se existe novos updates na inicialização do 'OTC', baixa os updates em diretórios especificados pelo administrador, baixa e extrai arquivos '.ZIP', reinicia o' OTC' apos terminar o download do patch, múltiplos patchs. Instalação: 1 - Crie no diretório raiz de seu site um arquivo '.txt' chamado de 'Update.txt', preencha o arquivo como o arquivo a seguir: http://pastebin.com/cdwnD6qg Obs: nesse pastebin já tem as instruções de como adicionar novos updates. 2 - Baixe o 'Updater Patcher.rar' extraia na pasta raiz do seu otclient. 3 - Depois de ter baixado o 'Updater Mod.rar', extraia e coloque a pasta do mod na pasta 'mods' do seu otclient configure o caminho para o executavel do 'updater patcher' no arquivo .lua. 4 - Agora você precisa ir na pasta raiz do seu 'otclient 'e configurar o arquivo 'Config.ini' com os seguites dados: [Geral] WebSite=http://dragonhertsserver.pusku.com/ - o seu website vai aqui é o site onde fica o 'update.txt' Client=otclient - nome do executavel do seu otclient SiteFile=Update.txt - o nome do arquivo que fica no site marcando os updates 5 - Depois de tudo configurado é só abrir o 'otclient' normalmente que o 'patcher' vai executar junto. use sempre link de download direto para adicionar um novo update. Download: Updater Mod: http://www.mediafire.com/download/8xc6boa8xpdh3mu/Updater+Mod.rar Updater Patcher: http://www.mediafire.com/download/ynnqy1iba8qqeyq/Update+patcher.rar Vídeo que mostra como o mod funciona: Obs: Se você tem um servidor é quer usar o updater, crie um instalador definindo já o diretório do seu client para o player não precisar configurar o arquivos '.lua' Obs²: Em arquivos compactados use sempre a extenção '.ZIP' Obs³: É preciso o NET framework para rodar. Créditos: vyctor17
-
Função doTransformItem não funciona
@Jamison Collins @Daaniel Já tentei assim e não funciona, o problema é que função doTransformItem só ta transformando o item se for uma parede ou tile Eu pesquisei na otland e esse problema está ocorrendo em varias distros, mas eu testei até no TFS 0.4 A1 e não funciona :/
-
Função doTransformItem não funciona
Não ta sendo usado pra outra coisa não
-
Função doTransformItem não funciona
Coloquei uniqueid 4012 no itemid 1724 pelo map editor e fiz o seguinte script: function onUse(cid, item, fromPosition, itemEx, toPosition) if itemEx.uid == 4012 then if getPlayerStorageValue(cid, 8999) >= 1 then doPlayerSendTextMessage(cid, 22, "Você já fez essa quest.") return true end doSendMagicEffect(toPosition, 2) doTransformItem(4012, 2255) doCreateItem(2553, 1, toPosition) doPlayerSetStorageValue(cid, 8999, 1) addEvent(doTransformItem, 180000, 4012, 1724) end end Tag actions.xml: <action itemid="7242" script="quests/pickqom.lua" /> Quando uso o itemid 7242 no item de uid 4012 o item não transforma. O itemid 2553 que coloquei pra ser criado e o effect que coloquei no script funcionam, mas a função doTransformItem não, por que será? Eu pesquisei na otland e alguns usuários de lá tem o mesmo problema, testei o script no TFS 0.3.6 pl1 e no TFS 0.4 A1 e não funcionou em nenhum dos dois. Eu li na otland que em algumas distros a função só transforma paredes e tiles, outros tipos de item não, mas testei a função até no TFS 0.4 A1 e não funcionou, por que será? Rep+ pra quem me ajudar.
-
[Resolvido] Criar um item com unique id
@Chiitus É exatamente disso que eu precisava, obrigado rep+
-
[Resolvido] Criar um item com unique id
Como faço pra criar um item que venha com um unique id? Por exemplo: local pos = {x = 94, y = 129, z = 7} function onUse(cid, item, fromPosition, itemEx, toPosition) doCreateItem(1491, 1, pos) end Queria que ao criasse o item 1491 ele viesse com uma unique id que eu vou estabelecer, pesquisei muito na internet e não achei como fazer isso
-
[Resolvido] Variavel global
Valeu pela ajuda rep+
-
[Resolvido] Variavel global
Se eu definir uma variável global em um script como por exemplo: numero = 15 Por ela não ser uma variável local, eu posso chama-la em outros scripts de outras pastas? Respondam com certeza por favor.