Ir para conteúdo
  • Cadastre-se

Normal Player não passar por cima do outro em determinado SQM


Posts Recomendados

Galera, estou com um problema no meu servidor que o player consegue passar por cima do outro no DP e pegar o item (se tiver em cima do depot).

 

# Já tentei colocar vários tiles desses que afundam, mas não deu certo.

 

Gostaria de um script pra colocar no tile que só pudesse passar 1 por vez, ou seja, seguir a lei de Newton "Dois corpos não ocupam mesmo lugar no espaço" kkk

 

Ou caso haja uma solução mais viável me informem por favor..

Link para o post
Compartilhar em outros sites

A respeito do jogador passar por cima do outro no DP é simples de resolver, basta você por um piso diferenciado. E no items.xml colocar uma TAG que faça que nenhum player possa passar por cima do outro em X piso.

════ҳ̸Ҳ̸ҳஜ۩۞۩ஜҳ̸Ҳ̸ҳ═══╗

Te Ajudei? Rep + e ficamos Quits

166420979_logoyanliimaornight.png.33f822b8970081a5b3646e85dbfd5934.png

Precisando de ajuda?

discord.png.1ecd188791d0141f74d99db371a2e0a4.png.890d5a38d7bcde75543c72b624a65de1.pngDiscord: Yan Liima #3702

Programador Júnior de LUA, PHP e JavaScript

Juntos somos lendas, separados somos Mitos!

╚══════════════════════════ҳ̸Ҳ̸ҳஜ۩۞۩ஜҳ̸Ҳ̸ҳ═════════════════════════════╝

Link para o post
Compartilhar em outros sites

ADICIONA NO TILE

<attribute key="walkStack" value="0" />

... CASO CONTINUA  TERÁ QUE ALTERA ISSO NA SOURCES

 

items.cpp procure: 

 

 

 moveable = true;

 

Troque por:

 

 

moveable = walkStack = true;

 

ainda em items.cpp procure:

 

 

    else if(tmpStrValue == "transformto")
            {
                if(readXMLInteger(itemAttributesNode, "value", intValue))
                    it.transformToFree = intValue;
            }

 

 

Logo embaixo coloque:

 

 

            else if(tmpStrValue == "walkstack")
            {
                if(readXMLInteger(itemAttributesNode, "value", intValue))
                    it.walkStack = (intValue != 0);
            }

 

items.h procure:

 

 

 lookThrough,

 

troque por:

 

 

 lookThrough, walkStack,

 

 

Na função canWalkThrough no player.cpp troque por:

 

 

 bool Player::canWalkthrough(const Creature* creature) const
{
    if(creature == this || hasCustomFlag(PlayerCustomFlag_CanWalkthrough) || creature->isWalkable() ||
        (creature->getMaster() && creature->getMaster() != this && canWalkthrough(creature->getMaster())))
        return true;

    const Player* player = creature->getPlayer();
    if(!player)
        return false;

    if((((g_game.getWorldType() == WORLD_TYPE_NO_PVP &&
        player->getVocation()->isAttackable()) || player->getTile()->hasFlag(TILESTATE_PROTECTIONZONE) || (player->getVocation()->isAttackable() &&
        player->getLevel() < (uint32_t)g_config.getNumber(ConfigManager::PROTECTION_LEVEL))) && player->getTile()->ground &&
        Item::items[player->getTile()->ground->getID()].walkStack) && (!player->hasCustomFlag(PlayerCustomFlag_GamemasterPrivileges)
        || player->getAccess() <= getAccess()))
        return true;

    return (player->isGhost() && getGhostAccess() < player->getGhostAccess())
        || (isGhost() && getGhostAccess() > player->getGhostAccess());
}
Link para o post
Compartilhar em outros sites

    accountManager = false
    namelockManager = true
    newPlayerChooseVoc = true
    newPlayerSpawnPosX = 159
    newPlayerSpawnPosY = 387
    newPlayerSpawnPosZ = 6
    newPlayerTownId = 2
    newPlayerLevel = 8
    newPlayerMagicLevel = 0
    generateAccountNumber = false
    generateAccountSalt = false


    useRookSystem = false
    rookTownId = 1
    rookLevelToGetRooked = 5
    rookLevelToLeaveRook = 8

    useFragHandler = true
    redSkullLength = 1 * 24 * 60 * 60
    blackSkullLength = 3 * 24 * 60 * 60
    dailyFragsToRedSkull = 15
    weeklyFragsToRedSkull = 80
    monthlyFragsToRedSkull = 120
    dailyFragsToBlackSkull = dailyFragsToRedSkull
    weeklyFragsToBlackSkull = weeklyFragsToRedSkull
    monthlyFragsToBlackSkull = monthlyFragsToRedSkull
    dailyFragsToBanishment = dailyFragsToRedSkull
    weeklyFragsToBanishment = weeklyFragsToRedSkull
    monthlyFragsToBanishment = monthlyFragsToRedSkull
    blackSkulledDeathHealth = 40
    blackSkulledDeathMana = 0
    useBlackSkull = true
    advancedFragList = false
    enableCast = true

    notationsToBan = 3
    warningsToFinalBan = 4
    warningsToDeletion = 5
    banLength = 1 * 24 * 60 * 60
    killsBanLength = 1 * 24 * 60 * 60
    finalBanLength = 1 * 24 * 60 * 60
    ipBanLength = 1 * 24 * 60 * 60
    allowedMaxSizePackets = 20


    worldType = "open"
    protectionLevel = 80
    pvpTileIgnoreLevelAndVocationProtection = true
    pzLocked = 10 * 1000
    huntingDuration = 10 * 1000
    criticalHitChance = 7
    criticalHitMultiplier = 1
    displayCriticalHitNotify = false
    removeWeaponAmmunition = false
    removeWeaponCharges = false
    removeRuneCharges = false
    whiteSkullTime = 5 * 60 * 1000
    noDamageToSameLookfeet = false
    showHealthChange = false
    showManaChange = false
    showHealthChangeForMonsters = false
    showManaChangeForMonsters = false
    fieldOwnershipDuration = 5 * 1000
    stopAttackingAtExit = true
    loginProtectionPeriod = 10 * 1000
    deathLostPercent = 10
    stairhopDelay = 2 * 1000
    pushCreatureDelay = 1 * 800
    deathContainerId = 1987
    gainExperienceColor = 215
    addManaSpentInPvPZone = true
    recoverManaAfterDeathInPvPZone = false
    squareColor = 0
    allowFightback = true
    fistBaseAttack = 7
    useFairfightReduction = true
    optionalWarAttackableAlly = false


    worldId = 0
    ip = "192.168.219.128"
    bindOnlyGlobalAddress = false
    loginPort = 7171
    gamePort = "7172"
    loginTries = 3
    retryTimeout = 5 * 1000
    loginTimeout = 60 * 1000
    maxPlayers = 1000
    motd = "Styller"
    displayOnOrOffAtCharlist = false
    onePlayerOnlinePerAccount = true
    allowClones = 0
    serverName = "Styller"
    loginMessage = "Espero que sua jornada no servidor seja uma constante alegria.!"
    statusTimeout = 5 * 60 * 1000
    replaceKickOnLogin = true
    forceSlowConnectionsToDisconnect = false
    loginOnlyWithLoginServer = false
    premiumPlayerSkipWaitList = false
    packetsPerSecond = 50


    rsaPrime1 = "14299623962416399520070177382898895550795403345466153217470516082934737582776038882967213386204600674145392845853859217990626450972452084065728686565928113"
    rsaPrime2 = "7630979195970404721891201847792002125535401292779123937207447574596692788513647179235335529307251350570728407373705564708871762033017096809910315212884101"
    rsaPublic = "65537"
    rsaModulus = "109120132967399429278860960508995541528237502902798129123468757937266291492576446330739696001110603907230888610072655818825358503429057592827629436413108566029093628212635953836686562675849720620786279431090218017681061521755056710823876476444260558147179707119674283982419152118103759076030616683978566631413"
    rsaPrivate = "46730330223584118622160180015036832148732986808519344675210555262940258739805766860224610646919605860206328024326703361630109888417839241959507572247284807035235569619173792292786907845791904955103601652822519121908367187885509270025388641700821735345222087940578381210879116823013776808975766851829020659073"


    sqlType = "mysql"
    sqlHost = "localhost"
    sqlPort = 3306
    sqlUser = "root"
    sqlPass = "123"
    sqlDatabase = "otserv"
    sqlFile = ""
    sqlKeepAlive = 0
    mysqlReadTimeout = 10
    mysqlWriteTimeout = 10
    mysqlReconnectionAttempts = 3
    encryptionType = "sha1"

    deathListEnabled = true
    deathListRequiredTime = 1 * 60 * 1000
    deathAssistCount = 19
    maxDeathRecords = 5
    multipleNames = false

    
    externalGuildWarsManagement = false
    ingameGuildManagement = false
    levelToFormGuild = 8
    premiumDaysToFormGuild = 0
    guildNameMinLength = 4
    guildNameMaxLength = 20


    buyableAndSellableHouses = true
    houseNeedPremium = true
    bedsRequirePremium = true
    levelToBuyHouse = 150
    housesPerAccount = 0
    houseRentAsPrice = false
    housePriceAsRent = false
    housePriceEachSquare = 1000
    houseSkipInitialRent = true
    houseRentPeriod = "never"
    houseCleanOld = 0
    guildHalls = false
    houseProtection = true


    timeBetweenActions = 200
    timeBetweenExActions = 1000
    timeBetweenCustomActions = 500
    hotkeyAimbotEnabled = true
    tibiaClassicSlots = true
    canOnlyRopePlayers = true


    mapName = "Styller.otbm"
    mapAuthor = ""
    randomizeTiles = true
    storeTrash = true
    cleanProtectedZones = true


    mailboxDisabledTowns = ""
    mailMaxAttempts = 20
    mailBlockPeriod = 60 * 60 * 1000
    mailAttemptsFadeTime = 10 * 60 * 1000

    daemonize = false
    defaultPriority = "high"
    niceLevel = 5
    serviceThreads = 1
    coresUsed = "-1"

    startupDatabaseOptimization = true
    updatePremiumStateAtStartup = true
    confirmOutdatedVersion = false
    skipItemsVersionCheck = true

    
    formulaLevel = 5.0
    formulaMagic = 1.0
    bufferMutedOnSpellFailure = false
    spellNameInsteadOfWords = false
    emoteSpells = true
    unifiedSpells = true
    enableCooldowns = true


    allowChangeOutfit = true
    allowChangeColors = true
    allowChangeAddons = true
    disableOutfitsForPrivilegedPlayers = false
    addonsOnlyPremium = false


    dataDirectory = "data/"
    logsDirectory = "data/logs/"
    bankSystem = true
    promptExceptionTracerErrorBox = true
    maximumDoorLevel = 500
    maxMessageBuffer = 4
    logPlayersStatements = true
    tradeLimit = 100
    useCapacity = true
    playerFollowExhaust = 0

    defaultDepotSizePremium = 2000
    defaultDepotSize = 1000
    
    separateVipListPerCharacter = false
    vipListDefaultLimit = 20
    vipListDefaultPremiumLimit = 100
    houseDataStorage = "binary"
    saveGlobalStorage = true
    storePlayerDirection = false
    savePlayerData = true
    checkCorpseOwner = true
    monsterLootMessage = 3
    monsterLootMessageType = 25

    ghostModeInvisibleEffect = false
    ghostModeSpellEffects = true

    idleWarningTime = 14 * 60 * 1000
    idleKickTime = 15 * 60 * 1000
    reportsExpirationAfterReads = 1
    playerQueryDeepness = -1
    tileLimit = 0
    protectionTileLimit = 0
    houseTileLimit = 0

    
    freePremium = true
    premiumForPromotion = false


    blessings = true
    blessingOnlyPremium = false
    blessingReductionBase = 30
    blessingReductionDecrement = 5
    eachBlessReduction = 8
    pvpBlessingThreshold = 40
    fairFightTimeRange = 60


    experienceStages = true
    rateExperience = 200
    rateExperienceFromPlayers = 0
    rateSkill = 30
    rateMagic = 15
    rateLoot = 1.5
    rateSpawnMin = 1
    rateSpawnMax = 1

    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 = 6
    globalSaveMinute = 0
    shutdownAtGlobalSave = false
    cleanMapAtGlobalSave = false
    closeInstanceOnShutdown = true


    deSpawnRange = 2
    deSpawnRadius = 50
    monsterSpawnWalkback = true
    allowBlockSpawn = true

    
    maxPlayerSummons = 2
    teleportAllSummons = false
    teleportPlayerSummons = false


    statusPort = 7171
    ownerName = ""
    ownerEmail = ""
    url = ""
    location = "Brazil"
    displayGamemastersWithOnlineCommand = false


    disableLuaErrors = 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 = ""

 

6 horas atrás, matheusjp2 disse:

ADICIONA NO TILE


<attribute key="walkStack" value="0" />

... CASO CONTINUA  TERÁ QUE ALTERA ISSO NA SOURCES

 

Na função canWalkThrough no player.cpp troque por:

 

 


 bool Player::canWalkthrough(const Creature* creature) const
{
    if(creature == this || hasCustomFlag(PlayerCustomFlag_CanWalkthrough) || creature->isWalkable() ||
        (creature->getMaster() && creature->getMaster() != this && canWalkthrough(creature->getMaster())))
        return true;

    const Player* player = creature->getPlayer();
    if(!player)
        return false;

    if((((g_game.getWorldType() == WORLD_TYPE_NO_PVP &&
        player->getVocation()->isAttackable()) || player->getTile()->hasFlag(TILESTATE_PROTECTIONZONE) || (player->getVocation()->isAttackable() &&
        player->getLevel() < (uint32_t)g_config.getNumber(ConfigManager::PROTECTION_LEVEL))) && player->getTile()->ground &&
        Item::items[player->getTile()->ground->getID()].walkStack) && (!player->hasCustomFlag(PlayerCustomFlag_GamemasterPrivileges)
        || player->getAccess() <= getAccess()))
        return true;

    return (player->isGhost() && getGhostAccess() < player->getGhostAccess())
        || (isGhost() && getGhostAccess() > player->getGhostAccess());
}

 

 

Unica coisa que achei foi isso e está do mesmo jeito que voce postou

Link para o post
Compartilhar em outros sites
Citar
11 horas atrás, matheusjp2 disse:

usa tfs ou otx ? versao 

 

 

OTX 8.60

Link para o post
Compartilhar em outros sites
29 minutos atrás, magera disse:

 

OTX 8.60

verifica ao abrir o servidor esta NO PVP -- se tiver coloca PVP

Editado por matheusjp2 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
Citar
10 horas atrás, matheusjp2 disse:

verifica ao abrir o servidor esta NO PVP -- se tiver coloca PVP

 

 

 

Está correto "open"

Em 08/05/2016 at 14:37, MaTTch disse:

Versão de TFS?

 

OTX 8.60

Link para o post
Compartilhar em outros sites
2 horas atrás, magera disse:

 

 

Está correto "open"

 

OTX 8.60

 TA FODA EM

ADD NO SKYPE PRA RESOLVER 

Link para o post
Compartilhar em outros sites
Agora, matheusjp2 disse:

 TA FODA EM

ADD NO SKYPE PRA RESOLVER 

 

Solved

 

Consegui resolver..

 

Usei uma source diferente (provavelmente a outra estava zuada) e fiz o atributo no piso (tile).

<attribute key="walkStack" value="0" />

 

Valeu, REP +

Link para o post
Compartilhar em outros sites
6 horas atrás, magera disse:

 

Solved

 

Consegui resolver..

 

Usei uma source diferente (provavelmente a outra estava zuada) e fiz o atributo no piso (tile).


<attribute key="walkStack" value="0" />

 

Valeu, REP +

certo !

 

RESOLVIDO

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 Jaurez
      .
    • Por Cat
      Em alguns casos, o tibia 8.60 comum não abre de jeito nenhum no map editor, mesmo desmarcando check file signatures e configurando o path corretamente.
       
      Este é o client 8.60 adaptado para o Remere's Map Editor. Resolvi postar já que ele foi removido do site oficial do RME. (ficou apenas a versão para linux lá)
      Se estiver tendo problemas para abrir a versão 8.60, tente utilizar este.
                                                                                                                     
      Baixar o Tibia Client 8.60 que funciona no Remere’s Map Editor
      Essa versão do Tibia 8.60 client resolve o erro unsupported client version ou Could not locate tibia.dat and/or tibia.spr, please navigate to your tibia 8.60 installation folder.
       
      Downloads
      https://tibiaking.com/applications/core/interface/file/attachment.php?id=47333

      Scan: https://www.virustotal.com/gui/file/333e172ac49ba2028db9eb5889994509e7d2de28ebccfa428c04e86defbe15cc
       
    • Por danilo belato
      Fala Galera To Com um problema aki 
       
      quero exporta umas sprites de um server para colocar em outro 
       
      eu clico na sprites ai aparece tds a forma delas do lado de la >>
       
      ai eu clico nela e ponho a opiçao de export mais quando salvo a sprite ela n abri 
       
      aparece isso quando tento vê-la 
       
      visualização não disponível ( no formatos png e bitmap)
       
      Agora no formato idc fala que o paint n pode ler 
       
      me ajudem ae...
    • Por Vitor Bicaleto
      Galera to com o script do addon doll aqui, quando eu digito apenas "!addon" ele aparece assim: Digite novamente, algo está errado!"
      quando digito por exemplo: "!addon citizen" ele não funciona e não da nenhum erro
       
      mesma coisa acontece com o mount doll.. 
    • Por Ayron5
      Substitui uma stone no serve, deu tudo certo fora  esse  erro ajudem  Valendo  Rep+  Grato  

      Erro: data/actions/scripts/boost.lua:557: table index is nil
       [Warning - Event::loadScript] Cannot load script (data/actions/scripts/boost.lua)

      Script:
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo