Ir para conteúdo

SkyLigh

Lorde
  • Total de itens

    2183
  • Registro em

  • Última visita

  • Dias Ganhos

    23

Tudo que SkyLigh postou

  1. Não faça comentários que não envolva o tópico. Considere um alerta verbal na próxima pode resultar em algo mais grave.
  2. sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe sobe
  3. Não é permitido suporte fora do fórum. Tópico Movido Este tópico foi movido de "OTServ → Suporte → Suporte Scripting" para "OTServ → Suporte → Suporte Servidores derivados".
  4. Acho que se não tiver tile em cima não sobe...
  5. O Seu actions.xml tá com tags duplicadas vou remove-las aqui mais vai demorar um pouco... @Edit já removi a maior parte tente utiliza-lo assim pra vê diminui.
  6. quando fico com esto problema inporto a url tente fazer o mesmo
  7. faça upload no imgur.com tenta importando a URL que funciona
  8. Movido para resolvidos. Tópico Movido Este tópico foi movido de "OTServ → Suporte → Suporte Scripting" para "OTServ → Suporte → Suporte Scripting → Pedidos e dúvidas resolvidos - Scripting".
  9. se não me engano no baiakzik é : Vá em data/talkactions/scripts/addondoll.lua e procure por 9693 você vai encontra-lo em 2 resultados e nos 2 resultados, troque pelo ID do item que você quer.
  10. Movido para resolvidos. Tópico Movido Este tópico foi movido de "OTServ → Suporte → Suporte Scripting" para "OTServ → Suporte → Suporte Scripting → Pedidos e dúvidas resolvidos - Scripting".
  11. Movido para resolvidos. Tópico Movido Este tópico foi movido de "OTServ → Suporte → Suporte Servidores derivados" para "OTServ → Suporte → Suporte Servidores derivados → Pedidos e dúvidas resolvidos - Servidores derivados".
  12. Movido para resolvidos. Tópico Movido Este tópico foi movido de "OTServ → Suporte → Suporte Servidores derivados" para "OTServ → Suporte → Suporte Servidores derivados → Pedidos e dúvidas resolvidos - Servidores derivados".
  13. testa o script que você vai vê
  14. data/globalevents/scripts ------------------------------------------------------------------------------* ----- [[> Automated Database Cleanup 1.1 Structure //By Cybermaster <]] ------| -------------- [[> System 2.0 Revamped by Teh Maverick <3 <]] ----------------| ------------- [[> Removal of empty accounts by darkaos <]] ---------------| --------------- [[> Function getDBPlayersCount() by Elf <]] ------------------| ------------------------------------------------------------------------------| ------------------------------------------------------------------------------| --- ~!READ THIS!~ ------------------------------------------------------------| --- Be sure to back up your database and test this on your server first, -----| --- I(Teh Maverick) cannot guarantee it will work the same for every core. ---| --- It is very easy to test, with the log file and values that are printed ---| -----------------------------------Enjoy!-------------------------------------| ------------------------------------------------------------------------------* function countRowsWhereInTable(table, field, condition) local result = db.getResult("SELECT COUNT(" .. field .. ") as count FROM " .. table .. " WHERE " .. field .. " = '" .. condition .. "';") local tmp = result:getDataInt("count") result:free() return tmp end function getDBPlayersCount() local result = db.getResult("SELECT COUNT(id) as count FROM `players`;") local tmp = result:getDataInt("count") result:free() return tmp end function getDBAccountsCount() local result = db.getResult("SELECT COUNT(id) as count FROM `accounts`;") local tmp = result:getDataInt("count") result:free() return tmp end function onstartup() local DB_BEFORE = {players = getDBPlayersCount(), accounts = getDBAccountsCount()} local result,result1, ii, numPlayersToDelete, numAccountsDeleted, tmp = 0, 0, 0, 0, 0 local pid, aid = {}, {} local dropCount = {players={},accounts={}} local config = { deleteAccountWithNoPlayers = true, cleanChildTables = true, printResult = true, saveResultToFile = true, logFileName = 'db_cleanup.txt' } --In each table, players with below specified level, and days of inactivity will be deleted from db on server startup local cleanup = { [1] = {level = 100, time = 7 * 24 * 60 * 60}, [2] = {level = 300, time = 60 * 24 * 60 * 60} } local childAttributeTables = { players = { [1] = {table = "`player_viplist`", idField = "`player_id`"}, [2] = {table = "`player_storage`", idField = "`player_id`"}, [3] = {table = "`player_spells`", idField = "`player_id`"}, [4] = {table = "`player_skills`", idField = "`player_id`"}, [5] = {table = "`player_namelocks`", idField = "`player_id`"}, [6] = {table = "`player_items`", idField = "`player_id`"}, [7] = {table = "`player_depotitems`", idField = "`player_id`"}, [8] = {table = "`houses`", idField = "`owner`"}, [9] = {table = "`house_auctions`", idField = "`player_id`"}, [10] = {table = "`players`", idField = "`id`"} -- Keep this as the last item in the array --Note: `houses` and `bans` are in the DB triggers for TFS so don't worry about them. --Also I did not want to put killers, or deaths on here because that is historic data, --do so at your ouwn risk. }, accounts = { [1] = {table = "`accounts`", idField = "`id`"}, [2] = {table = "`account_viplist`", idField = "`account_id`"} } } --Clean up all the players and player data for i = 1, #cleanup do result = db.getResult("SELECT `id`,`name`,`account_id` FROM `players` WHERE `level` < ".. cleanup[i].level .." AND `name` NOT IN('Account Manager', 'Sorcerer Sample', 'Druid Sample', 'Paladin Sample', 'Knight Sample', 'Rook Sample') AND `group_id` < 2 AND `lastlogin` < UNIX_TIMESTAMP() - ".. cleanup[i].time ..";") if(result:getID() ~= -1) then ii = 1 repeat pid[ii] = result:getDataInt("id") -- list the players id into an array aid[ii] = result:getDataInt("account_id") -- list the account id of each player being removed into an array ii = ii + 1 until not(result:next()) result:free() end numPlayersToDelete = ii - 1 --Drop players and their child table attribute data such as skills, items, etc. for j = 1, numPlayersToDelete do if(config.cleanChildTables) then for k = 1, #childAttributeTables.players do dropCount.players[k] = ((dropCount.players[k] or 0) + countRowsWhereInTable(childAttributeTables.players[k].table, childAttributeTables.players[k].idField, pid[j])) db.executeQuery("DELETE FROM " .. childAttributeTables.players[k].table .. " WHERE " .. childAttributeTables.players[k].idField .. " = '" .. pid[j] .. "';") end else db.executeQuery("DELETE FROM `players` WHERE `id` = '" .. pid[j] .. "';") end end end --Drop all the accounts that have 0 players linked to them (at the moment its only checking from the list of players removed) if config.deleteAccountWithNoPlayers then --This part was scripted by Darkhaos, modified/fixed by Teh Maverick --[[ for acc = 1, #aid do result1 = db.getResult("SELECT `id` FROM `accounts` WHERE `id` = '" .. aid[acc] .. "';") if result1:getID() ~= -1 then -- check to make sure the account exists result1:free() for i = 1, #childAttributeTables.accounts do --Make sure there are no other players on the account result1 = db.getResult("SELECT COUNT(id) as count FROM `players` WHERE `account_id` = '" .. aid[acc] .. "';") tmp = result1:getDataInt("count") if(tmp <= 0) then --Remove accounts dropCount.accounts[i] = ((dropCount.accounts[i] or 0) + countRowsWhereInTable(childAttributeTables.accounts[i].table, childAttributeTables.accounts[i].idField, aid[acc])) db.executeQuery("DELETE FROM " .. childAttributeTables.accounts[i].table .. " WHERE " .. childAttributeTables.accounts[i].idField .. " = '" .. aid[acc] .. "';") end end end end end --]] --Print and Save results (configurable) local DB_NOW = {players = DB_BEFORE.players - getDBPlayersCount(), accounts = DB_BEFORE.accounts - getDBAccountsCount()} if DB_NOW.players > 0 or DB_NOW.accounts > 0 then local text = ">> [DBCLEANUP] " .. DB_NOW.players .. " inactive players" .. (config.deleteAccountWithNoPlayers and " and " .. DB_NOW.accounts .. " empty accounts" or "") .. " have been deleted from the database." --Write to console if config.printResult then print("") print(text) if config.cleanChildTables then --Write player info for i = 1,#dropCount.players do print("[!] --> Dropped: " .. dropCount.players[i] .. " from " .. childAttributeTables.players[i].table .. " table") end --Write account info if config.deleteAccountWithNoPlayers then for i = 1,#dropCount.accounts do print("[!] --> Dropped: " .. dropCount.accounts[i] .. " from " .. childAttributeTables.accounts[i].table .. " table") end end print("") end end --Write to file if config.saveResultToFile then local file = io.open("data/logs/"..config.logFileName, "a") file:write("[" .. os.date("%d %B %Y %X ", os.time()) .. "] " .. text .. "\n") if config.cleanChildTables then --Write player info for i = 1, #dropCount.players do file:write("[!] --> Dropped: " .. dropCount.players[i] .. " from " .. childAttributeTables.players[i].table .. " table\n") end --Write account info if config.deleteAccountWithNoPlayers then for i = 1, #dropCount.accounts do file:write("[!] --> Dropped: " .. dropCount.accounts[i] .. " from " .. childAttributeTables.accounts[i].table .. " table\n") end end file:write("\n") end file:close() end end return true end Ai no mesmo lugar você criaum arquivo .txt com o nome db_cleaneup... Tag <globalevent name="dbcleaner" type="startup" event="script" value="dbcleaner.lua"/> Você só vai editar iss : [1] = {level = 100, time = 7 * 24 * 60 * 60}, [2] = {level = 300, time = 60 * 24 * 60 * 60}
  15. SkyLigh

    !vipdays

    function onSay(cid, words, param) if vip.hasVip(cid) == TRUE then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Your vip end in "..os.date("%d %B %Y %X ",vip.getVip(cid))) else if vip.getVip(cid) ~= 0 then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You're not a vip player. Your vip has finished in "..os.date("%d %B %Y %X ", vip.getVip(cid)).." and now is "..os.date("%d %B %Y %X ", os.time())) else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You're not a vip player. You naver has a vip.") end end return TRUE end é uma talkaction não manda a tag por que tô sem server no pc
  16. Falei que um dos 2 ia vencer \o/
  17. sim só que foi um tema vago rs, seria legal algo mais conhecido não sei eu nem sabia o que era tive que pesquisar no google
  18. o tema ficou meio vago, muitos desanimaram por isso foi um tema sem nexo na minha opinião.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...