Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Estou com um problema no zombie event ,

quando o zombie encosta no player ele fica atacando e tirando hit ao envez de mandar direto ao templo , gostaria de saber como eu faço para arrumar isso?

Obg.

Mulher e dinheiro, dinheiro e mulher,


quanto mais você tem muito mais você quer


BREVE! NOVO SERVIDOR GLOBAL... AGUARDE

Link para o post
Compartilhar em outros sites

coloque isso no seu aquivo event zombie ou sei l ao nome.xml

<?xml version="1.0" encoding="UTF-8"?>

<monster name="Zombie Event" nameDescription="an event zombie" race="undead" experience="480" speed="170" manacost="0">

<health now="20000" max="20000"/>

<look type="311" corpse="9875"/>

<targetchange interval="5000" chance="50"/>

<strategy attack="100" defense="0"/>

<flags>

<flag summonable="0"/>

<flag attackable="1"/>

<flag hostile="1"/>

<flag illusionable="0"/>

<flag convinceable="0"/>

<flag pushable="0"/>

<flag canpushitems="1"/>

<flag canpushcreatures="1"/>

<flag targetdistance="1"/>

<flag staticattack="90"/>

<flag runonhealth="0"/>

</flags>

<attacks>

<attack name="melee" interval="1000" min="-1500" max="-2350"/>

</attacks>

<defenses armor="0" defense="0"/>

<immunities>

<immunity paralyze="1"/>

<immunity invisible="1"/>

<immunity fire="1"/>

<immunity energy="1"/>

<immunity poison="1"/>

</immunities>

<voices interval="5000" chance="10">

<voice sentence="You wont last long!"/>

<voice sentence="Mmmmh.. braains!"/>

</voices>

<script>

<event name="ZombieThink"/>

<event name="ZombieDeath"/>

</script>

<loot>

</loot>

</monster>

é claro q vc precisa criar os arquivos Zombiethink e zombiedeath


Regras Gerais 

 

"Califórnia Brasileira :cool: "

Link para o post
Compartilhar em outros sites

coloque isso no seu aquivo event zombie ou sei l ao nome.xml

<?xml version="1.0" encoding="UTF-8"?>

<monster name="Zombie Event" nameDescription="an event zombie" race="undead" experience="480" speed="170" manacost="0">

<health now="20000" max="20000"/>

<look type="311" corpse="9875"/>

<targetchange interval="5000" chance="50"/>

<strategy attack="100" defense="0"/>

<flags>

<flag summonable="0"/>

<flag attackable="1"/>

<flag hostile="1"/>

<flag illusionable="0"/>

<flag convinceable="0"/>

<flag pushable="0"/>

<flag canpushitems="1"/>

<flag canpushcreatures="1"/>

<flag targetdistance="1"/>

<flag staticattack="90"/>

<flag runonhealth="0"/>

</flags>

<attacks>

<attack name="melee" interval="1000" min="-1500" max="-2350"/>

</attacks>

<defenses armor="0" defense="0"/>

<immunities>

<immunity paralyze="1"/>

<immunity invisible="1"/>

<immunity fire="1"/>

<immunity energy="1"/>

<immunity poison="1"/>

</immunities>

<voices interval="5000" chance="10">

<voice sentence="You wont last long!"/>

<voice sentence="Mmmmh.. braains!"/>

</voices>

<script>

<event name="ZombieThink"/>

<event name="ZombieDeath"/>

</script>

<loot>

</loot>

</monster>

é claro q vc precisa criar os arquivos Zombiethink e zombiedeath

testarei e ja posto resultado =)

Mulher e dinheiro, dinheiro e mulher,


quanto mais você tem muito mais você quer


BREVE! NOVO SERVIDOR GLOBAL... AGUARDE

Link para o post
Compartilhar em outros sites

Funciono Amigo , muito obrigado Rep+

só mais uma coisa , qnd encosta o corpo do player fica no chão , tem como tirar isso ?

Mulher e dinheiro, dinheiro e mulher,


quanto mais você tem muito mais você quer


BREVE! NOVO SERVIDOR GLOBAL... AGUARDE

Link para o post
Compartilhar em outros sites

lol o corpo n era pra ficar no chão, mas tipo os cara ta morrendo ou teleportando ?e ta perdendo level,loot skill?


Regras Gerais 

 

"Califórnia Brasileira :cool: "

Link para o post
Compartilhar em outros sites

lol o corpo n era pra ficar no chão, mas tipo os cara ta morrendo ou teleportando ?e ta perdendo level,loot skill?

nao perde nada , apenas é teleportado, e fica o corpo dele no chão.

21:14 You see a dead human (Vol:10).

You recognize Tunning Druid. He was killed by a zombie event.

Editado por dennis126 (veja o histórico de edições)

Mulher e dinheiro, dinheiro e mulher,


quanto mais você tem muito mais você quer


BREVE! NOVO SERVIDOR GLOBAL... AGUARDE

Link para o post
Compartilhar em outros sites

/data/lib/zombie_event.lua

coloque isso

-- CONFIG

ZE_DEFAULT_NUMBER_OF_PLAYERS -- Número mínimo de jogadores para o evento

ZE_ACCESS_TO_IGNORE_ARENA -- Acesso de conta que não é contada como competidor (GODs, por exemplo)

-- POSITIONS

ZE_blockEnterItemPosition -- Posição do item que bloqueia o acesso a arena

ZE_enterPosition -- Posição onde os jogadores serão teleportados ao entrarem na arena

ZE_kickPosition -- Posição para onde jogadores que morreram, ou ganharam, vão.

ZE_spawnFromPosition -- Posição superior-esquerda da arena

ZE_spawnToPosition - Posição inferior-direita da arena

-- ITEM IDS

ZE_blockEnterItemID -- ID do item que bloqueia a arena

-- STORAGES

-- - player

ZE_isOnZombieArea -- Storage que armazena a informação "O jogador está na arena"

-- - global

ZE_STATUS = 34370 -- Storage global pré-configurado, favor não mexer.

ZE_PLAYERS_NUMBER -- Storage global que armazena o número de jogadores na arena

ZE_ZOMBIES_TO_SPAWN -- Storage global que armazena o número de zumbis que irão aparecer na próxima rodada

ZE_ZOMBIES_SPAWNED -- Storage global que armazena o total de zumbis invocados


Regras Gerais 

 

"Califórnia Brasileira :cool: "

Link para o post
Compartilhar em outros sites

[26/02/2012 21:29:16] [Error - LuaScriptInterface::loadFile] data/lib/zombie_event.lua:3: '=' expected near 'ZE_ACCESS_TO_IGNORE_ARENA'

[26/02/2012 21:29:16] [Warning - LuaScriptInterface::initState] Cannot load data/lib/

Mulher e dinheiro, dinheiro e mulher,


quanto mais você tem muito mais você quer


BREVE! NOVO SERVIDOR GLOBAL... AGUARDE

Link para o post
Compartilhar em outros sites

vish dexa como tava e eu vo arruma aqui to quase indo dormi to trincano de sono

nao tinha nenhum arquivo .lua no data/lib entao eu criei 1 e adicionei oque você mando? certo?

Mulher e dinheiro, dinheiro e mulher,


quanto mais você tem muito mais você quer


BREVE! NOVO SERVIDOR GLOBAL... AGUARDE

Link para o post
Compartilhar em outros sites

lol certo tem q add e configura o q eu coloquei na frente das linha vc tira é so uma tradução para vc configurar do jeito certo

ta ae o certo e original

-- CONFIG

ZE_DEFAULT_NUMBER_OF_PLAYERS
=
5

ZE_ACCESS_TO_IGNORE_ARENA
=
3

-- POSITIONS

ZE_blockEnterItemPosition
=
{
x
=
873
,
y
=
997
,
z
=
7
}

ZE_enterPosition
=
{
x
=
1638
,
y
=
1530
,
z
=
7
}

ZE_kickPosition
=
{
x
=
874
,
y
=
994
,
z
=
7
}

ZE_spawnFromPosition
=
{
x
=
1617
,
y
=
1514
,
z
=
7
}

ZE_spawnToPosition
=
{
x
=
1671
,
y
=
1565
,
z
=
7
}

-- ITEM IDS

ZE_blockEnterItemID
=
2700

-- STORAGES

-- - player

ZE_isOnZombieArea
=
34370

-- - global

ZE_STATUS
=
34370
-- =< 0 - off, 1 - waiting for players, 2 - is running

ZE_PLAYERS_NUMBER
=
34371

ZE_ZOMBIES_TO_SPAWN
=
34372

ZE_ZOMBIES_SPAWNED
=
34373

-- FUNCTION

function
setZombiesEventPlayersLimit
(
value
)

doSetStorage
(
ZE_PLAYERS_NUMBER
,
value
)

end

function
getZombiesEventPlayersLimit
(
)

return
getStorage
(
ZE_PLAYERS_NUMBER
)

end

function
addPlayerToZombiesArea
(
cid
)

doSendMagicEffect
(
getThingPosition
(
cid
)
,
CONST_ME_TELEPORT
)

doTeleportThing
(
cid
,
ZE_enterPosition
,
true
)

doSendMagicEffect
(
getThingPosition
(
cid
)
,
CONST_ME_TELEPORT
)

if
(
getPlayerAccess
(
cid
)
<
ZE_ACCESS_TO_IGNORE_ARENA
)
then

setPlayerZombiesEventStatus
(
cid
,
os.time
(
)
)

end

end

function
kickPlayerFromZombiesArea
(
cid
)

doSendMagicEffect
(
getThingPosition
(
cid
)
,
CONST_ME_TELEPORT
)

doTeleportThing
(
cid
,
ZE_kickPosition
,
true
)

doSendMagicEffect
(
getThingPosition
(
cid
)
,
CONST_ME_TELEPORT
)

setPlayerZombiesEventStatus
(
cid
,
0
)

end

function
getPlayerZombiesEventStatus
(
cid
)

return
getCreatureStorage
(
cid
,
ZE_isOnZombieArea
)

end

function
setPlayerZombiesEventStatus
(
cid
,
value
)

doCreatureSetStorage
(
cid
,
ZE_isOnZombieArea
,
value
)

end

function
getZombiesEventPlayers
(
)

local
players
=
{
}

for
i
,
cid
in
pairs
(
getPlayersOnline
(
)
)
do

if
(
getPlayerZombiesEventStatus
(
cid
)
>
0
)
then

table.insert
(
players
,
cid
)

end

end

return
players

end

function
getZombiesCount
(
)

return
getStorage
(
ZE_ZOMBIES_SPAWNED
)

end

function
addZombiesCount
(
)

doSetStorage
(
ZE_ZOMBIES_SPAWNED
,
getStorage
(
ZE_ZOMBIES_SPAWNED
)
+
1
)

end

function
resetZombiesCount
(
)

doSetStorage
(
ZE_ZOMBIES_SPAWNED
,
0
)

end

function
getZombiesToSpawnCount
(
)

return
getStorage
(
ZE_ZOMBIES_TO_SPAWN
)

end

function
setZombiesToSpawnCount
(
count
)

doSetStorage
(
ZE_ZOMBIES_TO_SPAWN
,
count
)

end

function
addZombiesEventBlockEnterPosition
(
)

if
(
getTileItemById
(
ZE_blockEnterItemPosition
,
ZE_blockEnterItemID
)
.
uid
==
0
)
then

doCreateItem
(
ZE_blockEnterItemID
,
1
,
ZE_blockEnterItemPosition
)

end

end

function
removeZombiesEventBlockEnterPosition
(
)

local
item
=
getTileItemById
(
ZE_blockEnterItemPosition
,
ZE_blockEnterItemID
)

if
(
item
.
uid
~=
0
)
then

doRemoveItem
(
item
.
uid
)

end

end

function
spawnNewZombie
(
)

local
posx
=
{
}

local
posy
=
{
}

local
posz
=
{
}

local
pir
=
{
}

for
i
=
1
,
5
do

local
posx_tmp
=
math.random
(
ZE_spawnFromPosition
.
x
,
ZE_spawnToPosition
.
x
)

local
posy_tmp
=
math.random
(
ZE_spawnFromPosition
.
y
,
ZE_spawnToPosition
.
y
)

local
posz_tmp
=
math.random
(
ZE_spawnFromPosition
.
z
,
ZE_spawnToPosition
.
z
)

local
pir_tmp
=
0

local
spec
=
getSpectators
(
{
x
=
posx_tmp
,
y
=
posy_tmp
,
z
=
posz_tmp
}
,
3
,
3
,
false
)

if
(
spec
and
#
spec
>
0
)
then

for
z
,
pid
in
pairs
(
spec
)
do

if
(
isPlayer
(
pid
)
)
then

pir_tmp
=
pir_tmp
+
1

end

end

end

posx
[
i
]
=
posx_tmp

posy
[
i
]
=
posy_tmp

posz
[
i
]
=
posz_tmp

pir
[
i
]
=
pir_tmp

end

local
lowest_i
=
1

for
i
=
2
,
5
do

if
(
pir
[
i
]
<
pir
[
lowest_i
]
)
then

lowest_i
=
i

end

end

local
ret
=
(
type
(
doCreateMonster
(
"Zombie Event"
,
{
x
=
posx
[
lowest_i
]
,
y
=
posy
[
lowest_i
]
,
z
=
posz
[
lowest_i
]
}
,
false
)
)
==
'number'
)

if
(
ret
)
then

addZombiesCount
(
)

end

return
ret

end


Regras Gerais 

 

"Califórnia Brasileira :cool: "

Link para o post
Compartilhar em outros sites
  • 1 month later...

e o cara nao disse mais nada se funciono?

Link para o post
Compartilhar em outros sites
  • 9 months later...

No meu ot, tudo funda de boa, mas os zombies n nascem sozinho, tipo a cada certo tempo, eu q tenho q botar no rme, mas eles ja nascem antes do evento comçar!

Pfv Ajudem!!!

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por chateadoagr
      Servidor baseado em jogos e series: Resident Evil, TWD, Jurassic World, Jurassic Park, entre outros.
       
      O Inicio:
      Em 1993, em uma ilha remota, um rico empresário monta um parque temático com dinossauros vivos, criados a partir de DNA pré-histórico. Antes de abri-lo ao público, ele convida um conceituado paleontologista e sua namorada paleobotânica, um renomado matemático e também seus dois netos para conhecerem o parque - e ajudarem a acalmar investidores ansiosos. Mas a visita não é nem um pouco tranquila, já que os predadores pré-históricos escapam e começam a caçar os habitantes da ilha, no final do ano de 1993, foi isolada a ilha, exterminados os animais e ninguém mais explorou a ilha temática.
       
      Em 1998, quando crimes bizarros começam a assolar a pequena Raccoon City. As vítimas, normalmente andarilhos e excursionistas que passam pela floresta nos arredores da cidade, são brutalmente assassinadas e seus corpos apresentam sinais de canibalismo e violência extrema. O departamento de polícia de Raccoon decide enviar seu time de elite, os S.T.A.R.S. (Special Tactics and Rescue Service, Serviço de Táticas Especiais e de Resgate) para cuidar do caso. A primeira equipe enviada é a Bravo, que perdeu contato com a delegacia minutos após entrar na área da floresta. Após 24 horas sem contato via rádio, a equipe Alpha é enviada, e se surpreendem ao encontrar o helicóptero da outra equipe completamente abandonado. Enquanto checavam os arredores em busca de pistas sobre a localização dos policiais desaparecidos, Joseph Frost, um dos membros da equipe Alpha, é atacado por cães selvagens, que aparentam estado de decomposição avançada. Abandonados por Brad Vickers, piloto da equipe, que foge levando o helicóptero, os oficiais sobreviventes se veem sem opção a não ser se refugiar em uma mansão que é avistada de longe.[...]
       
       
       
       
      Após o fracasso do parque temático e o apocalipse, os sobreviventes foram levados para uma nova ilha que se tornou uma cidade com muitos recursos recuperados pelo apocalipse. Anos se passaram e a humanidade cresceu relativamente. Novos médicos, cientista e estudantes vieram a tona, mas um deles se destacou, o Dr Edward Kirk.
      O Dr Edward Kirk, um cientista, que assumiu as empresas Umbrella Corporation e as empresas Weskers, assim que seus diretores foram mortos nos ataques de Reccoon City. Dr Kirk mudou o nome das empresas para Healthy Life(vida saudável), com seu principal projeto: Terceira energia, esse projeto consiste num sistema em que cria energia limpa e barata.
      Porem o Governo, não quis patrocinar esse projeto então o Dr, retornou ao seu antigo projeto "O Fim da Extinção". Esse projeto teve ajuda de vários empresários que investiram muito nesse projeto que era trazer animais que foram extinto de volta a vida, pegando DNAs de fosseis e transformando eles a vida novamente, também teve ajuda do Dr Albert wesker.[...[
      Continua...
       
       
       
       



       

       

       
      Mapa:
       
       




      A ideia é deixar assim uma das ilhas:

      Será na versão 8.6 
      Cliente OTC
      O que estou precisando:
      Spriters de dinossauros, personagens, itens(arma e equipamentos), etc.
      Programadores pra ajudar a desenvolver alguns sistemas que estão faltando.
      Mapper para ajuda a termina o mapa.
      Doações, sugestões e ajuda:
      Entre em contato pelo whatsapp:
      42 9 88067789
      Nome: Itamar Vinicius
       
       
       
    • Por Sekk
      Bom, procurei esse Castle por MUITO TEMPO, mas não achei em NENHUM LUGAR DA INTERNET. Ontem, eu estava vendo alguns mapas do @Deathrocks, e vi nos prints, que o mapa possuia o evento que eu queria!
       
      Então baixei o mapa e extrai o evento, então venho lhes trazer!
       
       
      Nome: Castle 24H
      Cliente: 8.6
      Versão TFS: 0.4
      Tipo: Evento
       
      Bom, para começar, vamos em actions/scripts e crie 2 arquivos:
       
      castledoor1.lua
       
      castlewar1.lua
       
        Agora em actions.xml adicione as tags:
       
      Agora em monster/traps crie 3 arquivos:
       
      porta.xml
       
      protectcastle.xml  
      statue.xml  
      Agora em monsters.xml adicione as tags:    
      Vamos para movements/scripts e crie 2 arquivos:
       
      castlewar2.lua
       
      level.lua  
      Agora em movements.xml adicione as tags:  
       
      Pronto. Agora você só precisa baixar o mapa, inserir o mesmo ao seu servidor, configurar os teleports, e as hunts dentro do castle etc.
       
      PRINTS:
      1ª parte
       
      2ª parte:
       
      Obs.: Todos os ActionID e monsters já estão no mapa! Você só precisa configurar as coordenadas dos teleports, e o que possui no castle!
       
      Obs².: Tudo o que você pode configurar, já está escrito em cada script!
       
       
      Créditos:
      @DeathRocks
      PC98
      mapa.rar
    • Por Sarah Wesker
      >> Only TFS 1.X+ <<
      Oi tudo bem, espero que bem.
      Hoje, apenas começando o ano novo, quero dar-lhe um Firestorm event que eu criei com muito amor para você.
      Atualmente, há muitos eventos semelhantes, mas espero que você dê uma chance ao meu Firestorm event.
       
      Em seguida, vou explicar rapidamente como usar o Firestorm event.
      (( Passo 1 ))
      Crie um novo arquivo.lua na pasta: ( data/lib/ ) com o nome ( fire_storm.lua )
      Copie e cole o código no arquivo fire_storm.lua
      --[[ * Fire Storm Event * Evento creado por Sarah Wesker Dia 31 de Diciembre del 2018 a las 12:30 a.m. Version compatible con TFS 1.x+ ]]-- local DEBUG_ON = true local RELOAD_LIB_ON = true local SHOW_COPYRIGHT = true if RELOAD_LIB_ON or not FSE then if not FSE then print([[>>> The Firestorm Event lib loading...]]) end ---@Fire Storm Event FSE = {} ---@Room Properties FSE.room = {} FSE.room.from = Position(3095, 1847, 8) FSE.room.rangeX = 33 FSE.room.rangeY = 31 ---@Temple Position FSE.getTemplePosition = Position(3191, 1809, 7) ---@Attack Properties FSE.attackSignalEffect = CONST_ME_HITBYFIRE FSE.attackEffect = CONST_ME_FIREAREA FSE.attackDistEffect = CONST_ANI_FIRE ---@Player Counts FSE.players = {} FSE.players.min = 2 FSE.players.max = 30 FSE.players.win = 1 -- always less than FSE.players.min ---@Timers in seconds FSE.timer = {} FSE.timer.removeTp = 20 FSE.timer.checking = 2 FSE.timer.signal = {} FSE.timer.signal.min = 0.1 FSE.timer.signal.max = 0.5 FSE.timer.events = {} ---@Game Dificulty FSE.dificulty = {} FSE.dificulty.attacks = 30 FSE.dificulty.increment = 1 FSE.dificulty.D_attacks = FSE.dificulty.attacks FSE.dificulty.D_increment = FSE.dificulty.increment ---@Teleport Properties FSE.teleport = {} FSE.teleport.itemid = 1387 FSE.teleport.position = Position(3187, 1816, 7) FSE.teleport.destination = Position(3111, 1863, 8) FSE.teleport.actionid = 64500 -- movement script aid FSE.status = [[Stoped]] FSE.rewardContainerName = [[Firestorm Reward]] FSE.rewardContainerID = 2596 FSE.rewards = { -- { id = xxxx, count = 1 to 100 } { id = 2160, count = 100 }, { id = 2160, count = 100 } } function FSE:removeTp(seconds) local teleport = FSE.teleport.position:getTile():getItemById(FSE.teleport.itemid) if teleport then teleport:remove() FSE.teleport.position:sendMagicEffect(CONST_ME_POFF) end FSE:CheckControl() end function FSE:Init() if FSE.status == [[Stoped]] then FSE.status = [[Waiting]] local teleport = Game.createItem(FSE.teleport.itemid, 1, FSE.teleport.position) if not teleport then FSE:Stoped() return DEBUG_ON and print([[The Firestorm Event teleport could not be created.]]) else teleport:setActionId(FSE.teleport.actionid) end addEvent(FSE.removeTp, FSE.timer.removeTp * 1000) Game.broadcastMessage(string.format([[The Firestorm Event has been activated, waiting for participants, You have %s to enter.]], getStringTimeEnglish(FSE.timer.removeTp))) else return DEBUG_ON and print([[The Firestorm Event is trying to start, but an active instance already exists.]]) end end function FSE:Stoped(players, causeMessage, forceStoped) FSE.status = [[Stoped]] for index, eventID in pairs(FSE.timer.events) do stopEvent(eventID) end FSE.timer.events = {} for index, player in pairs(players) do player:teleportTo(FSE.getTemplePosition, false) end FSE.getTemplePosition:sendMagicEffect(CONST_ME_TELEPORT) if forceStoped then Game.broadcastMessage([[The Firestorm Event was forced to close.]]) elseif causeMessage then Game.broadcastMessage(causeMessage) end FSE.dificulty.attacks = FSE.dificulty.D_attacks FSE.dificulty.increment = FSE.dificulty.D_increment return true end function FSE:Started(startMessage) FSE.status = [[Started]] if startMessage then Game.broadcastMessage(startMessage) end FSE:CheckControl() end function FSE:AddEvent(eventID) table.insert(FSE.timer.events, eventID) return eventID end local function getWinNames(players) local names = [[]] for index, player in pairs(players) do names = string.format([[%s%s%s]], names, player:getName(), next(players, index) == nil and '.' or [[, ]]) end return names end function FSE:CheckControl() if FSE.status == [[Stoped]] then -- Break Control elseif FSE.status == [[Waiting]] then local players = FSE:GetPlayers() if #players < FSE.players.min then FSE:Stoped(players, [[The Firestorm Event could not be started because there are not enough participants.]]) else FSE:Started() end elseif FSE.status == [[Started]] then local players = FSE:GetPlayers() if #players <= FSE.players.win then if #players == 0 then FSE:Stoped(players, [[The Firestorm Event has ended.]]) else FSE:Stoped(players, string.format([[The Firestorm Event has ended, the winners are: %s]], getWinNames(players))) FSE:SendRewardToPlayers(players) end FSE:AllRightReserve() -- only credits you can remove if want. else for index = 1, FSE.dificulty.attacks do addEvent(FSE.AttackSignal, math.random(FSE.timer.signal.min * 1000, FSE.timer.signal.max * 1000)) end FSE.dificulty.attacks = FSE.dificulty.attacks + FSE.dificulty.increment FSE:AddEvent(addEvent(FSE.CheckControl, FSE.timer.checking * 1000)) end end end function FSE:GetPlayers() local spectators = Game.getSpectators(FSE.room.from, false, true, 1, FSE.room.rangeX, 1, FSE.room.rangeY) local players = {} if spectators and #spectators > 0 then for index, player in pairs(spectators) do if not player:getGroup():getAccess() then players[#players + 1] = player end end end return players end local function getRewardNames(items) local names = [[]] for index, item in pairs(items) do local it = ItemType(item.id) names = string.format([[%s%u %s%s]], names, item.count, it:getName(), next(items, index) == nil and '.' or [[, ]]) end return names end function FSE:SendRewardToPlayers(players) for index, player in pairs(players) do local depotChest = player:getDepotChest(0, true) if depotChest then local rewardContainer = Game.createItem(FSE.rewardContainerID, 1) if rewardContainer then rewardContainer:setName(FSE.rewardContainerName) local rewardNames = getRewardNames(FSE.rewards) for index2, item in pairs(FSE.rewards) do rewardContainer:addItem(item.id, item.count) end if depotChest:addItemEx(rewardContainer, INDEX_WHEREEVER, FLAG_NOLIMIT) then player:sendTextMessage(MESSAGE_INFO_DESCR, string.format([[You have received on your depot chest: %s]], rewardNames)) end end end end end function FSE:GetRandomTile() local foundTile = Tile(FSE.room.from + Position(math.random(0, FSE.room.rangeX), math.random(0, FSE.room.rangeY), 0)) while not foundTile or not foundTile:getGround() or foundTile:hasProperty(CONST_PROP_BLOCKSOLID) do foundTile = Tile(FSE.room.from + Position(math.random(0, FSE.room.rangeX), math.random(0, FSE.room.rangeY), 0)) end return foundTile end function FSE:AttackSignal() local foundTile = FSE:GetRandomTile() if not foundTile then return DEBUG_ON and print([[Not tile could be found in the Firestorm Event area.]]) end local position = foundTile:getPosition() position:sendMagicEffect(FSE.attackSignalEffect) return addEvent(FSE.AttackTile, 500, self, { x = position.x, y = position.y, z = position.z }) end function FSE:AttackTile(tpos) local position = Position(tpos) local creatures = position:getTile():getCreatures() local fromposdist = (position-Position(5, 5, 0)) fromposdist:sendDistanceEffect(position, FSE.attackDistEffect) position:sendMagicEffect(FSE.attackEffect) if creatures and #creatures > 0 then for index, creature in pairs(creatures) do local player = creature:getPlayer() if player and not player:getGroup():getAccess() then position:sendMagicEffect(CONST_ME_POFF) player:teleportTo(FSE.getTemplePosition, false) FSE.getTemplePosition:sendMagicEffect(CONST_ME_TELEPORT) Game.broadcastMessage(string.format([[The player %s has been eliminated from the Firestorm Event.]], player:getName())) end end end end function FSE:AllRightReserve() return SHOW_COPYRIGHT and print([[The Firestorm Event has ended, all rights reserved for Sarah Wesker.]]) end if type(FSE) == [[table]] then print([[>>> The Firestorm Event lib has successfully loaded.]]) end end (( Passo 2 ))
      Abra o arquivo ( data/lib/lib.lua ) e adicione esta linha:
      dofile('data/lib/fire_storm.lua')  (( Passo 3 ))
      Abra o arquivo ( data/movements/movements.xml ) e adicione esta linha:
      <movevent event="StepIn" actionid="64500" script="fire_storm.lua" /> (( Passo 4 ))
      Vá para a pasta ( data/movements/scripts ) e crie um novo arquivo.lua ( fire_storm.lua )
      Copie e cole o seguinte código nesse novo arquivo.lua
      function onStepIn(creature, item, position, fromPosition) local player = creature:getPlayer() if player then if #FSE:GetPlayers() >= FSE.players.max then player:teleportTo(FSE.getTemplePosition, false) FSE.getTemplePosition:sendMagicEffect(CONST_ME_TELEPORT) else player:teleportTo(FSE.teleport.destination, false) FSE.teleport.destination:sendMagicEffect(CONST_ME_TELEPORT) if not player:getGroup():getAccess() then player:sendTextMessage(MESSAGE_EVENT_ADVANCE, [[Welcome to the Firestorm Event, you have to survive the rain of fire to win.]]) else player:sendTextMessage(MESSAGE_EVENT_ADVANCE, [[Welcome, administrators can only participate as spectators.]]) end end else creature:teleportTo(fromPosition, false) end return true end (( Passo 5 ))
      Faça o evento começar em um determinado horário!
      Você abre o arquivo ( data/globalevents/globalevents.xml ) e adicione esta linha:
      <globalevent name="Firestorm Event" time="12:00:00" script="fire_strom.lua" /> (( Passo 6 ))
      Crie um novo arquivo.lua dentro da pasta ( data/globalevents/scripts/ ) -> ( fire_storm.lua )
      e adicione este código dentro desse arquivo:
      function onTime(interval) FSE:Init() return true end (( The End ))
      Aproveite
       
      (( Others ))
      FSE:Init() | Para iniciar o evento.
      FSE:Stoped() | Para parar o evento.
       
      (( REF IMAGES ))
      | https://prnt.sc/m2a6ov |
      | https://prnt.sc/m2a6gf |
      | https://prnt.sc/m2a7t5 |
       
    • Por vankk
      Eu tinha esse evento muito tempo aqui no meu Pen Drive (para ser mais específico 4 anos), eu vou mudar ele para 1.2 amanha, entao nao me interessa a versao 0.4 mais. Nao sei se esta funcionando, nao tenho mapa. E nao vou explicar configuracoes, se voce nao souber configurar esse evento, voce nao merece te-lo em seu servidor!! Entao esta ai o code:

      login.luaregisterCreatureEvent(cid, "TBEventC") registerCreatureEvent(cid, "TBEventS") registerCreatureEvent(cid, "TBEventO") tb.lualocal config = { base = {{x=121,y=126,z=7}, {x=142,y=149,z=7}}, -- team1 base, team2 base teamStorage = 49595, fragStorage = {49596, 49597} } function addFrag(id) return setGlobalStorageValue(config.fragStorage[id], math.max(1, (getGlobalStorageValue(config.fragStorage[id])+1))) end function getFragsTB(id) return getGlobalStorageValue(config.fragStorage[id]) == -1 and 0 or getGlobalStorageValue(config.fragStorage[id]) end function getTeam(cid) return getPlayerStorageValue(cid, config.teamStorage) == -1 and 0 or getPlayerStorageValue(cid, config.teamStorage) end function onCombat(cid, target, lastHit, flags) if not(isPlayer(cid)) or not(isPlayer(target)) then return true end if getTeam(cid) ~= 0 and getTeam(cid) == getTeam(target) then return doPlayerSendCancel(cid, "You may not attack teammates.") and false end return true end function onStatsChange(cid, attacker, type, combat, value) if combat == COMBAT_HEALING then return true end if not(isPlayer(cid)) or not(isPlayer(attacker)) then return true end if isMonster(attacker) and getTeam(cid) ~= 0 then return false end if isMonster(attacker) then return true end if getTeam(cid) ~= 0 and getTeam(cid) == getTeam(attacker) then return doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You may not attack teammates.") and false elseif getTeam(cid) == 0 then return true end if type ~= STATSCHANGE_HEALTHLOSS then return true end if value >= getCreatureHealth(cid) then doTeleportThing(cid, config.base[getTeam(cid)]) doSendMagicEffect(getThingPos(cid), 10) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) addFrag(getTeam(attacker)) doPlayerSendTextMessage(attacker, MESSAGE_INFO_DESCR, "You killed ".. getPlayerName(cid) .." and earned a frag for your team. Your team now has ".. getFragsTB(getTeam(attacker)) .. " frags.") doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You were owned by ".. getPlayerName(attacker) ..".") return false end return true end function onOutfit(cid, old, current) if getTeam(cid) ~= 0 then return doPlayerSendCancel(cid, "You cannot change your outfit here.") and false end return true end globalevents
      tbevent.lualocal config = { tpPos = {x=92,y=118,z=7}, -- where tp happends tpToPos = {x=130,y=130,z=7}, -- tp p onde minutes = 1, -- minute area = {{x=121,y=126,z=7},{x=142,y=149,z=7}}, -- top left and bottom right corner of fight area waiting = {{x=121,y=126,z=7},{x=142,y=149,z=7}}, -- top left and bottom right corner of waiting arena needed = 2, -- minimum players timeToEnd = 30*1000, -- time to end base = {{x=121,y=126,z=7}, {x=142,y=149,z=7}}, -- team1 base, team2 base names = {"Alliance", "Horde"}, -- team names outfit = {{132, 136, 40},{132, 136, 160}}, -- outfits teamStorage = 49595, fragStorage = {49596, 49597}, fragsToWin = 3, -- frags to win outfitStorage = 49598 } function getFragsTB(id) return getGlobalStorageValue(config.fragStorage[id]) == -1 and 0 or getGlobalStorageValue(config.fragStorage[id]) end function getTeam(cid) return getPlayerStorageValue(cid, config.teamStorage) == -1 and 0 or getPlayerStorageValue(cid, config.teamStorage) end function setTeam(cid, team) local o = getCreatureOutfit(cid) setPlayerStorageValue(cid, config.outfitStorage, "{lookType=" .. o.lookType .. ", lookHead=" .. o.lookHead .. ", lookAddons=" .. o.lookAddons .. ", lookLegs=" .. o.lookLegs .. ", lookBody="..o.lookBody .. ", lookFeet=".. o.lookFeet.."}") doCreatureChangeOutfit(cid, {lookType = config.outfit[team][getPlayerSex(cid)+1], lookHead = config.outfit[team][3], lookAddons = 3, lookLegs = config.outfit[team][3], lookBody = config.outfit[team][3], lookFeet = config.outfit[team][3]}) return setPlayerStorageValue(cid, config.teamStorage, team) end function winner(id) if isInArray({1,2}, id) then doBroadcastMessage(config.names[id] .. " has won the Team Battle event.") for _, cid in pairs(getPlayersOnline()) do if getTeam(cid) == id then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Your team has won the Team Battle event.") local rand = math.random(1,3) if rand == 1 then doPlayerAddItem(cid, SOFTBOOTS_ID, 1) elseif rand == 2 then doPlayerAddItem(cid, 2160, 10) else doAddPoints(cid, 5) end else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Your team has lost the Team Battle event.") end end else doBroadcastMessage("No one won the Team Battle event. DRAW") end for _, cid in pairs(getPlayersOnline()) do if getTeam(cid) ~= 0 then doTeleportThing(cid, getTownTemplePosition(1)) doSendMagicEffect(getThingPos(cid), 10) setPlayerStorageValue(cid, config.teamStorage, -1) setGlobalStorageValue(5474578, -1) doCreatureChangeOutfit(cid, loadstring("return " .. getPlayerStorageValue(cid, config.outfitStorage))()) end end end function areaPlayers(c) local t = {} for x = c[1].x, c[2].x do for y = c[1].y, c[2].y do for z = c[1].z, c[2].z do local tmp = getThingFromPos({x=x,y=y,z=z,stackpos=253}) if tmp.uid > 0 and (isPlayer(tmp.uid)) then table.insert(t, tmp.uid) end end end end return t end function endTB(z) if z >= config.timeToEnd then local w = getFragsTB(1) == getFragsTB(2) and 3 or getFragsTB(1) > getFragsTB(2) and 1 or 2 return winner(w) elseif getFragsTB(1) ~= getFragsTB(2) then if getFragsTB(1) >= config.fragsToWin then return winner(1) elseif getFragsTB(2) >= config.fragsToWin then return winner(2) end end addEvent(endTB, 25, z+25) end function setTeams(cid, team) local pos = config.base[team] if not(isPlayer(cid)) then return true end doTeleportThing(cid, pos) doSendMagicEffect(pos, 10) setTeam(cid, team) end function startTB() doRemoveItem(getTileItemById(config.tpPos, 1387).uid) local ppl = areaPlayers(config.waiting) for i = 1, #ppl do local level = getPlayerLevel(ppl[i]) if not(level >= 150) then -- LEVEL HERE doTeleportThing(ppl[i], getTownTemplePosition(1)) doSendMagicEffect(getThingPos(ppl[i]), 10) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "To fight here must be level 150.") end end ppl = areaPlayers(config.waiting) if #ppl%2 == 1 then local r = ppl[math.random(#ppl)] doTeleportThing(r, getTownTemplePosition(1)) doSendMagicEffect(getThingPos(r), 10) doPlayerSendTextMessage(r, MESSAGE_INFO_DESCR, "Sorry, but you were kicked from the event for balancement.") end ppl = areaPlayers(config.waiting) if #ppl >= config.needed then for p = 1, #ppl/2 do addEvent(setTeams, 10*1000, ppl[p], 1) for i = 10, 1, -1 do addEvent(doPlayerSendTextMessage, (10-i)*1000, ppl[p], MESSAGE_INFO_DESCR, "Team Battle event will start in " .. i .. " seconds.") end end for p = #ppl/2+1, #ppl do addEvent(setTeams, 10*1000, ppl[p], 2) for i = 10, 1, -1 do addEvent(doPlayerSendTextMessage, (10-i)*1000, ppl[p], MESSAGE_INFO_DESCR, "Team Battle event will start in " .. i .. " seconds.") end end addEvent(endTB, 10*1000, 0) return doBroadcastMessage("Team Battle event started.") end for i = 1, #ppl do doTeleportThing(ppl[i], getTownTemplePosition(1)) doSendMagicEffect(getTownTemplePosition(1), 10) doPlayerSendTextMessage(ppl[i], MESSAGE_INFO_DESCR, "There were not enough players") end doBroadcastMessage("Team Battle failed to start, because there were not enough players.") setGlobalStorageValue(5474578, -1) end function onTime() setGlobalStorageValue(config.fragStorage[1], -1) setGlobalStorageValue(5474578, 1) setGlobalStorageValue(config.fragStorage[2], -1) doBroadcastMessage("Team Battle event will start in " .. config.minutes .. " minutes. The teleporter is open now. ") doCreateTeleport(1387, config.tpToPos, config.tpPos) for m = config.minutes-1, 0, -1 do if m == 0 then addEvent(startTB, config.minutes*60*1000) else addEvent(doBroadcastMessage, (config.minutes-m)*60*1000, "Team Battle event will start in " .. m .. " minutes.") end end return true end Créditos: Desconhecido.


      Yours VANKK;
    • Por Gaspar085
      Sinopse - World Of Deads é um jogo MMORPG baseado em um pós apocalipse zumbi, no ano de 2019 um virus conhecido por Genesis Covid, teria se espalhado e devastado toda a terra, e dentro do jogo você irá encontrar vários grupos de sobreviventes, que lutam para sobreviver mediante as circunstância, com a esperança que um dia tudo isso vai acabar.
       
      Quem somos? - Somos amantes de jogos de sobrevivência, tentando sair um pouco do padrão de Naruto, Poketibia, Digimon, Dbo, dentre outros, alguns já conhecem a gente, outros não... já jogamos e conhecemos, alguns Tibia que envolvia zombie, mas hoje em dia nenhum está mais online, e a gente viu que muitos gostam desse estilo de jogo, então decidimos dar inicio ao World OF Deads.
      Nossa equipe é forma no momento apenas por dois integrantes, Sendo um programador e um Mapper.
       
      Programador - Adriano SwaTT @Adriano SwaTT
      Mapper - Gaspar @alaogaspar
       
      Qual base estamos usando? - Estamos usando a TFS 1.3,  100% clean, leve, sem lag... Tudo está sendo criado do zero, Estamos desenvolvedo para PC e Mobile.
       
      Quais sistemas já tem implementado? 
       
      System Pilhagem - Um sistema que te permite vasculhar moveis, lixo, carros e etc, para encontrar itens melhores e se fortalecer. 
      System Real Vision Angle- Sistema onde você só verá os zombies que estão no seu campo de visão de 180°, ou seja se você estiver de costa para um zombie não o verá chegando, a não ser que se vire... colocamos para dar um impacto mais realista no jogo.
      System Real Shot Angle- Uma melhoria no sistema de tiro, feito para ficar mais realista.
      Dentre outros sistemas básico como, armas, recarga e etc, também já estão implementado.
       
      O que está na fila?
      Sistema de construção de abrigo, fortalezas e etc.
      Sistema para dominar abrigos, fortalezas.
      Não irei colocar muita coisa aqui, quaisquer dúvida entrem no nosso discord que está no final do post.
       
       
      Tem vagas para ingressar no projeto ?
      Sim, temos vagas... mas apenas para pessoas acima de 18 anos, com experiencia.
       
      Mapper - 1 Vaga.
      Sprites - 2 Vagas.
      Programador - 1 Vaga.
      Web Master - 1 Vaga.
      Designer - 1 Vaga.
      OTclient Maker - 1 Vaga
       
      Prints do jogo?
       
       
       
      Quer saber mais do projeto? entre no nosso Discord.
      Quer ser parte da equipe? Entre no nosso discord e chamem o ADM no pv.
       
       
      OBRIGADO PELA ATENÇÃO, AGUARDO TODOS VOCÊS NESSA AVENTURA.
       
       
       
        Redes sociais 
       
      Facebook: https://www.facebook.com/worldofdeads
      Discord: https://discord.gg/bcyvzpntPE
       
       
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo