Jump to content
Beeki

Premium Points In Game

Recommended Posts

Fala galerinha do XTibia, vim aqui postar um sistema de Premium Points inGame, que eu achei muito útil, pois eu estava tendo sérios problemas com o Shop System do Modern AAC, ai vai os sistemas.

antes de tudo execute esse comando em seu banco de dados.


ALTER TABLE `accounts` ADD `premium_points` INT NOT NULL DEFAULT 0;
[/code]

[font=tahoma,geneva,sans-serif][color=#ff0000]#[/color][color=#000000]S[/color]istemas[/font]

[font=tahoma,geneva,sans-serif]vá em data/libs e crie um novo arquivo com o nome [i]048-ppoints.lua[/i][/font]

[i]
function getAccountPoints(cid)
local res = db.getResult('select `premium_points` from accounts where name = \''..getPlayerAccount(cid)..'\'')
if(res:getID() == -1) then
return false
end
local ret = res:getDataInt("premium_points")
res:free()
return tonumber(ret)
end

function doAccountAddPoints(cid, count)
return db.executeQuery("UPDATE `accounts` SET `premium_points` = '".. getAccountPoints(cid) + count .."' WHERE `name` ='"..getPlayerAccount(cid).."'")
end

function doAccountRemovePoints(cid, count)
return db.executeQuery("UPDATE `accounts` SET `premium_points` = '".. getAccountPoints(cid) - count .."' WHERE `name` ='"..getPlayerAccount(cid).."'")
end

[/i]

vá em data/talkactions/talkactions.xml e adicione as seguintes tags.

<!-- Premium Points System -->
<talkaction log="yes" words="!getpoints;/getpoints" access="6" event="script" value="GetPoints.lua" />
<talkaction log="yes" words="!addpoints;/addpoints" access="6" event="script" value="AddPoints.lua" />
<talkaction log="yes" words="!removepoints;/removepoints" access="6" event="script" value="RemovePoints.lua" />
<talkaction words="!points" event="script" value="SelfGetPoints.lua" />



vá em data/talkactions/scripts e crie um novo arquivo com o seguinte nome AddPoints.lua

function onSay(cid, words, param, channel)
local split = param:explode(",")
local name, count = split[1], tonumber(split[2])
pid = getPlayerByNameWildcard(name)
if (not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player " .. param .. " is not currently online.")
return TRUE
end
if not(split[2]) then
return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "The commands requires 2 parameters: character name, amount")
end
if not(count) then
print(count)
return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Numeric parameter required.")
end
doAccountAddPoints(cid, count)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "" .. count .. " premium points were added to " .. getCreatureName(pid) .. "\'s Account.")
return true
end



vá em data/talkactions/script e crie um arquivo com o seguinte nome GetPoints.lua

function onSay(cid, words, param, channel)
local pid = 0
if(param == '') then
pid = getCreatureTarget(cid)
if(pid == 0) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command param required.")
return TRUE
end
else
pid = getPlayerByNameWildcard(param)
end
if (not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player " .. param .. " is not currently online.")
return TRUE
end
if isPlayer(pid) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "" .. getCreatureName(pid) .. "\'s Account has " .. getAccountPoints(cid) .. " premium points.")
return TRUE
end
return TRUE
end



vá em data/talkactions/script e crie um arquivo com o seguinte nome RemovePoints.lua

function onSay(cid, words, param, channel)
local split = param:explode(",")
local name, count = split[1], tonumber(split[2])
local points = getAccountPoints(cid)
pid = getPlayerByNameWildcard(name)
if (not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player " .. param .. " is not currently online.")
return TRUE
end
if not(split[2]) then
return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "The commands requires 2 parameters: character name, amount")
end
if not(count) then
print(count)
return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Numeric parameter required.")
end
if (points <= 0) then
return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "" .. getCreatureName(pid) .. "\'s Account has 0 premium points.")
end
doAccountRemovePoints(cid, count)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "" .. count .. " premium points were deleted from " .. getCreatureName(pid) .. "\'s Account.")
return true
end



vá em data/creaturescripts/scripts e crie um novo arquivo com o nome SelfGetPoints.lua

function onLogin(cid)
if isPlayer(cid) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your Account has " .. getAccountPoints(cid) .. " premium points.")
end
return TRUE
end



declare ele no creaturescripts.xml

<event type="login" name="GetPoints" event="script" value="getpoints.lua" />



#Scripts

aqui está um exemplo de talkaction para mudar o sexo do personagem usando o sistema de points.

local config = {
costPremiumDays = 2
}

function onSay(cid, words, param, channel)
if(getPlayerSex(cid) >= 2) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You cannot change your gender.")
return
end

if(getAccountPoints(cid) < config.costPremiumDays) then
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Sorry, not enough Premium Points - changing gender costs " .. config.costPremiumDays .. " Premium Points.")
doSendMagicEffect(getThingPosition(cid), CONST_ME_POFF)
return
end

if(getAccountPoints(cid) >= config.costPremiumDays) then
doRemovePoints(cid, -config.costPremiumDays)
end

local c = {
{3, 1, false, 6, 1},
{3, 2, false, 6, 2},
{6, 1, false, 3, 1},
{6, 2, false, 3, 2}
}
for i = 1, #c do
if canPlayerWearOutfitId(cid, c[i][1], c[i][2]) then
doPlayerRemoveOutfitId(cid, c[i][1], c[i][2])
c[i][3] = true
end
end

doPlayerSetSex(cid, getPlayerSex(cid) == PLAYERSEX_FEMALE and PLAYERSEX_MALE or PLAYERSEX_FEMALE)
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have changed your gender and lost " .. config.costPremiumDays .. " days of premium time.")
doSendMagicEffect(getThingPosition(cid), CONST_ME_MAGIC_RED)

for i = 1, #c do
if c[i][3] == true then
doPlayerAddOutfitId(cid, c[i][4], c[i][5])
end
end

return true
end



Aqui está um npc ( aconselho usar ele para vender seus itens vips )

local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}

function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
function onThink() npcHandler:onThink() end

function creatureSayCallback(cid, type, msg)
if(not npcHandler:isFocused(cid)) then
return false
end

local bootsid = 1455
local bootscost = 15

local ringid = 2145
local ringcost = 5

local bladeid = 12610
local bladecost = 20


local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid

if(msgcontains(msg, 'vip boots') or msgcontains(msg, 'boots')) then
selfSay('Do you want to buy Vip Boots fo '.. bootscost ..' premium points?', cid)
talkState[talkUser] = 1
elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then
if(getAccountPoints(cid) >= bootscost) then
if(doAccountRemovePoints(cid, bootscost) == TRUE) then
doPlayerAddItem(cid, bootsid)
selfSay('Here you are.', cid)
else
selfSay('Sorry, you don\'t have enough gold.', cid)
end
else
selfSay('Sorry, you don\'t have the item.', cid)
end
talkState[talkUser] = 0
elseif(msgcontains(msg, 'no') and isInArray({1}, talkState[talkUser]) == TRUE) then
talkState[talkUser] = 0
selfSay('Ok then.', cid)

elseif(msgcontains(msg, 'blade of corruption') or msgcontains(msg, 'blade')) then
selfSay('Do you want to buy blade of corruption for '.. bladecost ..' premium points?', cid)
talkState[talkUser] = 2
elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 2) then
if(getAccountPoints(cid) >= bladecost) then
if(doAccountRemovePoints(cid, bladecost) == TRUE) then
doPlayerAddItem(cid, bladeid)
selfSay('Here you are.', cid)
else
selfSay('Sorry, you don\'t have enough points!.', cid)
end
end
talkState[talkUser] = 0
elseif(msgcontains(msg, 'no') and isInArray({1}, talkState[talkUser]) == TRUE) then
talkState[talkUser] = 0
selfSay('Ok then.', cid)

elseif(msgcontains(msg, 'expring') or msgcontains(msg, 'ring')) then
selfSay('Do you want to buy exp ring for '.. ringcost ..' premium points?', cid)
talkState[talkUser] = 2
elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 2) then
if(getAccountPoints(cid) >= ringcost) then
if(doAccountRemovePoints(cid, ringcost) == TRUE) then
doPlayerAddItem(cid, ringid)
selfSay('Here you are.', cid)
else
selfSay('Sorry, you don\'t have enough gold.', cid)
end
end
talkState[talkUser] = 0
elseif(msgcontains(msg, 'no') and isInArray({1}, talkState[talkUser]) == TRUE) then
talkState[talkUser] = 0
selfSay('Ok then.', cid)
end

return true
end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())



npc.xml

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Donator" script="donator.lua" walkinterval="0" floorchange="0" speed="900">
<health now="150" max="150"/>
<look type="131" head="19" body="19" legs="19" feet="19"/>
<interaction range="3" idletime="60">
<interact keywords="hi" focus="1">
<keywords>hello</keywords>
<response text="Hey there, I sell items only to Donators! To Donate check website or ask Server Staff.">
<action name="idle" value="1"/>
</response>
</interact>
<interact keywords="bye" focus="0">
<keywords>farewell</keywords>
<response text="Good bye."/>
</interact>
</interaction>
</npc>



script made by Vodkart

npc por trade say

local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
function onThink() npcHandler:onThink() end
function creatureSayCallback(cid, type, msg)
if(not npcHandler:isFocused(cid)) then
return false
end
local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid
-- ["nome do item"] = {Qntos pontos vao custar, id do item}
local t = {
["boots of haste"] = {15, 2195}, --
["demon helmet"] = {25, 2493},
["frozen starlight"] = {30, 2361},
["royal crossbow"] = {20, 8851},
["solar axe"] = {30, 8925},
["soft boots"] = {50, 2640},
["demon armor"] = {100, 2494},
["firewalker boots"] = {50, 9932},
["magic plate armor"] = {70, 2472},
["flame blade"] = {100, 8931}
}
if (msgcontains(msg, 'trade') or msgcontains(msg, 'TRADE'))then
local str = ""
str = str .. "Eu vendo estes items: "
for name, pos in pairs(t) do
str = str.." {"..name.."} = "..pos[1].." Points/"
end
str = str .. "."
npcHandler:say(str, cid)
elseif t[msg] then
if (doAccountRemovePoints(cid, t[msg][1]) == TRUE) then
doPlayerAddItem(cid,t[msg][2],1)
npcHandler:say("Aqui está seu ".. getItemNameById(t[msg][2]) .."!", cid)
else
npcHandler:say("você não tem "..t[msg][1].." Points", cid)
end
end
return TRUE
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())



npc por trade

local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
function onThink() npcHandler:onThink() end
function creatureSayCallback(cid, type, msg)
if(not npcHandler:isFocused(cid)) then
return false
end
local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid
local shopWindow = {}
local t = {
[2195] = {price = 15},
[2493] = {price = 25},
[2361] = {price = 30},
[8851] = {price = 20},
[8925] = {price = 30},
[2640] = {price = 50},
[2494] = {price = 100},
[9932] = {price = 50},
[2472] = {price = 70},
[8931] = {price = 48}
}
local onBuy = function(cid, item, subType, amount, ignoreCap, inBackpacks)
if t[item] and getAccountPoints(cid) < t[item].price then
selfSay("You dont have "..t[item].price.." points", cid)
else
doPlayerAddItem(cid, item)
doAccountRemovePoints(cid, t[item].price)
selfSay("Here is you item!", cid)
end
return true
end
if (msgcontains(msg, 'trade') or msgcontains(msg, 'TRADE'))then
for var, ret in pairs(t) do
table.insert(shopWindow, {id = var, subType = 0, buy = ret.price, sell = 0, name = getItemNameById(var)})
end
openShopWindow(cid, shopWindow, onBuy, onSell)
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())



é só isso!

créditos:
LucasOlzon
Beeki XTibia
Vodkart

@Edit

adicionado scripts by Vodkart.

Edited by Bennyyw
Link to post
Share on other sites

Quais foram os créditos do: LucasOlzon nesse script? Ele que fez e você apenas postou? Só para ficar claro...

Rep+ pelo script que eu não testei ainda, mas parece estar tudo nos seus conformes, ainda mais eu gostei da parte que dá para mudar de sexo usando points, pois ás vezes eles vendem isso no site, ou seja, vai ajudar os servidores que não tem site ou para ter um melhor RPG.

Link to post
Share on other sites

podia ter feito isso tudo num Mod.

O npc ta bem feio.

Nem tabelas ele tem, o script é bom porém algumas partes ele deveria ter melhorado e poderia reduzir bem mais o código ;D

2 espertos, por que não fazem isso ao em vez de só vim falar mal do script? :)

Link to post
Share on other sites

2 npc de presente:

 

por trade

 

local keywordHandler = KeywordHandler:new() 
local npcHandler = NpcHandler:new(keywordHandler) 
NpcSystem.parseParameters(npcHandler) 
local talkState = {}
function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end 
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end 
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end 
function onThink() npcHandler:onThink() end 
function creatureSayCallback(cid, type, msg) 
if(not npcHandler:isFocused(cid)) then 
return false 
end 
local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid
local shopWindow = {}
local t = {
     [2195] = {price = 15},
     [2493] = {price = 25},
     [2361] = {price = 30},
     [8851] = {price = 20},
     [8925] = {price = 30},
     [2640] = {price = 50},
     [2494] = {price = 100},
     [9932] = {price = 50},
     [2472] = {price = 70},
     [8931] = {price = 48}
     }
local onBuy = function(cid, item, subType, amount, ignoreCap, inBackpacks)
   if t[item] and getAccountPoints(cid) < t[item].price then
        selfSay("You dont have "..t[item].price.." points", cid)
        else
       doPlayerAddItem(cid, item)
       doAccountRemovePoints(cid, t[item].price)
       selfSay("Here is you item!", cid)
      end
   return true
end
if (msgcontains(msg, 'trade') or msgcontains(msg, 'TRADE'))then
           for var, ret in pairs(t) do
                   table.insert(shopWindow, {id = var, subType = 0, buy = ret.price, sell = 0, name = getItemNameById(var)})
               end
           openShopWindow(cid, shopWindow, onBuy, onSell)
       end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) 
npcHandler:addModule(FocusModule:new())

 

 

por trade say

 

local keywordHandler = KeywordHandler:new() 
local npcHandler = NpcHandler:new(keywordHandler) 
NpcSystem.parseParameters(npcHandler) 
local talkState = {} 
function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end 
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end 
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end 
function onThink() npcHandler:onThink() end 
function creatureSayCallback(cid, type, msg) 
if(not npcHandler:isFocused(cid)) then 
return false 
end 
local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid

-- ["nome do item"] = {Qntos pontos vao custar, id do item}

local t = {
     ["boots of haste"] = {15, 2195}, --
     ["demon helmet"] = {25, 2493},
     ["frozen starlight"] = {30, 2361},
     ["royal crossbow"] = {20, 8851},
     ["solar axe"] = {30, 8925},
     ["soft boots"] = {50, 2640},
     ["demon armor"] = {100, 2494},
     ["firewalker boots"] = {50, 9932},
     ["magic plate armor"] = {70, 2472},
     ["flame blade"] = {100, 8931}
     }

if (msgcontains(msg, 'trade') or msgcontains(msg, 'TRADE'))then
local str = ""
str = str .. "Eu vendo estes items: "
for name, pos in pairs(t) do
str = str.." {"..name.."} = "..pos[1].." Points/"
end
str = str .. "." 
npcHandler:say(str, cid)
elseif t[msg] then
       if (doAccountRemovePoints(cid, t[msg][1]) == TRUE) then
           doPlayerAddItem(cid,t[msg][2],1)
           npcHandler:say("Aqui está seu ".. getItemNameById(t[msg][2]) .."!", cid)
       else
           npcHandler:say("você não tem "..t[msg][1].." Points", cid)
       end
end 
return TRUE 
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) 
npcHandler:addModule(FocusModule:new())

 

 

 

abraços

Link to post
Share on other sites

Eu faço sim se quiser sim.

Só apenas estou dizendo como muitos scripter irão dizer que o script dá para ser melhorado.

 

Já o que o subwat disse fazer em mod, ficaria bom.. mas o código ficaria grande.

 

criticar o Trabalho do LucasOlzon é faciinho, quero ver você fazer melhor do que ele e postar pra a galera, até

Link to post
Share on other sites

Eu faço sim se quiser sim.

Só apenas estou dizendo como muitos scripter irão dizer que o script dá para ser melhorado.

 

Já o que o subwat disse fazer em mod, ficaria bom.. mas o código ficaria grande.

 

criticar o Trabalho do LucasOlzon é faciinho, quero ver você fazer melhor do que ele e postar pra a galera, até

 

 

MU1T4 TR3T4

 

MU1T4 TR3T4

 

MU1T4 TR3T4

 

Ótimo script ;D

Não vou testar (assim como não testo nenhum), mas ficou bem estiloso u.u

Bom que ainda dá pra controlar os pontos por site rs

Abraços.

Link to post
Share on other sites

Contribuição bem legal para os donos de servidores sem site que além de tudo pensam em lucrar com Open Tibia.

 

Mas, como relatado aqui, o código do NPC do tal LucasOlzon está muito simplista e adicionar mais de cinco itens diferentes já tornaria o código em um amontoado maçante e macarrônico.

 

Ele poderia ter usado muito bem tabelas para simplificar o código e apenas uma sintaxe relacionando a tabela. Não tiro os créditos pela funcionalidade, mas o código não está bom e eu como scripter não posso simplesmente sorrir e falar "Ai que lindo amiguh, tá muito daora rep+"

Edited by Oneshot
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.


    Administrador |  Diretor |  Coordenador |  Moderador |  Suporter |  Estagiário |  Herói
  • Similar Content

    • By thloko
      Versão do Servidor: TFS - 1.0 Tipo de Script: actions Código: Fala ae galera, tudo bem ?
       
      Gostaria de permitir o uso da habilidade do pokemon como Surf, ride, fly, apenas se o player tiver passado de determinado ginásio, vinculando assim o uso da abilidade com a insígnia adiquirida. Retirando o vip como obrigatório.
      Alguém sabe onde consigo adicionar o script ou mesmo a linha de checagem (acho que é o mais provável) para que isso seja possível ?
       
      Acredito que eu tenha que add a checagem no script abaixo.
      Se puderem da uma força, agradeço.
      Abraço !
    • By Pluzetti
      Oi gente, eu estou precisando de um sisteminha, ele é legal em teoria, seria assim:
       
      No tibia existe uma espécie de graveto que normalmente é colocado no mapa pra enfeite, basicamente seria assim, voce colher 5 desses graveto, achar uma das pedras configuradas no script, por os graveto no chao, e começar usar a pedra nos graveto, tendo a chance de nao ascender o fogo, saindo um efeito de CONST_ME_POFF e um texto animado Fail. Caso ascenda irá fazer um efeito de sucesso...O fogo ficaria 7 segundos asceso, saindo um texto animado queimando, e em baixo do fogo saindo um efeito vermelho, como se fosse as brasas. Depois que o fogo apagar o texto para de sair e aparece para o player que o fogo apagou, Nisso o graveto some do chao, e só volta aparecer em suas posicões 30 minutos depois. < {opcional}.
       
       
      caso alguem possa ajudar, serei muito grato.
       
       
       
       
      Obrigado
    • By olddies
      Classicot Abit Special Server Never Seen.

      Classicot is a server based on the leaked CipSoft files from 2006 version 7.70 that means we are using the exact formulas as original Tibia doe’s but with some modification's to the spells, runes and vocation's to fit the old system gameplay, this server is being developed since 2017 and we are there finally. We are using a completely 7.40 based server to launch Classicot 7.10, if you remember what was the gameplay between 7.10 and 7.40 the difference is only Visual, Game Mechanics and Map also the skull's system didn't exist in that version but we keep them here to maintain the fair gameplay, as mentioned before we are using the official tracked CipSoft map from 7.40 and downgraded to 7.10, removed level door's, edited the map to look like it was back in 7.10, we invite you and your friend*'s to play this first edition of Classicot Launching this October 16!!

      [Launching 2 Server's]
       Antica, located in America (South) with regular PvP combat  Lunara, located in Germany with regular PvP combat

      [Server Information]:
      Version: 7.10
      Port: 7171
      Map: Original Map 7.10
      Support: Directx9 & OpenGL
      Shared Party Experience (Premium only)
      Anti-Bot System
      Houses: 100%
      Spawns: 100%
      NPC's: 100%
      Quests: 100%
      Tasks: No!

      [Server Rates]:
      Exp: 1x
      Skill: 1x
      Magic: 1x
      Loot: 1x
      Regeneration: 1x

      [Gameplay]:
      -Promotion lowered to (10k)
      -Properly oldchool UHTrap
      -Monster's No diagonal pathing
      -Monster's No run away on low hp
      -Monster's Always attempt to attack in melee range
      -Monster's Cant cross fields if they are not immune to them
      -Monster's Strong creatures didnt kill weaker creatures on the way
      -Monster's No retargetting

      [Cheating]:
      Cheating is strictly forbidden under the threat of deletion of all accounts that belong to, or are played by, the offender.
      Keep in mind that you are supposed to play the game yourself, not to have a tool or program play it for you. Doing so gives you an unfair advantage over players who invest time and effort to gain power. Using unofficial software such as a macro program or a so-called "tasker" or "bot" to automatically execute actions in Classicot for you may lead to a punishment. Thus, play fair. It is allowed to have only 1 character online at a time ( No MC )

      [Old items!]
      All the old items exist and they are completely identical to what they used to be in version 7.10 of Tibia.
      Amulet of Life is the replacement of amulet of loss with blessings ( wich cost 75k )
      [Old creatures!]
      All creatues are completely identical to how they used to be in version 7.10 of Tibia.
      Creatures will behave as they used to do, formulas are the same and the loot dropped by creatures are accurate!

      [Old runes and spells!]
      Runes can be conjured by players x1 and bought from other players.
      Spells can be used by reaching a certain required magic level for a specific spell.

      Account creation is open now!!
      Create Your Account Here!
    • By xGabriiel
      Outora Server [8.60 | 24 Horas | Global]!
       
      Crie sua conta e ganhe 5 dias VIP e Full Outfit Citizen ~> CUPOM: FORUM%10 ~> Cique aqui ou copie e cole a URL abaixo.
      https://www.outora.io/?subtopic=create_account
       
      Servidor Global na versão 8.60 | 24 Horas

      Rate:
      Exp Rate 80x
      Skill Rate 15x
      Magic Rate 5x
      Loot Rate 2x
       
      Informações:
      Contamos uma mega estrutura.
      Trap hunt proibido.
      Mega proteção contra ataques DDoS e outros.
      NPC Outora Event (lista de itens), participe dos eventos; ganhe coins e troque por itens!
      Eventos automáticos (horário dos eventos) e diariamente executados;
       
      Quests:
      Annihilator Quest;
      The Demon Oak;
      Wrath of the Emperor;
      Svargrond;
      Zao Arena;
       
      Sistemas novos:
      Loot Channel - !lootchannel [on] | [off] | [both];
      Monstros do dia - Extra Loot e Exp -> (info);
      Hunted System (info);
      Addon System (info);
      Raids System (info);
      Cast System (info);
      Task System (info);
      Private War (info);
      Guild War c/ emblemas (info);
       
      Eventos (calendário)
      Battlefield;
      Snowball War;
      Firestorm;
      Castle of King;
       
      Novos itens e exclusivos do Outora Server.
      Para maiores informações acesse as Informações do Server | Lista de Comandos.
       
      Chame seus amigos e sua guild, junte-se a nós!
       
      Criar conta: https://www.outora.io/?subtopic=create_account
       
      Divirta-se!
      Equipe Outora.



×
×
  • Create New...