Ir para conteúdo
Banner com Efeitos

Líderes

Conteúdo Popular

Exibindo conteúdo com a maior reputação em 05/29/11 em todas áreas

  1. [C#] Bot ultilizando Skins do Windows

    Renato e um outro reagiu a Tryller por uma resposta no tópico

    2 pontos
    [C#] Bot ultilizando Skins do Windows Primeiramente gostaria de dizer que eu sei que muita gente deste fórum é contra dar os códigos prontos, até por que eu sempre pedia ajuda e raramente alguém ajudava com códigos prontos, mas é claro que eu não sou esse tipo de pessoa então venho aqui lhes ensinar a por Skins do windows arquivos do tipo: (.msstyles) no seu Bot ultilizando a DLL USkin, a mesma usada pelo ElfBot Espsero que este código ajude os desenvolvedores a melhorarem as aparencias de seus bots xD 1 - Baixe os arquivos nescessarios (ElfBot NG Skin é opcional). Dll e Class USkin ElfBot NG Skin Scans Arquivos USkin ElfBotSkin 2 - Após baixar crie uma nova pasta na pasta de seu Bot como nome de "Skins" (Aconselho criar pelo bot" e extraia o arquivo ElfBot NG Skin.rar na pasta 3 - Com o projeto de seu bot aberto vamos a parte legal deste tutorial :lol:, importe o arquivo USkin.cs para seu projeto e extraia o arquivo USkin.dll na pasta "raiz" de seu bot 4 - Com o arquivo USkin.cs importado ao seu projeto, abra o arquivo Program.cs adicione "using USkin;" ao topo do arquivo e na função static void Main() adicione o seguinte código: USkinClass.USkinInit("", "", "" + "//" + "Skins/Default.msstyles"); USkinClass.USkinLoadSkin("Skins/Default.msstyles"); Nota: "Skins/Default.msstyles" - "Skins" é a pasta onde estão localizadas as Skins de seu bot que por sua vez deve estar dentro da pasta "Raiz" de seu bot e "Default.msstyles" é o nome de sua skin que irá se iniciar junto com o bot. 5 - Compile seu bot e na pasta de onde seu bot foi criado coloque a pasta Skins com as respectivasskins dentro e o arquivo USkin.dll dentro da apsra "raiz". Para melhor entender a estrutura seque a imagem: http://img851.imageshack.us/img851/5850/ilusr.jpg http://imageshack.us/photo/my-images/851/ilusr.jpg/ Aviso: Se vier ocorrer algum erro na compilação poste aqui que irei ajudar a arrumar Este é meu primeiro tutorial aqui no fórum, então custa nada você clicar ali no "Joinha" e dar um Rep++ =D O Arquivo da Skin não é obrigatório baixar, eu apenas liberei uma das Skins ultilizadas pelo ElfBot Site de Skins (Arquivos de Temas do Windows) -> DeviantART. Créditos Elvang (Não é deste fórum) Toty
  2. [Talk] Cassino System

    ADM Milord reagiu a Renato por uma resposta no tópico

    1 ponto
    Cassino System por talkaction. Créditos no script. Explicação: ele fala !apostar X, esse X é em mil, ou seja se eu falar !apostar 50, será 50k. O X não poderá ser maior do que o "max =" e menor do que o "min =" que será estipulado por você. Se o player ganhar, o premio será o valor que ele apostou multiplicado pelo valor do "premio =". As chances de o player ganhar está ali no "rdm = math.random(1,3)" no caso o player terá 1/3 (1 terço, ou, uma chance em três) chances de ganhar, se você mudar para (1,5) ele terá uma chance em 5 para ganhar, e assim sucessivamente. LEMBRANDO QUE VOCê DEVE MANTER O NÚMERO 1 E SÓ ALTERAR O SEGUNDO NÚMERO. • Crie um arquivo LUA com o nome cassino.lua em data/talkactions/scripts e ponha: function onSay (cid, words, param, channel) local prm = tonumber(param) local min = 1 local max = 500 local rdm = math.radom(1,3) local premio = 2 -- o valor que tiver aqui multiplica o valor apostado se o cara ganhar if (prm == nil) or prm < min or prm > max then doSendMagicEffect(getPlayerPosition(cid), 2) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você precisa apostar no mínimo "..min.."k ou no máximo "..max.."k.") return TRUE elseif getPlayerMoney(cid) < prm*1000 then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você não tem "..prm.."k para apostar.") doSendMagicEffect(getPlayerPosition(cid), 2) return TRUE elseif rdm == 1 then -- ele ganhou doPlayerRemoveMoney(cid, prm*1000) doPlayerAddMoney(cid, (prm*1000)*premio) elseif rdm > 1 then -- ele perdeu doPlayerRemoveMoney(cid, prm*1000) doSendMagicEffect(getPlayerPosition(cid), 2) end return TRUE end [/code] [b]• Depois em [color=#006400]data/talkactions/talkactions.xml[/color] ponha a tag em qualquer lugar:[/b] [code]<talkaction log="yes" words="!apostar" access="0" event="script" value="addpremium.lua"/> Mude aonde esta "!apostar" para o comando que você deseja. Status: Não testado. //quem testar avise.
  3. Rain System

    Renato reagiu a Guilherme. por uma resposta no tópico

    1 ponto
    Rain System Entre em data/globalevents/script/, crie um arquivo com nome rain.lua, cole o código abaixo, salve e feche: local rain = Rain:new() function onThink(interval, lastExecution) local minX = 0 local minY = 0 local maxX = 120 local maxY = 150 local frompos = {x=math.random(minX, maxX), y=math.random(minY, maxY), z=7} local topos = {x=math.random(frompos.x, maxX), y=math.random(frompos.y, maxY), z=7} local effects = { snow = { disteffect = CONST_ANI_SNOWBALL, effect = CONST_ME_ICETORNADO }, rain = { disteffect = CONST_ANI_ICE, effect = CONST_ME_LOSEENERGY } } random = math.random(0, 10) if (random == 0) then rain.chance = math.random(10,50) rain:start({fromPos = frompos, toPos = topos}, effects.snow, 300, math.random(100, 500)) else rain.chance = math.random(20,100) rain.createItem = {chance = math.random(0,10), item = {itemid = 2016, type = 1}} rain:start({fromPos = frompos, toPos = topos}, effects.rain, math.random(100, 1000), math.random(100, 350)) end return TRUE end Agora vá em data/globalevents/globalevents.xml e adicione essa TAG: Depois, vá em data/globalevents/lib/, crie um arquivo com nome Rain.lua, cole o código abaixo, salve e feche: -- Features: -- chance = OBJECT.chance = INT -- createItem = OBJECT.createItem = {chance = INT, item = {itemid = INT, type = INT}} Rain = {ignoreIds = {4526}} function Rain:new() local obj = {} setmetatable(obj, self) self.__index = self return obj end function Rain:getPositionInArea(fromPos, toPos) self.positions = {} for Y = fromPos.y, toPos.y do for X = fromPos.x, toPos.x do if (getTileThingByPos({x=X, y=Y, z=7, stackpos=0}).itemid ~= 0) then if not (string.match(string.lower(getItemNameById(getTileThingByPos({x=X, y=Y, z=7, stackpos=0}).itemid)), "water")) then table.insert(self.positions, {x=X, y=Y, z=Z}) end end end end return true end function Rain:doRain(position, disteffect, effect) if (self.duraction ~= self.executed) then local chance = self.chance or 100 if (math.random(0, 1000) <= chance) then for Z = 0, 7 do if (getTileThingByPos(({x = position.x, y = position.y, z = Z})).itemid ~= 0) then doSendDistanceShoot({x = position.x - 7, y = position.y - 5, z = Z}, {x = position.x, y = position.y, z = Z}, disteffect) doSendMagicEffect({x = position.x, y = position.y, z = Z}, effect) if (self.createItem) then if (math.random(0, 1000) <= self.createItem.chance) then if (isInArray(self.ignoreIds, getTileThingByPos({x=X, y=Y, z=Z, stackpos=0}).itemid) == FALSE) then local item = doCreateItem(self.createItem.item.itemid, self.createItem.item.type, {x=position.x, y=position.y, z=Z}) doDecayItem(item) end end end break end end end return true else return false end end function Rain:start(positions, effects, duraction, delay, var) self:getPositionInArea(positions.fromPos, positions.toPos) if not (self.positions[1]) then return false end self.delay = delay self.var = var or self self.effects = effects self.duraction = duraction self.executed = 0 addEvent(doCallback, self.delay, {var=self.var}) return true end function doCallback(p) for _, v in pairs(p.var.positions) do if not (p.var:doRain(v, p.var.effects.disteffect, p.var.effects.effect)) then return true end end addEvent(doCallback, p.var.delay, {var=p.var}) p.var.executed = p.var.executed+1 end Agora vá em data/globalevents/lib/globalevents.lua e adicione essa TAG: Configurando: O script não necessita de muitas configurações, apenas mude as variáveis como seu gosto: local minX = 0 local minY = 0 local maxX = 120 local maxY = 150 Bom essa configuração muda apenas a posição das chuvas se quiser mudar a densidade da chuva mude a linha rain.chance = math.random(20,100), lembrando não ultrapasse muito do valor 100, pois pode deixar a chuva muito feia. Para entender melhor a função rain:start(positions, effects, duraction, delay) postarei o que cada argumento significa. Para tornar a chuva mais intensa diminua o delay e aumente o duraction e a chance, mais fraca o inverso. Para chuvas mais duradouras aumente o delay e o duraction. Também é possível que o script crie "poças de agua" isso é configurado na linha rain.createItem = {chance = math.random(0,10), item = {itemid = 2016, type = 1}}. Para aqueles que sabem mexer em script é possível fazer chover meteoros mudando os efeitos e varias outras coisas a sua imaginação. Para mudar de quanto enquanto tempo a chuva ira acontecer devera mudar a tag do globalevents.xml na parte de interval. Considerações finais: Não é aconselhável usar a snow do jeito que está configurado, pois está bem feio, também há um erro que sempre que ocorre uma nova chuva se uma antiga esta acontecendo, a velha para, e a novo começa. É fácil arrumar, porém eu só não arrumei pois isso pode acarretar novos bugs. Screenshot:
  4. SendKey, simulando teclado

    PostadorHunter reagiu a Guilherme por uma resposta no tópico

    1 ponto
    Eu tinha esse "tutorial" em um pen drive, então vim postar esse bagulho pra vocês hehehe. Lembrando: Não me perguntem nada, pois não mecho com linguagem vb. Use a lógica! A SendKey ela é uma chamada para simular o teclado. Ela envia um ou mais pressionamentos de teclas para a janela ativa como se tivessem sido digitados no teclado. Codigo da chamada: SendKey "{BACKSPACE}" [/code] Para que o SendKey funcione, será necessário importar: [code] Imports System.Runtime.InteropServices Imports System.Drawing Namespace SimulateKeyPress Code para selecionar a window: SetForegroundWindow(tibia) [/code] Codigos dos caracteres especiais: Exemplo: [spoiler] E aqui vai um exemplo que eu achei no fórum da microsoft. [code] Imports System Imports System.Runtime.InteropServices Imports System.Drawing Imports System.Windows.Forms Namespace SimulateKeyPress Class Form1 Inherits Form Private WithEvents button1 As New Button() <STAThread()> _ Public Shared Sub Main() Application.EnableVisualStyles() Application.Run(New Form1()) End Sub Public Sub New() button1.Location = New Point(10, 10) button1.TabIndex = 0 button1.Text = "Click to automate Calculator" button1.AutoSize = True Me.Controls.Add(button1) End Sub ' Get a handle to an application window. Declare Auto Function FindWindow Lib "USER32.DLL" ( _ ByVal lpClassName As String, _ ByVal lpWindowName As String) As IntPtr ' Activate an application window. Declare Auto Function SetForegroundWindow Lib "USER32.DLL" _ (ByVal hWnd As IntPtr) As Boolean ' Send a series of key presses to the Calculator application. Private Sub button1_Click(ByVal sender As Object, _ ByVal e As EventArgs) Handles button1.Click ' Get a handle to the Calculator application. The window class ' and window name were obtained using the Spy++ tool. Dim calculatorHandle As IntPtr = FindWindow("SciCalc", "Calculator") ' Verify that Calculator is a running process. If calculatorHandle = IntPtr.Zero Then MsgBox("Calculator is not running.") Return End If ' Make Calculator the foreground application and send it ' a set of calculations. SetForegroundWindow(calculatorHandle) SendKeys.SendWait("111") SendKeys.SendWait("*") SendKeys.SendWait("11") SendKeys.SendWait("=") End Sub ' Send a key to the button when the user double-clicks anywhere ' on the form. Private Sub Form1_DoubleClick(ByVal sender As Object, _ ByVal e As EventArgs) Handles Me.DoubleClick ' Send the enter key to the button, which raises the click ' event for the button. This works because the tab stop of ' the button is 0. SendKeys.Send("{ENTER}") End Sub End Class End Namespace É isso, espero ter ajudado, pois hoje em dia todo mundo procura a perfeição do seu bot.
  5. minhamelhorpintura

    Private Sub Teste reagiu a Guilherme por uma resposta no tópico

    1 ponto
    com certeza a minha melhor :3 http://eratsu.deviantart.com/art/Naruto-vs-Sasuke-210838528?q=gallery%3Aeratsu&qo=0 http://eratsu.deviantart.com/art/Naruto-vs-Sasuke-210838528?q=gallery%3Aeratsu&qo=0 http://eratsu.deviantart.com/art/Naruto-vs-Sasuke-210838528?q=gallery%3Aeratsu&qo=0 http://eratsu.deviantart.com/art/Naruto-vs-Sasuke-210838528?q=gallery%3Aeratsu&qo=0 http://eratsu.deviantart.com/art/Naruto-vs-Sasuke-210838528?q=gallery%3Aeratsu&qo=0 http://eratsu.deviantart.com/art/Naruto-vs-Sasuke-210838528?q=gallery%3Aeratsu&qo=0
  6. [Pedido] Tutorial Reffiler

    Liri reagiu a Anghr por uma resposta no tópico

    1 ponto
    e Boa Sorte!
  7. Tutorial de Input

    Augusto reagiu a Wikle por uma resposta no tópico

    1 ponto
    Olá, Existem 2 categorias de input e 2 configurações para ambas categorias: Keyboard: são as configurações dadas para o controle/simulação de seu teclado. KeyboardMode: Especifica o modo do teclado. Se o modo de controlar (control) o teclado for utilizado, o bot irá pressionar as teclas em seu teclado como se você estivesse pressionando-os e para isso o cliente deve ter foco. Simular (Simulate) o teclado irá enviar pressionamentos de teclas para o cliente e para isso o foco não é necessário. A janela ainda não deve, contudo, ser minimizada. É recomendável que você use o método controle (control) de teclado, porque é a forma mais natural de interagir com o cliente. StuckCtrlShiftPolicy: Especifica se e quando você quer que o bot libera quando preso as teclas control (ctrl)/shift se tiveram sido liberados de forma adequada e prontamente. TypeWaitTime: Especifica um intervalo aleatório entre cada caractere ao digitar valores longos de texto no cliente. PressWaitTime: Especifica um intervalo aleatório entre o pressionamento de hotkeys ou outros botões. Mouse: são as configurações dadas para o controle/simulação de seu mouse. MouseMode: Especifica o modo do mouse. Se o controle do mouse for utilizado, o bot irá mover o cursor do mouse como se estivesse movendo-se e para isso o cliente deve ter foco. A opção /permit não irá mover o mouse, se o usuário está tentando posicioná-lo em algum lugar, enquanto a opção /resist vai resistir a força do usuário e fazer o seu trabalho. Simulate mouse irá enviar o posicionamento do mouse e clicar para o cliente e para isso o foco não é necessário. A janela ainda não deve, contudo, ser minimizada. É recomendável que você use o método de control mouse, pois é a forma mais natural de interagir com o cliente. ScrollMode: Especifica se você quiser que o bot clique sobre as barras de rolagem ou use a roda do mouse para se mover. StuckCursorPolicy: Especifica se você quer que o bot restaure um cursor que estava sendo usado ou ativo antes de iniciar o próximo evento. MoveSpeed: Especifica a velocidade para a velocidade do mouse. ClickWaitTime: Especifica o intervalo de tempo entre os cliques do mouse. FocusPolicy: Uma vez que os métodos de controle necessitam foco do cliente, esta opção foi designada para quando o bot precisar definir o foco no cliente se o seu não estiver em foco. É possível fazê-lo sempre que algum evento ocorre, quando um evento normal exceto para andar ou somente quando ocorre um evento de urgência. OpenMenuPolicy: Porque às vezes o bot pode perder algum clique ou algumas janelas inesperadas podem aparecer, você pode configurá-lo para fazer algo neste caso. Confirmando a pressionar a tecla "Enter" durante o encerramento irá pressionar a tecla 'Esc'. Você pode especificar o intervalo de tempo de espera antes de realizar o encerramento no caso de você ser o único à criação de menus. Caso você selecione uma das opções de "idle mouse", só feche o menu caso o usuário não tenha movido o mouse por mais de 4 segundos (se o cliente não é focado, ele vai fechar ou confirmar de imediato). Imagem da seção Input Créditos: Zen
  8. [Pedido]Video Aula em C++ para iniciantes

    Wikle reagiu a Flamer por uma resposta no tópico

    1 ponto
    A última edição que consegui em português é a 5ª. Não abri os arquivos pra testar a qualidade dos pdfs, então se quiser baixe todos e veja qual está melhor. https://rs765tl2.rapidshare.com/#!download|765l36|246192180|tel5ed-cd.erivanildo.thegenius.us.rar|5455|R~60982F703A2349770A727AEBAD364209 http://uploading.com/files/e2459e32/tel5ed-cd.by.rayffe.rar https://rs765tl2.rapidshare.com/#!download|765l34|246192180|tel5ed-cd.erivanildo.thegenius.us.rar|5455|R~210BE29FA5EC79D62C9CB136F34D0897
  9. Troll Edron Mage [RuneMaker]

    dani21 reagiu a toty1234 por uma resposta no tópico

    1 ponto
    Ai está um wpt para RuneMaker nos trolls de edron Segue a Foto e o Anexo... trolls edron (RuneMaker) by Toty1234.wpt
  10. Andar com W-A-S-D

    Private Sub Teste reagiu a Stomp por uma resposta no tópico

    -1 pontos
    realmente muito util
Líderes está configurado para São Paulo/GMT-03:00

Informação Importante

Confirmação de Termo