[TFS 0.3.6/0.4] GuildWar - Anti Entrosa

Tony Araujo

OrochiElf
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 27/02/13Posts: 446Gênero: Masculino

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

Tony Araújo :happy:

Benny

nvr gv p
avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 22/12/12Posts: 1958Gênero: MasculinoChar no Tibia: Marley

Valeu pelo conteúdo, Tony! ? 

Bom ter você conosco.

 

?

 

Tony Araujo

OrochiElf
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 27/02/13Posts: 446Gênero: Masculino
3 horas atrás, Bennyyw disse:

Valeu pelo conteúdo, Tony! ? 

Bom ter você conosco.

 

Obrigado manim, é bom estar de volta ;D

Tony Araújo :happy:

God Maya

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 30/11/16Posts: 16Gênero: Masculino

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?

Billihard

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 08/06/17Posts: 1Gênero: Masculino

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 ;

 

Pokkuru

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 16/06/20Posts: 1
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?

cs007

Vim de longe
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 10/07/08Posts: 574Gênero: MasculinoChar no Tibia: Hebi Of Amera

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