Líderes
Conteúdo Popular
Exibindo conteúdo com a maior reputação em 03/04/12 em %
-
[Encerrado] [Pokemon] Dúvidas? - Pda
Z1kam3m0 e um outro reagiu a Nibelins por um tópico no fórum
@Snokiuthu mano tu leu as pagina anterior? pelo que eu vi você não leu da uma olhada nas paginas anteriores faz o que eu expliquei ver se o problema continua2 pontos -
Oláá xtibianos Hoje Irei postar meu mapa do Subwat KaMiKaZe v6.1 ... Aii Vaii SS : City : ARENA Gigante : OBS : Para Não Ficar Mt Pvp na City xD da leg ! Alterarei Mais Ná Proxima Upadade do Server ! OBS : Vou Criar Novos Iten KaMiKaZe Itens Baixen : Download,Msn e Scan \/ Agradeçimentos Qualze Esqueçii ! 40% Subwat Pelo Mapa V.16 40% [ADM] Kamikaze 20% Euu Nadotti : [DoNo] KaMiKaZe V6.1 Abre Isso Aki \/ Sempre TRICOLOR ! Meus Trabalhos ".1 ponto
-
Poketibia Erondino Site Server V11 (Boost Sistema,2 Continentes Etc..)
irandasilvaalve reagiu a ErondinoSite por um tópico no fórum
Iai Xtibianos vim trazer meu Poketibia Erondino Site Server v11 com varios sistemas novos,bugs corrigidos etc.... vamo ver o que fiz de novo nessa versao 11.2 v11.2 (1 a 49 itens listados) 1-Colocado boost sistema (Boost sistema aumenta o ataque dos pokemon pelos moves m1,m2,m3 etc.. n aumenta vida speed etc... 2-Colocada novas sprites nos itens: >Lendaria box >Shiny box >Johto Box >Shiny rod 2 >Shiny rod 1 >Box Thirty 3-Colocado sistema m1 a m12 nos pokemon: >Shiny aerodactyl >Shiny Snorlax >Shiny victreebel >Shiny Beedrill >Shiny Alakazam >Shiny Dragonair >Shiny Dragonite 4-Concertado pokemon que vinha ne box bugado: >Shiny zubat >Shiny Seadra >Shiny Muk 5-Acrescentado na shiny box >Shiny aerodactyl >Shiny Snorlax >Shiny victreebel >Shiny Beedrill >Shiny Alakazam >Shiny Dragonair >Shiny Dragonite 6-Tirado o bug da invisibiladade do gengar 7-Concertado loot: >Eevee 8-Acrescentado ou concertado moves nos pokemon: >Abra >Beedrill >Clefairy >Chansey >Blissey >Dratini >Dodrio >Eevee >Exeggcute 9-Concerta o bug das novas ball que n dava para heala 10-Colocado um npc de boost no 1 andar de cada templo 11-Posto um npc de task por itens no laboratorio do bill onde o player tem q dar para ele 30 feather e em troca ele da 10 hd e 500 de exp 12-Colocado um npc de task por itens na cabana indo para pewter quest onde o player tem q levar 100 stone orb e em troca recebera 1 rock stone e 5000 de exp 13-Adicionados novas mensagens no global events que ira ajudar os players durante o jogo 14-Colocado shiny estaca magica no server... 15-Trocado os itens das estacas magicas agora a estaca magica é o msm iten so q sem o brilho e a shiny estaca magica contem brilho 16-Colocado Scyther na estaca magica 17-Trocado o premio da quest das ball pois ninguem vai fazer ela posto para ganhar 15 ultra ball e 30 super ball 18-Fortalecido os pokemons >Shiny Scyther >Elite Hitmonlee >Elite Hitmonchan 19-Concertado o loot e a exp nos pokemon johto (nas hunts) >Aipom >Ampharos >Ariados >Azumarill >Bellossom >Crobat >Croconaw >Delibird >Donphan >Dunsparce >Elekid >Feraligatr >Flaaffy >Furret >Girafarig >Granbull >Hoothoot >Houndoom >Larvitar >Ledian >Ledyba >Mareep >Marill >Meganium >Misdreavus >Noctowl >Phanpy >Pichu >Pineco >Politoed >Scizor >Sentret >Snubbull >Spinarak >Stantler >Steelix >Sunkern >Totodile >Typhlosion >Tyranitar obs-Essas sao as hunts de johtos ja existentes no 1 continente... 20-Facilitado a quest da box 2... 21-Dificultado a quest de lvl 30 e tirado o tp para ir embora pois pela porta da para ir embora... 22-Adicionado um segundo continente com novas cidades onde os pokemons e as ilhas q fica ao redor das cidades sao johtos obs-As casas das cidades n da para comprar obs2-Mapa feito por betinhowz666 tirei as hunts kanto q tinha e posto hunts johtos 23-Adicionado um bloco de notas para saber quais johtos tem nos 2 continentes 24-Adicionado um npc que joga 21 e jogo dos 6 em cima do cassino em celadon e umas placas explicando como jogar (o jogo n ganha nem pede muita grana é mais para diversao ) 25-Colocado evoluçoes nos pokemons johto que adicionei sistema m1 na v10 26-Colocado control mind no haunter 27-Colocado para vim pokemons johto nas rods: >Old rod >Advanced Rod >Shiny rod 1 >Shiny Rod2 28-Agora os npcs saffari da 30 saffari ball ao entrar no saffari 29-Aumentado o preço para o saffari kanto de 300dl para 500dl 30-Colocado para fearow pidgeotto e pidgeot para pegar a pena brilhosa 31-Feito equipe rocket quest onde o giovanni pede uma pena brilhosa em troca de uma box 2 32-Colocado um buero com um caixote em cima no cassino em saffron para dar acesso ao esconderijo da equipe rocker 33-Colocado o giovanni no esconderijo da equipe rocket 34-Deletado a ilha da quest da venom stone quest e posto agua 35-Feito um npc de quest de venom stone ele pede 50 bat wing e em troca ele da 1 venom stone 36-Posto o npc da quest da venom stone em lavender 37-Modificado a area de dodou e dodrio de fuchsia e posto hunts de: >Ponyta >Rapidash >Doduo >Dodrio >Tauros 38-Trocado a localizaçao do npc do saffari johto agora ele se localiza em uma ilha la no continente johto 39-Feito uma ponte na entrada da pewter quest ate uma cidade do 2 continente 40-Expandido a ponte que vai de lavender ate a floresta de vermilion agora ela pode ir tbm ate a floresta de fuchsia 41-Feito uma ball chamada "mega ball" ela pega todos pokemon de primeira a fomra dela é de pokeball o efeito on e fail cath tbm mas quando captura vira uma dark ball (Como minha equipe viajo e me mando uma master ball inutil foi o unico jeito q achei espero que compreendem e aguarde a proxima versao com ela arrumada ) obs- Id dela é 2149 42-Configurado o arquivo cath para fica mais facil pega os pokemons 43-Concertado o comando /town pois algumas cidades n tinha ficando... /town 1 --> Saffron /town 2 --> Cerulean /town 3 --> Lavender /town 4 --> Fuchsia /town 5 --> Celadon /town 6 --> Viridian /town 7 --> Cinnabar /town 8 --> Pewter /town 9 --> Vermilion /town 10 --> Pallet /town 11 -->Ilha inicial 44-Trocado a first city que era parllet por uma ilha obs-Essa ilha so server para pega o pokemon inicial e o kit ao sair dela nao tem volta 45-Feito uma ponte de pallet ate cinnabar 46-Feito quest da shiny estaca magica 47-Colocado um navio na praia de cerulean com acesso para a ilha de pigeotto 48-Colocado um navio na ilha de pigeotto para ir para a praia de cerulean obs-Ao ir na direçao do navio se vai direto para a ilha depois fasso um sistema para demorar chega um pouco 49-Tirado a lendaria box quest Download do Poketibia Erondino Site Server v11.2: clike aki Scan do server: Aki Versao Atualizada v13.1: http://www.xtibia.com/forum/topic/210168-poketibia-erondio-site-e-suas-versoes/page__fromsearch__1 Créditos v11.2: Erondino Nic Loeher Urbanchaos Caioo Gazulina (Pelo client) betinhowz666 (usei seu mapa para o 2 continente) obs-Vlw ai ekipe versao fico muito mais massa com suas ajudas obs2-Urbanchaos que pena que vc tem q sair da ekipe mas vc sempre será bem vindo de volta obg pelo seu trabalho na v111 ponto -
1 ponto
-
[Gesior Acc] Server Offline E 0 Players Online
TuliohSilva reagiu a thefog por um tópico no fórum
Olá, muitos usuários do Gesior acc maker ja perceberam que no canto superior direito aparece Server Offline, alguns conseguiram arrumar, mais apartir de então começou a aparecer 0 Players Online ... vamos lá com meu 1º Tutorial ! 1º Para arrumar esse bug do ''Server Offline'', basta ir no arquivo em \xampp\htdocs\layouts\tibiacom\layout.php nele, encontre if($config['status']['serverStatus_online'] == 1) 2º substituia por if($config['status']['serverStatus_online'] >= 0) Pronto! Problema do Server Offline Resolvido! mais pera aí ! de que adianta se agora ta aparecendo 0 players online? 3º Agora, adicione ainda no layout.php, antes da tag <head> o seguinte script: <?PHP $update_interval = 10; if(count($config['site']['worlds']) > 1) { $worlds .= '<i>Select world:</i> '; foreach($config['site']['worlds'] as $id => $world_n) { $worlds .= ' <a href="?subtopic=whoisonline&world='.$id.'">'.$world_n.'</a> , '; if($id == (int) $_GET['world']) { $world_id = $id; $world_name = $world_n; } } $main_content .= substr($worlds, 0, strlen($worlds)-3); } if(!isset($world_id)) { $world_id = 0; $world_name = $config['server']['serverName']; } $order = $_REQUEST['order']; if($order == 'level') $orderby = 'level'; elseif($order == 'vocation') $orderby = 'vocation'; if(empty($orderby)) $orderby = 'name'; $tmp_file_name = 'cache/whoisonline-'.$orderby.'-'.$world_id.'.tmp'; if(file_exists($tmp_file_name) && filemtime($tmp_file_name) > (time() - $update_interval)) { $tmp_file_content = explode(",", file_get_contents($tmp_file_name)); $number_of_players_online = $tmp_file_content[0]; $players_rows = $tmp_file_content[1]; } else { $players_online_data = $SQL->query('SELECT * FROM players WHERE world_id = '.(int) $world_id.' AND online > 0 ORDER BY '.$orderby); $number_of_players_online = 0; foreach($players_online_data as $player) { $number_of_players_online++; $acc = $SQL->query('SELECT * FROM '.$SQL->tableName('accounts').' WHERE '.$SQL->fieldName('id').' = '.$player['account_id'].'')->fetch(); if(is_int($number_of_players_online / 2)) $bgcolor = $config['site']['darkborder']; else $bgcolor = $config['site']['lightborder']; $rs = ""; if ($player['skulltime'] > 0 && $player['skull'] == 3) $rs = "<img style='border: 0;' src='./images/whiteskull.gif'/>"; elseif ($player['skulltime'] = $player['skull'] == 4) $rs = "<img style='border: 0;' src='./images/redskull.gif'/>"; elseif ($player['skulltime'] = $player['skull'] == 5) $rs = "<img style='border: 0;' src='./images/blackskull.gif'/>"; $players_rows .= '<TR BGCOLOR='.$bgcolor.'><TD WIDTH=10%><image src="images/flags/'.$acc['flag'].'.png"/></TD><TD WIDTH=70%><A HREF="?subtopic=characters&name='.urlencode($player['name']).'">'.$player['name'].$rs.'</A></TD><TD WIDTH=10%>'.$player['level'].'</TD><TD WIDTH=20%>'.$vocation_name[$world_id][$player['promotion']][$player['vocation']].'</TD></TR>'; } } ?> 4º E onde estiver (em baixo do if que você alterou no passo 1) echo $config['status']['serverStatus_players'].'<br />Players Online'; Substitua por echo ''.$number_of_players_online.'<br />Players Online'; 5º REP+ ! Pronto ! Foi usado o Gesior 0.3.8 Para quem ta desconfiando que eu copiei, o script que é para colocar antes da tag <head> foi tirado do whoisonline.php ! mais tem gente que nunca nem imaginou em fazer isso! TUTORIAL 100% FEITO POR MIM, SE FOR POSTAR EM OUTRO FORUM, COLOQUE CRÉDITOS !1 ponto -
[ Tutorial ] Area Vip ( Premmium Tile )
jacklecler reagiu a lelelord por um tópico no fórum
Primeiro tutorial meu Premmium Tile 1º - Vá a pasta data\movements\scripts, crie um arquivo que chame premium tile.lua Insira: Laranja = Lugar para onde o player sera teletransportado se ele nao for premmium ( Mude para a possição, que vc quiser colocar X,Y,Z) Azul Escuro = Mensagem que aparecerá para o player caso ele nao seja premmium Vermelho = Unique ID do piso ( Inventa qual quer um do 1000 ao 65324 ) Se ele for premmium ele passa de boa! 2º - Vá em movements.xml Insira: Vermelho = Unique ID do piso ( Coloque o mesmo da que vc coloco no script de cima ) Fiz o mais simples possivel pra todo mundo entender! Galera não esqueca o REP+ Porfavor!1 ponto -
Cooldown Para Spells
Tiag017 reagiu a Demonbholder por um tópico no fórum
Faaala galera! Tudo bom? Eu estava olhando uns tutoriais por ai, os quais ensinavam como colocar cooldown, ou tempo de exaustão, entre as magias. O problema é que, em todos estes, utilizava-se 1 storage para cada spell. Você pode vir a me perguntar: "qual o problema disso?". O problema é que, quanto mais storages você utiliza, mais são as chances de ocorrer bugs em seu servidor graças ao mesmo storage sendo usado ao mesmo tempo. Agora que eu já expliquei as vantagens de usar apenas 1 storage, podemos começar a explicar as funções. Antes de mais nada, vamos a elas: Lib function getCooldown(cid, spellname) local storage = tostring(getPlayerStorageValue(cid, 40001)) local spellname = '"' .. spellname .. '"' return string.find(storage, spellname) and tonumber(string.match(storage, "%d+", string.find(storage, spellname) + #spellname)) - os.time() or 0 end function setCooldown(cid, spellname, seconds) local storage = getPlayerStorageValue(cid, 40001) == -1 and "" or tostring(getPlayerStorageValue(cid, 40001)) local spellname = '"' .. spellname .. '"' if string.find(storage, spellname) then local gsub = string.gsub(storage, string.match(storage, "%d+", string.find(storage, spellname) + #spellname), tostring(os.time() + seconds)) setPlayerStorageValue(cid, 40001, gsub) else setPlayerStorageValue(cid, 40001, storage .. spellname .. " " .. tostring(seconds + os.time()) .. " ") end end function isExhausted(cid, spellname) return getCooldown(cid, spellname) > 0 end Certo, você pode adicionar isto em data/lib/function.lua, ou, pode criar um arquivo com o formato .lua nesta mesma pasta e nomeá-lo para qualquer coisa. -- Agora vamos explicar as funções: *As informações em itálico são apenas por curiosidade: function getCooldown - Bom, esta função vai retornar o tempo, em segundos, do cooldown da mágia. Seus argumentos são o uid do jogador e o nome da mágia. Cuidado, Exura é diferente de exura. Se não houver cooldown para a magia no jogador, retorna 0. Utilizei o storage 40001 para colocar os cooldowns. Você pode perceber que ele adiciona uma string ao storage, ficando, por exemplo, assim: "Exura" 1308376293 "Exori" 1308376393 As aspas são para precaver bugs como Exura e Exura gran. O número ao lado é o cooldown somado a função os.time() que é o segundos retornados pela CPU na hora que o cooldown foi adicionado. function setCooldown - Aqui teremos a função que vai adicionar o cooldown ao jogador. Seus argumentos são o uid do jogador, o nome da magia e os segundos de cooldown. A função vai checar se já há o cooldown no storage do jogador. Se já houver, a função simplesmente troca este velho tempo pelo novo. Se não houver, ela simplesmente adicionar no final da string o nome da spell e o tempo mais a função os.time. function isExhausted - Por ultimo, temos a função que retorna se o jogador está, ou não, exausto de usar aquela magia. Retorna TRUE se o cooldown for acima e zero, caso contrário, retorna FALSE. -- Simples não? Vamos a um exemplo, usaremos o script do exevo mas san (Divine Caldera): local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HOLYAREA) setAttackFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 4, 6) local area = createCombatArea(AREA_CIRCLE3X3) setCombatArea(combat, area) function onCastSpell(cid, var) return doCombat(cid, combat, var) end Para adicionar o cooldown, simplesmente fazemos algumas alterações, deste jeito: local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HOLYAREA) setAttackFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 4, 6) local area = createCombatArea(AREA_CIRCLE3X3) setCombatArea(combat, area) function onCastSpell(cid, var) if isExhausted(cid, "exevo mas san") == FALSE then return doCombat(cid, combat, var), setCooldown(cid, "exevo mas san", 10) end return FALSE, doPlayerSendCancel(cid, "You are exhausted.") end Observe o que muda: function onCastSpell(cid, var) if isExhausted(cid, "exevo mas san") == FALSE then return doCombat(cid, combat, var), setCooldown(cid, "exevo mas san", 10) end return FALSE, doPlayerSendCancel(cid, "You are exhausted.") end Esta será a base de todas as spells, você só tem que trocar o nome e o tempo. -- Avisem se encontrarem algum bug comprometedor. Abraços.1 ponto -
1 ponto
-
[Movements / Creaturescripts] - { Vip Items System }
kelvinvictor reagiu a jhon992 por um tópico no fórum
Hoje vamos criar um Sisteminha para que só jogadores vips possam usar determinados items! Vamos denominar esse sistema de [Vip Items System]. Então vamos começar com a brincadeira! ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Vai em data/movements/script e duplica um arquivo dessa pasta e nomeie para "itemvip" sem aspas, abra-o e cole: local storageVIp = 55555 -- mude a storage vip, conforme a storage do sistema vip do seu otserv! function onEquip(cid, item, slot) if getPlayerStorageValue(cid, storageVIp) <= 0 then doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Apenas players vip podem usar essa arma!") return FALSE end return TRUE end Agora vai em data/movements/movements.xml abre e adicione a tag: <movevent type="Equip" itemid="id do seu item" slot="hand" event="script" value="itemvip.lua"/> E se quiser adicionar mais armas vip, sóh duplica a linha acima e muda o id do item e o slot! Tipos de Slots: head armor legs hand shield ring necklace feet pickupable ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Agora vamos fazer um script para que quando a vip acabe, o item saia do slot! Abra data/creaturescripts/scripts e duplica um arquivo, renomeia para "itemlogin" sem as aspas e nele cole: function onLogin(cid) itensVip = { "2408", "8850", "7413" } -- itens vips if (getPlayerStorageValue(cid, 55555) <= 0) then for i=0, #itensVip do for b = 1,9 do if (getPlayerSlotItem(cid, b) == itensVip[i]) then doPlayerRemoveItem(cid, itensVip[i]) local bag = doPlayerAddItem(cid, 1988, 1) doAddContainerItem(bag, itensVip[i], 1) end end end end return TRUE end E por último, abra data/creaturescripts/creaturescripts.xml e cole a tag: <event type="login" name="ItemLogin" event="script" value="itemlogin.lua"/> Pronto, é isso aew. Terminamos nosso [Vip Items System]!1 ponto -
[Tópico Oficial] Dúvidas Escolares
Pedro Menezes reagiu a masquente por um tópico no fórum
Vi que algumas pessoas já fizeram tópicos sobre dúvidas escolares. Então para não bagunçar, criei esse tópico. Serve para sanar suas dúvidas, mas, com algumas regras: 1 - Respeito. Ninguém nasceu sabendo, todo mundo pode ter a dúvida que quiser 2 - Dúvidas relacionadas à História podem ser sanadas usando o Google e a Wikipédia, portanto, é só dar uma procurada e você vai achar. 3 - Se vai responder alguma dúvida (em física, química, matemática ou geometria), poste a resolução. 4 - Agradeça depois da dúvida ter sido sanada :-) Poste sua dúvida aqui!1 ponto -
Bom depois de mais de 6 meses sem atualizar O Subwat Server,venho trazer-lhes o Subwat V21 Na versão 9.44 Com muitas coisas Novas!! Base Do Server:Crystal Server. Informaçoes: Map Size:28MB Monstros:quase todos os monstros do server são próprios ou editados! Spells:Spells globais 9.44+ Spells suBWat v20. Items:Os items eu tive que mudar Pois o meu item.otbm que eu uso no subwat era diferente dos demais servers armas Subwat no Npc Subwat Seller. Mount System:Digite !mount Nome da montaria com 1 Mount doll e você ganha a montaria! Addon System:Todos os addons novos compraveis com addon doll! Comandos:!buyvip compra VIP normal e !buypremium compra a segunda VIP e habilita o uso de montaria e outras vantagens premium. Comandos:!buyvida e !buymana ja normais do SUBWAT. removido:compra de skills,vários bugs do map. Para Adicionar o comando !bp vá em spells e em baixo de alguma spell coloque está tag <conjure name="Conjure backpack" words="!bp" lvl="3" mana="5" soul="3" conjureId="10522" conjureCount="1" exhaustion="100" needlearn="0" function="conjureItem"> </conjure> SENHA DO GOD:riot/123456 IMAGENS: http://imageshack.us...wattemplo1.jpg/ http://imageshack.us...wattemplo1.jpg/ http://imageshack.us...wattemplo1.jpg/ DOWNLOAD: http://www.sendspace.com/file/3xa1uo Scan: https://www.virustot...additional-info Créditos: Subwat Tryller Se você gostar recomende =D tópico Atualizado 04/03/2012 as 15:49 fiz um pequeno updatezinho agora msm corrigi um bugzinho quem baixou antes das 15:50 baixe novamente. =D1 ponto
-
Eu falo> E a dor de cabeça ele: que dor de cabeça eu:essa ai do uma cabeçada nele1 ponto
-
Valeu ae cara obrigado1 ponto
-
Subwat Vllw Mano Vindo De Vc Isso é um Elogio Mt Roox Mano Vllw Por Tudo !! ... Dáá Um +REP Ai ! Ali No Cantin Rapidao !1 ponto
-
[Encerrado] [Pokemon] Dúvidas? - Pda
MarcosFraga reagiu a kois por um tópico no fórum
TA ae DAI O npc Gostou Rep+1 ponto -
@mario21 caro amigo vou tenta explica a você a versão que você esta usando [pokemon flash] e totalmente diferente do pokemon PDA todo sistema, item, tudo que você imagina mesmo que você peguei alguma coisa dessa versão Pokemon PDA vai ser inutio para você usa apenas vai buga seu servidor você tem duas escolha ou continua com a versão Pokemon Flash ou muda pra Pokemon PDA onde esse topico e voltado porque fica dificil mesmo o pessoal querendo ajuda porque são versões diferente da outra não quero fala pra você sai fora de topico apenas quero te ajudar a entender melhor a situação que nesse momento esta acontecendo porque quero evita que você seja banido pois ja vi gente ser banido por muito menos se você deseja monta um servidor você precisa decide que versão usa se escolhe pokemon flash você precisa tira duvidas onde você baixou pois a pessoa que postou vai lhe ajuda melhor se no caso decidir usa pokemon PDA tem certeza que o você esta no lugar certo pra tira suas duvidas e sempre vai ter gente pra te ajudar1 ponto
-
[8.54] Naruto Seven / Client Descompilado [Download]
Avuenja reagiu a ThiagoMartinsMR por um tópico no fórum
Bom como não tem mais esse site usem esse meu. De nada, Clique.1 ponto -
[Modern Aac]- Web Site Poketibia 2.0
angeldoido reagiu a Nibelins por um tópico no fórum
@Snokiuthu vou fazer um mini tutor aguarda ai que jaja eu posto @mario21 eu tenho o sistema de shop para Modern AAC mais ele exite um bug não tem como manda pontos manualmente so recebe os pontos tireto pelo sie a pois o pagamento vou tenta arruma para poder disponibilizar pra você1 ponto -
{Duvidasimples} Como Registra.lua
DuuhCarvalho reagiu a jhon992 por um tópico no fórum
Da para usar esse tipo de código em um Creaturescript! Existem varios tipos posiveis de creaturescripts. Alguns tipos: onDeath -- executa ao morrer. onAttack -- executa ao atacar. onCombat -- semelhante ao onAttack. onLogin -- executa ao logar. Para criar esse tipo de script, primeiramente vai na pasta data/creaturescripts/scripts e duplica um arquivo e salve com "nomedesejado"; Você vai fazer uma função "onDeath"(ao morrer), para ativar esse seu script. Code vai ficar mais ou menos assim: 1 function onDeath(cid, corpse, killer) 2 if getPlayerLevel(cid) >= 1 then 3 mh = doPlayerAddItem(cid,5943,1) 4 doSetItemSpecialDescription(mh,"This is the heart of ".. getPlayerName(cid) ..", killed at level ".. getPlayerLevel(cid) .." by ".. getPlayerName(killer) ..".") 5 end 6 return true 7 end Numerei as linhas pare melhor intendimento. Linha 1 = Inicio da função onDeath, essa linha recebe algumas informações do player que morreu, como seu id, o id do player que matou e o corpse. '' 2 = Iniciase um if onde verifica se o level do player morto era maior ou igual a 1. Se for verdadeiro, o script executa as linhas 3 e 4, senão pula direto a linha 5. '' 3 = Adiciona um item com o id 5943 ao player morto e salva o uid do item na variavel "mh". '' 4 = Adiciona o texto ao item. "This is the heart of ".. retorna nome do morto ..", killed at level ".. retorna level do morto .." by ".. retorna nome do matador .."." '' 5 = Finaliza o if que se iniciou na linha 2. '' 6 = Retorna a função ao character, sempre use return no final dos seus scripts. '' 7 = Finaliza a função onDeath. Acho que esta bem explicadinho, por fim para funcionamento do seu script precisa adicionar 2 tags: 1º No "creaturescripts.xml" 2º No arquivo "login.lua" Vai em data/creaturescripts/creaturescripts.xml e cole a tag: <event type="death" name="QualquerNome" event="script" value="nomedesejado.lua"/> O nome desejado é o nome com qual você salvou o script. Agora em data/creaturescripts/scripts/login.lua, sempre antes do último return true: registerCreatureEvent(cid, "QualquerNome") QualquerNome é o nome que você adicionou na tag do creaturescripts.xml. Acho que é isso aew, espero ter ajudado. E para auciliar em seus scripts sempre use uma lista de funções como essa: http://www.xtibia.com/forum/topic/138081-lualista-de-funcoes/ E procure por tutoriais e scripts como sua base;1 ponto -
[Encerrado] [Pokemon] Dúvidas? - Pda
sonnefes48 reagiu a Nibelins por um tópico no fórum
@Dudu08267 ta ai o link com o arquivo dat http://www.4shared.c...ketibia_2.html? preciso saber quais corpos estão faltando porque são 400 pokemons se você lista os nomes dos pokemon facilita mais to sem entender pois testei os 100 pokemons johto esta 100% lembrando os corpos so achei um problema que por cina estou arrumando tenhe uns 5 ou 6 pokemon dos johto que estão sem descrição pois não adicionei no item.xml com isso não e erro nos corpos e sim falta adicionar a descrição dos pokemon na hora de da look pois quando vc da look não parece no nome do pokemon e sim item type of 120145 com isso sem descrição @Snokiuthu deleta a pasta monster do seu servidor e colocar a que eu enviei [lembrando não e pra substituir e sim deleta a antiga e coloca a nova] baixe a atualização dos arquivos e usa o dat que coloquei no arquivo lembrando o spr e dat você precisa renomear pois os nome esta deacordo com meu exe então mude pelo nomes que estão no seu cliente creio que seja isso que esta acontecendo com você pois colocou o spr e não renomeo deacordo com seu cliente talvez estaja usando seu spr antigo poriço que os corpos esta saindo errado1 ponto -
Sky, se tu soube-se o tanto que eu demorei pra resolver isso se me dava um beijo! saduhada Passei trabalho, mais agora ta funfando e ja testei aqui! Vê se aew vai funfar néh. function onDeath(cid, corpse, deathList) array = {2160, 2160, 2160, 2160} pos = getCreaturePosition(cid) for i=1, #array do if (getPlayerVocation(cid) == i) then addEvent(removeCorpse,300,pos,array[i]) return true end end return true end function removeCorpse(pos,n) doCleanTile(pos, removeLoaded) doCreateItem(n, 1, pos) return true end1 ponto
-
1 ponto
-
Amuleto Infinito Como Aol !
leandroskt8 reagiu a Vodkart por um tópico no fórum
creaturescript nome do seu script.lua function onPrepareDeath(cid, lastHitKiller, mostDamageKiller) if isPlayer(cid) == true then if isInArray({2196,2130,2131}, getPlayerSlotItem(cid, 2).itemid) then doCreatureSetDropLoot(cid, false) doSendMagicEffect(getCreaturePosition(cid), CONST_ME_HOLYAREA) return TRUE end end return TRUE end login.lua add: registerCreatureEvent(cid, "infinityAmulet") creaturescript.xml <event type="preparedeath" name="infinityAmulet" event="script" value="nome do seu script.lua"/> items.xml <item id="2196" article="a" name="Perfect amulet"> <attribute key="description" value="serve como aol e infinito." /> <attribute key="weight" value="420" /> <attribute key="slotType" value="necklace" /> <attribute key="speed" value="80" /> <attribute key="showattributes" value="1" /> </item> <item id="11387" article="a" name="Perfecty amulet"> <attribute key="description" value="serve como aol e infinito." /> <attribute key="weight" value="420" /> <attribute key="slotType" value="necklace" /> <attribute key="speed" value="80" /> <attribute key="showattributes" value="1" /> </item> <item id="10719" article="a" name="Perfect amuleto"> <attribute key="description" value="serve como aol e infinito nao perde itens red." /> <attribute key="weight" value="420" /> <attribute key="slotType" value="necklace" /> <attribute key="speed" value="150" /> <attribute key="showattributes" value="1" /> </item>1 ponto -
Olá pessoal,venho ao Xtibia através desse post trazer um sistema que eu achei muito legal,encontrei no otland e como nao encontrei aqui resolvi postar,testei em meu server todos gostaram!!! Não sei se ja tem esse sistema postado aqui,se ja tiver me desculpem O Sistema consistem em,quando você digitar o comando,aparecerá um "carro" em você e sairá andando sozinho,para controlar basta usar control + as setinhas,assim que trombar aparece Crashed! e ele some Créditos do criador: Doggynub Créditos pelas auterações: Hudsin,Pinpao,Arkires,DarkVelocity Edit: Versão testada 8.60 Lembrando: A velocidade máxima do carro pode ser configurada,sendo quanto maior o numero menor a velocidade e quanto menor o numero maior a velocidade. :smile_positivo: Modificações: O script que vem no otlando vem com bug(se você está pk e tromba o carro o pk sai, eu e meus amigos arrumamos isso e mais alguns "bugs").Retirado o bug de quando estiver pk trombar o carro e sai o battle(por Hudsin,Arkires e Pinpão) Comandos: !car move: Sumona o carro e começa a andar com a velocidade inicial !car speed: aumenta a velocidade do carro !car slow: diminui a velocidade do carro !car stop: para o carro Obs: Caso você morra usando o carro,quando você nascer nao ira conseguir sumonar de primeira,precisará usar !car stop e ai sim !car move novamente,pois como você morreu usando o carro fica salvo como se ainda estivece nele,dando !car stop ele para e você pode usa-lo novamente. Em Talkactions/Scripts,crie um arquivo.lua com o nome de car.lua e adicione: E em Talkactions.xml adicione: ScreenShot: Divirtam-se e me deem Rep+ :smile_positivo: ahsuaSHUIAUSAIUD1 ponto
-
[Encerrado] Não Estou Conseguindo Logar No Meu Ot Server Com Ip Fixo!ajuda!
kriller12 reagiu a Piabeta Kun por um tópico no fórum
vc usa net compartilhada ou a radio? se for a radio nunca conseguirá se usa net compartilhada procura ajuda sobre o assunto e se nao usa veja se seu modem ta rotiado e ponha no modo de discagem q vc e seus amigos conseguiram conectar normalmente! Ajudei? + rep!1 ponto -
New Server 8.60 24H (Ubuntu)
Vitinhowcq reagiu a HisashiitYamaguti por um tópico no fórum
Caracas, eu achei que não chegaria um dia que eu teria que concordar com grande parte do que o SkyDangerous falou. Além de estar sem rpg, olha para o templo, isso que ele fez no templo é uma coisa muito irreal e me lembra os baiaks editados. Você falou em fazer um mapa próprio. RookGaard é do global, Libert Bay é do Global, aquela ilha nem precisa falar né? Darashia é do global também, e eu acho que eu já vi essa cidade chamada Kronus em algum lugar. Sem ofensas, vocês fizeram uma nova era de Global Editado, pois além disso tudo tem teleports, fala sério véio! Seria bem melhor vocês terem colocado um npc viajante pelo menos, dentro de uma Caravela ou Nau e ele levaria para as ilhas ou cidades, seria bem melhor, pois não achariam que seria sem RPG quando entrarem de primeira. - Systems Você falou em fazer algo sem bugs, colocou os sistemas que já existem, sem ofensas, não sei o que o Xandele está fazendo nesse projeto se todos os sistemas tem aqui postados no xtibia, só precisa dar CTRL + C e CTRL + V, tenho certeza que não durará menos de 5 minutos para colocar eles. - Site Igualzinho global, seria bem melhor ter um web master experiente na equipe. Comentários finais: Acredito que esse seu projeto mesmo se receber apoio do xtibia, não será valorizado pela a maioria, pois existe outros bem melhores, como o Tibia On que já vai ser lançado hoje. Esse seu mapa fala muito sobre o futuro, mas o tibia foi feito para retratar a Idade Medieval, se você tentar fazer algo do futuro, terá que ter um bom spriter, sendo que vocês nem vão ter novos sistemas que seria um bom incentivo. Não apoiaria este projeto, pois mesmo se chegar um grande número de onlines, seram aquelas pessoas que curtem Baiak Extreme, entre outros. -Gustavo Se só o sistema operacional faze-se a diferença, eu coloco um Baiak Extreme on com Linux Ubuntu, mas eu quero divulgação e talvez dedicado. É igual a você querer aprovar este projeto. -SkyDangerous Tem um tutorial no xtibia ensinando a colocar, obviamente o Sistema Operacional irá ajudar na segurança, pois grande parte das pessoas conhecem mais sobre o Windows do que o Linux, ou seja, a probabilidade de houver quedas será menor do que se fosse para o Windows, mas mesmo assim um Anti Nucker, Anti-Ddoss e Anti-Ddoss Personalizado, são indispensáveis.1 ponto -
1 ponto
-
[Encerrado] [Pokemon] Dúvidas? - Pda
NikoBellic reagiu a brun123 por um tópico no fórum
Só um pergunta, vocês preferem que o server tenha cada pokémon com seu respectivo level e atributos, e os pokemons evoluem a partir de level, ou preferem como o antigo SvkE (ou PxG), onde os pokémons não têm level e suas forças dependem do level do treinador, e eles evoluiriam apenas por stones ?1 ponto -
@Viciadorlz, não faltou nada não. Não precisa alterar nada na database, o sistema funciona com storages que são armazenados nos proprios players.1 ponto
-
Tutorial Avançado De Sprites
GuuVicentini reagiu a tomanenem por um tópico no fórum
Recomento que antes leiam o Tutorial postado pelo tomanenem: Mega Curso De Sprites [ÍNDICE] Artigo 1: Realidade do Sprite 1 - Proporção 2 - Coerência 3 - Pintura avançada 4 - Sombreamento Artigo 2: Efeitos de Aparência - Cromagem - Petrificação - Elemental do Fogo - Elemental do Gelo - Brilho externo - Corrente ( Chain armors...etc ) Artigo 3: Tópicos especiais de Pixel Art Swords - Swords - Broadswords - Laminas retorcidas Clubs - Em 90 graus - Em 45 graus Axes - Laminas - Cabos Armors - Ombreiras - Peitoral Legs - Desenho - Sombreamento simples Artigo 4: Perspectiva - Paredes - Mesas - Humanoides - Quadrúpedes - Grama - Plantas de Decoração - Árvores - Pedras Artigo 1: Realidade do Sprite Proporção Bom, começando esse nosso novo tutorial de sprites gostaria de chamar a atenção dos spriters que ja possuem certa experiência a ficarem atentos às proporções de seus sprites. Exemplo 1 Como exemplo fiz essa Armor sem muitos detalhes ou efeitos de sombreamento, o objetivo é mostrar a vocês como uma proporção errada pode estragar um sprite: Aparentemente, não nos parece um sprite ruim, na verdade ele tem potencial...talvez sombreando ali na esquerda...o ombro principalmente, clareando o lado direito nos pontos de brilho pra dar aquele contraste e tal...é ficaria bacana! Mas olhem só para a entrada do pescoço: Quem tem um pescoço maior do que o próprio peitoral? Seguindo proporções normais provavelmente a armadura ficaria presa nas clavículas do guerreiro, quando o mais correto seria estar no trapézio. Conclusões: Noções anatômicas são sempre bem vindas. Exemplos Exemplo 2 Geralmente Axes bizarros e non-sense fazem muito sucesso entre a galera, mas em um contexto do jogo todo e exagero bizarro e retardadisse TEM QUE FAZER SENTIDO. Se algum zé linguiça me vem e fala que isso é um axe de ELFO. Podemos parar a conversa por ai haha. Cabo pequeno, lamina bizarra de grande. Ele poderia ser um machado de anões...sim, ferreiros, pequenininhos e fortões...sim, mas ele provavelmente teria que segurar com as duas mãos mas esse machado tem lamina dos dois lados, logo o anão iria provavelmente se machucar, outra coisa é o cabo, quando que um cabo TRANÇADO de madeira iria suportar 450 oz de lamina de titanio? hahaha É preciso pensar nisso. Deveriamos ou aumentar o cabo ou diminuir a lamina, como temos só 32x32 de dimensão o certo é diminuir a lamina. Exemplo 3 Muitas pessoas gostam de usar esses prolongamentos do outline ( formato em preto ) pra dar uma aparencia de uma superfície mais afiada...bom eu digo que isso não é necessário. A aparencia de superfície afiada aparece quando vc faz um bom uso do contraste ( geralmente usando branco na parte mais externa da lamina do axe e depois usando uma linha escura ( que eu chamo de linha de separação, vamos ver mais pra frente ) para separar o corte (branco) do resto da lamina. Não sei se vcs ja tiveram a oportunidade de ver ferro derretido, mas o ferro derrete e quando se quebra para molde enquanto ele ainda está aquecido ele forma esses fiapos. Portanto a aparencia que a superfície tem passa longe de ser afiana, sendo mais aparente o fato de que ela foi mal manuseada durante o processo de confecção. Coerência Detalhes no Sprite Exemplo 1 Mais uma característica importante para fazer um sprite realista é a Coerência, ou seja, tudo no sprite deve fazer sentido. Tudo deve ter um porque de existir ali. Vejmos então a nossa Armadura: Bom, logo de cara, percebemos que ela possui uma capa, bacana! Mas onde a capa esta presa? Exato. Não se pode dizer "Po, acho que está atrás da armor...tem que estar, não?". A pessoa que ve seu sprite não pode ter dúvidas do que esta vendo. Então vamos concertar isso: Agora sabemos onde a capa esta presa =] Exemplo 2 Em escudos isso costuma acontecer bastante, vou postar um exemplo meu para vocês entenderem. A algum tempo fiz esse escudo: Certo, agora pensem comigo. Imaginem esse escudo com essas divisões na madeira em uma batalha...Agora imaginem nosso herói sendo atingido por um war hammer bem no meio do escudo ( E consequentemente no meio da madeira, mas na divisão que eu pus)...sim iria quebrar em mil pedaços, no mínimo. E a proteção seria 0. Agora, se tivessemos um escudo de madeira corrida mesmo, sem divisões ( que são rachaduras de certo modo ) o impacto seria distribuido pela madeira e ela iria resistir mais a ele. Logo: Acho que assim seria mais coerente de se desenhar um escudo de madeira. Detalhes no nome Bom a algum tempo eu fiz essa armadura, que na verdade e um Robe. Existe uma enorme diferença entre eles apesar de um robe ser usado como armor. E aqui está a diferença: Robe é igual a uma bata, uma roupa cerimonial ou uma vestimenta encantada, mas de pano. Isso significa usar cores menos saturadas e com pouco brilho. King's Robe Uma armadura é algo mais armorizado mesmo, com peças de metal, muito mais brilhante e com mais cores saturadas King's Armor [cred: Alex - Redshrike] Logo o nome que vc escolhe também é importante na coerência. Pintura Avançada - Método do Modelo de Gradientes [Desculpem pelo atraso no Tutorial mas com a facul e td mais não tive tempo de postar mais cedo] Bom, agora que encaramos o sprite como uma diversão que requer certa seriedade para ser bem feita vamos desenvolver nossa técnica de pintura. Para quem acompanhou o Tutorial Básico de Sprites não deve ser difícil relembrar dos Orbs da Oficina de Pintura, na verdade esse método é mais fácil para quem esta começando porque em um globo sombreado é mais fácil visualizar quais tons se usará no sombreamento de um sprite. Como este tutorial é direcionado aos que já possuem uma certa experiência, eu aconselho o Modelo de Gradientes que se baseia no seguinte conceito: Todos com certeza conhecem muito bem essa palheta: Cor/Definir Cores Personalizadas: Como podem ver todas as cores possuem tons que de certa forma misturam elas com outras cores, isso é nada mais nada menos do quê?... Isso mesmo, ANTI-ALIASING. Mas vamos abordar isso mais pra frente, o importante aqui é saber escolher os tons certos para começar a pintar, tendo em vista que vc precisará de sombra e luz...e ainda precisará de tons medianos para caracterizar as regiões que não recebem nem muita luz nem possuem muita sombra, e ainda por cima, precisa achar tons entre todas elas pra poder fazer AA. Ufa, coragem meus amiguinhos haha Preparei um sprite para tentar ilustrar a situação: Bom, o sprite possui fins ilustrativos então também não precisamos de muitos efeitos, reparemos no sombreamento. Antes de começarmos um sprite devemos saber que cor usaremos, quando escolhermos precisamos escolher os tons claros e escuros para formar nosso modelo de gradiente que usaremos para pintura do sprite. E aqui vão duas novidades pra vocês: Bom, continuando com nosso amigo Guarda chuva, percebemos que separei vários gradientes de cinza, levemente azulado. Muitas pessoas tem dúvidas em que tom usar para sombra então eu fiz uns testes. E VOU DAR DE BANDEJA PRA VOCÊS A Cor vc escolhe mas os Tons de Luminosidade que definem sombra e luz são: A cor vcs escolhem mas se eu fosse traçar um sombreamento básico seria com esse padrão ( demorei pra fazer um haha ). Percebam que sendo um padrão, é dever e obrigação fugir dele algumas vezes! Ele está sendo postado aqui porque é um tutorial pra quem tem dificuldade em sombreamento no que diz respeito a escolha de tons. Mas cada um deve personalizar seu sombreamento. Aqui um exemplo de Ombreira de Armor composta de tons nesse padrão. Observem como o sprite fica limpo: [Cred: Tim e Galiant ] COR Agora, pensando um pouco na cor, o que temos que considerar? Certo, já somos spriters experientes e já temos em mente que o jogo de luz não é como no jardim de infância onde dizemos que o Ouro, assim como o Sol, é Amarelo. O ouro é um material que possui reflexos intensos de luz amarelo claro e sombras também intensas de marrom escuro, são geralmente cores bem saturadas e que chamam atenção. No exemplo: Emerald Myth Mas existe também o ouro envelhecido, aqueles não polidos e com cores menos saturadas com brilho mais fraco. Se vc quer que seu sprite seja de ouro envelhecido, não faz sentido usar cores ofuscantes com alta luminosidade e contraste. Madeira Uma coisa importante sobre madeira, muitos não sabem disso mas pensando não só na estética ( Beleza ) do sprite mas sim no sentido que ele precisa ter, eu considero errado o uso de determinados tons para classificar a madeira de determinadas armas ou estruturas de casas ou mobílias. Em geral, madeiras de cor clara são utilizadas para confecção de lális, réguas, martelos de obra, etc. Não é uma coisa que se pense sempre por isso estou aqui pra abrir a mente de vocês: Madeiras claras, em geral são utilizadas apenas para confeccionar ( criar ) produtos que suportem uma carga baixa ( pouco peso ) porque são pouco resistentes. Madeiras mais escuras já são utilizadas pra construção de casas, pousadas, pilastras, e móveis principalmente...porque são madeiras mais compactas e rígidas. Acontece que móveis da sala de estar, portas de armário, mesinhas, de certa forma suportam pouco peso, uma mesa de jantar costuma ser de madeira escura. Sem contar o verniz, que muitas vezes influencia na cor da madeira além de dar brilho ( que não é uma propriedade comum de madeira ) Pedras Pedras são formadas pela união de vários sais cristalizados. Com isso temos 3 tipos de Pedra: Rochas(Stones) Sedimentares, Magmáticas e um tipo especial que é a gema( Gem ). Obviamente eu não sou geólogo e não estou dando conceitos 100% certos mas achei mais didático dividirmos assim. Pedras Magmáticas: Pedras escuras, vindas do magma que esfriou. Tonalidades: Baixa luminosidade, Baixa Saturação geralmente de cor negra com um leve sombreamento em cinza. Pedras Sedimentares: Pedras de diversas cores mas em geral de cor clara. Tonalidades: Variam do cinza-azulado ao branco-amarelado, possuem níveis de saturação medianos e geralmente não possuem muito brilho, logo para fazer os pontos iluminados geralmente usasse um cinza claro mas sem muito contraste com o resto da pedra. Gemas Essas sim possuem diversas cores, são bem brilhantes e simbolizam realeza e poder, muitas vezes. Tonalidades: Contrastes fortes com uma porção(menor) muito clara e uma porção de tonalidades medianas(de tamanho médio) separadas de uma porção bem escura para dar o contraste. Costumam ser usadas para enfeitar cabos de armamentos ou coroas, e algumas armaduras. Sombreamento Neste quarto tópico do nosso primeiro artigo, vamos tratar do sombreamento dos sprites. A técnica do sombreamento é na verdade mais simples em muitos casos do que realmente imaginamos. Lógicamente todo sprite tem um sombreamento diferente de acordo com a proposta dele ( Laminas diferentes de espadas, sombra de uma ombreira multipla em armaduras, acessórios em escudos, etc ). Neste tópico vamos tentar generalizar o sombreamento e entender algumas coisinhas importantes, para isso utilizaremos essa armadura que fiz! Heavy Armor Em Resumo: ...Galiant Racapitulando: Na pintura é possível utilizar 7 tons diferentes da mesma cor de acordo com a luminosidade para gerar gradientes de luminosidade ( sombreamento ). Vamos aprender agora como utilizar estes tons: 1 - Linhas de Separação - Luminosidade 50 / Luminosidade 80 Um dos piores erros dos spriters experientes é que eles dominam bem o AA. Isso é ótimo e um bom sinal para a maioria, mas é preciso ter atenção para não deixar o sprite com um aspecto borrado. As Linhas de Separação existem para identificar todas as partes que compõe o sprite e geralmente usamos tons de baixa luminosidade para criá-la como tons de Luminosidade 50 e/ou 80. Exemplos de linhas de separação formadas pelos tons de menor luminosidade do sprite. 2 - Sombreamento em Cavidades - Luminosidade 50 A representação de cavidades só é possível quando se utiliza um forte contraste em relação ao sprite como um todo. Percebam que o sprite como um todo possui mais brilho (graus de luminosidade maiores) do que o tom usado para colorir as cavidades(o que é óbvio já que ali não se recebe luz). Percebam também que a linha de separação da ombreira possui mais luz que a cavidade: Tons de menor luminosidade usados para caracterizar Cavidades(pontos que menos recebem luz em um sprite). Como fundo de ombreiras e interior de armaduras, onde entra a cabeça. Por isso sempre utilizamos tons de Luminosidade 50, a menor luminosidade que podemos usar já que em Luminosidade 0 temos a cor Preta que utilizamos no contorno. Sombreamento Global (Global shading) - Maiores Luminosidades à esquerda. Menores Luminosidades à direita. Observem que estamos usando os mesmos tons de luminosidade sempre, só que no lado mais sombreado utilizamos tons de baixas luminosidades mais vezes e ocupando uma área maior. Também não utilizamos no lado esquerdo tons de luminosidade acima de 173. No lado direito, utilizamos tons mais claros em maior área e geralmente usamos tons com luminosidade 200 ou 220 e jamais usamos tons de luminosidade abaixo de 110 nas áreas mais iluminadas. Estes tons de baixa luminosidade servem para fazer Efeito de sombra e também Antialiasing com os tons de Luminosidade 50 que utilizamos nas cavidades Sombreamento Global Efeito de Sombra Efeito se sombra é o efeito no qual certas partes do sprite refletem a luz que chegaria ao resto do sprite, fazendo com que tais partes que não recebam luz tenham tons de luminosidade menores do que a maior parte do sprite, caracterizando a sombra.( oh! ) Imaginando uma câmara escura, e considerando o sistema de iluminação do Tibia é isso que eu imagino: Temos: 1 - Luz intensa vinda do Noroeste chegando a porção da esquerda do sprite logo essa porção iluminada precisa receber tons de luminosidade altos ( 150, 173, 200 e 220 ) 2 - Como a armadura é cilindrica, o lado direito recebe menos luz. Contudo, não fica no breu total, porque a luz vinda do noroeste reflete em outras superfícies e esse reflexo faz com que parte da luz volte para a armadura, só que com uma intensidade de luminosidade menor ( logo, utilizamos tons de luminosidade menor no sprite - Luminosidade 80, 110; 150 e 173 nos locais mais iluminados ) Lugares que precisam ter sombra: 1- Embaixo de ombreiras - Tanto nas cavidades quando no peitoral já que a ombreira reflete grande parte da luz. No lado esquerdo não é preciso fazer mais de duas camadas de sombra. Já no direito o mínimo a fazer são duas camadas. 2- Entrada para pesçoco - Recomendo usar todos os tons de luminosidade nessa cavidade fazendo o efeito que eu chamdo de Dithering que não é nada mais nada menos do que misturar os tons em duas camadas pra dar um auxílio ao AA. Exemplo de Dithering: 3- Lado direito em Sombreamento Global - Utilização de Tons de baixa luminosidad eno lado direito. 4- Partes mais extremas de armaduras: - Geralmente armaduras tem um aspecto cilíndrico, então as porções laterais precisas ser mais escuras do que as porções do meio( peitoral, abdomen e pescoço ). Sendo que a extreminado do lado direito é mais escura do que a extreminado do lado esquerdo. Sentido da luz no sombreamento cilíndrico acromático. Artigo 4: Perspectiva - Paredes Bom, galera, fazer paredes realmente não tem muito segredo: - Coluna suporte: Apenas pegue um quadrado 8x8 desenhe uma diagonal no meio dele, copie e cole ligando as extreminades nas proporções da parede Tijolos Bom, para fazer tijolos temos uma técnica bem simples: Geralmente não se usa cores muito saturadas, eu usei nos modelos só pra indicar de onde vez a luz =] Ahh sim...a diagonal surge do meio do tijolo...meu exemplo não ficou dos melhores mas quebra um galho rs Humanóides Certo galera, finalmente vamos ter uma perspectiva que é do interesse de todos, suponho eu hahaha e uma das coisas que tenho me especializado nesses ultimos meses. Bom... Pra perspectiva humanóide não há nada mais do que seguir uma coisinha básica que aprendemos na escola que antigamente não servia pra muita coisa mas AGORA ela nos começa a ser útil...estou falando da famosa GEOMETRIA. Sim, a começar pela perspectiva em si. Perspectiva . Caso perguntem, a perspectiva do Tibia é um estilo de Pixel art no padrão "Top down isométrico em 45 graus", vcs ja devem saber disso e é sempre bom passar aos que não sabem caso pensem em procurar mais sobre o assunto ( pixel art ) que eu recomendo ^^. Bom o macete é bem simples: Primeiro: A cabeça deve ser OVAL em 45 graus, e não Redonda como a maioria pensa. Segundo: Traçando uma linha diagonal atrás do olho esquerdo DO PERSONAGEM ( o que está a sua direita )...temos que observar que essa linha termina no ultimo dedo do pé esquerdo do personagem ( o pé mais a sua direita ) Isso garante uma perspectiva diagonal perfeita. Terceiro: Todos os componentes esqueléticos e musculares devem estar paralelos. Isso inclui ombros, braços e mãos, que são os mais frequentes erros. Créditos: Galiant e Eu Por Ajuda Em Hospedar e Outras Coisas1 ponto -
[Encerrado] Como Resolver Esse Erro?
viniciusBIG reagiu a 1877799 por um tópico no fórum
Crie um arquivo rep.sql e coloque isto dentro: ALTER TABLE `players` ADD COLUMN `rep` INT( 11 ) NOT NULL DEFAULT '0' COMMENT 'Cyber''s REPSystem © OTLand.net' Vá no seu Database e clique em "Importar" , selecione o arquivo que você criou que é o rep.sql e clica em Executar (: Mais pelo que vi seu server é SQLite ai você terá que fazer este processo: Para colocar ele no Database SQLite é assim, Abra o SQLite, vá em Open SQL Query Editor , cole o script que eu postei e depois clica em Execute Query ou aperta F9. - Execute Query1 ponto -
[Systems] Pokemon Systems
YondaimeBRG reagiu a Saymon14 por um tópico no fórum
Digno de um grande scripter, belo trabalho, espero que a galera use com seriedade e para um projeto fixo. ABRAÇOS1 ponto -
Ryan War V1.0 (Único E Original) Com Vídeo De Apresentação
HisashiitYamaguti reagiu a DreamSignMakers por um tópico no fórum
quem usar o player da radio em seu site, manda 1 e-mail para que seu ot seja postado na lista em nossa radio com os melhores ots os que tiverem mais players ficarao no inicio obrigado. Even Radio a melhor radio da web otima qualidade e musicas atualizadas pra voce. gesior --> htdocs/layouts/tibiacom/layout.php bem no comeco apos o html de um enter e cole o codigo feche e salve. <center><iframe src="http://#####/player/" width="100%" marginwidth="0" height="50" marginheight="8" scrolling="no" frameborder="0"></iframe></center> modern acc --> htdocs/templates/seulayout/index.tpl bem no comeco apos o html de um enter e cole o codigo --> <center><iframe src="http://#####/player/" width="100%" marginwidth="0" height="50" marginheight="8" scrolling="no" frameborder="0"></iframe></center> ajudem nos, abraco!-1 pontos -
Death Sthick
Henrique Moura reagiu a JohnColner por um tópico no fórum
Porra.... Pra dizer.. que o Topico ta erradoo aparece um monte... pra ajuda ninguem... ..WTF.. Porra.... Pra dizer.. que o Topico ta erradoo aparece um monte... pra ajuda ninguem... ..WTF..-1 pontos