E se vc quiser criar um banco nas coords 98.5 , 80.5 , 2.0, virado pro oeste, o comando seria ± assim:
OBJ_DATA banco ( 98.5 , 80.5 , 2.0 ) 270 BENCH
GENERATORs
Vc provavelmente vai querer criar armas e powerups q reaparecem, pra isso existe o comando GENERATOR. Os GENERATORs sao um pouco mais complicados q os OBJ_DATA, pois consistem de duas partes: o GENERATOR em si e o comando que o liga. A primeira parte eh mais ou menos assim:
O nome único do GENERATOR. Vc vai precisar dele dps, portanto escolha um nome lembrável
( X.x , Y.y , Z.z )
As coordenadas
rotaçao
A rotaçao do pickup/arma
tipopickup
O tipo de " / "
tmpomin
O tempo mínimo que o pickup demora pra reaparecer
tmpomax
O tempo máximo que o pickup demora pra reaparecer
munição
A muniçao q vc recebe qdo vc pega a arma
Essa parte do comando apenas declara onde o pickup deve ser colocado, e o q o jogo deve criar, portanto vem antes do LEVELSTART. Agora vc tem q usar o comando SWITCH_GENERATOR, q liga e desliga os GENERATORs. Todos os GENERATORs sao automaticamente colocados como desligados (OFF) e vc tem q ligá-los com o comando SWITCH_GENERATOR depois do levelstart
SWITCH_GENERATOR nomegnrtor ON/OFF
nomegnrtor
O nome do generator q vc usou antes
ON/OFF
O valor q define se o GENERATOR está ligado (ON) ou desligado (OFF)
Note q o GTA2 nao aguenta mais q 120 GENERATORs
Exemplos
Se vc qr criar uma S-Uzi Machine Gun (SMG/Metralhadora) nas coords 114.5 , 83.5 , 2.0, com 10 de munição, q reaparece a cada mais ou menos um minuto, o código se parecerá com isso:
Essa pagina contem uma lista de todos os objetos/armas/powerups q podem ser usados no GTA2. Varios objetos sao feitos de outras coisas retiradas do jogo antes do lançamento e podem ter falhas. O GTA2 Scripting.doc menciona tbm os objetos CROSS, GRAVE e FBI BLOCK, mas esses objetos nao sao reconhecidos pelo Script Compiler.
Read more...
Essa página contém uma lista com os codigos de cores de veículos estacionados (script), remaps de chars (script), nomes dos carros no script, nomes de sons, objetos, armas e powerups pra colocar no script e essa contém todos os comandos usados no script de GTA2 (que estão no documento GTA2 Scripting.doc pela R* Games)
O compilador de scripts eh um programa oficial da DMA Design (atual Rockstar North) q eh usado pra converter arquivos *.mis pra arquivos *.SCR
Compilando um script
Os scripts sao geralmente feitos em editores de texto normais. Pra criar um script usável, vc tem q salvá-lo como um arquivo *.mis. É bom nomear o seu script com o mesmo nome do seu mapa, entao o script de exemplo será chamado MapaTeste.mis. Abra o Script Compiler e carregue seu script em File > Load. O compiler deve se parecer com isso:
Vá em Run > Parser e o compiler imediatamente ira começar a compilar seu script. Nosso script de exemplo so tem tres linhas, entao a conversão irá levar apenas uma fraçao de segundo. Qdo ela estiver pronta, o compiler vai se parecer com isso:
Se há um erro no seu script, o compiler nao conseguira converter o arquivo e mostrará um erro:
Na maioria das vezes é apenas um simples errinho no seu código, como um typo ou um simbolo esquecido. O compiler vai mostrar onde ele encontrou o erro ("Current token") e o q foi feito errado. No exemplo o compiler "encontrou um símbolo desconhecido no script" perto de um "(" na primeira linha.
Qdo o script eh compilado, os novos arquivos ficarao na mesma pasta q o seu arquivo *.mis e com o mesmo nome. perto do *.scr, haverá tbm um arquivo *.tmp. Esse arquivo nao eh importante. Note q o Windows reconhecerá os arquivos *.scr como Proteções de tela (screensavers)
Qdo vc tem o arquivo *.scr, vc pode instalá-lo (veja Pondo uma fase no jogo) e jogar com o seu mapa.
Outra maneira de compilar seu script eh baixando o GTA2 MISPad, um editor e compilador de scripts de GTA2 feito por JernejL. Na parte superior do MISPad vc encontra os botoes de abrir scripts nao compilados, salvar seu script, compilar e varios outros; enquanto que na parte inferior vc encontra o log do compilador do MISPad.
Read more...
Primeiro post na categoria GTA2 Scripting, onde vcs aprenderao sobre o Script do GTA2 =D
Script principal
Toda fase de GTA2 precisa de seu proprio script pra rodar. Os scripts sao vistos como os arquivos *.scr na pasta [...]\GTA2\data
LEVELSTART e LEVELEND
Antes de vc poder começar a fazer um script pro seu novo mapa, vc deve primeiro entender como eles funcionam. Os scripts de GTA2 sao divididos em duas partes: a parte de "declaraçao" e a parte de "programaçao". Essas partes sao separadas uma da outra com o comando LEVELSTART: td antes desse comando eh a parte de declaraçao, e td dps dele eh a parte de programaçao. Já q há um comando LEVELSTART, entao tbm deve ter um comando LEVELEND. Esse comando vai no finzim do script.
Entao a base de todo script deve se parecer com isso:
LEVELSTART
LEVELEND
Esse script ainda eh inutil, pq a gente nao tem um "carinha" pra controlar no jogo. Entao a proxima coisa a fazer no script eh um "Playerped". Isso eh feito com esse comando:
O nome no script do playerped. Tudo q vc cria no script precisa de um nome unico, entao vc pode referir a essa coisa dps. Tenha certeza q vc da um nome reconhecivel a tudo, entao vc pode facilmente achá-lo qdo seu mapa começa a ficar grande
( X.x , Y.y , Z.z ):
As coordenadas nas quais o playerped aparece no começo do jogo. As coordenadas podem ser achadas selecionando um bloco no map editor e vendo o canto inferior direito do editor. Lembre-se que as coordenadas de dentro de um bloco sao mostradas. Entao, qdo vc clica num bloco no chao, o bloco abaixo do nível do chao vai ser selecionado. Usar essas coordenadas significa q o playerped vai aparecer abaixo do chao! As coordenadas X e Y tambem tem uma divergência de 0.5. Se vc qr seu playerped em 91, 84, 2, suas coordenadas serão ( 91.5 , 84.5 , 2.0 ).
Remap:
O remap eh a aparencia do playerped. Todo remap tem um numero, q sao listados abaixo.
NW
N
NE
225°
180°
135°
W
270°
X
90°
E
315°
0°
45°
SW
S
SE
Rotação:
A direçao q o playerped deve estar virado, em graus de 0 a 359. 0 é o Sul (veja o compasso ao lado)
Esse eh um comando de declaraçao, portanto vem antes do LEVELSTART. Esse eh um dos primeirissimos comandos q vc coloca no seu script
Exemplo
Se vc qr um playerped padrao nas coordenadas ( 91.5 , 84.5 , 2.0 ), olhando pro leste, o comando vai se parecer com isso:
PLAYER_PED player1 = ( 91.5 , 84.5 , 2.0 ) 25 90
Qdo colocado no script, ele se parecerá com isso:
PLAYER_PED player1 = ( 91.5 , 84.5 , 2.0 ) 25 90
LEVELSTART
LEVELEND
"Declare" e "Set"
O comando PLAYER_PED é um comando chamado de "comando declare & set", o q significa q ele cria e coloca o playerped ao mesmo tempo no começo do jogo. No entanto, vc pode querer criar no meio do jogo ao inves de no começo. Pra fazer isso, vc tem q usar comandos separados de "declare" (declara o que vai ser criado) e "set" (que coloca o objeto no meio do jogo no lugar definido)
Isso nao eh possivel com o comando PLAYER_PED (pq vc nao pode criar mais jogadores no meio do jogo), entao nesse tutorial a gente usa o comando CHAR_DATA, q eh usado pra criar alguns chars (esse tema será mais aprofundado em posts futuros)
Declare & set
Um comando declare & set padrao deve se parecer com isso:
Esse comando "set" deve ser posicionado onde vc qr q o script coloque o pedestre, num IF (explicado em posts [bem] futuros), por exemplo. Ele tem q ser dps do LEVELSTART!
Declare
Se vc usa um comando set, vc tbm precisa "declarar" o pedestre com um comando "declare". Ele diz ao script para reservar "espaço" pra um pedestre q sera criado depois. Um comando "declare" se parece com isso:
CHAR_DATA ped1
Como vc vê, eh um comando mto curto. A única coisa q vc tem q adicionar eh o nome (nesse caso "ped1"), q tem q combinar com o nome no comando "set". Os comandos "declare" tem q ser antes do levelstart.
Adicionando notas ao script
Seu script eh mto basico no momento, mas qdo ele ficar maior e mais complexo vc pode querer colocar notas para nao se confundir no meio de tantas linhas de codigo. Pra prevenir o compilador de ver suas notas (o q causaria o compilador a dar um erro), vc tem q usar /*, */ e //.
Tudo numa linha dps do // sera ignorado pelo compilador. Texto numa nova linha (dps de um enter) será compilado d nv. Esse método eh mto util pra adicionar notas simples dps de um comando
Tudo entre /* e */ tbm será ignorado, mas isso inclui novas linhas. Esse método pode ser usado pra adicionar multiplas linhas de notas ou pra (temporariamente) desativar grandes partes de código.
Exemplos
PLAYER_PED player1 = ( 91.5 , 84.5 , 2.0 ) 25 90 //PLAYER_PED player1 = ( 87.5 , 84.5 , 2.0 ) 25 180 //Possível alternativa de ponto de início
LEVELSTART
/*Um monte de código vai ser adicionado aqui mais tarde. Por enquanto ainda está vazio*/
Qdo vc tiver criado sua fase com alguns predios e ruas, vc provavelmente irá querer dar uma olhada no jogo pra ver como q seu mapa parece qdo ele esta sendo jogado. Pra fazer isso, vc vai precisar instalar sua fase.
Salvar compressionado
Primeiro, tenha certeza q seu mapa esta pronto para ser jogado. No mínimo, vc precisa de uma superficie solida pra andar e uma "Restart zone". Se seu mapa tem isso tudo, vc tem q salvar seu mapa usando a funçao "Save Compressed", ou "Salvar compressionado" do Editor. Pra fazer isso, va ate "File > Save Compressed..." ou use o botão com o disquete com duas setas. Uma janela como essa aparecerá:
É recomendado salvar seus proprios mapas em suas proprias pastas, como "Mapas novos" ou algo do tipo. Neste exemplo, o novo mapa é chamado "Mapa teste" e é salvo na pasta "Mapas novos".
Colocando a fase no jogo
Um mapa de Singleplayer precisa de três arquivos:
um arquivo *.gmp (o mapa)
um arquivo *.sty (o arquivo com os tiles, carros etc.)
um arquivo *.scr (o script)
Vc ja criou o arquivo *.gmp e o arquivo *.sty já está presente junto com o jogo. Isso significa q vc so precisa criar o *.scr antes de vc poder jogar seu mapa. O próximo post falará sobre o script e os proximos posts mostrarao coisas para se programar no script.
O jeito mais pratico de instalar seu mapa eh alterando o arquivo test1.seq. Primeiro, ache esse arquivo e faça um backup dele. Entao abra-o com o bloco de notas/notepad. Decida qual a fase original q vc qr trocar com o seu. Nesse exemplo, a gente vai trocar o Downtown District. Cada fase tem sua propria entrada no arquivo test1. O Downtown District eh a entrada do topo e se parece com isso:
MainOrBonus = MAIN GMPFile = wil.gmp STYFile = wil.sty SCRFile = wil.scr Description = City 1 Map
"MainOrBonus" define se a fase eh uma fase principal ou um nivel bonus
"GMPFile", "STYFile" e "SCRFile" sao os tres arquivos q a fase precisa pra ser jogada
"Description" é uma descrição interna da fase, mas nao eh usada dentro do jogo.
Para substituir o Downtown District com o nosso proprio mapa, a gente precisa mudar a entrada dele no test1.seq, entao o jogo vai usar os arquivos do nosso mapa. A entrada de exemplo do arquivo vai parecer com isso:
MainOrBonus = MAIN GMPFile = MapaTeste.gmp STYFile = bil.sty SCRFile = MapaTeste.scr Description = Mapa Teste
Salve o arquivo e coloque o *.gmp e o *.SCR na pasta [...]\GTA2\data
Substituindo os arquivos de uma fase original
Outro jeito de instalar sua fase eh substituindo o *.gmp e o *.scr de uma das fases originais. Essa maneira de instalaçao nao eh recomendada, pq há o risco de perder os arquivos originais se vc nao fizer um backup apropriado.
Vc pode apenas substituir uma fase q usa o mesmo arquivo *.sty q sua fase. Nesse caso, a gente estava usando o bil.sty, entao a gente pode apenas substituir a fase q usa o bil.sty, que eh o Industrial District. Faça um backup dos arquivos bil.gmp e bil.scr na pasta "data". Renomeie os arquivos da sua propria fase e coloque-os na pasta "data". Aperte OK qdo uma janela perguntar se vc qr substituir os arquivos originais
A última opçao eh instalar o mapa de singleplayer como um mapa de multiplayer com apenas um jogador. Isso significa q vc nao precisa substituir ou alterar arquivos, mas vc so pode começar o jogo com o GTA2 Manager. Faça o arquivo MMP com o bloco de notas mais ou menos assim:
[MapFiles] GMPFile = MapaTeste.gmp STYFile = bil.sty SCRFile = MapaTeste.scr Description = Mapa de teste PlayerCount = 1
Substitua "MapaTeste" pelo nome do seu arquivo *.gmp, "bil" pelo nome do arquivo *.sty q vc usou, o 2º "MapaTeste" pelo nome do seu script e "Mapa de teste" pela descriçao q vc queira pro mapa (ela aparecerá na lista de mapas disponiveis no "Network GTA2", q vc abre na aba Network do GTA2 Manager).
O próximo post já é sobre os Scripts! =D
Read more...
Áreas ou zonas sao usadas para tudo q eh tipo de coisa no GTA2, partindo de simples pontos de ônibus e semáforos ate estaçoes complexas de metrô e áreas de gang (ambos serao explicados na área de GTA2 Scripting e GTA2 Mapping & Scripting). Há 17 tipos diferentes de zonas.
Criando uma zona
Normalmente, vc pode criar uma zona selecionando a área na qual vc qr a zona e ir em Edit > Zones > Add selection. No entanto, isso faz o Editor travar em varios sistemas operacionais (OS) modernos, como o Windows XP.
Zonas sao mto importantes, entao para consertar esse problema vc precisa adicionar zonas de um jeito diferente. Vc pode usar adicionadores/editores separados de zonas ou usar zonas de outra fase. O download do Map0 zonefix contem um mapa vazio com 175 zonas. Essas zonas podem ser alteradas indo em View > World View (o mesmo que clicar com o botao direito do mouse no minimapa e clicar em World View) e selecionando "Edit zones". Use o Map0 pra criar seu mapa nele, ou simplesmente copie e cole seu mapa inteiro no Map0
Zona "General purpose"
Zonas "general purpose" ou "sem proposito" sao simples zonas para as quais vc da um nome e vc pode referir a elas no seu script.
Zonas "Navigation"
Zonas "navigation" ou de navegaçao sao usadas pra dar um nome a área q vai ser mostrada no jogo. Se vc der a area de navegaçao um codigo especial, o jogo usará os nomes de areas usadas nos arquivos GXT. Isso vai ser explicado no tutorial de textos/falas.
Se vc sobrepor zonas, a menor zona vai ter prioridade. Zonas de mesmo tamanho nao se sobreporão.
Zonas "traffic light"
Zonas "traffic light" ou de semaforo sao, como o nome diz, usadas pra criar semaforos. Semaforos apenas funcionam corretamente em junçoes validas. O jogo ira criar um semaforo pra guiar seguramente os carros. Vc tem q criar os postes vc mesmo, ou o semaforo vai flutuar no ar!
Zonas "police station"
Zonas "police station" ou estaçao de policia sao areas onde a policia aparecerá mais comumente e mais rapido qdo vc tem um nível de procurado
Zonas "fire station"
Zonas fire station ou estaçao de bombeiros sao areas onde os Fire Trucks/Caminhoes de Bombeiro aparecerao mais rapido no caso de algum carro q explodiu e ficou pegando fogo.
Zonas "Hospital"
Zonas "Hospital" ou Hospitais sao zonas onde os Medicars/Ambulancias aparecerao mais rapido em caso de emergencia/mtas pessoas mortas.
Zonas "Railway Station (Platform)"
Zonas "Railway Station Platform" ou plataformas de trem cria uma plataforma onde viajantes esperam pelo trem. Em posts futuros o tema "trem/metrô" sera visto mais a fundo.
Zonas "Bus Stop (Platform)"
Zonas "Bus stop" ou pontos de ônibus criam um ponto de onibus onde os viajantes esperam o onibus. Zonas bus stop devem ter um tamanho de 1x2 blocos e cobrir calçada diretamente a frente da rua. Ônibus nao tem uma rota definida: eles apenas aparecem perto dos pontos de onibus qdo o jogador está perto dele e eles param a cada ponto de onibus q eles encontram
Zonas "General Trigger"
Zonas "general trigger" ou 'programaçao' geral marcam o ponto de começo de algo programado de proposito geral no script. Elas sao usadas pra começar certos eventos no script qdo o jogador entra nessa zona
Zona "Information"
Zonas "Information" ou zonas de informaçao sao usadas pra determinar o tanto de veiculos e pedestres na área.
Zonas "Railway Station Entry/Exit/Stop Point"
Mais sobre elas em posts futuros sobre criar um metro/trem
Zonas "Gang"
Elas sao usadas para criar gangs, mais sobre elas mais tarde.
Zonas "Local Navigation"
Zonas "Local navigation" ou zonas de navegaçao local sao quase identicas a Zonas de Navegação, mas cobrem uma área menor e sao priorizadas quando elas sobrepoem uma Zona de Navegaçao normal.
Zonas "Restart zone"
As "Restart zones" sao localizaçoes onde o jogador reaparece qdo ele eh morto (Wasted). Toda fase deve ter no minimo uma restart zone. O jogador irá reaparecer no centro dessa zona.
Zonas "Arrest restart"
Uma zona Arrest Restart eh uma localizaçao onde o jogador sera jogado de um Cop Car depois de ser preso (Busted). Zonas arrest restart devem ter o tamanho de 1x1 bloco e ser posicionadas numa rua. Se uma fase contem restart zones mas nao contem arrest restart zones, os jogadores reaparecerao nas restart zones mesmo.
Read more...
Pode parecer inutil ter um post inteiro sobre a beira duma fase, mas eh importante saber uma coisa ou duas sobre essa caracteristica.
Qdo vc vai pra uma das beiras do seu mapa no block type mode, vc vai ver uma parede laranja enorme como nessa figura:
As paredes laranjas sao, como vc provavelmente ja notou na normal view, invisiveis. Apesar disso elas sao solidas: vc nao pode andar por elas. Essas paredes fazem c/ q nada saia da fase, pq o jogo ficaria instavel se isso acontecer. Portanto eh importante deixar essas paredes intactas.
Todos os blocos apos a parede invisivel sera infinitamente repitido, entao vc nao vai ver um "nada" preto (um tipo de "blue hell") na beira do mapa
Notas
A parede vai parar tudo q tenta passar dela, mas eh estranho qdo vc bate no "nada". Crie obstaculos logicos na frente da parede, como predios, cercas ou água.
Os blocos dps da parede serao multiplicados. Lembre-se disso qdo vc esta desenhando seu mapa, ou vc vai acabar com uma quantidade infinita de cercas na beira da sua fase!
Mesmo q nao seja possivel chegar diretamente na parede da beira, vc deve deixá-la intacta. Isso previne "crashes" qdo jogadores, por exemplo, levam um tiro sobre um predio com a bazuca/lança misseis.
A maioria das paredes no GTA2 sao solidas, o q significa q vc nao pode andar por elas. Ainda assim, vc provavelmente ira querer criar tiles q nao sao solidos, como postes de rua/"apoiador" de semáforo, e parcialmente sólidos, como cercas (nas quais vc pode atirar por elas). Vc pode fazer isso ajustando a "Collision info" (informação da colisao) dos tiles. Cada tile tem tres opçoes de colisao:
None/Nenhuma - Não sólidos, qqr coisa pode passar por esse tile.
Wall/Semi-solido - Parcialmente sólidos, apenas balas podem passar por esse tile.
Wall + Bullet/Sólido - Completamente sólido, nada pode passar por esse tile.
A collision info pode ser mudada clicando com o lado direito do mouse no tile selector:
Vc pode ver a area de trabalho no modo collision info apertando "3" (nao pode ser o do NumPad). Ela se parecerá com isso:
Preto - None (mas tiles horizontais e diagonais tbm sao pretos, porem nao significa q a collision deles eh "none")
Cinza - Wall
Verde - Wall + Bullet
As vezes os tiles tem collision info erradas qdo vc cria um mapa novo, entao eh importante checar seu mapa procurando por tiles nao solidos. Na img acima a porta do predio eh preta, portanto o jogador pode passar por ela e isso deve ser corrigido. A cerca eh cinza, o q significa q os jogadores podem atirar por ela.
Notas
Vc pode usar a collision info pra criar alguns efeitos legais. Eh uma boa ideia colocar "wall" pras suas cercas, ae os jogadores podem atirar por elas. Pequenos detalhes como postes de luz e apoio pra semáforo são frequentemente "none", pra preveni-los de bater neles estranhamente
O preto no modo collision info nao eh sempre "none": tbm pode ser tiles horizontais ou verticais!
Pilares e blocos de meio tamanho sao sempre nao solidos, mas há um objeto especial "TOWER" q vc coloca no seu Script (mais sobre scripts dps) pra fazer os pilares parecerem solidos
Vc provavelmente irá querer usar tiles (parcialmente) transparente, pra criar coisas como cercas, grades de metal, escadas, etc. Pra fazer isso, a gente precisa usar os tiles "flat" (transparentes). Tiles que podem ser "flat" podem ser reconhecidos pela cor preta. Preto fica invisível quando a opçao "flat" é marcada na Block Info.
Nesse tutorial, a gente vai criar uma cerca. Há varios tipos de cerca que vc pode usar. Nesse exemplo, nós vamos usar o tile 382. Selecione a área na qual vc qr colocar a cerca e preencha os tiles da frente da seleçao com o tile 382. Não apenas pinte os tiles com a ferramenta de pintar, mas use a Block Info: mais sobre isso depois. Não remova a seleção ainda.
Agora vc tem uma cerca. Mas ela ainda nao eh transparente e vc so pode vê-la de um lado. Pra consertar isso, clique em "flat" no canto inferior direito da Block Info.
Agora vc tem uma cerca do jeito q ela deve ser. Vc pode remover a seleçao agora.
Vc tem q usar a Block Info pra isso, pq vc so pode fazer um lado do cubo transparente de cada vez. Qdo vc usa a block info, vc tbm pode apenas pintar uma face de cada vez, entao vc nunca irá tentar fazer acidentalmente duas faces transparentes de uma vez. Além disso, vc pode apenas fazer faces transparentes se vc as pintou logo antes disso.
Notas
Alguns tiles so podem ser usados com o Flat. Não use-os sem ser flat, pq eles terão um fundo preto terrível
As inclinações podem ser transparentes, mas paredes diagonais não (elas aparecem transparentes no Editor, mas quando vc coloca o mapa no jogo, vc ve elas com um fundo preto e um tile extra).
Se a gente criar um telhado com inclinação no nosso prédio, a gente vai ter que criar uma quina inclinada saliente pq nosso prédio tem uma parede diagonal. Selecione o bloco vazio sobre a parede diagonal e preencha os dois lados "de fora" do bloco com o tile de telhado q vc esta usando. Agora selecione "quina inclinada saliente" e clique na seta correta. A inclinação diagonal vai aparecer. Novamente, um dos tiles nao sera necessario, entao remova-o na Block Info.
Quina reentrante inclinada
Uma quina reentrante inclinada é feita quase do mesmo jeito. Selecione o bloco e preencha os dois tiles "de fora" e o tile de cima. Selecione "quina reentrante inclinada" e aperte a seta correta. A inclinaçao diagonal aparecerá, e a única coisa q vc tem q fazer é remover o tile desnecessário.
Bloco de meio tamanho
Para fazer um letreiro, a gente pode usar blocos com a metade do tamanho dum bloco normal. Ache os tiles 408 e 414 (ou qualquer um que vc queira para um letreiro, e vc pode tbm fazer animaçoes desses tiles) e use-os para fazer um letreiro. Selecione os blocos, escolha "bloco de meio tamanho" e aperte a seta certa.
Selecione todos os blocos de um dos cantos do seu prédio. Selecione "Parede diagonal" e aperte a seta correta (é dificil saber qual é a seta correta, então tente-as se vc nao tem certeza). O canto do seu predio vai virar uma parede diagonal. Porque uma quina normal tem dois lados e uma parede diagonal apenas um, vc vai ter q deletar os tiles de uma das faces. Vc pode fazer isso clicando duas vezes no lado que vc qr remover na Block Info.
Na imagem acima eu acabei por esquecer de remover a "calçada" de dentro do predio, portanto nao ficou um espaço vazio no lugar da parede diagonal, mas isso acontece quando vc remove o q ta dentro do predio, e vc tem q preencher essa área vazia.
Pilares
Crie um bloco unico no topo do hotel. Selecione "pilar centralizado" em Slope e clique em qualquer uma das setas (qualquer uma delas, ja que a direção nao eh importante). O bloco vai virar um pilar.
Um pilar de canto de bloco funciona do mesmo jeito, mas vc precisa selecionar a seta correta para deixar o pilar no canto correto do bloco. Os pilares são sempre não-sólidos.
Até agora, a gente apenas usou blocos quadrados nesse tutorial, mas tbm eh possivel criar outras formas como inclinaçoes, paredes diagonais e pilares. Vc pode usar essas formas para coisas como ladeiras, telhados e detalhes como letreiros ou chaminés.
No post anterior, a gente removeu uma parte da rua para criar água. É por isso que iremos fazer uma ponte usando inclinações.
Inclinações
Ache o lugar q vc qr construir uma ponte. Selecione os quatro últimos blocos antes da água (uma área de 2x2 blocos) e aperte Ctrl+C para copiar essa seleção. Aperte Ctrl+Q para mover a seleção pra cima e aperte Ctrl+V para colar a seleção. Agora vc tem uma rua flutuando no ar. Preencha os lados da seleção com algum tile apropriado, mas deixe a parte da frente aberta. Agora seu mapa deve se parecer com isso:
Isso vai ser uma das rampas de nossa ponte. Vá para a janela "Slope" (Se vc nao pode ver a janela, aperte o botão "Slope" na Block Info). Essa janela contém vários botoes com setas e formas. As setas sao usadas para mudar a direção da inclinação, enquanto os botões abaixo são usados para selecionar a forma
No sentido horário, começando com a forma na área superior direita, as formas disponíveis são:
Parede diagonal
Quina reentrante inclinada
Pilar no canto do bloco
Pilar centralizado
Bloco de meio tamanho
Quina inclinada saliente
Inclinação
A gente qr fazer a rampa para nossa ponte, entao a gente tem q selecionar a opçao "slope". Essa forma é a única que tem tres opções adicionais: 1, 2 ou 8 blocos de tamanho. Nossa seleção é de 2 blocos de lado, então nós precisamos selecionar "2" abaixo de "gradient". Agora aperte a seta correta para criar a inclinação. A seta correta é a que aponta pro lado alto da inclinação. Seu mapa agora deve se parecer com isso:
Crie a outra subida no outro lado do rio do mesmo jeito e selecione o espaço vazio entre as rampas (vc pode usar Shift, Ctrl, Q e A para alterar a seleção).
Crie a rua entre as rampas para fazer a ponte completa. Não se esqueça de mudar o tipo do bloco para "road" e remover as partes invisíveis de rua dentro das rampas.
Faça a mesma coisa na rua do outro lado do rio (ou simplesmente copie e cole [Ctrl+C para copiar, Ctrl+seta para mover a seleção e Ctrl+V para colar])
Nesse tutorial, a gente vai adicionar água e algumas animaçoes para nosso mapa. Água e animações parecem ser uma estranha combinaçao. No entanto, água é na verdade apenas uma animação com uma função extra.
Água
Primeiro, temos que decidir onde a gente quer criar a água. Ache um bom lugar para um rio e tenha certeza que parte dele passa pela rua, então a gente pode criar uma ponte lá depois. Selecione a área que vc qr mudar para rio e entao aperte Shift+Del para deletá-la. Vc vai ver a água abaixo do chao, pq a água está presente por padrão em um novo mapa (se não, ou se vc qr criar água em algum outro lugar, vc pode o fazer com o tile 608).
Preencha as paredes com algum tile adequado.
Animações
Agora a gente tem um rio. Se a gente colocasse esse mapa no jogo, vc nao ia afundar/afogar se vc cair na água. Vc ia ficar preso na água sem poder se mover. Isso é pq a água não é animada ainda: ela ainda eh uma imagem
Vá em Edit > Animation. Uma janela vai aparecer:
Nessa janela, vc pode criar novas animações. Clique em "New". Agora ache o tile 608 na barra na metade de baixo da tela e clique duas vezes no tile. O tile vai aparecer no campo ao topo da janela, que mostra os tiles da nova animação. Clique duas vezes em todos os tiles que vc qr na animaçao. Para a água, os tiles são do 608 ao 619. Se vc colocar um tile errado, vc pode selecioná-lo na camada do topo e removê-lo clicando em "Del".
Quando vc selecionou todos os tiles, a janela deve se parecer com isso:
No canto superior direito da janela, vc vai ver uma imagem mostrando a animação. aperte "Play" para mostrar a atual animação. Vc pode mudar a velocidade da animação com "Frame Rate". A velocidade padrão de animação de água é 2. Abaixo disso, vc vai ver "Repeat", que é usado para definir quantas vezes a animação deve ser reproduzida. Para fazer ela repitir infinitamente, como a água deveria, deixe isso como "0"
É importante saber que "Base" é o tile base: apenas esse tile q faz a animação, e os outros tiles usados na animação não.
Clique em "OK" para salvar a animação. A água agora é animada. Vc pode tbm afundar/afogar nela agora, pq os tiles usados sao marcados como "água" no arquivo *.sty. É claro, vc nao vai afundar em outras animações.
Notas
A água dá variação ao seu mapa. Quando designada propriamente, ela vai fazer seu mapa menos chato
A água é uma boa "borda natural" que vc pode usar como a "beira" do seu mapa.
Animações são bons detalhes que vc pode adicionar pro seu mapa. Exemplos de animações que vc pode adicionar ao seu mapa são os tiles 394, 395, 396, 397, 398 e 399.
Já que o jogo é chamado Grand Theft Auto (Grande Assalto de Carros), nós definitivamente precisamos de ruas.
Criando a estrada
Primeiro, a gente precisa criar a rua em si com os tiles. Quando vc vai pro tile 756 no Tile Selector, vc vai notar que ele é a metade de uma rua. Então use-o para criar uma metade da rua no chão. Vc não precisa selecionar nada, já que vc está desenhandoa rua diretamente em uma superfície já existente. Pra fazer o outro lado da rua, vc tem q espelhar o tile usando os botões no canto inferior direito do tile selector. O primeiro botão gira o tile, e os outros espelham o tile vertical ou horizontalmente. Agora crie uma outra rua na outra direção entao a rua tem uma curva. A rua deve se parecer com isso:
A curva em si pode ser feita com os tiles 742, 745 e 746. Vc tem q girá-los e espelhá-los várias vezes para deixá-los na posição certa para usar.
Para fazer o pequeno ciclo de ruas completo, vc precisa conectar o começo e o fim da rua. O GTa2 não consegue lidar com ruas-sem-saída e os carros de pedestres não conseguem dar a volta na rua. É por isso que todas as ruas no GTa2 consistem de círculos.
Adicionando "setas de rua"
Sua rua deve parecer com uma rua, mas na verdade é ainda "calçada", o que significa que os pedestres andarão nela, e não os carros. Para resolver isso, vc tem q selecionar uma parte da rua e selecionar "road" na Block Info. Quando vc ve a rua no modo tipo de bloco agora, vc vai ver q a rua é preta e tem pequenas setas verdes nela. O Editor tenta colocar as direções mais lógicas. Se elas não estão corretas, vc pode mudá-las selecionando os blocos com setas erradas e marcar as caixas abaixo de Arrow, Green.
U:
Up/Norte/Cima
D:
Down/Sul/Baixo
R:
Right/Leste/Direita
L:
Left/Oeste/Esquerda
Selecione toda a rua e clique em Road (não selecione o canto superior esquerdo e arraste até o inferior direito, ou o jardim e a calçada vão se tornar rua também, vá selecionando a rua por partes). No modo tipo de bloco (Block Type Mode), o mapa vai parecer com isso:
As setas nas esquinas não estarão corretas, então vc tera que arrumá-las manualmente selecionando as setas erradas e clicando nas setas corretas em Arrow, Green. Imagine o caminho dos veículos como uma esteira: o carro seguirá a seta. Quando ele dirige de um caminho para outro caminho em outra direção, ele vai virar e seguir o novo caminho. As ruas apenas precisam de mais de uma seta em cruzamentos, não em esquinas. Veja esse screenshot de antes-depois como um exemplo:
Corrija todas as curvas para completar sua primeira rua.
Para fazer cruzamentos, às vezes vc precisa por mais de uma seta em um bloco. O screenshot abaixo mostra alguns cruzamentos simples. Cruzamentos maiores podem parecer complexos, mas funcionam exatamente do mesmo jeito
Notas
Quando um carro escolhe entre dirigir em frente ou virar, ele sempre irá pra frente, a menos que o cruzamento tenha um semáforo. Mais sobre semáforos em posts futuros.
Tenha certeza que há espaço suficiente perto da rua, como uma calçada. Isso deixa que o tráfego pesado consiga passar, então os jogadores não ficam presos. Isso é ainda mais importante em esquinas, porque os veículos precisam de espaço para virar.
As setas vermelhas são para caminhos para missões, mas não são usadas.
A linha através de alguns tiles de ruas fazem os carros pararem por um momento antes de andarem pelo cruzamento.