BlackTibia

No estás conectado. Conéctate o registrate

 » Open Tibia » Pedido de Scripts » 

Castle War System

Castle War System

#1 Castle War System el Miér Ene 02, 2013 2:01 pm

thegood


Estudiante
Hola a todos, tengo un problema con el Caslte War System
Ya tengo el mapa y todo, pero necesito los scripts, he buscado mucho, y solo encuentro este event para TFS.
Porfavor necesito ayuda URGENTE!!

Muchas Gracias A Todos!!!!

#2 Re: Castle War System el Vie Ene 04, 2013 2:16 pm

thegood


Estudiante
ayuda porfavor!

#3 Re: Castle War System el Sáb Ene 05, 2013 9:32 am

anormalius


Novato
es que nadie ayuda o no dice algo
aki todo el mudo a vivi la vid i a los demas k lle jodan

#4 Re: Castle War System el Sáb Ene 05, 2013 11:16 am

Belerofonte


Administrador
[Tienes que estar registrado y conectado para ver esa imagen]
PENALIZACIÓN
@anormalius

Lo sentimos, ¡el usuario ha hecho uso del spam
haciéndo un comentario inservible pues no aporta nada al tema,
su respeto se verá reducido un 25% menos!. Se ruega al usuario
que para la próxima evite hacerlo más.

(aunque lo hagas con toda la buena intención del mundo,
has de saber que esto no es un Chat D:)



Sugerencia para evitar futuros quebraderos de cabeza:
[Tienes que estar registrado y conectado para ver este vínculo] - [Tienes que estar registrado y conectado para ver este vínculo] - [Tienes que estar registrado y conectado para ver este vínculo]
[Tienes que estar registrado y conectado para ver esa imagen]

#5 Re: Castle War System el Miér Ago 07, 2013 9:30 am

thegood


Estudiante
e echo este comentario el 2 de enero nadia a dicho nada y despues queresi que este foro balla arriba
aun asi vulevo a preguntaros si me podeis ayudar con el error
[Tienes que estar registrado y conectado para ver este vínculo]
hay va la carpeta del evento uso tfs 0.3.6
y me da este error
Código:
[07/08/2013 14:11:08] [Error - CreatureScript Interface]
[07/08/2013 14:11:08] data/creaturescripts/scripts/castle_kill.lua:onDeath
[07/08/2013 14:11:08] Description:
[07/08/2013 14:11:08] data/lib/102-castle.lua:128: attempt to concatenate a boolean value
[07/08/2013 14:11:08] stack traceback:
[07/08/2013 14:11:08]    data/lib/102-castle.lua:128: in function 'Castle_endEvent'
[07/08/2013 14:11:08]    data/creaturescripts/scripts/castle_kill.lua:3: in function <data/creaturescripts/scripts/castle_kill.lua:1>

[07/08/2013 14:11:08] [Error - CreatureScript Interface]
[07/08/2013 14:11:08] data/creaturescripts/scripts/castle_kill.lua:onDeath
[07/08/2013 14:11:08] Description:
[07/08/2013 14:11:08] data/lib/102-castle.lua:128: attempt to concatenate a boolean value
[07/08/2013 14:11:08] stack traceback:
[07/08/2013 14:11:08]    data/lib/102-castle.lua:128: in function 'Castle_endEvent'
[07/08/2013 14:11:08]    data/creaturescripts/scripts/castle_kill.lua:3: in function <data/creaturescripts/scripts/castle_kill.lua:1>
espero que me puedan ayudar



añado que al crear el monster con el god me desaparece solo ni me deja tiempo a atacarle y no le aparece el nombre al monster

#6 Re: Castle War System el Miér Ago 07, 2013 11:13 am

Strack


Scripter
@up
prefiero no bajarme lo que pusiste, tansolo postea estos scripts y quiza te ayude:
Código:

/creaturescripts/scripts/castle_kill.lua
/lib/102-castle.lua

@anormalius
Respecto a lo que dices de que aqui nadie ayuda... aqui hay muchos que ayudan, pero en comparacion a la gente que pide ayuda, somos pocos los que sabemos.
El problema es que algunos que preguntan (tu, por ejemplo) se creen que estamos aqui para serviros. Nada mas lejos de la realidad.
Deberias pensar que si existen errores asi es porque alguien hizo previamente el script, asi que igual deberias empezar a valorar un poco mas el trabajo de los demas y no tanto criticar cuando no se hace lo que quieres.

@thegood: No pretendo que escribas perfecto, pero usa el corrector ortografico porfavor, me sangran los ojos.

#7 Re: Castle War System el Miér Ago 07, 2013 12:01 pm

thegood


Estudiante
vale
lo hare
yo ayudo a la gente en lo que se
no se mucho pero lo intento
Código:

function onDeath(cid, corpse, killer)
   if (getCreatureName(cid) == getCastleConfig("monster")) then
      Castle_endEvent(true, damages)
   end
   -- cleanup
   damages = {0,0,0}
   return true
end

y ahora el lib
Código:

local castleConfig = {
   days = {2, 5},
   time_1 = 2*60*1000, -- time from start event to fight
   time_2 = 15*60*1000, -- time from fight to end event
   guildOwnStorage = 17000,
   attackersStorage = 17002,
   enabledStorage = 17006,
   endedStorage = 17007,
   leaderLevel = 50000,
   membersNeeded = 5,
   monster = "Tiberia King",
   monsterSpawn = {x = 786, y = 1240, z = 4},
   startAttackers = {
      [1] = {x = 2444, y = 2491, z = 6},
      [2] = {x = 2494, y = 2503, z = 6},
      [3] = {x = 2488, y = 2464, z = 6}
   },
   gates = {
      [1] = {pos = {x = 2456, y = 2487, z = 6}, itemid = 9533},
      [2] = {pos = {x = 2456, y = 2488, z = 6}, itemid = 9533},
      
      [3] = {pos = {x = 2486, y = 2498, z = 6}, itemid = 9485},
      [4] = {pos = {x = 2487, y = 2498, z = 6}, itemid = 9485},
      
      [5] = {pos = {x = 2490, y = 2471, z = 6}, itemid = 9486},
      [6] = {pos = {x = 2491, y = 2471, z = 6}, itemid = 9486},
      [7] = {pos = {x = 2492, y = 2471, z = 6}, itemid = 9486},
      
      -- new
      [8] = {pos = {x = 2452, y = 2480, z = 6}, itemid = 9533},
      [9] = {pos = {x = 2452, y = 2481, z = 6}, itemid = 9533},
      [10] = {pos = {x = 2452, y = 2482, z = 6}, itemid = 9533},
      
      [11] = {pos = {x = 2485, y = 2498, z = 6}, itemid = 9485},   
      
      [12] = {pos = {x = 2498, y = 2502, z = 6}, itemid = 9533},
      [13] = {pos = {x = 2498, y = 2503, z = 6}, itemid = 9533},
      
      [14] = {pos = {x = 2485, y = 2468, z = 6}, itemid = 9486},
      [15] = {pos = {x = 2486, y = 2468, z = 6}, itemid = 9486},
      [16] = {pos = {x = 2487, y = 2468, z = 6}, itemid = 9486},
   

      
   },
}
CASTLE_DAYS = {3,6}

function getCastleConfig(value)
   if (value ~= nil) then
      return castleConfig[value] or false
   else
      return false
   end
end

function removeNotKilledKing(cid)
   if isMonster(cid) and getCreatureName(cid) == castleConfig.monster then
      doRemoveCreature(cid)
   end
   return true
end


-- it sux but don`t have idea how to make it better, attackers Index
function Castle_getGuildPos(guildId)
   local attackers = Castle_getAttackers()
   for i,value in ipairs(attackers) do
      if (tonumber(guildId) == tonumber(value)) then
         ret = i
      end
   end
   return ret
end

function Castle_enableSaving()
   doBroadcastMessage("[ Castle Event Enabled! ]\n\nIf you're a guild leader and you have at least ".. castleConfig.membersNeeded .." members you can sign in your guild by saying !castle in default channel.", MESSAGE_INFO_DESCR)
   setGlobalStorageValue(castleConfig.enabledStorage, 1)
   --setGlobalStorageValue(castleConfig.endedStorage, 0)
   Castle_cleanUp()
   addEvent(Castle_startEvent, castleConfig.time_1)
   return true
end

function Castle_getAttackers()
   local ret = {}
   local query = string.explode(getGlobalStorageValue(castleConfig.attackersStorage), ",")
   for _,value in ipairs(query) do
      if isNumber(value) then
         table.insert(ret, value)
      end
   end
   return ret
end

function Castle_startEvent()
   setGlobalStorageValue(castleConfig.enabledStorage, 0)
   setGlobalStorageValue(castleConfig.endedStorage, 0)
   if(#Castle_getAttackers() == 0) then
      doBroadcastMessage("[ Castle Event Failed! ]\n\nWe have not attackers!", MESSAGE_INFO_DESCR)
      return true
   end
   doBroadcastMessage("[ Castle Event Fight! ]\n\nEvent has been started. Kill Tiberia King !!!", MESSAGE_INFO_DESCR)
   local monster = doSummonCreature(castleConfig.monster, castleConfig.monsterSpawn)
   for _, gate in pairs(castleConfig.gates) do
      doRemoveItem(getTileItemById(gate.pos, gate.itemid).uid)
   end
   addEvent(Castle_endEvent, castleConfig.time_2, false)
   addEvent(removeNotKilledKing, castleConfig.time_2, monster)
   return true
end

function Castle_endEvent(killed, damages)
   local playersOnline = getPlayersOnline()
   local dmgCount = 0
   local message = ""
   local winner = 0
 
   if (getGlobalStorageValue(castleConfig.endedStorage) ~= 1) then
      if (killed) then
         for _,value in ipairs(Castle_getAttackers()) do
            message = message.."\n"..getPlayerGuildName(cid)..":"..damages[Castle_getGuildPos(value)].." dmg"
            if damages[Castle_getGuildPos(value)] > dmgCount then
               winner = value
               dmgCount = damages[Castle_getGuildPos(value)]
            end
         end
         doBroadcastMessage("[ Castle Event End! ]\n\n> Statistics " .. message .."\nWINNER:"..getPlayerGuildName(winner), MESSAGE_INFO_DESCR)
 
         local attackers = Castle_getAttackers()
         table.insert(attackers, getGlobalStorageValue(castleConfig.guildOwnStorage))
         for _, pid in ipairs(playersOnline) do
            if ((isInArray(attackers, getPlayerGuildId(pid)) or getGlobalStorageValue(castleConfig.guildOwnStorage) == getPlayerGuildId(pid)) and not(tonumber(getPlayerGuildId(pid)) == tonumber(winner))) then
               doRemoveCondition(pid, CONDITION_INFIGHT)
               doTeleportThing(pid, getTownTemplePosition(getPlayerTown(pid)))
            end
         end
         setGlobalStorageValue(castleConfig.guildOwnStorage, winner)
      else
         doBroadcastMessage("[ Castle Event End! ]\n\n> Castle has been saved by owner.", MESSAGE_INFO_DESCR)
      end
      setGlobalStorageValue(castleConfig.endedStorage, 1)
   end
   Castle_cleanUp()
   return true
end

function Castle_cleanUp()
   setGlobalStorageValue(castleConfig.attackersStorage, ",")
   return true
end

function Castle_getGuildMembers(guildId)
   local playersOnline = getPlayersOnline()
   local members = {}
   for _, pid in ipairs(playersOnline) do
      if (getPlayerGuildId(pid) == guildId) then
         table.insert(members, pid)
      end
   end
   return members
end


function Castle_trySave(cid)
   if not(getPlayerGuildLevel(cid) == GUILDLEVEL_LEADER) then
      doPlayerSendCancel(cid, "Sorry, but you have to be a leader of guild.")
      return true
   end

   if (getGlobalStorageValue(castleConfig.enabledStorage) ~= 1) then
      doPlayerSendCancel(cid, "Sorry, but it's not time yet.")
      return true
   end

   if (getPlayerLevel(cid) < castleConfig.leaderLevel) then
      doPlayerSendCancel(cid, "Sorry, but your level is too low.")
      return true
   end

   local players = Castle_getGuildMembers(getPlayerGuildId(cid))
   if (#players == 1) then
      doPlayerSendCancel(cid, "Sorry, but you haven't any online members in guild.")
      return true
   end

   if (#players < castleConfig.membersNeeded) then
      doPlayerSendCancel(cid, "Sorry, but you need at least ".. castleConfig.membersNeeded .." guild members online.")
      return true
   end
   if (tonumber(getGlobalStorageValue(castleConfig.guildOwnStorage)) == tonumber(getPlayerGuildId(cid))) then
      doPlayerSendCancel(cid, "Your guild should protect Castle, not attack.")
      return true
   end

   if (#Castle_getAttackers() == 3) then
      doPlayerSendCancel(cid, "Sorry, we have already 3 attacking guilds.")
      return true
   end
   if (isInArray(Castle_getAttackers(), getPlayerGuildId(cid))) then
      doPlayerSendCancel(cid, "Be patient, war will start in a few minutes.")
      return true
   end

   setGlobalStorageValue(castleConfig.attackersStorage, getGlobalStorageValue(castleConfig.attackersStorage)..getPlayerGuildId(cid)..",")
   doBroadcastMessage("[ Castle Event Info ]\n\nGuild ".. getPlayerGuildName(cid) .." will fight for Castle.\nAttackers: ".. #Castle_getAttackers() .." / 3", MESSAGE_INFO_DESCR)

   for i, pid in ipairs(getPlayersOnline()) do
      if (isInArray(getPlayerGuildId(cid), getPlayerGuildId(pid))) then
         doTeleportThing(pid, castleConfig.startAttackers[#Castle_getAttackers()])
      end
   end
   return true
end
espero que puedas ayudarme
la carpeta solamente trae los xml y el mapa nada mas puedes descargarlo si problema
creo yo:)

#8 Re: Castle War System el Miér Ago 07, 2013 6:05 pm

Strack


Scripter
mmm yo este sistema no lo tengo asi que no puedo chekarlo a fondo...al parecer el error esta en la linea 128 del lib:
Código:

doBroadcastMessage("[ Castle Event End! ]\n\n> Statistics " .. message .."\nWINNER:"..getPlayerGuildName(winner), MESSAGE_INFO_DESCR)

En teoria el error da porque intentas meter un boolean en un string, lo que es raro porque solo dos cosas podrian ser:
Código:

getPlayerGuildName(winner)
o
message
la funcion 'getPlayerGuildName' en ningun caso devuelve un boolean, y si fuera la variable message el error daria en la linea 122...

Como te dige no puedo comprobarlo en mi OT, prueba a poner prints (ex: print(message) -> imprimira en consola el valor de message) para saber cual variable es la que falla, y si falla en algun momento concreto explica que momento es ese.

#9 Re: Castle War System el Jue Ago 08, 2013 1:44 pm

thegood


Estudiante
pues necesitaba que me ayudara alguien
te lo puedes descargar sin problema que lo e analizado con virustotal y me da esto
analisis:


SHA256: 22de6a80d83fd943e76babbe915a6a9a7652bda71ded17c93a860e71ff9464d3
Detecciones: 0 / 41
Fecha de análisis: 2011-01-10 14:24:38 UTC ( hace 2 años, 7 meses )
0 0
Más detalles
Análisis
Información adicional
Comentarios
Votos
Antivirus Resultado Actualización
AhnLab-V3 20110109
AntiVir 20110110
Antiy-AVL 20110110
Avast 20110110
Avast5 20110110
AVG 20110110
BitDefender 20110110
CAT-QuickHeal 20110110
ClamAV 20110110
Command 20110110
Comodo 20110110
DrWeb 20110110
Emsisoft 20110110
eSafe 20110110
eTrust-Vet 20110110
F-Prot 20110109
F-Secure 20110110
Fortinet 20110110
Ikarus 20110110
Jiangmin 20110110
K7AntiVirus 20110107
Kaspersky 20110110
McAfee 20110110
McAfee-GW-Edition 20110110
Microsoft 20110110
NOD32 20110110
Norman 20110110
Panda 20110109
PCTools 20110110
Prevx 20110110
Rising 20110110
Sophos 20110110
SUPERAntiSpyware 20110110
Symantec 20110110
TheHacker 20110109
TrendMicro 20110110
TrendMicro-HouseCall 20110110
VBA32 20110106
VIPRE 20110110
ViRobot 20110110
VirusBuster 20110110

necesito ayudaaaa!! por favor
2 años y sietes mese por que lo descarge de otland y venia ya analizado
ayudame anda!!

#10 Re: Castle War System el Sáb Ago 10, 2013 5:20 am

thegood


Estudiante
@up necesito vuestra ayuda bt

#11 Re: Castle War System el Vie Dic 25, 2015 1:08 pm

anormalius


Novato
@up

#12 Re: Castle War System Hoy a las 12:15 pm

Contenido patrocinado


Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje [Página 1 de 1.]

Permisos de este foro:
No puedes responder a temas en este foro.

 

¿Quién está en línea?

En total hay 1 usuario en línea: 1 Registrado, 0 Ocultos y 0 Invitado

Usuarios navegando en este foro: vicente9908

Forum Statistics

Nuestros miembros han públicado un total de posts en temas.
Actualmente hay miembros registrados.
Démosle la bienvenida al miembro más reciente,
La mayor cantidad de usuarios en línea ha sido de .