TeamWarOT HardCore 8.6 - Team vs Team
Fala galera, hoje estou abrindo o codigo de um projeto antigo. Algo que fiz a muito tempo. Espero ajudar a comunidade e também reviver esse estilo de servidor. Foi desenvolvido utilizando MODs, logo todo o servidor encontra-se em 3 arquivos.
- Database
Working with SQLite and MySQL
Default account admin/252525 in SQLite
- Operacional System
Windows or Linux (Ubuntu, Debian, CentOS)
- Features
Map X-Dreams with 5 citys (Carlin, Venore, Edron, Fibula and Thais)
Auto Map Change
Auto Re-Balanceamento de Teams
Auto Mensagens
Anti MC
Gain Gold Coins on Kill
Gain Experience on Kill
Skull System
100 frags = Yellow Skull
200 frags = Green Skull
300 frags = White Skull
400 frags = Red Skull
500 frags = Black Skull
First Skills
First Items
Logout Protection for First Skills
Death Broadcast
Best Killers Broadcast
Frags onLook
- Configurations
All configurations in config, very easy!
configTWH = {
maxTopRanking = 12,
diffFragsToEqui = 15,
antiMC = {
enable = true, -- enable or disable
max = 5, -- max chars with the same ip
allowedIP = {""},
timeForKick = 1500,
MsgKick = "You have been kicked because you are using Multi-Client.",
group_id = 3 -- only kick player with group id 1 (normal players)
},
-- Logout Protection Time
logoutProtectionTimer = {
enable = true,
storage = 55552,
timer = 20 * 1000
},
defaultCharStatus = true, -- true/false for enable accounts (1/1 - 2/2 - 3/3 - 4/4)
defaultCharAccoutID = {10,20,30,40}, -- Sorcerer/Druid/Paladin/Knight
-- OutFit Type / Color
TEAMS_SET = {
{lookType = 128, lookHead = 0, lookAddons = 3, lookLegs = 76, lookBody = 94, lookFeet = 0}, -- Team I OutFit
{lookType = 128, lookHead = 0, lookAddons = 3, lookLegs = 76, lookBody = 81, lookFeet = 0}, -- Team II Outfit
{lookType = 128, lookHead = 0, lookAddons = 3, lookLegs = 0, lookBody = 0, lookFeet = 0} -- NoTeam Outfit
},
-- Map Type (1 = Team vs Team (Normal) 2 = Quest Map (No-PvP?) 3 = Capture The Flag (Normal + Capture) 4 = Deathmatch (Player vs All))
mapStats = {
[1] = {
author = "Staff", name = "Thais", mapType = {1, "Team vs Team"}, templeIDs = {1, 2},
templePositions = { [1] = { x = 1452, y = 1898, z = 6}, [2] = { x = 1553, y = 1857, z = 7} }
},
[2] = {
author = "Staff", name = "Carlin", mapType = {1, "Team vs Team"}, templeIDs = {4, 5},
templePositions = { [1] = { x = 1816, y = 1872, z = 7}, [2] = { x = 1886, y = 1940, z = 6} }
},
[3] = {
author = "Staff", name = "Venore", mapType = {1, "Team vs Team"}, templeIDs = {7, 8},
templePositions = { [1] = { x = 2183, y = 1921, z = 7}, [2] = { x = 2281, y = 1899, z = 7} }
},
[4] = {
author = "Staff", name = "Edron", mapType = {1, "Team vs Team"}, templeIDs = {10, 11},
templePositions = { [1] = { x = 2590, y = 1907, z = 6}, [2] = { x = 2709, y = 1924, z = 7} }
},
[5] = {
author = "Staff", name = "Fibula", mapType = {1, "Team vs Team"}, templeIDs = {16, 17},
templePositions = { [1] = { x = 1486, y = 2123, z = 7}, [2] = { x = 1522, y = 2182, z = 7} }
}
},
deathBroadcast = {
killStorageValue = 99990,
lastKillerStorage = 50000,
maxPlayerGainFrag = 5,
MaxLevel = { use = true, MAX = 400 },
FragCount = { use = true },
AnimeText = { use = true },
GainMoney = { use = true, coinID = 2148 },
MultiIp = { use = false },
experienceByKillingPlayers = { use = true, levelAmount = 0.6, color = 240 }, -- level gain for last hit killer
killMessage = { use = true, text = "[War Stats] Frags Online: |KILLERKILLS| Frags All: |KILLERKILLSALL| Last Killer: |TARGETNAME|!", messageClass = MESSAGE_STATUS_CONSOLE_BLUE },
killerAnimation = { use = true, text = "Frag!", color = 240 }, -- Only 9 letters! No "commands" here.
targetAnimation = { use = true, text = "Owned!", color = 151 } -- Only 9 letters! No "commands" here.
},
mapType = {
[1] = {
idType = 1,
nameType = "Team vs Team",
descricao = " { Team vs Team } \n\n O objetivo é matar \n jogadores de outros times."
},
[4] = {
idType = 4,
nameType = "Deathmatch",
descricao = " { Deathmatch } \n\n O objetivo é matar \n o maior numero de jogadores \n (TODOS SÃO INIMIGO!)."
},
},
mapChange = {
timer = 20 * 60,
timerStorage = 13001,
mapIdStorage = 13002,
mapTypeStorage = 13005,
accessIgnore = 3
},
STORAGE = {
PLAYER = {
TEAM_INFO = 40000,
FRAGS_Online = 5000,
OUTFIT_Status = 4999,
},
GLOBAL = {
FRAGS = {30001, 30002},
TEAMS = {40001, 40002, 40003},
TEAMS_COUNT = {40011, 40012, 40013}
}
},
-- Protect Area / Not Teleport in Change Map
protectArea = {
{fromx=102, fromy=615, fromz=8, tox=146, toy=638, toz=8},
},
startPlayer = {
LevelFree = 150,
LevelPremium = 180,
STATS = {
-- Free Account 1-4
{ healthMax = 895, manaMax = 4045, cap = 1890, healthExt = 200, manaExt = 500, capExt = 250 },
{ healthMax = 895, manaMax = 4045, cap = 1890, healthExt = 200, manaExt = 500, capExt = 250 },
{ healthMax = 1605, manaMax = 2165, cap = 3310, healthExt = 350, manaExt = 350, capExt = 250 },
{ healthMax = 2315, manaMax = 745, cap = 4020, healthExt = 500, manaExt = 200, capExt = 250 },
-- Premium Account and Promotion
{ healthMax = 1045, manaMax = 4795, cap = 1890, healthExt = 200, manaExt = 500, capExt = 250 },
{ healthMax = 1045, manaMax = 4795, cap = 1890, healthExt = 200, manaExt = 500, capExt = 250 },
{ healthMax = 1905, manaMax = 2615, cap = 3310, healthExt = 350, manaExt = 350, capExt = 250 },
{ healthMax = 2765, manaMax = 895, cap = 4020, healthExt = 500, manaExt = 200, capExt = 250 },
},
},
mensagens = {
[0] = "Fique por dentro de tudo que acontece no servidor e participe do nosso Forum. Visite: http://TeamWarOT.com",
[1] = "A Equipe não se responsabiliza por perda de Items/Roubos/Accounts Hackeds. Mantenha sua account segura, nunca use Account = Senha!",
[2] = "Comandos disponiveis no Servidor: !frags, !top, !rank, !online, !map, !maps, !nextMap.",
[3] = "Crie Agora sua Account! Visite: http://TeamWarOT.com/",
[4] = "Visite nosso TeamSpeak 3, otimo bate-papo de voz com toda Equipe e Players! Cliente antigo 3.1.8 IP: TS.TeamSpeakClub.com:9987 Download: https://mega.nz/#!uMgzBIzY!fd1JoRq0tx41gfP1-d2f718XI19Szx_SJa8xf_3M4is "
}
}
- Commands
!map !maps !frags !online !rank !top !comandos
- Functions List
-- Maps
map.get()
map.removeIssue()
map.getIdByName()
map.set(id)
-- Map Info
mapInfo.mapId()
mapInfo.mapIdNext()
mapInfo.mapName()
mapInfo.mapNameNext()
-- Map Type Manager
mapTypeManager.get()
mapTypeManager.set(id)
-- Player Team
playerTeam.get(cid)
playerTeam.set(cid, id)
-- Frags Team
fragsTeam.get(teamId)
fragsTeam.add(teamId, count)
fragsTeam.start(teamId)
fragsTeam.rem(teamId, count)
-- Team Count
teamCount.get(teamId)
teamCount.add(teamId, count)
teamCount.start(teamId, count)
teamCount.rem(teamId, count)
teamCount.change(cid, team, teamGo)
-- Frags
frags.get(cid)
frags.add(cid, amount)
-- Frags Online
fragsOnline.add(cid, amount)
fragsOnline.get(cid)
fragsOnline.cleanStart(cid)
fragsOnline.cleanALL()
-- Deaths
deaths.get(cid)
deaths.add(cid, amount)
-- Outfit
outfit.setTeam(cid, team)
outfit.setRandomColor(cid)
-- Ranking
ranking.getTopFragsOnline()
-- Player Set Team
doPlayerSetTeam.login(cid)
- Others Functions
map_change(id)
isInPosition(pos, area)
getSmallestTeam()
getTimeMap(s)
mostraTempo(cid)
playerKickMC(cid)
equilibrar()
getCurrentPlayers()
getCurrentAccounts()
- Mods
mods/ TeamWar HardCore [War].xml
mods/ First Skills [War].xml
mods/ First Items [War].xml
- Download
TeamWarOT - 22-08-2020.zip
Github: HeberPcL/TeamWarOT (https://github.com/HeberPcL/TeamWarOT)
Mega: 6.54 MB file on MEGA (https://mega.nz/file/6gZgwABa#0O2FN3XGPv7VJ6OssbN01VuPak2EQTuzlxGHPQ1Fwbs)