Ir para conteúdo

Farathor

Membro
  • Registro em

  • Última visita

Tudo que Farathor postou

  1. Bom dia, pessoal. Estou com um problema com o sharp map tracker da versão 10.0x Ele simplesmente abre o cliente, mas não consigo logar no servidor... Podem me ajudar? DA erro 10053
  2. Galera, estou com erro 500 no phpmyadmin, podem ajudar? Esta página não está funcionando www.baiak-hells.com não consegue atender a esta solicitação no momento. HTTP ERROR 500
  3. Galera, to tentando criar um evento no meu servidor onde eu queria fazer com que eles quando atacassem o objetivo do evento, o shooteffect e o HIT fossem pré definidos. Mesmo sendo KNIGHT, poderia atacar de longe na distancia de 5sqm. Alguém poderia me ajudar? Tentei fazer com onstatschange, com oncombat mas nada certo...
  4. Queria ajudar para passar esse script a baixo pra 0.4 if not Spoof then Spoof = { players = { } } end Spoof.trainerTeleportPosition = Position(997, 1004, 7) Spoof.blockedLookTypes = {159,160,226,194,253,254,255,264,874,900,909,929,956,1024,963,969,965,967,971,973,975,1297,1336,1392,1261,1295,1183,1217,1227,1258,1020,1050,1070,1103,1128,1147,1162,1174,1152,1256,1285,1415,1408,1400,1402,1404,873,899,908,931,955,957,1023,962,968,964,966,970,972,974,1021,1051,1094,1069,1102,1127,1146,1161,1173,1416,1407,1399,1401,1403} local randomTimes = { ["levelAdvance"] = {storage = 54839827, minMinutes = 20, maxMinutes = 30, maxLevel = 300, afterMaxMinPorcentage = 1}, ["exchangeOutfit"] = {storage = 54839828, minMinutes = 240, maxMinutes = 380, chanceToGainAddon = 3}, ["fragAndDeath"] = {storage = 54839829, minMinutes = 480, maxMinutes = 1020, chance = 3}, ["newItem"] = {storage = 54839830, minMinutes = 86400, maxMinutes = 86400 * 2}, ["newQuest"] = {storage = 54839831, minMinutes = 6 * 3600, maxMinutes = 12 * 3600}, ["skillAdvance"] = {storage = 54839832, minMinutes = 30, maxMinutes = 80, maxSkill = 80, afterMaxMinPorcentage = 1} } local itensTable = { [1] = { -- MS [{100, 120}] = {8820, 8819, 7730, 2643, 2190, 2175, 2175}, [{121, 181}] = {2323, 8871, 7730, 2195, 2187, 2175, 2175}, [{181, 220}] = {2323, 8871, 7730, 2195, 2187, 2514, 2175}, [{221, 300}] = {9778, 12643, 7730, 6132, 36101, 2514, 2175}, [{301, 999}] = {9778, 12643, 18400, 6132, 36101, 8918, 2175}, }, [2] = { -- ED [{100, 120}] = {8820, 8819, 7730, 2643, 2182, 2175, 8266}, [{121, 181}] = {2323, 8871, 7730, 2195, 2183, 2175, 8266}, [{181, 220}] = {2323, 8871, 7730, 2195, 2183, 2514, 8266}, [{221, 300}] = {9778, 12643, 7730, 6132, 36101, 2514, 8266}, [{301, 999}] = {9778, 12643, 18400, 6132, 36101, 8918, 8266}, }, [3] = { -- RP [{100, 120}] = {2480, 2660, 2478, 2195, 7368, 2525}, [{121, 181}] = {2480, 2660, 2478, 2195, 7368, 2525, 8266}, [{181, 220}] = {2493, 2660, 9777, 2514, 7368, 2514, 8266}, [{221, 999}] = {12645, 18404, 9777, 6132, 7368, 2514, 8266}, }, [4] = { -- EK [{100, 120}] = {2460, 2465, 2478, 2195, 2525}, [{121, 181}] = {2460, 2465, 2478, 2195, 2525, 8266}, [{181, 220}] = {2493, 2465, 2478, 2195, 2514, 8266}, [{221, 999}] = {2493, 12642, 2478, 2195, 18410, 8266}, }, } local randomAddons = { [1] = {male = 128, female = 136, name = 'Citizen Outfit'}, -- citizen [2] = {male = 129, female = 137, name = 'Hunter addon'}, -- hunter [3] = {male = 132, female = 140, name = 'Nobleman addon'}, -- Noblewoman [4] = {male = 133, female = 138, name = 'Summoner addon'}, -- Summoner [5] = {male = 134, female = 142, name = 'Warrior addon'}, -- Warrior [6] = {male = 143, female = 147, name = 'Barbarian addon'}, -- Barbarian [7] = {male = 144, female = 148, name = 'Druid addon'}, -- Druid [8] = {male = 145, female = 149, name = 'Wizard addon'}, -- Wizard [9] = {male = 146, female = 150, name = 'Oriental addon'}, -- Oriental [10] = {male = 151, female = 155, name = 'Pirate addon'}, -- Pirate [11] = {male = 153, female = 157, name = 'Beggar addon'}, -- Beggar [12] = {male = 154, female = 158, name = 'Shaman addon'}, -- Shaman [13] = {male = 251, female = 252, name = 'Norsewoman addon'}, -- Norsewoman [14] = {male = 152, female = 156, name = 'Assassin addon'}, -- Assassin [15] = {male = 335, female = 336, name = 'Warmaster addon'}, -- Warmaster [16] = {male = 367, female = 366, name = 'Wayfarer addon'}, -- Wayfarer [17] = {male = 463, female = 464, name = 'Deepling addon'}, -- Deepling [18] = {male = 131, female = 139, name = 'Knight addon'} -- Knight Outfit } function Spoof.onLoad(self) local resultId = db.storeQuery("SELECT `name` FROM `players` WHERE `spoof` = 1") if resultId then repeat local playerName = result.getString(resultId, "name") if not self.players[playerName] then self.players[playerName] = 0 end until not result.next(resultId) result.free(resultId) end end function Spoof.isASpoofer(self, name) return self.players[name] end function Spoof.onLogin(self, player) local playerName = player:getName() if not self:isASpoofer(playerName) then return end player:teleportTo(self.trainerTeleportPosition) self.players[playerName] = addEvent(function(self, playerId) self:executeAction(playerId) end, 60 * 1000, self, player:getId()) end function Spoof.getRandomOutfit(self, sex) local resultId = db.storeQuery(string.format("SELECT `looktype`, `lookhead`, `lookbody`, `looklegs`, `lookfeet` FROM `players` WHERE `level` >= 200 AND `sex` = %d ORDER BY rand() LIMIT 1", sex)) local t = { lookType = 0, lookHead = 0, lookBody = 0, lookLegs = 0, lookFeet = 0 } if resultId then local lookType = result.getNumber(resultId, "looktype") local lookHead = result.getNumber(resultId, "lookhead") local lookBody = result.getNumber(resultId, "lookbody") local lookLegs = result.getNumber(resultId, "looklegs") local lookFeet = result.getNumber(resultId, "lookfeet") result.free(resultId) t.lookType = lookType t.lookHead = lookHead t.lookBody = lookBody t.lookLegs = lookLegs t.lookFeet = lookFeet end if isInArray(self.blockedLookTypes, t.lookType) then local look = (sex == 0) and math.random(136, 142) or math.random(128, 134) t.lookType = look if math.random(10) <= 6 then local equalColor = math.random(100) t.lookHead = equalColor t.lookBody = equalColor t.lookLegs = equalColor t.lookFeet = equalColor else t.lookHead = math.random(100) t.lookBody = math.random(100) t.lookLegs = math.random(100) t.lookFeet = math.random(100) end end return t end function Spoof.executeAction(self, playerId) -- Spoof:executeAction(player:getId()) local player = Player(playerId) if not player then return end local action = randomTimes local playerSex = player:getSex() local playerGuid = player:getGuid() local playerName = player:getName() -- Verifica se est? nos Trainers if player:isInTrainers() then -- Pega o tempo do Spoof para uma acao -- Dar Frags & mortes local fragAndDeath = action["fragAndDeath"] if (math.random(10) <= fragAndDeath.chance and player:getStorageValue(fragAndDeath.storage) > math.random(fragAndDeath.minMinutes, fragAndDeath.maxMinutes) * 60) and player:getLevel() > 250 then if math.random(10) <= 4 then -- 40% de chance de ser para player a morte -- Player local allSpoofLoggeds = { } for tmpName, _ in pairs(self.players) do if tmpName ~= playerName then allSpoofLoggeds[#allSpoofLoggeds + 1] = tmpName end end if next(allSpoofLoggeds) ~= nil then local randomAmount = math.random(2, 10) local participantsTable = { } for i = 1, randomAmount do local randomParticipant = allSpoofLoggeds[math.random(#allSpoofLoggeds)] if randomParticipant then participantsTable[#participantsTable + 1] = randomParticipant end end local mostDamage = '' local killerName = '' local participants = '' for index, participantName in ipairs(participantsTable) do -- O primeiro participante ter? dado o dano maior e n?o ser? inserido na database como participantes if index == 1 then mostDamage = participantName else -- O Index 2 vai dar o participante como o matador if index == 2 then killerName = participantName end local participantGuid = getPlayerGUIDByName(participantName) participants = string.format('%s%d', participants == '' and '' or participants .. ',', participantGuid) db.query(string.format('UPDATE `players` SET `frags` = `frags` + 1 WHERE `name` = %s', db.escapeString(participantName))) end end db.query(string.format('UPDATE `players` SET `deaths` = `deaths` + 1 WHERE `name` = %s', db.escapeString(playerName))) -- Se por acaso nao tenha um killerName e mostDamage tiver com nome de um player, vamos pegar ele. if killerName == '' and mostDamage ~= '' then killerName = mostDamage end db.query(string.format('INSERT INTO `player_deaths` (`player_id`, `time`, `level`, `killed_by`, `is_player`, `mostdamage_by`, `mostdamage_is_player`, `unjustified`, `mostdamage_unjustified`, `participants`) VALUES (%d, %d, %d, %s, %d, %s, %d, %d, %d, %s)', playerGuid, os.time(), player:getLevel(), db.escapeString(killerName), 1, db.escapeString(mostDamage), 1, 1, 1, db.escapeString(participants))) local removeExperience = #participantsTable * 100000 player:removeExperience(removeExperience) end else -- 60% de chance de ser para monstro normal -- Monstro local resultId = db.storeQuery(string.format("SELECT `killed_by`, `mostdamage_by` FROM `player_deaths` WHERE `mostdamage_is_player` = 0 AND `player_id` != %d ORDER BY RAND() DESC LIMIT 1", playerGuid)) if resultId then local killedBy = result.getString(resultId, "killed_by") local mostDamage = result.getString(resultId, "mostdamage_by") result.free(resultId) -- Verifica se ? VIP o monstro, se for, ent?o vai dar VIP para o Spoofer if (isInArray(VIP_MONSTERS, killedBy) or isInArray(VIP_MONSTERS, mostDamage)) and not player:isVip() then player:loadVipData() player:addVipDays(3) player:updateVipTime() end local participants = '' db.query(string.format('INSERT INTO `player_deaths` (`player_id`, `time`, `level`, `killed_by`, `is_player`, `mostdamage_by`, `mostdamage_is_player`, `unjustified`, `mostdamage_unjustified`, `participants`) VALUES (%d, %d, %d, %s, %d, %s, %d, %d, %d, %s)', playerGuid, os.time(), player:getLevel(), db.escapeString(killedBy), 0, db.escapeString(mostDamage), 0, 0, 0, db.escapeString(participants))) local removeExperience = (math.random(5, 10)) * 100000 player:removeExperience(removeExperience) end player:setStorageValue(fragAndDeath.storage, 0) end end -- Melhorar o Set local newItem = action["newItem"] if (player:getStorageValue(newItem.storage) > math.random(newItem.minMinutes, newItem.maxMinutes) * 60) then if math.random(10) <= 3 then local itemListVocation = itensTable[player:getVocation():getBase():getId()] if itemListVocation then local itemList = nil for v, k in pairs(itemListVocation) do if 301 >= v[1] and 301 <= v[2] then itemList = k break end end if itemList then local itemId = nil local slotItem = nil for i = 1, 100 do local randomItem = itemList[math.random(#itemList)] local itemType = ItemType(randomItem) if itemType then local slot = itemType:getSlotPosition() local tmpSlotItem = SLOTS_CONST[slot] local itemPlayerSlot = player:getSlotItem(tmpSlotItem) if itemPlayerSlot then if randomItem ~= itemPlayerSlot:getId() then itemPlayerSlot:remove() slotItem = tmpSlotItem itemId = randomItem break end else slotItem = tmpSlotItem itemId = itemType:getId() break end end end -- Search for Weapons Avaliable if not player:getSlotItem(CONST_SLOT_LEFT) then for i = 1, 100 do local randomItem = itemList[math.random(#itemList)] local itemType = ItemType(randomItem) if itemType then local slot = itemType:getSlotPosition() local tmpSlotItem = SLOTS_CONST[slot] if slot == 48 and itemType:getWeaponType() ~= 4 then player:addItem(randomItem, 1) break end end end end if itemId then local itemType = ItemType(itemId) if itemType then player:addItem(itemId, 1, false, -1, slotItem) end end end end -- Repara Soft Boots local feetSloot = player:getSlotItem(CONST_SLOT_FEET) if feetSloot then if feetSloot:getId() == 10021 then feetSloot:transform(2640) end end player:save() end end local newQuest = action["newQuest"] -- TODO -- Avan?ar level local advanceLevel = action["levelAdvance"] if (player:getStorageValue(advanceLevel.storage) > math.random(advanceLevel.minMinutes, advanceLevel.maxMinutes) * 60) then local experience = nil if player:getLevel() >= advanceLevel.maxLevel then local randomChance = math.random(1, 2) randomChance = randomChance * 0.1 experience = getExpForLevel(player:getLevel()) * randomChance print(experience) --player:addExperience(experience, false) else experience = getExpForLevel(player:getLevel() + math.random(5)) - player:getExperience() player:addExperience(experience, false) end ExperienceOnline_time:increaseExperience(player:getId(), experience) player:setStorageValue(advanceLevel.storage, 0) end -- Mudar Outfit local exchangeOutfit = action["exchangeOutfit"] if (player:getStorageValue(exchangeOutfit.storage) > math.random(exchangeOutfit.minMinutes, exchangeOutfit.maxMinutes) * 60) then local getRandomOutfit = self:getRandomOutfit(playerSex) player:setOutfit({lookType = getRandomOutfit.lookType, lookHead = getRandomOutfit.lookHead, lookBody = getRandomOutfit.lookBody, lookLegs = getRandomOutfit.lookLegs, lookFeet = getRandomOutfit.lookFeet}) if math.random(10) <= exchangeOutfit.chanceToGainAddon then local randomAddon = nil for i = 1, 100 do local randomOutfit = randomAddons[math.random(#randomAddons)] if randomOutfit then if not player:hasOutfit(playerSex == PLAYERSEX_FEMALE and randomOutfit.female or randomOutfit.male, 3) then randomAddon = randomOutfit break end end end if randomAddon then player:addOutfitAddon(randomAddon.female, 3) player:addOutfitAddon(randomAddon.male, 3) player:getPosition():sendMagicEffect(CONST_ME_FIREWORK_BLUE) local outfit = player:getOutfit() player:setOutfit({lookType = playerSex == PLAYERSEX_FEMALE and randomAddon.female or randomAddon.male, lookHead = outfit.lookHead, lookBody = outfit.lookBody, lookLegs = outfit.lookLegs, lookFeet = outfit.lookFeet, lookAddons = 3}) end end player:setStorageValue(exchangeOutfit.storage, 0) end -- Aumentar Skill local skillAdvance = action["skillAdvance"] if (player:getStorageValue(skillAdvance.storage) > math.random(skillAdvance.minMinutes, skillAdvance.maxMinutes) * 60) then if player:isKnight() or player:isPaladin() then local highestSkill = player:getHigherSkill(player) local getSkill = player:getSkillLevel(highestSkill) if getSkill >= skillAdvance.maxSkill then player:addSkillTries(highestSkill, player:getSkillLevel(highestSkill) + 1 * 0.1) else player:addSkillTries(highestSkill, player:getVocation():getRequiredSkillTries(highestSkill, player:getSkillLevel(highestSkill) + 1) - player:getSkillTries(highestSkill)) end -- Avan?o de Magic Level para Knights & Paladin local magicLevel = player:getMagicLevel() if player:isKnight() then local formula = math.random(2500, 5000) * (player:getVocation():getManaGainAmount() / player:getVocation():getManaGainTicks()) if magicLevel >= 10 then formula = formula * (math.random(3) * 0.1) end player:addManaSpent(formula) else local formula = math.random(3600, 10000) * (player:getVocation():getManaGainAmount() / player:getVocation():getManaGainTicks()) if magicLevel >= 30 then formula = formula * (math.random(5) * 0.1) end player:addManaSpent(formula) end elseif player:isMage() then local playerGetSkill = player:getMagicLevel() if playerGetSkill >= skillAdvance.maxSkill then player:addManaSpent(player:getVocation():getRequiredManaSpent(player:getBaseMagicLevel()) + 1 * 0.1) else player:addManaSpent(player:getVocation():getRequiredManaSpent(player:getBaseMagicLevel()) + 1) end end player:setStorageValue(skillAdvance.storage, 0) -- Treinar Shielding player:addOfflineTrainingTries(SKILL_SHIELD, math.random(500, 1000) / 4) end -- Definir de vez enquanto o personagem para hidden no Site if (player:getStorageValue(54839836) > 86300) then local value = player:isHidden() and 0 or 1 db.query(string.format('UPDATE `players` SET `hidden` = %d WHERE `id` = %d', value, player:getGuid())) player:setStorageValue(54839832, 0) end for _, infoSpoof in pairs(action) do local storage = infoSpoof.storage player:setStorageValue(storage, math.max(0, player:getStorageValue(storage)) + 60) end player:setStorageValue(54839832, math.max(0, player:getStorageValue(54839832)) + 60) end self.players[player:getName()] = addEvent(function(self, playerId) self:executeAction(playerId) end, 60 * 1000, self, playerId) end
  5. Galera, queria uma noção de vocês se é possível eu criar uma função pela source ou script mesmo, que quando o player execute o comando CTRL + M no cliente, execute uma função...
  6. monsters.cpp: In member function ‘void MonsterType::dropLoot(Container*)’: monsters.cpp:212:9: error: suggest explicit braces to avoid ambiguous ‘else’ [-Werror=parentheses] else if(message == LOOTMSG_PLAYER || message == LOOTMSG_BOTH)
  7. Quero igual a da foto, o AZUL CLARO
  8. Como eu faço pra colocar a mensagem em azul claro igual este print abaixo? Versão 8.60
  9. Farathor postou uma resposta no tópico em Códigos C++
    A minha é mais otimizada, rs. e tem muita coisa nela, vou tentar adaptar o cast com seta seu nela...
  10. Farathor postou uma resposta no tópico em Códigos C++
    protocolgame.cpp: In member function ‘void ProtocolGame::spectate(const string&, const string&)’: protocolgame.cpp:141:27: error: ‘stoi’ is not a member of ‘std’ uint32_t total = ctime - std::stoi(value); ^ protocolgame.cpp:172:35: error: request for member ‘addProtocolToAutosend’ in ‘OutputMessagePool::getInstance()’, which is of pointer type ‘OutputMessagePool*’ (maybe you meant to use ‘->’ ?) OutputMessagePool::getInstance().addProtocolToAutosend(shared_from_this()); ^ protocolgame.cpp:172:74: error: ‘shared_from_this’ was not declared in this scope OutputMessagePool::getInstance().addProtocolToAutosend(shared_from_this()); ^ protocolgame.cpp: In member function ‘bool ProtocolGame::spectatePlayer(const string&, const string&)’: protocolgame.cpp:206:24: error: ‘class Spectators’ has no member named ‘resetOwner’ player_old->client->resetOwner(); ^ protocolgame.cpp:216:2: error: ‘knownCreatureSet’ was not declared in this scope knownCreatureSet.clear(); ^ protocolgame.cpp:229:27: error: ‘stoi’ is not a member of ‘std’ uint32_t total = ctime - std::stoi(value); ^ protocolgame.cpp:258:35: error: request for member ‘addProtocolToAutosend’ in ‘OutputMessagePool::getInstance()’, which is of pointer type ‘OutputMessagePool*’ (maybe you meant to use ‘->’ ?) OutputMessagePool::getInstance().addProtocolToAutosend(shared_from_this()); ^ protocolgame.cpp:258:74: error: ‘shared_from_this’ was not declared in this scope OutputMessagePool::getInstance().addProtocolToAutosend(shared_from_this()); ^ protocolgame.cpp: In member function ‘void ProtocolGame::returnPlayer()’: protocolgame.cpp:273:35: error: ‘getThis’ was not declared in this scope player->client->setOwner(getThis()); ^ protocolgame.cpp:276:2: error: ‘knownCreatureSet’ was not declared in this scope knownCreatureSet.clear(); ^ protocolgame.cpp: In member function ‘void ProtocolGame::spectatorTurn(uint8_t)’: protocolgame.cpp:325:30: warning: comparison is always false due to limited range of data type [-Wtype-limits] if (index == 0 && direction == -1) { ^ protocolgame.cpp:349:2: error: ‘knownCreatureSet’ was not declared in this scope knownCreatureSet.clear(); ^
  11. Farathor postou uma resposta no tópico em Códigos C++
    protocolgame.cpp: In member function ‘void ProtocolGame::spectate(const string&, const string&)’: protocolgame.cpp:139:27: error: ‘stoi’ is not a member of ‘std’ uint32_t total = ctime - std::stoi(value); ^ protocolgame.cpp: In member function ‘void ProtocolGame::spectatorTurn(uint8_t)’: protocolgame.cpp:210:30: warning: comparison is always false due to limited range of data type [-Wtype-limits] if (index == 0 && direction == -1) { ^ protocolgame.cpp:234:2: error: ‘knownCreatureSet’ was not declared in this scope knownCreatureSet.clear();
  12. Farathor postou uma resposta no tópico em Códigos C++
    tambem tem a opcao de dar look nos itens?
  13. Woox, como fazemos essa substituicao ?
  14. Fala galera, beleza? A tempo venho procurando alguma forma de fazer essa substituição de sprite. Como funciona? É bem simples, no OldClient, ou client da cipsoft normal, apresentaria uma sprite comum, já no custom client do servidor apresentaria a sprite atualizada. Segue videos de demonstracao
  15. Seguinte pessoal, estou com uma dúvida se isso seria possível de se fazer usando tfs 0.4 Seria basicamente diferenciar os players que usam o client proprio do servidor do client "normal" ou o client da cipsoft. A ideia seria o seguinte, o player que usar o client proprio ganha 5% a mais de exp. Alguém sabe alguma forma de diferenciar os clients? Seja com script ou pelas sources mesmo?
  16. Eu havida trocado a porta do SSH, porém não sei o que houve. Será que eu consigo recuperar o servidor ou o mesmo foi bloqueado e não tem solução ?
  17. Cheguei do trabalho e fui ver meu servidor ele estava offline, entrei no site da OVH e pra minha surpresa tinha essa mensagem: De Suporte da OVHcloud Olá, Uma atividade anormal foi detetada no seu servidor VPS vps-9bf7c433.vps.ovh.ca. Isso constitui uma rutura de contrato, o seu servidor vps-9bf7c433.vps.ovh.ca foi bloqueado. Poderá encontrar aqui os logs que conduziram à criação deste alerta: - INICIO DAS INFORMAÇÕES COMPLEMENTARES- Attack detail : 72Kpps/501Mbps dateTime srcIp:srcPort dstIp:dstPort protocol flags bytes reason 2020.07.27 18:21:06 CEST 167.114.96.210:34631 144.0.2.181:80 TCP SYN 891 ATTACK:TCP_SYN 2020.07.27 18:21:06 CEST 167.114.96.210:380 144.0.2.181:80 TCP SYN 907 ATTACK:TCP_SYN 2020.07.27 18:21:06 CEST 167.114.96.210:2917 144.0.2.181:80 TCP SYN 925 ATTACK:TCP_SYN 2020.07.27 18:21:06 CEST 167.114.96.210:58426 144.0.2.181:80 TCP SYN 908 ATTACK:TCP_SYN 2020.07.27 18:21:06 CEST 167.114.96.210:47097 144.0.2.181:80 TCP SYN 911 ATTACK:TCP_SYN 2020.07.27 18:21:06 CEST 167.114.96.210:38903 144.0.2.181:80 TCP SYN 903 ATTACK:TCP_SYN 2020.07.27 18:21:06 CEST 167.114.96.210:55513 144.0.2.181:80 TCP SYN 922 ATTACK:TCP_SYN 2020.07.27 18:21:06 CEST 167.114.96.210:40010 144.0.2.181:80 TCP SYN 928 ATTACK:TCP_SYN 2020.07.27 18:21:06 CEST 167.114.96.210:4681 144.0.2.181:80 TCP SYN 934 ATTACK:TCP_SYN 2020.07.27 18:21:06 CEST 167.114.96.210:5623 144.0.2.181:80 TCP SYN 919 ATTACK:TCP_SYN 2020.07.27 18:21:06 CEST 167.114.96.210:16121 144.0.2.181:80 TCP SYN 928 ATTACK:TCP_SYN 2020.07.27 18:21:06 CEST 167.114.96.210:50797 144.0.2.181:80 TCP SYN 912 ATTACK:TCP_SYN 2020.07.27 18:21:06 CEST 167.114.96.210:19823 144.0.2.181:80 TCP SYN 897 ATTACK:TCP_SYN 2020.07.27 18:21:06 CEST 167.114.96.210:42712 144.0.2.181:80 TCP SYN 936 ATTACK:TCP_SYN 2020.07.27 18:21:06 CEST 167.114.96.210:5958 144.0.2.181:80 TCP SYN 919 ATTACK:TCP_SYN 2020.07.27 18:21:06 CEST 167.114.96.210:14773 144.0.2.181:80 TCP SYN 935 ATTACK:TCP_SYN 2020.07.27 18:21:06 CEST 167.114.96.210:61516 144.0.2.181:80 TCP SYN 922 ATTACK:TCP_SYN 2020.07.27 18:21:06 CEST 167.114.96.210:48294 144.0.2.181:80 TCP SYN 906 ATTACK:TCP_SYN 2020.07.27 18:21:06 CEST 167.114.96.210:33986 144.0.2.181:80 TCP SYN 914 ATTACK:TCP_SYN 2020.07.27 18:21:06 CEST 167.114.96.210:35176 144.0.2.181:80 TCP SYN 915 ATTACK:TCP_SYN - INICIO DAS INFORMAÇÕES COMPLEMENTARES - Cordialmente, Suporte OVH. [ref=1.e97b3e5f] Desculpe se postei na area errada, eu nao sabia onde postar...
  18. Quando um player morre no meu servidor, ele está recuperando toda a stamina. Alguém pode me ajudar com isso?
  19. @You Know Nothing Explica ai
  20. -- The OTX Server Config -- Owner Data ownerName = "Farathor" ownerEmail = "[email protected]" url = "http://baiak-hells.com/" location = "Brazil" -- Messages motd = "Welcome to the Baiak Hells!" serverName = "Baiak Hells" loginMessage = "Welcome to the Baiak Hells!" displayGamemastersWithOnlineCommand = false -- MySql sqlType = "mysql" sqlHost = "127.0.0.1" sqlPort = 3306 sqlUser = "root" sqlPass = "" sqlDatabase = "" sqlFile = "schemas/otxserver.s3db" sqlKeepAlive = 0 mysqlReadTimeout = 0 mysqlWriteTimeout = 0 mysqlReconnectionAttempts = 5 encryptionType = "sha1" -- World / Ip / Port worldId = 0 ip = "66.70.190.56" worldType = "open" bindOnlyGlobalAddress = false loginPort = 7171 gamePort = "7172" statusPort = 7171 loginOnlyWithLoginServer = false -- Account manager accountManager = true namelockManager = false newPlayerChooseVoc = true newPlayerSpawnPosX = 1000 newPlayerSpawnPosY = 1000 newPlayerSpawnPosZ = 7 newPlayerTownId = 1 newPlayerLevel = 8 newPlayerMagicLevel = 0 generateAccountNumber = false generateAccountSalt = false -- Limits on frags / Time fragsLimit = 24 * 60 * 60 fragsSecondLimit = 7 * 24 * 60 * 60 fragsThirdLimit = 30 * 24 * 60 * 60 -- Red Skull Config fragsToRedSkull = 50 fragsSecondToRedSkull = 150 fragsThirdToRedSkull = 600 redSkullLength = 3 * 24 * 60 * 60 -- Black Skull Config fragsToBlackSkull = 50 fragsSecondToBlackSkull = 150 fragsThirdToBlackSkull = 600 blackSkulledDeathHealth = 40 blackSkulledDeathMana = 0 blackSkullLength = 7 * 24 * 60 * 60 useBlackSkull = true -- Banishment Config -- killsBanLength works only if useBlackSkull option is disabled. notationsToBan = 3 warningsToFinalBan = 4 warningsToDeletion = 5 banLength = 7 * 24 * 60 * 60 killsBanLength = 7 * 24 * 60 * 60 finalBanLength = 30 * 24 * 60 * 60 ipBanLength = 1 * 24 * 60 * 60 fragsToBanishment = 7 fragsSecondToBanishment = 21 fragsThirdToBanishment = 41 -- Battle -- NOTE: showHealth/ManaChangeForMonsters inherites from showHealth/ManaChange. protectionLevel = 1 pvpTileIgnoreLevelAndVocationProtection = true pzLocked = 1 * 60 * 1000 huntingDuration = 1 * 60 * 1000 criticalHitMultiplier = 1 displayCriticalHitNotify = false removeWeaponAmmunition = false removeWeaponCharges = false removeRuneCharges = false whiteSkullTime = 1 * 60 * 1000 advancedFragList = true useFragHandler = true noDamageToSameLookfeet = false showHealthChange = true showManaChange = false showHealthChangeForMonsters = false showManaChangeForMonsters = false fieldOwnershipDuration = 5 * 1000 stopAttackingAtExit = false loginProtectionPeriod = 1 * 1000 deathLostPercent = 5 stairhopDelay = 0.5 * 1000 pushCreatureDelay = 0.2 * 1000 deathContainerId = 1987 gainExperienceColor = 215 addManaSpentInPvPZone = true recoverManaAfterDeathInPvPZone = true squareColor = 0 broadcastBanishments = false maxViolationCommentSize = 60 violationNameReportActionType = 2 -- OTX Server Extras Features -- Corpse Block -- If set to true, players won't be able to immediately throw fields on top of corpses after killing the monster allowCorpseBlock = false -- Push creatures -- If set to false, players won't be able to push creatures while other actions are exhausted(for example potions) allowIndependentCreaturePush = true -- Battle optionalWarAttackableAlly = true fistBaseAttack = 7 criticalHitChance = 7 noDamageToGuildMates = false -- if true then no damage, if false then damage noDamageToPartyMembers = false -- if true then no damage, if false then damage -- Rook System rookLevelTo = 5 rookLevelToLeaveRook = 8 rookTownId = 1 useRookSystem = true -- Monsters Attack Config -- set monsterAttacksOnlyDamagePlayers to false if you want monster's attacks to damage other nearby monsters monsterAttacksOnlyDamagePlayers = true -- Paralyze delay paralyzeDelay = 1000 -- GUI premiumDaysToAddByGui = 10 -- Depot and Miscellaneous -- set playerFollowExhaust to 2000 if someone causes lags and kicks by following unreachable creatures too often useCapacity = true defaultDepotSize = 500 defaultDepotSizePremium = 1000 enableProtectionQuestForGM = true cleanItemsInMap = false playerFollowExhaust = 2000 -- 8.7x + config monsterSpawnWalkback = true allowBlockSpawn = true classicEquipmentSlots = true -- Summons and monsters NoShareExpSummonMonster = false -- Others enableLootBagDisplay = false highscoreDisplayPlayers = 10 updateHighscoresAfterMinutes = 60 attackImmediatelyAfterLoggingIn = false exhaustionNPC = true exhaustionInSecondsNPC = 0.5 delayLastPushStep = true optionalProtection = false -- Advanced Version -- Note: If you use another protocol than the one we set as you will have functional failures. -- Supported (860) = 8.60 manualVersionConfig = false versionMin = 860 versionMax = 860 versionMsg = "Only clients with protocol 8.60 allowed!" -- ConfigSpells -- Note: set noAttackHealingSimultaneus to true if you want the attack and healing spells to have the same exhausted noAttackHealingSimultaneus = false -- Connection config loginTries = 20 retryTimeout = 5 * 1000 loginTimeout = 60 * 1000 maxPlayers = 1000 displayOnOrOffAtCharlist = false onePlayerOnlinePerAccount = true allowClones = 0 statusTimeout = 1000 replaceKickOnLogin = true forceSlowConnectionsToDisconnect = false premiumPlayerSkipWaitList = true packetsPerSecond = 1000 loginProtectionTime = 1 -- Death List and Blessings -- Function retroPVP true change it: -- deathAssistCount to 1 -- useFairfightReduction to false -- fairFightTimeRange = 30 deathListEnabled = true deathListRequiredTime = 1 * 60 * 1000 maxDeathRecords = 5 multipleNames = false -- Retro PVP retroPVP = false deathAssistCount = 20 -- Blessings blessings = true blessingOnlyPremium = false blessingReductionBase = 30 blessingReductionDecrement = 5 eachBlessReduction = 8 useFairfightReduction = true fairFightTimeRange = 60 pvpBlessingThreshold = 40 -- Guilds -- NOTE: externalGuildWarsManagement supports Automatic Account Creator(webpage or whatever you want) externalGuildWarsManagement = false ingameGuildManagement = true levelToFormGuild = 100 premiumDaysToFormGuild = 0 guildNameMinLength = 4 guildNameMaxLength = 20 -- Houses buyableAndSellableHouses = true houseNeedPremium = false bedsRequirePremium = false levelToBuyHouse = 100 housesPerAccount = 1 houseRentAsPrice = false housePriceAsRent = false housePriceEachSquare = 100000 houseRentPeriod = "weekly" houseCleanOld = 8 * 24 * 60 * 60 guildHalls = true houseSkipInitialRent = true houseProtection = true -- Item usage timeBetweenActions = 0 timeBetweenExActions = 0 timeBetweenCustomActions = 0 checkCorpseOwner = true hotkeyAimbotEnabled = true maximumDoorLevel = 999 tradeLimit = 100 canOnlyRopePlayers = false -- Map -- NOTE: storeTrash costs more memory, but will perform alot faster cleaning. -- houseDataStorage usage may be found at how-use-internal-functions.log mapAuthor = "Farathor" randomizeTiles = true houseDataStorage = "binary-tilebased" storeTrash = true cleanProtectedZones = true mapName = "BaiakHells2019.otbm" -- For Windows(compiled with MSVC) and Linux use: -- OTX Server use default GroundCache -- GroundCache mode save memory: __GROUND_CACHE__ -- forgotten map on normal mode use memory: 361,512 KB -- forgotten map with groundCache mode use memory: 334,124 KB -- Mailbox mailMaxAttempts = 5 mailBlockPeriod = 30 * 60 * 1000 mailAttemptsFadeTime = 5 * 60 * 1000 mailboxDisabledTowns = "" -- Example disable rook depot (temple) "4" -- mailboxDisabledTowns = "4" -- Startup -- For Linux use "-1" is default -- daemonize works only on *nix, same as niceLevel daemonize = false defaultPriority = "higher" niceLevel = 5 coresUsed = "-1" startupDatabaseOptimization = true removePremiumOnInit = true confirmOutdatedVersion = false skipItemsVersionCheck = true -- Muted buffer maxMessageBuffer = 4 -- Miscellaneous dataDirectory = "data/" logsDirectory = "data/logs/" disableOutfitsForPrivilegedPlayers = false bankSystem = true spellNameInsteadOfWords = false emoteSpells = true unifiedSpells = true promptExceptionTracerErrorBox = true storePlayerDirection = false savePlayerData = true monsterLootMessage = 3 monsterLootMessageType = 25 separateViplistPerCharacter = false vipListDefaultLimit = 20 vipListDefaultPremiumLimit = 100 -- Outfits allowChangeOutfit = true allowChangeColors = true allowChangeAddons = true addonsOnlyPremium = false -- Ghost mode ghostModeInvisibleEffect = true ghostModeSpellEffects = true -- Limits -- Tile Limits set to 0 for prevent crash idleWarningTime = 14 * 60 * 1000 idleKickTime = 15 * 60 * 1000 expireReportsAfterReads = 1 playerQueryDeepness = -1 protectionTileLimit = 0 houseTileLimit = 0 tileLimit = 0 -- Premium-related freePremium = false premiumForPromotion = false updatePremiumStateAtStartup = true -- Rates experienceStages = true rateExperience = 100 rateExperienceFromPlayers = 0 levelToOfflineTraining = 8 rateSkill = 10 rateSkillOffline = 5 rateMagic = 5 rateMagicOffline = 2 rateLoot = 5 rateSpawnMin = 1 rateSpawnMax = 1 formulaLevel = 5.0 formulaMagic = 1.0 -- Monster rates rateMonsterHealth = 1.0 rateMonsterMana = 1.0 rateMonsterAttack = 1.0 rateMonsterDefense = 1.0 -- Experience from players minLevelThresholdForKilledPlayer = 0.9 maxLevelThresholdForKilledPlayer = 1.1 -- Stamina System -- NOTE: The Stamina gain will only start counting after 10 minutes of being offline -- rateStaminaLoss = The amount of Stamina(in minutes) a player will loose after 1 minute of hunting -- rateStaminaGain = The amount of time(in minutes) a player will need to be offline to get 1 minute of Stamina(from 0 stamina to 'staminaRatingLimitTop') -- rateStaminaThresholdGain = The amount of time(in minutes) a player will need to be offline to get 1 minute of Stamina(from 'staminaRatingLimitTop' to full stamina) -- staminaRatingLimitTop = Above this Stamina players will receive 'rateStaminaAboveNormal' times the amount of the exp -- staminaRatingLimitBottom = Below this Stamina players will receive 'rateStaminaUnderNormal' times the amount of the exp -- staminaLootLimit = Below this Stamina players will no longer receive any loot -- rateStaminaAboveNormal = The experience multiplier for players above 'staminaRatingLimitTop' Stamina(1.5 means the player will receive 50% extra experience) -- rateStaminaUnderNormal = The experience multiplier for players below 'staminaRatingLimitBottom' Stamina(0.5 means the player will receive only half the experience) rateStaminaLoss = 1 rateStaminaGain = 3 rateStaminaThresholdGain = 12 staminaRatingLimitTop = 40 * 60 staminaRatingLimitBottom = 14 * 60 staminaLootLimit = 14 * 60 rateStaminaAboveNormal = 1.5 rateStaminaUnderNormal = 0.5 staminaThresholdOnlyPremium = false -- Party System experienceShareRadiusX = 30 experienceShareRadiusY = 30 experienceShareRadiusZ = 1 experienceShareLevelDifference = 2 / 3 extraPartyExperienceLimit = 20 extraPartyExperiencePercent = 5 experienceShareActivity = 2 * 60 * 1000 -- Global save globalSaveEnabled = false globalSaveHour = 8 globalSaveMinute = 0 shutdownAtGlobalSave = true cleanMapAtGlobalSave = false -- Spawns minRateSpawn = 1 maxRateSpawn = 3 deSpawnRange = 2 deSpawnRadius = 50 -- Summons maxPlayerSummons = 2 teleportAllSummons = false teleportPlayerSummons = true -- Logs disableLuaErrors = false adminLogs = true displayPlayersLogging = true prefixChannelLogs = "" runFile = "server/run.log" outputLog = "server/out.log" truncateLogOnStartup = false logPlayersStatements = false -- Manager -- NOTE: managerPassword left blank disables manager. managerPort = 7171 managerLogs = true managerPassword = "" managerLocalhostOnly = true managerConnectionsLimit = 1 -- Admin -- NOTE: adminPassword left blank disables manager. -- Set to anything if you set adminRequireLogin to false. -- adminEncryption available options: rsa1024xtea; -- remember to set correct data! adminPort = 7171 adminPassword = "" adminLocalhostOnly = true adminConnectionsLimit = 1 adminRequireLogin = true adminEncryption = "" adminEncryptionData = "" -- Don't edit use at your own risk saveGlobalStorage = false bufferMutedOnSpellFailure = false
  21. Olá, gostaria de uma ajuda. Meu servidor a cada praticamente 1 hora ele simplesmente congela durante uns 10, 20 segundos. O Consumo da CPU, e da memoria não chega nem perto de 100%. Já olhei globalevents que executam a cada 1 hora, desativei o mesmo e não parou de travar. Eu uso debian 9

Informação Importante

Confirmação de Termo