Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Eis meu problema meu server primeiro so tva dando xp ao matar os cara mais dai vi q ñ tva pvp e sim enforced + agr tipo ele mata so q ñ conta frags entende? :x

22:03 Warning! The murder of Uchiha Madara was not justified.

22:03 You currently have 0 frags today, 0 this week and 0 this month.

REP++ pra quem ajudar help ae :D

Ahh e outra c possivel mim ajudarem meu char de god ñ tem os comando /addskill a tal player e tals tem como arrumar isso ? \:

          Procuro Equipe para projeto sério com remuneração, maior necessidade Programador em C\C++.

Link para o post
Compartilhar em outros sites

posta sua config.lua

accountManager = true

namelockManager = true

newPlayerChooseVoc = true

newPlayerSpawnPosX = 32369

newPlayerSpawnPosY = 32240

newPlayerSpawnPosZ = 7

newPlayerTownId = 1

newPlayerLevel = 8

newPlayerMagicLevel = 0

generateAccountNumber = yes

generateAccountSalt = false

useFragHandler = true

redSkullLength = 1 * 24 * 60 * 60

blackSkullLength = 2 * 24 * 60 * 60

dailyFragsToRedSkull = 10

weeklyFragsToRedSkull = 62

monthlyFragsToRedSkull = 200

dailyFragsToBlackSkull = 15

weeklyFragsToBlackSkull = 80

monthlyFragsToBlackSkull = 436

dailyFragsToBanishment = dailyFragsToRedSkull

weeklyFragsToBanishment = weeklyFragsToRedSkull

monthlyFragsToBanishment = monthlyFragsToRedSkull

blackSkulledDeathHealth = 40

blackSkulledDeathMana = 0

useBlackSkull = true

advancedFragList = false

notationsToBan = 3

warningsToFinalBan = 4

warningsToDeletion = 5

banLength = 7 * 24 * 60 * 60

killsBanLength = 7 * 24 * 60 * 60

finalBanLength = 30 * 24 * 60 * 60

ipBanishmentLength = 1 * 24 * 60 * 60

broadcastBanishments = false

maxViolationCommentSize = 200

violationNameReportActionType = 2

autoBanishUnknownBytes = false

worldType = "open"

protectionLevel = 0

pvpTileIgnoreLevelAndVocationProtection = true

pzLocked = 60 * 1000

huntingDuration = 60 * 1000

criticalHitChance = 7

criticalHitMultiplier = 1

displayCriticalHitNotify = true

removeWeaponAmmunition = true

removeWeaponCharges = true

removeRuneCharges = true

whiteSkullTime = 15 * 60 * 1000

noDamageToSameLookfeet = false

showHealingDamage = false

showHealingDamageForMonsters = false

fieldOwnershipDuration = 5 * 1000

stopAttackingAtExit = false

loginProtectionPeriod = 10 * 1000

deathLostPercent = 10

stairhopDelay = 2 * 1000

pushCreatureDelay = 2 * 500

deathContainerId = 1987

gainExperienceColor = 215

addManaSpentInPvPZone = true

squareColor = 0

allowFightback = true

fistBaseAttack = 7

worldId = 0

ip = "127.0.0.1"

bindOnlyGlobalAddress = false

loginPort = 7171

gamePort = 7172

loginTries = 10

retryTimeout = 5 * 1000

loginTimeout = 60 * 1000

maxPlayers = 1000

motd = "*Luminera sua diversão esta aqui*"

displayOnOrOffAtCharlist = false

onePlayerOnlinePerAccount = true

allowClones = false

serverName = "Luminera"

loginMessage = "Welcome to Luminera World by Gustavo Ferreira"

statusTimeout = 5 * 60 * 1000

replaceKickOnLogin = true

forceSlowConnectionsToDisconnect = false

loginOnlyWithLoginServer = false

premiumPlayerSkipWaitList = false

sqlType = "sqlite"

sqlHost = "127.0.0.1"

sqlPort = 3306

sqlUser = "root"

sqlPass = ""

sqlDatabase = "theforgottenserver"

sqlFile = "theforgottenserver.s3db"

sqlKeepAlive = 0

mysqlReadTimeout = 10

mysqlWriteTimeout = 10

encryptionType = "plain"

deathListEnabled = true

deathListRequiredTime = 1 * 60 * 1000

deathAssistCount = 19

maxDeathRecords = 5

ingameGuildManagement = false

levelToFormGuild = 8

premiumDaysToFormGuild = 0

guildNameMinLength = 4

guildNameMaxLength = 20

highscoreDisplayPlayers = 15

updateHighscoresAfterMinutes = 60

buyableAndSellableHouses = true

houseNeedPremium = false

bedsRequirePremium = false

levelToBuyHouse = 100

housesPerAccount = 1

houseRentAsPrice = true

housePriceAsRent = true

housePriceEachSquare = 1000

houseRentPeriod = true

houseCleanOld = 0

guildHalls = false

timeBetweenActions = 200

timeBetweenExActions = 1000

hotkeyAimbotEnabled = true

mapName = "realmap.otbm"

mapAuthor = "Komic"

randomizeTiles = true

storeTrash = true

cleanProtectedZones = true

mailboxDisabledTowns = ""

defaultPriority = "high"

niceLevel = 5

coresUsed = "-1"

startupDatabaseOptimization = true

updatePremiumStateAtStartup = true

confirmOutdatedVersion = false

formulaLevel = 5.0

formulaMagic = 1.0

bufferMutedOnSpellFailure = false

spellNameInsteadOfWords = false

emoteSpells = true

allowChangeOutfit = true

allowChangeColors = true

allowChangeAddons = true

disableOutfitsForPrivilegedPlayers = false

addonsOnlyPremium = false

dataDirectory = "data/"

logsDirectory = "data/logs/"

bankSystem = true

displaySkillLevelOnAdvance = false

promptExceptionTracerErrorBox = true

maximumDoorLevel = 500

maxMessageBuffer = 4

separateVipListPerCharacter = false

vipListDefaultLimit = 20

vipListDefaultPremiumLimit = 100

saveGlobalStorage = true

useHouseDataStorage = false

storePlayerDirection = false

checkCorpseOwner = true

monsterLootMessage = 3

monsterLootMessageType = 25

ghostModeInvisibleEffect = false

ghostModeSpellEffects = true

idleWarningTime = 14 * 60000 * 1000

idleKickTime = 15 * 60000 * 1000

reportsExpirationAfterReads = 1

playerQueryDeepness = 2

tileLimit = 0

protectionTileLimit = 0

houseTileLimit = 0

freePremium = false

premiumForPromotion = true

blessings = true

blessingOnlyPremium = false

blessingReductionBase = 30

blessingReductionDecrement = 5

eachBlessReduction = 8

experienceStages = true

rateExperience = 250.0

rateExperienceFromPlayers = 2

rateSkill = 40.0

rateMagic = 20.0

rateLoot = 6.0

rateSpawn = 2

rateMonsterHealth = 1.0

rateMonsterMana = 1.0

rateMonsterAttack = 1.0

rateMonsterDefense = 1.0

minLevelThresholdForKilledPlayer = 0.9

maxLevelThresholdForKilledPlayer = 1.1

rateStaminaLoss = 1

rateStaminaGain = 3

rateStaminaThresholdGain = 12

staminaRatingLimitTop = 40 * 60

staminaRatingLimitBottom = 14 * 60

staminaLootLimit = 14 * 60

rateStaminaAboveNormal = 1.5

rateStaminaUnderNormal = 0.5

staminaThresholdOnlyPremium = true

experienceShareRadiusX = 30

experienceShareRadiusY = 30

experienceShareRadiusZ = 1

experienceShareLevelDifference = 2 / 3

extraPartyExperienceLimit = 20

extraPartyExperiencePercent = 5

experienceShareActivity = 2 * 60 * 1000

globalSaveEnabled = false

globalSaveHour = 8

globalSaveMinute = 0

shutdownAtGlobalSave = true

cleanMapAtGlobalSave = true

deSpawnRange = 2

deSpawnRadius = 50

maxPlayerSummons = 2

teleportAllSummons = false

teleportPlayerSummons = false

statusPort = 7171

ownerName = "Gustavo Ferreira"

ownerEmail = "[email protected]"

url = "http://tibiaking.com"

location = "Europe"

displayGamemastersWithOnlineCommand = false

displayPlayersLogging = true

prefixChannelLogs = ""

runFile = ""

outputLog = ""

truncateLogonstartup = false

managerPort = 7171

managerLogs = true

managerPassword = ""

managerLocalhostOnly = true

managerConnectionsLimit = 1

adminPort = 7171

adminLogs = true

adminPassword = ""

adminLocalhostOnly = true

adminConnectionsLimit = 1

adminRequireLogin = true

adminEncryption = ""

adminEncryptionData = ""

tá ae :) ñ postei como Spoiler pqê ñ sei como posta ainda =[

          Procuro Equipe para projeto sério com remuneração, maior necessidade Programador em C\C++.

Link para o post
Compartilhar em outros sites

tenta troca o worldType = "open" para worldType = "pvp"

Deu ñ quando tento por o server on .

[22:48:18.734] >> Checking world type...

[22:48:18.734] > ERROR: Unknown world type: pvp

:S

          Procuro Equipe para projeto sério com remuneração, maior necessidade Programador em C\C++.

Link para o post
Compartilhar em outros sites

se você quiser arrumar o do skill adicione em

data\talkactions\talkactions.xml



    <talkaction log="yes" words="/skill;/addskill" access="5" event="script" value="skill.lua"/>

data\talkactions\scripts\skill.lua

function onSay(cid, words, param, channel)

if(param == '') then

  doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command requires param.")

  return true

end

local t = string.explode(param, ",")

if(not t[2]) then

  doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Not enough params.")

  return true

end

local pid = getPlayerByNameWildcard(t[1])

if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then

  doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player " .. t[1] .. " not found.")

  return true

end

t[2] = t[2]:lower()

local skill = SKILL_IDS[t[2]]

if(not skill) then

  local tmp = t[2]:sub(1, 1)

  if(tmp == 'l' or tmp == 'e') then

   skill = SKILL__LEVEL

  elseif(tmp == 'm') then

   skill = SKILL__MAGLEVEL

  else

   skill = tonumber(t[2])

   if(not skill or skill < SKILL_FIRST or SKILL > SKILL__LAST) then

    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Such skill does not exists.")

    return true

   end

  end

end

local amount = tonumber(t[3])

if(not amount or amount == 0) then

  amount = 1

end

doPlayerAddSkill(pid, skill, amount, true)

return true

end

Link para o post
Compartilhar em outros sites

Troca sua database! ; )

POderia ser mais claro ? :S sou novo aqui

se você quiser arrumar o do skill adicione em

data\talkactions\talkactions.xml



<talkaction log="yes" words="/skill;/addskill" access="5" event="script" value="skill.lua"/>

data\talkactions\scripts\skill.lua

function onSay(cid, words, param, channel)

if(param == '') then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command requires param.")

return true

end

local t = string.explode(param, ",")

if(not t[2]) then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Not enough params.")

return true

end

local pid = getPlayerByNameWildcard(t[1])

if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player " .. t[1] .. " not found.")

return true

end

t[2] = t[2]:lower()

local skill = SKILL_IDS[t[2]]

if(not skill) then

local tmp = t[2]:sub(1, 1)

if(tmp == 'l' or tmp == 'e') then

skill = SKILL__LEVEL

elseif(tmp == 'm') then

skill = SKILL__MAGLEVEL

else

skill = tonumber(t[2])

if(not skill or skill < SKILL_FIRST or SKILL > SKILL__LAST) then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Such skill does not exists.")

return true

end

end

end

local amount = tonumber(t[3])

if(not amount or amount == 0) then

amount = 1

end

doPlayerAddSkill(pid, skill, amount, true)

return true

end

Vlw mano deu certo aqui :D REP +

Editado por Fausto32 (veja o histórico de edições)

          Procuro Equipe para projeto sério com remuneração, maior necessidade Programador em C\C++.

Link para o post
Compartilhar em outros sites

Problema Do /addskill arumado :) HELP no de frags ae quem souber ? :D

Editado por Fausto32 (veja o histórico de edições)

          Procuro Equipe para projeto sério com remuneração, maior necessidade Programador em C\C++.

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por FeK
      CSTibia (beta) | 01/03 às 16:00

      CSTibia é um jogo PvP que conecta Counter Strike e Tibia, proporcionando uma experiência única para aqueles que gostam de PvP.

      São 2 modos de jogo, 6 mapas e mais de 50 armas disponíveis para jogar!

      #Modos de jogo: Mata-mata e Torneio x1.

      #Mapas: Dust2, Inferno, Mirage, India, IceWorld e PoolDay.

      O beta estará disponível a partir do dia 01/03 às 16 horas! Ele terá duração de 1 mês e no dia 01/04 iniciará a Session 1.

      #Download: 01/03 às 12 horas.

      ▶️ Crie já sua conta!
      http://www.cstibia.com

      🎮 Discord: https://discord.gg/zdxdTTURpq

      📸 Instagram: https://www.instagram.com/cstibia
    • Por FeeTads
      SALVE rapaziada do TK, esses dias vim pensando em novos scripts pro meu OT, e em um deles eu precisava que determinada area não contasse frag pro player que matasse outros, PORÉM eu precisava que os players que morressem nessa area ainda assim tivessem as penalidades da sua morte, procurei por ai, achei alguns scripts que apenas tiravam o SKULL e não realmente o FRAG do player.

      **script atualizado 22/10/2023** - melhorado e otimizado, levei o script pra puxar as infos por .lua / creatureScripts

      vou disponibilizar o code aqui, e o que fazer pra determinada area não contar frag.

      SOURCE OTX 2 / TFS 0.x, Funciona em TFS 1.x mudando as tags e ajeitando as sintaxes.

      vá em creatureevent.cpp

      procure por:
      else if(type == "preparedeath") _type = CREATURE_EVENT_PREPAREDEATH;
      Adiciona abaixo:
      else if(type == "nocountfrag") _type = CREATURE_EVENT_NOCOUNTFRAG;

      procure por:
      case CREATURE_EVENT_PREPAREDEATH: return "onPrepareDeath";  
      Adicione abaixo: 
      case CREATURE_EVENT_NOCOUNTFRAG: return "noCountFragArea";

      procure por:
      case CREATURE_EVENT_PREPAREDEATH: return "cid, deathList";
      Adicione abaixo:
      case CREATURE_EVENT_NOCOUNTFRAG: return "cid, target";

      agora no mesmo arquivo, vá até o final do arquivo e adicione essa função:
      uint32_t CreatureEvent::executeNoCountFragArea(Creature* creature, Creature* target) { //noCountFragArea(cid, target) if(m_interface->reserveEnv()) { ScriptEnviroment* env = m_interface->getEnv(); if(m_scripted == EVENT_SCRIPT_BUFFER) { env->setRealPos(creature->getPosition()); std::ostringstream scriptstream; scriptstream << "local cid = " << env->addThing(creature) << std::endl; scriptstream << "local target = " << env->addThing(target) << std::endl; if(m_scriptData) scriptstream << *m_scriptData; bool result = true; if(m_interface->loadBuffer(scriptstream.str())) { lua_State* L = m_interface->getState(); result = m_interface->getGlobalBool(L, "_result", true); } m_interface->releaseEnv(); return result; } else { #ifdef __DEBUG_LUASCRIPTS__ std::ostringstream desc; desc << creature->getName(); env->setEvent(desc.str()); #endif env->setScriptId(m_scriptId, m_interface); env->setRealPos(creature->getPosition()); lua_State* L = m_interface->getState(); m_interface->pushFunction(m_scriptId); lua_pushnumber(L, env->addThing(creature)); lua_pushnumber(L, env->addThing(target)); bool result = m_interface->callFunction(2); m_interface->releaseEnv(); return result; } } else { std::clog << "[Error - CreatureEvent::noCountFragArea] Call stack overflow." << std::endl; return 0; } }

      agora vá em creatureevent.h

      procure por:
      CREATURE_EVENT_PREPAREDEATH
      adicione abaixo:
      CREATURE_EVENT_NOCOUNTFRAG

      procure por:
      uint32_t executePrepareDeath(Creature* creature, DeathList deathList);
      Adicione abaixo:
      uint32_t executeNoCountFragArea(Creature* creature, Creature* target);

      agora vá em player.cpp

      procure por:
      bool Player::onKilledCreature(Creature* target, DeathEntry& entry)
      abaixo de:
      War_t enemy; if(targetPlayer->getEnemy(this, enemy)) { if(entry.isLast()) IOGuild::getInstance()->updateWar(enemy); entry.setWar(enemy); }
      Adicione o seguinte código:
      if (targetPlayer){ CreatureEventList killEvents = getCreatureEvents(CREATURE_EVENT_NOCOUNTFRAG); for (const auto &event : killEvents) { if (!event->executeNoCountFragArea(this, target)) { return true; } } }

      //

      Feito isso, tudo completo na sua source, agora é necessário adicionar o creaturescript dentro do servidor

      vá até creaturescripts/scripts
      crie um arquivo chamado, "noCountFragInArea.lua"
      e dentro dele cole o código:
       
      --[[ script feito por feetads / TibiaKing ]]-- --[[ discord: feetads / FeeTads#0246 ]]-- -- Add positions here for which you do not want to count frags local areas = { [1] = {from = {x = 91, y = 122, z = 7}, to = {x = 98, y = 127, z = 7}}, -- from = area superior esquerda / to = area inferior direita (formando um quadrado) } local onlyKillerInArea = false -- only killer need to be in area? function noCountFragArea(cid, target) if not isCreature(cid) or not isCreature(target) then return true end local posKiller = getPlayerPosition(cid) local posTarget = getPlayerPosition(target) for i = 1, #areas do local area = areas[i] if isInArea(posKiller, area.from, area.to) then if onlyKillerInArea then return false elseif isInArea(posTarget, area.from, area.to) then return false end end end return true end
      agora em creaturescripts.xml
      <event type="nocountfrag" name="fragarea" event="script" value="noCountFragInArea.lua"/>
      agora em creaturescripts/scripts/login.lua
       procure por OU semelhante a esse:
      registerCreatureEvent(cid, "AdvanceSave")
      e abaixo adicione:
      registerCreatureEvent(cid, "fragarea")

      //


      Agora tudo certo, quando quiser adiciona uma area que não pega frag, vá até o script e apenas coloque a area, igual o demonstrado no script

      Exemplo:
      local areas = { [1] = {from = {x = 91, y = 122, z = 7}, to = {x = 98, y = 127, z = 7}}, [2] = {from = {x = 1000, y = 1000, z = 7}, to = {x = 1100, y = 1100, z = 7}}, }
      assim somente colocando a area no script e abrindo o server ou dando /reload, já funcionará a area como não pegar frag.
      Esse sistema pode ser bom pra areas de pvp ativo, onde você ainda quer que o player que morrer perca os atributos, como se fosse uma morte normal, porém não conta frag pra quem matar.
      Bom pra sistemas tipo castle 48h (guild war), onde há diversas mortes e risco de pegar red, atrapalhando a war.

      Façam bom proveito dos scripts, e deixem os créditos no script rsrs

      **Eu fiz as alterações e o simples código por isso vim disponibilizar, créditos meus**
    • Por Natsume
      Website: https://dbsu.eu
                Fanpage: https://www.facebook.com/profile.php?id=61550637247869
                                      Discord: https://discord.gg/hx5QHWfsgg

       
       

       
       
       
    • Por Pifafa
      Tibinha - YurOts
      Olá hoje trago a vocês meu projeto, tenho como objetivo atingir 50 jogadores (um sonho talvez que quase já se realizou) 
      www.tibinha.online



      Obrigado por ver meu projeto, caso tenha interesse entre nele e converse comigo, estou disponível para tira duvidas e ajudar a todos aqui!
       
    • Por DarkrestOnline
      Desencadeie o futuro em 15 de setembro de 2023 às 19:00 CEST, quando lançamos nosso servidor, destinado a redefinir os domínios de desempenho, aventura e PvP.
      19:00 CEST | 18:00 WEST | 02:00 PM GMT-3 | 10:00 AM PDT
       
      -
       
       
       
      Website: https://darkrest.online
       
      Lembra-se da emoção de se aventurar no mundo clássico de Tibia? O entusiasmo de cada nível ganho, o desespero por cada derrota árdua e a camaradagem com sua guilda? Nosso objetivo é trazer essa sensação de volta, mas com um toque novo. É por isso que o chamamos de "Nostalgia Redefinida".
       
      Informações do Servidor
      Exp: x2 (Rookgaard x6) Habilidade: x2 Mágica: x1 Saque: x1 Host: Canadá + Proxy para EU Renascimento: +35% maior que no vanilla 7.4  
      Estamos comprometidos em tornar este um servidor sem wipes a longo prazo. O motivo para as taxas mais baixas é justamente incentivar um ambiente de jogo estável e duradouro. Nosso servidor é projetado para ser um RPG difícil, mas com um forte ênfase em PVP. Prepare-se para uma experiência de jogo que testará suas habilidades, estratégia e trabalho em equipe.
       
       
       
      Novos Recursos
      Sistema de Criação Raridade e Bônus Sistema de Tarefas Personalizadas Coleta Novas Vocações e Magias O respawn não pode ser bloqueado Lanças e pequenas pedras aparecem no chão e têm 3% de chance de quebra  
       
      Política de Zero Tolerância para Bots, Macros e MC
      Temos uma política estrita de tolerância zero para trapaças, uso de bots e macros. Violar essas regras resultará em banimento permanente de todas as contas associadas ao indivíduo ofensor.
      Website: https://darkrest.online
       
      Informações Geek
      - Testamos nosso servidor com um total de 134 contas registradas durante a fase de teste e 183 jogadores.
      - Completamos 290 tarefas (cartões estilo Jira) com melhorias de desempenho, mudanças de equilíbrio, correções de bugs e novos recursos.
      - Reescrevemos completamente o salvamento de casas, a busca de caminhos (multithread), NPCs e melhoramos a IA dos monstros.
      Website: https://darkrest.online
       
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo