Ir para conteúdo

[TFS 0.3.6/0.4] GuildWar - Anti Entrosa


Posts Recomendados

iVSIY9Z.jpg

 

Fala galerinha, tudo bom? Então, hoje venho compartilhar um sistema que fiz a dois anos atrás, uma GuildWar (CityWar) - Anti Entrosa.  Bom, caso alguém não conheça, basicamente é o seguinte: Uma batalha entre duas guildas, onde é estipulado o número máximo de mortes e um tempo, quem estiver com o maior número de mortes até o final do tempo ou quem alcançar todos os abates, ganha.  Ela é Anti - Entrosa porque acontece em cidades específicas e ninguém de fora terá acesso de entrar. Ela conta também com alguns módulos de batalhas diferentes, sendo eles: Tradicional (ou seja, vale tudo), sem UE (não é permitido magias em área) e só SD rune (ou seja, nesta guerra os magos só poderão utilizar a Sudden Death Rune). Você é livre para escolher entre quatro tempos de duração e consequentemente, cada um terá valores diferentes, porém, será possível adicionar mais, remover e/ou editar. 

 

A configuração do sistema é super fácil e auto explicativa, segue abaixo.

CityWar_Configurations = {
	Players_Mode = {min = 5, max = 50},
	TimePrice_Mode = {[15] = 50000, [30] = 75000, [60] = 90000, [120] = 120000},
	War_Mode = {
		["tradicional, padrao, normal, 1"] = 1, 
		["sem ue, semue, 2"] = 2,
		["sosd, apenas sd, só sd, soh sd, 3"] = 3;
	},
	Maps_Mode = {
		["grendor"] = {teamA = {x = 32052, y = 33809, z = 6}, teamB = {x = 32172, y = 33784, z = 5}},
		["darashia"] = {teamA = {x = 32859, y = 34023, z = 8}, teamB = {x = 32935, y = 34044, z = 6}},
		["thais"] = {teamA = {x = 32514, y = 33722, z = 7}, teamB = {x = 32479, y = 33681, z = 7}},
		["carlin"] = {teamA = {x = 32441, y = 33527, z = 7}, teamB = {x = 32503, y = 33506, z = 7}},
		["fibula"] = {teamA = {x = 32309, y = 33886, z = 7}, teamB = {x = 32356, y = 33956, z = 6}},
		["edron"] = {teamA = {x = 33038, y = 33663, z = 7}, teamB = {x = 32969, y = 33541, z = 6}},
		["new island"] = {teamA = {x = 32573, y = 34007, z = 7}, teamB = {x = 32496, y = 33949, z = 6}},
		["venore"] = {teamA = {x = 32820, y = 33606, z = 7}, teamB = {x = 32725, y = 33629, z = 7}};
	}
}

 

Bom, esse é meu primeiro post de estreia à colaboração do Eks e a minha volta ao Open Tibia. Espero que gostem e façam um ótimo proveito. É nós galera! ❤️

[TonyAraújo] CityWar.zip

Editado por Tony Araujo
Link para o comentário
Compartilhar em outros sites

  • 5 weeks later...

please  table mysql

 

INSERT INTO `city_war` (`GuildName_A`, `GuildFrags_A`, `GuildName_B`, `GuildFrags_B`, `War_Time`, `War_Map`, `War_Mode`, `War_PlayersLimit`, `War_Status`, `War_DateEnd`)

 

and comand exemple?

Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...

ae, deu o seguinte erro, tem como ajudar?

[20:49:05.048] mysql_real_query(): INSERT INTO `city_war` (`GuildName_A`, `GuildFrags_A`, `GuildName_B`, `GuildFrags_B`, `War_Time`, `War_Map`, `War_Mode`, `War_PlayersLimit`, `War_Status`, `War_DateEnd`) VALUES (Testee, 0, Teste, 0, 30, edron, 2, 10, 1, 1533584945); - MYSQL ERROR: Unknown column 'Testee' in 'field list' (1054)

[20:49:15.528] [Error - TalkAction Interface] 
[20:49:15.528] data/talkactions/scripts/citywar_talkaction.lua:onSay
[20:49:15.528] Description: 
[20:49:15.528] (internalGetPlayerInfo) Player not found when requesting player info #15

[20:49:15.528] [Error - TalkAction Interface] 
[20:49:15.528] data/talkactions/scripts/citywar_talkaction.lua:onSay
[20:49:15.528] Description: 
[20:49:15.528] data/lib/citywar_lib.lua:106: attempt to compare number with boolean
[20:49:15.528] stack traceback:
[20:49:15.528]  data/lib/citywar_lib.lua:106: in function 'accept'
[20:49:15.528]  data/talkactions/scripts/citywar_talkaction.lua:7: in function <data/talkactions/scripts/citywar_talkaction.lua:1>

 

Minha table:

 

CREATE TABLE IF NOT EXISTS `city_war` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`GuildFrags_A` int(11) NOT NULL,
`GuildFrags_B` int(11) NOT NULL,
`GuildName_A` varchar(255) NOT NULL,
`GuildName_B` varchar(255) NOT NULL,
`War_Time` int(11) NOT NULL,
`War_Mode` int(11) NOT NULL,
`War_Map` int(11) NOT NULL,
`War_PlayersLimit` int(11) NOT NULL,
`War_DateEnd` BIGINT NOT NULL DEFAULT '0',
`War_Status` TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `id` (`id`),
KEY `War_Status` (`War_Status`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;

 

Editado por Billihard
Link para o comentário
Compartilhar em outros sites

  • 1 year later...
Em 29/05/2018 em 09:37, Tony Araujo disse:

iVSIY9Z.jpg

 

Fala galerinha, tudo bom? Então, hoje venho compartilhar um sistema que fiz a dois anos atrás, uma GuildWar (CityWar) - Anti Entrosa.  Bom, caso alguém não conheça, basicamente é o seguinte: Uma batalha entre duas guildas, onde é estipulado o número máximo de mortes e um tempo, quem estiver com o maior número de mortes até o final do tempo ou quem alcançar todos os abates, ganha.  Ela é Anti - Entrosa porque acontece em cidades específicas e ninguém de fora terá acesso de entrar. Ela conta também com alguns módulos de batalhas diferentes, sendo eles: Tradicional (ou seja, vale tudo), sem UE (não é permitido magias em área) e só SD rune (ou seja, nesta guerra os magos só poderão utilizar a Sudden Death Rune). Você é livre para escolher entre quatro tempos de duração e consequentemente, cada um terá valores diferentes, porém, será possível adicionar mais, remover e/ou editar. 

 

A configuração do sistema é super fácil e auto explicativa, segue abaixo.


CityWar_Configurations = {
	Players_Mode = {min = 5, max = 50},
	TimePrice_Mode = {[15] = 50000, [30] = 75000, [60] = 90000, [120] = 120000},
	War_Mode = {
		["tradicional, padrao, normal, 1"] = 1, 
		["sem ue, semue, 2"] = 2,
		["sosd, apenas sd, só sd, soh sd, 3"] = 3;
	},
	Maps_Mode = {
		["grendor"] = {teamA = {x = 32052, y = 33809, z = 6}, teamB = {x = 32172, y = 33784, z = 5}},
		["darashia"] = {teamA = {x = 32859, y = 34023, z = 8}, teamB = {x = 32935, y = 34044, z = 6}},
		["thais"] = {teamA = {x = 32514, y = 33722, z = 7}, teamB = {x = 32479, y = 33681, z = 7}},
		["carlin"] = {teamA = {x = 32441, y = 33527, z = 7}, teamB = {x = 32503, y = 33506, z = 7}},
		["fibula"] = {teamA = {x = 32309, y = 33886, z = 7}, teamB = {x = 32356, y = 33956, z = 6}},
		["edron"] = {teamA = {x = 33038, y = 33663, z = 7}, teamB = {x = 32969, y = 33541, z = 6}},
		["new island"] = {teamA = {x = 32573, y = 34007, z = 7}, teamB = {x = 32496, y = 33949, z = 6}},
		["venore"] = {teamA = {x = 32820, y = 33606, z = 7}, teamB = {x = 32725, y = 33629, z = 7}};
	}
}

 

Bom, esse é meu primeiro post de estreia à colaboração do Eks e a minha volta ao Open Tibia. Espero que gostem e façam um ótimo proveito. É nós galera! ❤️

[TonyAraújo] CityWar.zip 8 kB · 48 downloads

 

Bro u can show the dates to create the correct table mysql please?

Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...

Solução para o error na database.

CREATE TABLE IF NOT EXISTS `city_war` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `GuildName_A` varchar(255) NOT NULL,
  `GuildFrags_A` tinyint(4) unsigned NOT NULL DEFAULT '0',
  `GuildName_B` varchar(255) NOT NULL,
  `GuildFrags_B` tinyint(4) unsigned NOT NULL DEFAULT '0',
  `War_Time` int(11) NOT NULL DEFAULT '0',
  `War_Map` varchar(255) NOT NULL,
  `War_Mode` int(11) NOT NULL DEFAULT '0',
  `War_PlayersLimit` int(11) NOT NULL DEFAULT '0',
  `War_Status` int(11) NOT NULL DEFAULT '0',
  `War_DateEnd` int(11) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

Depois vá em data/libs/citywar_lib.lua

Linha 275.

	doBroadcastMessage("[City War]\n" .. war.challengerGuildName .. " convidou a guild " .. war.challengedGuildName .. "\nA guerra sera na cidade de " .. war.city .. "\nSerao " .. war.players .. " jogadores para cada time. \nSerao " .. war.time .. " minutos de guerra.\nO Lider da guild tem 5 minutos para aceitar o convite.\nDigite: !citywar accept")
	db.executeQuery("INSERT INTO `city_war` (`id`, `GuildName_A`, `GuildFrags_A`, `GuildName_B`, `GuildFrags_B`, `War_Time`, `War_Map`, `War_Mode`, `War_PlayersLimit`, `War_Status`, `War_DateEnd`) VALUES ('0','" .. war.challengerGuildName .. "', '0', '" .. war.challengedGuildName .. "', '0', '" .. war.time .. "', '" .. war.city .. "', '" .. war.mode .. "', '" .. war.players .. "', '1', '" .. os.time() + (war.time * 60 * 1000) .. "');")
	return setmetatable(war, {__index = self}, addEvent(CityWar.checkWar, 5 * 60 * 1000, war.city))

Só modificar.

 

Agora o error no script não consegui resolver ainda. Na hora que aceita ele gera um erro na chamada a função "accept".

 

Digite: !citywar accept".

[0:44:15.961] [Error - TalkAction Interface] 
[0:44:15.961] data/talkactions/scripts/citywar_talkaction.lua:onSay
[0:44:15.962] Description: 
[0:44:15.962] (internalGetPlayerInfo) Player not found when requesting player info #11

[0:44:15.962] [Error - TalkAction Interface] 
[0:44:15.962] data/talkactions/scripts/citywar_talkaction.lua:onSay
[0:44:15.962] Description: 
[0:44:15.962] (luaDoPlayerSendTextMessage) Player not found

 

Editado por cs007
Link para o comentário
Compartilhar em outros sites

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...