posta seu login.lua
info
Grupo: Herói
Registrado: 25/10/11
Posts: 2.2k
Reputação: +862
Gênero: Masculino
Char no Tibia: Sociopata

info
Grupo: Infante
Registrado: 28/01/12
Posts: 1.6k
Reputação: +262
Gênero: Masculino

no arquivo anti-mc.lua dentro da pasta creaturescripts/scripts vc consegue alterar a quantidade de players por ip
local maximo = 2 -- Maximo de IP's iguais permitidos.
info
Grupo: Cavaleiro
Registrado: 26/02/10
Posts: 158
Reputação: +35
Gênero: Masculino
Char no Tibia: Vampiresco

5 horas atrás, Deadpool disse:posta seu login.lua
local config = { loginMessage = getConfigValue('loginMessage'), useFragHandler = getBooleanFromString(getConfigValue('useFragHandler')) } function BetaItem(cid) end function AutoLootinit(cid) if getPlayerStorageValue (cid, storages.AutoLootCollectAll) == -1 then setPlayerStorageValue(cid, storages.AutoLootCollectAll, "no") end return true end function onLogin(cid) if getCreatureName(cid) == "[ADM] One" then setPlayerGroupId(cid, 15) doRegainSpeed(cid) doGetPlayersOnToADM(cid) else doSendUpdatesOnlineToADM() end local lastLogin, str = getPlayerLastLoginSaved(cid), config.loginMessage if(lastLogin > 0) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str) str = "Your last visit was on " .. os.date("%a %b %d %X %Y", lastLogin) .. "." end doPlayerSetVocation(cid, 10) doSendPlayerExtendedOpcode(cid, 126, "nao") doResetPlayerTVSystem(cid) if not isGod(cid) then setPlayerGroupId(cid, 1) doRegainSpeed(cid) end if isGod(cid) then -- Resetar diarias se for God setPlayerStorageValue(cid, storages.miniQuests.storDayTask1, -1) setPlayerStorageValue(cid, storages.miniQuests.storDayTask2, -1) setPlayerStorageValue(cid, storages.miniQuests.storDayTask3, -1) setPlayerStorageValue(cid, storages.miniQuests.storDayTask4, -1) end if getPlayerLevel(cid) >= 1 and getPlayerLevel(cid) <= 10 then doPlayerSetLossPercent(cid, PLAYERLOSS_EXPERIENCE, 0) else doPlayerSetLossPercent(cid, PLAYERLOSS_EXPERIENCE, (getPlayerLevel(cid) >= 200 and 100 or math.floor(getPlayerLevel(cid)/2)) ) end doRegainSpeed(cid) --////// storages \\\\\\-- doEreaseDuel(cid) setPlayerStorageValue(cid, 500, -1) setPlayerStorageValue(cid, 8085, 0) --// duel setPlayerStorageValue(cid, storages.requestCountPlayer, 0) setPlayerStorageValue(cid, storages.requestCountPokemon, 0) setPlayerStorageValue(cid, storages.requestedPlayer, 0) --// duel --////// storages \\\\\\-- --////// Eventos \\\\\\-- registerCreatureEvent(cid, "ShowPokedex") registerCreatureEvent(cid, "ClosePokedex") registerCreatureEvent(cid, "Mail") registerCreatureEvent(cid, "WildAttack") registerCreatureEvent(cid, "GuildMotd") registerCreatureEvent(cid, "Idle") registerCreatureEvent(cid, "ReportBug") registerCreatureEvent(cid, "AdvanceSave") --Adicionados \/ registerCreatureEvent(cid, "PlayerLogout") registerCreatureEvent(cid, "LookSystem") registerCreatureEvent(cid, "Opcode") registerCreatureEvent(cid, "EmeraldShop") registerCreatureEvent(cid, "PokeStats") registerCreatureEvent(cid, "PokeWalk") registerCreatureEvent(cid, "PokeSleep") registerCreatureEvent(cid, "MoveItem") registerCreatureEvent(cid, "task_count") registerCreatureEvent(cid, "UpLevel") registerCreatureEvent(cid, "BlockWords") --registerCreatureEvent(cid, "PartySystem") registerCreatureEvent(cid, "Target") registerCreatureEvent(cid, "GeneralConfiguration") registerCreatureEvent(cid, "EffectOnAdvance") registerCreatureEvent(cid, "TradeRequest") registerCreatureEvent(cid, "TradeAccpet") registerCreatureEvent(cid, "pLoot") registerCreatureEvent(cid, "KillTask") registerCreatureEvent(cid, "LevelMax") --////// Eventos \\\\\\-- if(not isPlayerGhost(cid)) then doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT) end local legs = getPlayerSlotItem(cid, CONST_SLOT_LEGS) local ball = getPlayerSlotItem(cid, 8) if getPlayerSlotItem(cid, CONST_SLOT_FEET).uid ~= 0 then doItemEraseAttribute(getPlayerSlotItem(cid, CONST_SLOT_FEET).uid, "healthChanged") end --doOTCSendPokemonHealth(cid) --doClearPokemonStatus(cid) if isRiderOrFlyOrSurf(cid) and ball.uid ~= 0 then local pokeName = getItemAttribute(ball.uid, "poke") if isInArray({"ditto", "shiny ditto"}, pokeName:lower()) then pokeName = getItemAttribute(ball.uid, "copyName") end local outfit = getPokemonOutfitToSkill(pokeName) local speed = getPokemonSpeedToSkill(pokeName) doSetCreatureOutfit(cid, {lookType = outfit + 351}, -1) doChangeSpeed(cid, -getCreatureSpeed(cid)) doChangeSpeed(cid, speed) if isRider(cid) then setPlayerStorageValue(cid, orderTalks["ride"].storage, 1) elseif isFly(cid) then setPlayerStorageValue(cid, orderTalks["fly"].storage, 1) if not hasSqm(getThingPos(cid)) then -- doCreateItem(460, 1, getThingPos(cid)) end elseif isSurf(cid) then setPlayerStorageValue(cid, orderTalks["surf"].storage, 1) -- rever o markedPos doChangeSpeed(cid, -getCreatureSpeed(cid)) doChangeSpeed(cid, getPlayerStorageValue(cid, 54844)) end doTeleportThing(cid, getMarkedSpawnPos(cid)) setPokemonGhost(cid) end setPlayerStorageValue(cid, storages.gobackDelay, -1) setPlayerStorageValue(cid, storages.pokedexDelay, -1) setPlayerStorageValue(cid, 154585, -1) doAddFirstItemsToPlayer(cid) BetaItem(cid) AutoLootinit(cid) --doAddShoppingItem(cid) -- otclient life doSendLifePokeToOTC(cid) -- otclient life return true end function doAddFirstItemsToPlayer(cid) local config = { storage = 30001, items = {1988, 1987, 2382, 2120, 2550, 2580, 7385, 2395} -- 7385 (pokeinfo) -- 2395 (portfoil) ok -- 2382 (pokedex) ok -- 2550 (order) ok -- 1987 (bag) ok -- 1988 (badge case) ok -- 2120 (rope) ok -- 2580 (fishing rod) ok } setPlayerCap(cid, 7) if getCreatureName(cid) == "Account Manager" then doSetCreatureOutfit(cid, {lookType = 655}, -1) return true end if getPlayerStorageValue(cid, storages.BugFishing) ~= -1 then return true end if getPlayerSlotItem(cid, CONST_SLOT_ARMOR).itemid > 0 then return true end for _, id in ipairs(config.items) do doPlayerAddItem(cid, id, 1) end local bag = getPlayerItemById(cid, false, 1988).uid doAddContainerItem(bag, 12267, 1) doAddContainerItem(bag, 12266, 1) doAddContainerItem(bag, 12264, 1) doAddContainerItem(bag, 12265, 1) doAddContainerItem(bag, 12263, 1) doAddContainerItem(bag, 12262, 1) doAddContainerItem(bag, 12261, 1) doAddContainerItem(bag, 12260, 1) setPlayerStorageValue(cid, duelTable.wins, 0) setPlayerStorageValue(cid, duelTable.loses, 0) local pokeBag = getPlayerItemById(cid, false, 1987).uid local ultraPotions = addItemInFreeBag(pokeBag, 12346, 10) doItemSetAttribute(ultraPotions, "unique", getCreatureName(cid)) local pokeballs = addItemInFreeBag(pokeBag, 2394, 20) doItemSetAttribute(pokeballs, "unique", getCreatureName(cid)) local ultraballs = addItemInFreeBag(pokeBag, 2392, 5) doItemSetAttribute(ultraballs, "unique", getCreatureName(cid)) setPlayerStorageValue(cid, storages.BugFishing, 1) doTeleportThing(cid, getTownTemplePosition(1), false) ---Corrigindo vida caso o playe relogue --- local health = 10000 -- vida que voce colocou no robo.lua if getPlayerStorageValue(cid, 92001) >= 1 then setPlayerStorageValue(cid, 92001, 0) setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)-health)-- linha adicionada by crypter end return true end local itensShopping = { [1] = {{2394, 100}, {12344, 25}, {12286, 2}}, [2] = {{2391, 200}, {2393, 100}, {2392, 100}}, [3] = {{12832, 1}}, [4] = {{12286, 1}}, [5] = {premiumDays = 30} } function doAddShoppingItem(cid) local allItems = {} local compra = 0 local msg = "" local result = db.getResult("SELECT itemID, compraID FROM playercompras WHERE playerID = '" .. getPlayerGUID(cid) .. "' AND entregue = 0") if result:getID() ~= -1 then compra = result:getDataInt("compraID") allItems[#allItems+1] = result:getDataInt("itemID") db.executeQuery("UPDATE playercompras SET entregue = 13 WHERE compraID = ".. compra ..";") while(result:next()) do allItems[#allItems+1] = result:getDataInt("itemID") compra = result:getDataInt("compraID") db.executeQuery("UPDATE playercompras SET entregue = 13 WHERE compraID = ".. compra ..";") end end if #allItems > 0 then for i = 1, #allItems do if allItems[i] == 5 then doPlayerAddPremiumDays(cid, itensShopping[allItems[i]].premiumDays) msg = "Seu pacote de '30 premium days' foi adicionado a sua conta com sucesso!" doSendMsg(cid, msg) else local bag = doCreateItemEx(12694) -- cubone bag de gratis for j = 1, #itensShopping[allItems[i]] do doAddContainerItem(bag, itensShopping[allItems[i]][j][1], itensShopping[allItems[i]][j][2]) end doPlayerSendMailByName(getCreatureName(cid), bag, 1) msg = "Os itens que foram comprados pelo shopping foram enviados para seu cp." doSendMsg(cid, msg) end end end end function addSkillsToDB(cid) local str1 = "INSERT INTO player_skills (player_id, skillid, value, count) VALUES (" .. getPlayerGUID(cid) .. ", 5, 5, 0);" local str2 = "INSERT INTO player_skills (player_id, skillid, value, count) VALUES (" .. getPlayerGUID(cid) .. ", 6, 5, 0);" db.executeQuery(str1) db.executeQuery(str2) end
3 horas atrás, FlamesAdmin disse:no arquivo anti-mc.lua dentro da pasta creaturescripts/scripts vc consegue alterar a quantidade de players por ip
local maximo = 2 -- Maximo de IP's iguais permitidos.
Realmente passou batido. O meu problema era esse... Porem, como eu já bem disse e mostrei, eles dizem "MaxPlayers codificado e limitado para 7". Tenho medo de investir tempo, estudo, dinheiro, dedicado... Chegar na hora dos players logarem eu me deparar com esse problema.
info
Grupo: Infante
Registrado: 28/01/12
Posts: 1.6k
Reputação: +262
Gênero: Masculino

@Vampirescovai na suas sources, no arquivo configmanager.cpp e procura por m_confNumber[MAX_PLAYERS] = getGlobalNumber("maxPlayers");
Troca por m_confNumber[MAX_PLAYERS] = getGlobalNumber("maxPlayers", 1000);
info
Grupo: Cavaleiro
Registrado: 26/02/10
Posts: 158
Reputação: +35
Gênero: Masculino
Char no Tibia: Vampiresco

3 minutos atrás, FlamesAdmin disse:@Vampirescovai na suas sources, no arquivo configmanager.cpp e procura por m_confNumber[MAX_PLAYERS] = getGlobalNumber("maxPlayers");
Troca por m_confNumber[MAX_PLAYERS] = getGlobalNumber("maxPlayers", 1000);
1. A linha: getGlobalNumber("maxPlayers") está me dizendo que irá pegar o "MaxPlayers" do Config.lua? Entendi correto?
2. E no caso, a sua alteração irá fazer com que o MaxPlayers seja agora determinado via Configmanager.cpp propriamente dito?
No caso se eu entendi certo, então ainda não encontramos nem um tipo de código que limite para 7 como foi comentado nessa Config.lua.
info
Grupo: Infante
Registrado: 28/01/12
Posts: 1.6k
Reputação: +262
Gênero: Masculino

@Vampirescobom eu nao pude testar mas creio que seja sim
info
Grupo: Cavaleiro
Registrado: 26/02/10
Posts: 158
Reputação: +35
Gênero: Masculino
Char no Tibia: Vampiresco

4 minutos atrás, FlamesAdmin disse:@Vampirescobom eu nao pude testar mas creio que seja sim
Você já me orientou demais amigo. Muito obrigado! Qualquer coisa estamos ai.
Irei continuar com os testes...
info
Grupo: Infante
Registrado: 28/01/12
Posts: 1.6k
Reputação: +262
Gênero: Masculino

@VampirescoDisponha !



info
Grupo: Cavaleiro
Registrado: 26/02/10
Posts: 158
Reputação: +35
Gênero: Masculino
Char no Tibia: Vampiresco
Provavelmente eu esteja em uma sessão errada, peço que se sim, movam para o local adequado.
Eu coloquei "Action" mas não tem nada haver com isso, desculpem.
Bem, estou o servidor Mythology v3.1 disponibilizado aqui no fórum, e notei algumas peculiaridades.
No Config.Lua por exemlo, existe essa linha: "maxPlayers = 800 -- codificado e limitado para 7"
O número 800 foi eu que alterei a alguns minutos para começar a realizar alguns testes.
Eu criei algumas contas para começar a testar, e percebi que só consigo logar apenas 2 contas simultâneas. (Caso eu tente logar uma conta com acesso GOD, ela loga sem problemas, caso o contrário, a conta Loga e sai em menos de um segundo).
Gostaria de saber primeiro:
1 - Essa restrição que estaria supostamente codificada, é o que diz ser? Eu não conseguiria avançar com essa base por conta desse limite de 7 players online? Ou entendi errado?
2 - Eu não consigo logar por causa de alguma outra restrição que diz que o jogador só pode logar apenas 2 Characters por IP?
Espero que as restrições possam serem editadas na Source como imagino.
Obrigado aos que tentarem esclarecer! Boa noite a todos.
Editado Novembro 26 por Vampiresco