[0.36~0.4] Slot Cassino

Night Wolf
em Actions e Talkactions

Night Wolf

Coordenador de Desenvolvimento
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 14/02/14Posts: 341Gênero: MasculinoChar no Tibia: Night Wolf

Olá pessoas, hoje vim trazer pra vocês um script que inicialmente fiz prum trabalho mas acabei gostando muito dele e decidi postar.
To meio que indo dormir porque daqui a pouquinho tenho aula então vai ser tudo bem rapido e se vcs tiverem alguma dúvida comentem aqui.

 

Primeiramente façam uma sala parecida com essa aqui:
Screenshot_1.png
Não precisa ser necessariamente assim, mas ela deve ter as 3 bolas, uma alavanca e um local pra botar o dinheiro pras apostas.


O sistema é baseado naqueles jogos de slot nos cassinos onde você aposta uma quantidade de dinheiro e se tirar 3 peças iguais você recebe o dobro do dinheiro apostado.

em actions/scripts crie um arquivo chamado cassino.lua e adicione o seguinte dentro dele:
 

Spoiler
local config = {leverid = 9826, -- id da alavancatransformedid = 9825, -- id da alavanca ao clicar nelamoneyPos = {x = 146, y = 48, z = 7}, -- posicao que vai o dinheirodelay = 200, -- esse delay e o tempo que demora entre cada shuffleshuffle = 5, -- quantidade de shuffles por cada peça, lembre que a ultima peça vai rodar 3 * shuffle entao evite valores grandes)multiplier = 2, -- por quanto multiplica o dinheiro apostadoeffect = 27}local pieces = { -- POSICOES DE CADA PEÇA.	[1] = {x = 147, y = 47, z = 7},	[2] = {x = 147, y = 48, z = 7},	[3] = {x = 147, y = 49, z = 7}}local function shuffle(id, times, final, pos) -- funcao que rotaciona a peca	local item = getTileItemById(pos, id)	if item and times > 0 then				doRemoveItem(item.uid)		doCreateItem(id == 2638 and 2639 or 2638, 1, pos)		addEvent(shuffle, config.delay, id == 2638 and 2639 or 2638, times - 1, final, pos)	else 		local nid = id		if item and id ~= final then			doRemoveItem(item.uid)			doCreateItem(final, 1, pos)			nid = final		end		if times == 0 then			addEvent(shuffle, config.delay * config.shuffle * #pieces + config.delay * 10, nid, -1, 2639, pos)		end		doSendMagicEffect(pos, math.abs(final - 2638))			endendlocal function premiateWinner(uid, money, eff, result)	if isPlayer(uid) then		if result[1] == result[2] and result[2] == result[3] then			doPlayerAddMoney(uid, money)			doSendMagicEffect(getCreaturePosition(uid), eff)			doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_BLUE, "[CASSINO] You won ".. money .." gold coins. Congratulations!")		else			doSendMagicEffect(getCreaturePosition(uid), CONST_ME_POFF)			doPlayerSendTextMessage(uid, MESSAGE_STATUS_CONSOLE_BLUE, "[CASSINO] You lost. Better luck next time.")		end	endend	function onUse(cid, item, fromPosition, itemEx, toPosition)	if item.itemid == config.leverid then		local pc = getTileItemById(config.moneyPos, 2152)		local cc = getTileItemById(config.moneyPos, 2160)		local money = 0		if pc and pc.type > 0 then			money = money + pc.type * 100			doRemoveItem(pc.uid)		end		if cc and cc.type > 0 then			money = money + cc.type * 10000			doRemoveItem(cc.uid)		end		if money >= 100 then			doTransformItem(item.uid, config.transformedid)			local pos = fromPosition			addEvent(function()				local lever = getTileItemById(pos, config.transformedid)				if lever and lever.uid > 0 then					doTransformItem(lever.uid, config.leverid)				end			end, (config.delay * #pieces) * (config.shuffle + 10))			local result = {}			for i = 1, #pieces do				local id = 2639				result[i] = math.random(0, 1)				shuffle(id, config.shuffle * i, result[i] + 2638, pieces[i])			end						addEvent(premiateWinner, config.delay * #pieces * config.shuffle, cid, money * config.multiplier, config.effect, result)		else			doPlayerSendCancel(cid, "You need to place your offer. The minimum offer is 1 platinum coin.")		end	else		doPlayerSendCancel(cid, "You need to wait the turn end to bet again.")	end	return trueend

 


Agora em data/actions/actions.xml adicione:

<action actionid="16541" script="cassino.lua"/>


Agora só botar a actionid na lever e configurar tudo de acordo com seu sv (as posições ali em pieces são as posições de cada peça, ou cada bola, se preferir.)
se quiser fazer várias salas é só copiar o código pra um cassino2.lua e registrar outra tag
<action actionid="16542" script="cassino2.lua"/>;

Tá tudo comentado no código então acho que dispensa uma explicação formal de como editar, espero que vocês gostem e se alguém quiser/puder grave um gif/video do sistema e me manda que eu edito o tópico. Abraços do Lobo!
 

Screenshot_1.png.cdda89f5e90888850e003df08e9142a2.png

I9AtE9T.png
/NW

Deadpool

!!!
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 25/10/11Posts: 2175Gênero: MasculinoChar no Tibia: Sociopata

É um ótimo sistema. Quando eu instalar, caso dê algum ou mais erros, estarei informando aqui. Muito bom.

Não respondo PMs solicitando suporte. Já existem seções no fórum para isto.

 

 

 

 

DICA

Utilize botão @UP, no início de seu tópico, para atualizar o destaque de seu tópico em "Tópicos Recentes" na index, fará com que mais pessoas o vejam.

Administrador

xTibia 2017
avatar
Administrador
Administrador

INFOS

Grupo: AdministradorRegistrado: 09/07/05Posts: 5780Gênero: Outro

Gostei lobo, o sistema está bem simples.

 

Brincadeira, valeu pela contribuição, ótimo código!

DICA

Utilize botão @UP, no início de seu tópico, para atualizar o destaque de seu tópico em "Tópicos Recentes" na index, fará com que mais pessoas o vejam.

 

 

Poccnn

Enquanto houver armas no mundo, haverá guerra!
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 07/03/16Posts: 1418Gênero: Masculino
10 horas atrás, Night Wolf disse:

...mas ela deve ter as 3 bolas, uma alavanca...

Que bolas? Eu não estou vendo elas. Kkkkk brincadeira.

É muito simples e bem parecido com os cassinos que existiam.

"Deus é amor, mas matou 99,99999% de todos os seres viventes do mundo com o diluvio.

Deus é misericórdia, mas condena as pessoas ao tormento eterno do inferno.

Deus é pai, mas abandonou seus filhos a servidão.

Deus é vida, mas condenou a humanidade a morte.

Deus é o senhor. Senhor das guerras, da morte, do ódio.

 

Ninguém que ame a humanidade, mataria 99,99999% da população, não só de humanos, bem como dos demais animais, por amor. Isso não é amor, é doença, psicose de um sádico que gosta de ver sua 'criação' sofrer e ainda quer 'pagar' de misericordioso, de deus amor.

 

Não quero seu amor; não quero sua misericórdia, não quero ser seu filho, não quero sua vida, não quero que seja meu senhor.

Tu és um psicótico, doente, hipócrita, assassino; não me venha querer se passar por bondoso, amoroso, misericordioso."

Caronte

Ex-Moderador de Scripting
avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 25/09/10Posts: 1341Gênero: Masculino

Pô lobo, gostei do sistema, porém não sei se é bom pros players ganharem dinheiro nele. Pois é 50% * 50% * 50% , o que dá em 12,5% né? é muito pouca chance de ganhar, eu não apostaria minha grana aí hauashusauhsa. Mas por outro lado, o que eu fiz, aquele outro do cassino:

 

Dá grana fácil, talvez, pois é 50%, mas dá para perder também, acho que o ideal seria 30 ou 40% de chance de ganhar, não sei. No seu seria legal reduzir o dinheiro pela metade ao invés de perder.

 

Você não tem permissão para dar reputação a este usuário.

Night Wolf

Coordenador de Desenvolvimento
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 14/02/14Posts: 341Gênero: MasculinoChar no Tibia: Night Wolf

a idéia não é dar dinheiro de graça e quebrar a economia do server. É ser um jogo de azar, sem falar que há diversas maneiras de lucrar em cassinos. Uma das técnicas é sempre apostar o dobro quando perder:

aposto 100 gps - se eu ganho, ganho 200 gps (100 gps de lucro)
se eu perco, aposto 200 gps  - se eu ganho ganho 400 gps (100 gps de lucro)
se eu perco, aposto 400 gps - se eu ganho, ganho 800 gps (100 gps de lucro)
.
.
.
se eu perco, aposto 2 * a antiga aposta, se eu ganho, ganho 4 * a antiga aposta (4 * antiga aposta - todas as apostas anteriores de lucro).

PS: Sem falar que sua conta tá errada, vc ganha com 3 X ou 3 O, logo não seria 12,5%.

1 slot = qlqer coisa.
2 slot = tem que ser igual ao primeiro (50%)
3 slot = tem que ser igual ao primeiro (50%).
A chance total é 0.5 * 0.5 que é 0.25, ou 25%.

I9AtE9T.png
/NW

Bruno

Ousadia e Alegria
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 01/05/08Posts: 2571Gênero: Masculino

Anderson e suas contas bizarras kkkkk

Bom saber que ainda está ativo, curti a ideia. Parabéns!

Atenciosamente,
Bruno Minervino

 

Tibia Clients - Downloads Window

Night Wolf

Coordenador de Desenvolvimento
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 14/02/14Posts: 341Gênero: MasculinoChar no Tibia: Night Wolf

@Bruno to na ativa sempre 8): é que recentemente tenho focado mais na faculdade/meu projeto pessoal/suporte do que em trazer conteúdo próprio kk. Mas já tenho algumas coisinhas separadas aqui pra ir trazendo esse mês

I9AtE9T.png
/NW

Caronte

Ex-Moderador de Scripting
avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 25/09/10Posts: 1341Gênero: Masculino
18 horas atrás, Night Wolf disse:

PS: Sem falar que sua conta tá errada, vc ganha com 3 X ou 3 O, logo não seria 12,5%.

 

Aaaa sim, não li o script com atenção, eu achei que era só bola.

 

Em 05/10/2016 at 00:05, Night Wolf disse:

Não precisa ser necessariamente assim, mas ela deve ter as 3 bolas, uma alavanca e um local pra botar o dinheiro pras apostas.

 

Interpretação de texto errada minha.

Isso que dá ficar lendo só trechos do tópicos...

Bruno

Ousadia e Alegria
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 01/05/08Posts: 2571Gênero: Masculino
Em 06/10/2016 at 17:20, Night Wolf disse:

@Bruno to na ativa sempre 8): é que recentemente tenho focado mais na faculdade/meu projeto pessoal/suporte do que em trazer conteúdo próprio kk. Mas já tenho algumas coisinhas separadas aqui pra ir trazendo esse mês

Boa amigo :happyderp-min:

Tamo Junto!

Atenciosamente,
Bruno Minervino

 

Tibia Clients - Downloads Window

LeirbagOtten

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 07/10/16Posts: 13Gênero: Masculino

Opa, Wolf, curto pakas teus scripts, tu é foda, só isso ahueahue
Me lembro que tu tinha feito uma lib própria e postado no que não deve ser nomeado, não? Tu postou aqui ela?

Se não, pode me passar o link dele no que não deve ser nomeado? Dei uma procurada e não achei nd, e nela tem umas funções que eu tô precisando MUITO, mas que são cabeças demais para um mero mortal como eu fazer sem o processador cerebral chegar à 97 graus e dar crash na vida pq comeu toda ram.

Night Wolf

Coordenador de Desenvolvimento
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 14/02/14Posts: 341Gênero: MasculinoChar no Tibia: Night Wolf
Em 08/10/2016 at 18:36, LeirbagOtten disse:

Opa, Wolf, curto pakas teus scripts, tu é foda, só isso ahueahue

Me lembro que tu tinha feito uma lib própria e postado no que não deve ser nomeado, não? Tu postou aqui ela?

Se não, pode me passar o link dele no que não deve ser nomeado? Dei uma procurada e não achei nd, e nela tem umas funções que eu tô precisando MUITO, mas que são cabeças demais para um mero mortal como eu fazer sem o processador cerebral chegar à 97 graus e dar crash na vida pq comeu toda ram.

ahahaha ainda nao consegui tirar tempo pra trazer todos meus tópicos de lá pra cá, ainda tenho mt conteúdo novo pra trazer ;~ enfim, se vc clicar exatamente aqui voce vai ser direcionado pro link da library, qlqer dúvida me chama pm (nesse fórum aqui) que o outro eu mal tenho entrado

I9AtE9T.png
/NW

LeirbagOtten

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 07/10/16Posts: 13Gênero: Masculino
5 horas atrás, Night Wolf disse:

ahahaha ainda nao consegui tirar tempo pra trazer todos meus tópicos de lá pra cá, ainda tenho mt conteúdo novo pra trazer ;~ enfim, se vc clicar exatamente aqui voce vai ser direcionado pro link da library, qlqer dúvida me chama pm (nesse fórum aqui) que o outro eu mal tenho entrado

Era bem isso mesmo, valeu, cara =):

WieskleyLoka

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 30/05/22Posts: 1

Sim, estar a contar com a sorte para fazer dinheiro nunca é uma boa forma de planear a sua vida em geral. Pessoalmente, faço sempre questão de distinguir muito bem entre jogos, cuja principal função é divertir, de formas extra de fazer dinheiro que possa complementar o meu salário. Uma coisa é lazer, outra coisa é querer acrescentar fontes de rendimento. Especialmente importante se quiser investir o seu dinheiro em plataformas online. Nunca é demais consultar conteúdos como o do https://www.fraudes.com/, para evitar cair em burlas.  Não basta apenas ter estratégias, é preciso informaçã. É isso que faz a diferença a longo prazo.