Here you can change website language:

Autor Wątek: SKRYPTY DO OTC  (Przeczytany 3659 razy)

0 użytkowników i 2 Gości przegląda ten wątek.

Sell

SKRYPTY DO OTC
« dnia: 17 Sierpień 2024, 11:09:22 »
Witam w tym wątku podam wam pare przydatnych skryptów do OTC Client
Aby aktytowac skrypty wchodzimy w zakladke tools w bocie i klikamy ingame script editor i tam wklejamy kody


Skrypt na e ringa (aby skrypt działał prawidłowo trzeba miec otwarte BP z ringami)
Cytuj
local ringID = 3051
local item
macro(10, "Equip Ring", function()
  if hppercent() <= 60 and not getFinger() then
    item = findItem(ringID)
    g_game.move(item, {x=65535, y=SlotFinger, z=0}, 1)
  elseif hppercent() >= 90 and getFinger() then
    item = getFinger()
    for _,container in pairs(getContainers()) do
      g_game.move(item, container:getSlotPosition(), 1)
      return
    end
  end
end)

Skrypt na ue przy mobku
Cytuj
local singleTargetSpell = 'exori frigo'
local multiTargetSpell = 'frozen wave'
local distance = 3
local amountOfMonsters = 4

macro(250, "multi target spell",  function()
   local specAmount = 0
   if not g_game.isAttacking() then
       return
   end
   for i,mob in ipairs(getSpectators()) do
       if (getDistanceBetween(player:getPosition(), mob:getPosition())  <= distance and mob:isMonster())  then
           specAmount = specAmount + 1
       end
   end
   if (specAmount >= amountOfMonsters) then   
       say(multiTargetSpell)
   else
       say(singleTargetSpell)
   end
end)

Cave stop jak malo many
Cytuj
local manaToggle = macro(100, "Toggle Mana", function()
  if manapercent() < 96 and CaveBot.isOn() then
    CaveBot.setOff()
  elseif manapercent() > 96 and CaveBot.isOff() then
    CaveBot.setOn()
  end
end)

Skrypt na Utamo Vita
Cytuj
local utamoDurationSeconds = 180
local renewEarlySeconds = 20
local nextUtamo = 0
addIcon("renewUtamo", {item={id=3548, count=1}, text="Utamo"}, macro(200, function(m)
  if not hasManaShield() or now > nextUtamo then
    say("utamo vita")
    nextUtamo = (utamoDurationSeconds - renewEarlySeconds) * 1000 + now
  end
end))

Skrypt na Utani Mega Hur
Cytuj
macro(500, "Auto Haste", nil, function()
   if not hasHaste() and storage.autoHasteText:len() > 0 then
     if saySpell(storage.autoHasteText) then
       delay(5000)
     end
   end
 end)
 addTextEdit("autoHasteText", storage.autoHasteText or "utani mega hur", function(widget, text)
   storage.autoHasteText = text
end)

Skrypt na Exeta Res
Cytuj
macro(500, "Auto RES",  function()
 say(storage.ExetaText)
end)
addTextEdit("ExetaText", storage.ExetaText or "Exeta res", function(widget, text)
storage.ExetaText = text
end)

Anty Paral Skrypt
Cytuj
macro(100, "Anti Paralyze", nil, function()
 if isParalyzed() and storage.autoAntiParalyzeText:len() > 0 then
   saySpell(storage.autoAntiParalyzeText)
end
end)
addTextEdit("autoAntiParalyzeText", storage.autoAntiParalyzeText or "utani hur", function(widget, text)
 storage.autoAntiParalyzeText = text
end)

Skrypt na anty push
Cytuj
local dropItems = { 3031, 3035 }
local maxStackedItems = 10
local dropDelay = 600

gpAntiPushDrop = macro(dropDelay , "Anti-Push", function ()
 antiPush()
end)

onPlayerPositionChange(function()
   antiPush()
end)

Skrypt na Vise kema/vida/tavo wystarczy zmienic nazwe spella
Cytuj
macro(500, "Auto Buff", nil, function()
  if not hasPartyBuff() and storage.autoBuffText:len() > 0 then
    say(storage.autoBuffText)
    delay(30000)
  end
end)

addTextEdit("autoBuffText", storage.autoBuffText or "vise vida", function(widget, text)
  storage.autoBuffText = text
end)

Skrpyt na exive ostatniego szukanego

Cytuj
local panelName = "tcLastExiva"
local tcLastExiva = setupUI([[
ExivaLabel < Label
  height: 12
  background-color: #00000055
  opacity: 0.89
  anchors.horizontalCenter: parent.horizontalCenter
  text-auto-resize: true
  font: verdana-11px-rounded

Panel
  id: msgPanel
  height: 26
  width: 100
  anchors.bottom: parent.bottom
  anchors.horizontalCenter: parent.horizontalCenter
  margin-bottom: 20

  ExivaLabel
    id: lblMessage
    color: green
    anchors.bottom: parent.bottom
    !text: 'None.'

  ExivaLabel
    id: lblExiva
    color: orange
    anchors.bottom: prev.top
    !text: 'Last Exiva: None'

]], modules.game_interface.getMapPanel())

local tclastExivaUI = setupUI([[
Panel
  margin: 3
  height: 66
  layout:
    type: verticalBox

  HorizontalSeparator
    id: separator

  Label
    id: title
    text: Last Exiva
    margin-top: 1
    text-align: center
    font: verdana-11px-rounded

  Panel
    id: time
    height: 22
    Label
      !text: 'Time in seconds:'
      anchors.left: parent.left
      anchors.verticalCenter: parent.verticalCenter
      anchors.right: next.left
      text-align: center
      height: 15
      margin-right: 6
      font: verdana-11px-rounded

    BotTextEdit
      id: text
      text: 5
      anchors.right: parent.right
      anchors.verticalCenter: parent.verticalCenter
      margin-left: 5
      height: 17
      width: 55
      font: verdana-11px-rounded

  ]], parent)

if not storage[panelName] then
  storage[panelName] = {
    name = '',
    timer = 5,
  }
end

tclastExivaUI.time.text:setText(storage[panelName].timer)
tclastExivaUI.time.text.onTextChange = function(widget, text)
  storage[panelName].timer = tonumber(text)
end

local lastExiva = ''
lastExiva = storage[panelName].name
tcLastExiva.lblExiva:setText('Last Exiva: ' .. lastExiva)

onTalk(function(name, level, mode, text, channelId, pos)
  if name ~= player:getName() then return end
  text = text:lower()
  -- uncomment the warn below to find the channel mode if this doesn't work
  -- cast exiva and you should see NUMBER :  exiva "name"
  -- warn(mode.. ':'..text)
  if (mode == 34 or mode == 44) and text:find('exiva ') then
   lastExiva = string.match(text, [[exiva "([^"]+)]])
    if lastExiva then
      storage[panelName].name = lastExiva
      tcLastExiva.lblExiva:setText('Last Exiva: ' .. lastExiva)
    end
  end
end)

onTextMessage(function(mode, text)
  if mode ~= 20 then return end
  local regex = "([a-z A-Z]*) is ([a-z -A-Z]*)(?:to the|standing|below|above) ([a-z -A-Z]*)."
  local data = regexMatch(text, regex)[1]
  if data and data[2] and data[3] then
    schedule(10, function()
      tcLastExiva.lblMessage:setText(text)
    end)
  end
end)

tclastExivaMacro = macro(100, "Enable", "F1", function()
  if lastExiva:len() > 0 then
    say('exiva "' .. lastExiva)
  end
  delay(tonumber(storage[panelName].timer) * 1000)
end, tclastExivaUI)
UI.Separator(tclastExivaUI)

SKRYPT NA UH (3162 S UH/ 3160 UH)

Cytuj
local hpId = 3162
local hpPercent = 70
macro(200, "UH",  function()
  if (hppercent() <= hpPercent) then
    usewith(hpId, player)
  end
end)

SKRYPT na autofollow

Cytuj
followName = "autofollow"
if not storage[followName] then storage[followName] = { player = 'name'} end
local toFollowPos = {}

UI.Separator()
UI.Label("Auto Follow")

followTE = UI.TextEdit(storage[followName].player or "name", function(widget, newText)
    storage[followName].player = newText
end)

local followChange = macro(200, "Follow Change", function() end)

local followMacro = macro(20, "Follow", function()
    local target = getCreatureByName(storage[followName].player)
    if target then
        local tpos = target:getPosition()
        toFollowPos[tpos.z] = tpos
    end
    if player:isWalking() then
        return
    end
    local p = toFollowPos[posz()]
    if not p then
        return
    end
    if autoWalk(p, 20, { ignoreNonPathable = true, precision = 1 }) then
        delay(100)
    end
end)
UI.Separator()
onPlayerPositionChange(function(newPos, oldPos)
  if followChange:isOff() then return end
  if (g_game.isFollowing()) then
    tfollow = g_game.getFollowingCreature()

    if tfollow then
      if tfollow:getName() ~= storage[followName].player then
        followTE:setText(tfollow:getName())
        storage[followName].player = tfollow:getName()
      end
    end
  end
end)

onCreaturePositionChange(function(creature, newPos, oldPos)
    if creature:getName() == storage[followName].player and newPos then
        toFollowPos[newPos.z] = newPos
    end
end)

SKRYPT na przycisk ktory wylacza cave i target bota jednoczesnie

Cytuj
singlehotkey("Escape", "Toggle", function()
    CaveBot.setOn(not CaveBot.isOn())
    TargetBot.setOn(not TargetBot.isOn())

    warn("CaveBot " .. (CaveBot.isOn() and 'On' or 'Off'))
    warn("TargetBot " .. (TargetBot.isOn() and 'On' or 'Off'))
end)

SKRYPT NA DEBUG POSTACI

Cytuj
local NEXT_MOVE_DELAY = 10000
local moveToggle = false

macro(NEXT_MOVE_DELAY, "Move Up/Down", function()
  if moveToggle then
    g_game.walk(0)
  else
    g_game.walk(2)
  end

  moveToggle = not moveToggle
end)

SKRYPT na zakup AOL
Cytuj
local aolId = 3057
local aolCommand = "!aol"

macro(100, "BUY AOL", function()
  if not getNeck() or (aolId and getNeck():getId() ~= aolId) then
     say(aolCommand)
  end
end))

Wraz z rozwojem serva pozniej zaczne dodawac WAR skrypty
« Ostatnia zmiana: 18 Sierpień 2024, 10:59:00 wysłana przez Sell »