Ir para conteúdo

Featured Replies

Postado

 

Iae Galerinha, bom eu baixei um geisor que o sekk disponibilizou, junto com uma source que o fir3 também disponibilizou aqui no forum.

TFS [0.4] o unico problema que está acontecendo é que quando um player comprar itens no site e quando o item chega na bp do player

da dois erros no exe.. como vcs podem ver "sim esse erro só acontece quando o player recebe o item, e o outro problema é que quando-

o player desloga do servidor da um duplicate uniqueid, e esse duplicate uniqueid só aparece depois que o player compra o item no site, ou seja-

se o player comprar 5 itens no site toda vez que ele desloga do servidor fica dando 5 duplicate uniqueid e isso sucessivamente podem ver que as 18:49-

eu não tinha comprado nenhum item com o char reloguei normal e não deu nenhum erro e os erros só apareceram dps que o player comprar item no site.

OBS: já executei as devidas query das devidas tabelas mas o erro persiste, já deletei as mesmas e as refiz e nada.

e esses dois erros de Z_ots_communication e z_shop_history_item, acontecem toda vez que alguem comprar o item no site.

Preciso da ajuda de vcs...

@Sekk

@Fir3element

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

Resolvido por Sekk

Ir para solução
  • Respostas 15
  • Visualizações 712
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Tenta usar esse shop.lua no server   <globalevent name="shop" interval="4000" script="shop.lua"/>  

  • Tenho a query que eu uso no meu server, mas acho melhor você checar cada coluna dessa query, por exemplo resets, cast etc... Checa os valores, e se as colunas existem na sua tabela players.  

  • O negocio da guild, vai em config.php e procura isso $config['site']['guild_need_pacc'] = 1; // guild need pacc 0 / 1 e troca por $config['site']['guild_need_pacc'] = 0; // guild need pacc

Postado

Tenta usar esse shop.lua no server

Spoiler

-- ### CONFIG ###
-- message send to player by script "type" (types you can check in "global.lua")
SHOP_MSG_TYPE = 19
-- time (in seconds) between connections to SQL database by shop script
SQL_interval = 30
-- ### END OF CONFIG ###
function onThink(interval, lastExecution)
local result_plr = db.getResult("SELECT * FROM z_ots_comunication WHERE `type` = 'login';")
if(result_plr:getID() ~= -1) then
while(true) do
id = tonumber(result_plr:getDataInt("id"))
action = tostring(result_plr:getDataString("action"))
delete = tonumber(result_plr:getDataInt("delete_it"))
cid = getCreatureByName(tostring(result_plr:getDataString("name")))
if isPlayer(cid) == TRUE then
local itemtogive_id = tonumber(result_plr:getDataInt("param1"))
local itemtogive_count = tonumber(result_plr:getDataInt("param2"))
local container_id = tonumber(result_plr:getDataInt("param3"))
local container_count = tonumber(result_plr:getDataInt("param4"))
local add_item_type = tostring(result_plr:getDataString("param5"))
local add_item_name = tostring(result_plr:getDataString("param6"))
local received_item = 0
local full_weight = 0
if add_item_type == 'container' then
container_weight = getItemWeightById(container_id, 1)
if isItemRune(itemtogive_id) == TRUE then
items_weight = container_count * getItemWeightById(itemtogive_id, 1)
else
items_weight = container_count * getItemWeightById(itemtogive_id, itemtogive_count)
end
full_weight = items_weight + container_weight
else
full_weight = getItemWeightById(itemtogive_id, itemtogive_count)
if isItemRune(itemtogive_id) == TRUE then
full_weight = getItemWeightById(itemtogive_id, 1)
else
full_weight = getItemWeightById(itemtogive_id, itemtogive_count)
end
end
local free_cap = getPlayerFreeCap(cid)
if full_weight <= free_cap then
if add_item_type == 'container' then
local new_container = doCreateItemEx(container_id, 1)
local iter = 0
while iter ~= container_count do
doAddContainerItem(new_container, itemtogive_id, itemtogive_count)
iter = iter + 1
end
received_item = doPlayerAddItemEx(cid, new_container)
else
local new_item = doCreateItemEx(itemtogive_id, itemtogive_count)
received_item = doPlayerAddItemEx(cid, new_item)
end
if received_item == RETURNVALUE_NOERROR then
doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, 'You received >> '.. add_item_name ..' << from OTS shop.')
db.query("DELETE FROM `z_ots_comunication` WHERE `id` = " .. id .. ";")
db.query("UPDATE `z_shop_history_item` SET `trans_state`='realized', `trans_real`=" .. os.time() .. " WHERE id = " .. id .. ";")
else
doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, '>> '.. add_item_name ..' << Seu item esta esperando por voce. Por favor faça o local para este item em sua mochila e aguarde '.. SQL_interval ..' segundos para obte-lo.')
end
else
doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, '>> '.. add_item_name ..' << Seu item esta esperando por voce. O peso do item e '.. full_weight ..' oz., Vc tem no momento '.. free_cap ..' oz. de capacidade livre. Coloque alguns itens no deposito e espere cerca de '.. SQL_interval ..' segundos para obte-lo.')
end
end
if not(result_plr:next()) then
break
end
end
result_plr:free()
end
return TRUE
end

 

 

<globalevent name="shop" interval="4000" script="shop.lua"/>

 

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

Postado

Tenho a query que eu uso no meu server, mas acho melhor você checar cada coluna dessa query, por exemplo resets, cast etc... Checa os valores, e se as colunas existem na sua tabela players.

 

E antes de exxecutá-las, verifique se o id da account estão sendo inseridos os players existe.

INSERT INTO `players` (`id`, `name`, `world_id`, `group_id`, `account_id`, `level`, `vocation`, `health`, `healthmax`, `experience`, `lookbody`, `lookfeet`, `lookhead`, `looklegs`, `looktype`, `lookaddons`, `maglevel`, `mana`, `manamax`, `manaspent`, `soul`, `town_id`, `posx`, `posy`, `posz`, `conditions`, `cap`, `sex`, `lastlogin`, `lastip`, `save`, `skull`, `skulltime`, `rank_id`, `guildnick`, `lastlogout`, `blessings`, `balance`, `stamina`, `direction`, `loss_experience`, `loss_mana`, `loss_skills`, `loss_containers`, `loss_items`, `premend`, `online`, `marriage`, `promotion`, `deleted`, `description`, `cast`, `castViewers`, `castDescription`, `auction_balance`, `resets`) VALUES
(1, 'Account Manager', 0, 1, 1, 8, 0, 150, 150, 4200, 0, 0, 0, 0, 302, 3, 4, 150, 150, 0, 100, 1, 10157, 10053, 7, '', 400, 0, 0, 0, 0, 0, 0, 0, '', 0, 0, 0, 201660000, 0, 100, 100, 100, 100, 100, 0, 0, 0, 0, 0, '', 0, 0, '', 0, 0),
(4, 'Rook Sample', 0, 1, 2, 8, 0, 150, 150, 4200, 0, 0, 0, 0, 110, 0, 4, 150, 150, 0, 100, 1, 10157, 10053, 7, '', 400, 0, 0, 0, 0, 0, 0, 0, '', 0, 0, 0, 201660000, 0, 100, 100, 100, 100, 100, 0, 0, 0, 0, 0, '', 0, 0, '', 0, 0),
(5, 'Sorcerer Sample', 0, 1, 2, 8, 1, 150, 150, 4200, 0, 0, 0, 0, 110, 0, 4, 150, 150, 0, 100, 1, 10157, 10053, 7, '', 400, 0, 0, 0, 0, 0, 0, 0, '', 0, 0, 0, 201660000, 0, 100, 100, 100, 100, 100, 0, 0, 0, 0, 0, '', 0, 0, '', 0, 0),
(6, 'Druid Sample', 0, 1, 2, 8, 2, 150, 150, 4200, 0, 0, 0, 0, 110, 0, 4, 150, 150, 0, 100, 1, 10157, 10053, 7, '', 400, 0, 0, 0, 0, 0, 0, 0, '', 0, 0, 0, 201660000, 0, 100, 100, 100, 100, 100, 0, 0, 0, 0, 0, '', 0, 0, '', 0, 0),
(7, 'Paladin Sample', 0, 1, 2, 8, 3, 150, 150, 4200, 0, 0, 0, 0, 110, 0, 4, 150, 150, 0, 100, 1, 10157, 10053, 7, '', 400, 0, 0, 0, 0, 0, 0, 0, '', 0, 0, 0, 201660000, 0, 100, 100, 100, 100, 100, 0, 0, 0, 0, 0, '', 0, 0, '', 0, 0),
(8, 'Knight Sample', 0, 1, 2, 8, 4, 150, 150, 4200, 0, 0, 0, 0, 110, 0, 4, 150, 150, 0, 100, 1, 10157, 10053, 7, '', 400, 0, 0, 0, 0, 0, 0, 0, '', 0, 0, 0, 201660000, 0, 100, 100, 100, 100, 100, 0, 0, 0, 0, 0, '', 0, 0, '', 0, 0);

 

Postado
  • Autor

Sekk, resolvi o erro dos samples, agora só faltam 3 "três" pequenas coisas para por online.

1- to usando o site que vc disponibilizou, Blz, mas quando um player tenta criar guild ele não consegue diz que ele não tem level, ja cheguei no config.php e no config.lua e o level requerido é 8 meu servidor é de war começa lvl 130.

2- instalei a  pagina "cast" no site só que os player que abre o cast não aparece nela, executei a query no php mas nada.

3- o último, Kkkk. SAbe aquele "demon" que fica acima da quantidade de players online? Como troca aquilo?

Obg, ja vou te encher de rap por me ajudar, mas se tu souber sobre esses últimos 3 ficarei mto grato.

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo