Startsida med nyheter
Information om HLS

Kartbygge
Modellering
Programmering
Bildbehandling
Ljudbehandling
Hårdvara
Övrigt
Filarkiv
Flams och trams
Länkar till andra siter

Tutorial nr. 5: Att göra stegar

Skriven av: Xarragon

Hejsan allihopa. Nu ska ni få lära er att göra stegar till Half-Life. Innan ni ger i kast med denna guide bör ni ha läst föregående guider för att ni ska kunna hänga med lätt. Då kör vi!

En vanlig fråga som jag får här på HLS är hur man gör stegar. Här kommer jag att visa två olika sätt att göra dem på. Det är ganska enkelt och går snabbt, så det bör inte bli några problem för er om ni hängt med i de tidigare guiderna. Vi kommer att använda WC version 3.3, den finns att ladda hem på nätet, och är minst hundra gånger bättre än 2.1 som följer med på er Half-Life skiva. Den kan också hittas på CD Gamer April 2001, alltså skivan som följer med PC Gamer när ni köper den. Innehåller en massa godis förutom WC, så ni kan ju leta fram den i högen... ;-)


Här har vi det snuttiga rummet som vi skall stoppa våran stege i.

Först tar vi ett rum som exempel. Här har vi en synnerligen lömsk gångbro, som behöver en stege för att man skall kunna komma upp på den...

Half-Life har flera texturer för stegar och räcken. Vi väljer {ladder1.

Vi börjar med att leta reda på en lämplig textur för vår stege. Eftersom vi tänkte göra en stege på "rätt" sätt, d.v.s. med en genomskinlig textur, så som Valve gjorde i orginal Half-Life. Vi väljer texturen {ladder1, den vanliga röda stegen som vi alla känner så väl. Vi får lättast fram den genom att ta fram Texture Browser, eller texturbläddraren, och skriva in "ladder" i textrutan längst ned. Nu listas alla texturer som innehåller "ladder" i sitt namn. "Ladder" betyder föresten stege på svenska.

Här ritar vi upp vårt "stegblock"... ...och här är det skapat!

Nu, när vi har valt texturen för stegen, och den är förvald, (d.v.s. att den syns i rutan till höger), så ritar vi upp blocket, eller "brushen" som vi vill ha som stege. Den skall vara 32 enheter bred, 4 enheter tjock och, i mitt fall, 128 enheter hög. Blocket skall gå ända upp till den övre kanten på gångbron.

Vi justerar texturerna på stegen... ...så att resultatet ser bra ut!

Om du haft tur har WC själv lagt på texturerna ganska bra för dig, men du kan behöva justera deras placering lite grand, oftast på sidorna av stegen. I mitt fall räckte det att höja X-värdet till två på båda sidorna. Testa även att fixa till toppen av stegen. Du justerar en texturs placering genom att trycka [SHIFT] + [A]. Sedan klickar du på ytan som behöver justeras, i detta fall stegens sidor.

Vi gör om blocket till en entity... ...som gör den delvis transparent.

Nu börjar vi på allvar med det krångliga! Markera din stege, och tryck [CTRL] + [T], eller välj "Tie to Entity" i menyn istället. Nu får du upp en ruta med en hel del kontroller. Under "Class" står det nu "func_door", (om du valt det som standard). Det betyder att stegen fungerar som en dörr, vilket vi inte vill! Klicka på nedpilen och scrolla tills du hittar func_wall. Nu kommer din stege inte att göra ett smack, den kunde lika gärna ha varit ett vanligt block, eller "brush"... MEN! Eftersom det är en entity kan du ställa in olika egenskaper för den, och, i detta fallet, göra den transparent i vissa områden.

I listan under väljer du nu "Render Mode". Till höger i rullisten väljer du "Solid".

Ett steg längre ner finns "FX Amount (0-255)". Klicka på den, och i rutan till höger skriver du "255".

Vad har vi nu gjort, undrar du? Jo, vi har angett att stegblocket skall ritas upp med metoden "Solid", och med värdet 255. Det gör att alla de områden på texturen som är helt blåa, och har färgindex #255, blir helt genomskinliga. Hade vi skrivit in, t.ex. 128 istället för 255, så hade områdena varit halvgenomskinliga, med ett blått skimmer. Inte snyggt alls!

Nu är själva stegblocket klart. Men! Vi behöver något mer! Det du har nu är bara ett block som SER UT som en stege! Det FUNGERAR inte som en!

Ännu ett block ritas upp... ...och skapas!

Nu kommer vi till pudelns kärna. En stege består utav två delar egentligen! En "stege", som bara ser ut som en stege, och en del som man egentligen klättrar på.

För nästa del behöver vi texturen AAATRIGGER, som är den fula, lila texturen med ett Half-Life-märke på. Välj den, och skapa ett nytt block "framför" stegen, som är precis lika högt, brett och långt som själva stegen. Det får inte gå in i stegen, utan ska ligga an mot den och vara lika stor.

Med ännu ett tryck på [CTRL] + [T] får vi en klättbar stege! Wooh!

Markera nu ditt nya block, och tryck [CTRL] + [T]. Du får upp rutan igen. Den här gången ska du välja "func_ladder" under Class: . Du behöver inte ändra något annat. Dessutom kan du endast döpa den i alla fall...

Du kanske undrar varför vi tog texturen AAATRIGGER? Det var egentligen onödigt, men det är god sed att alltid använda den till triggers, stegar och liknande som inte syns inne i spelet.

Grabba tag i blocket... ...och flytta ut det 1 enhet!

Nu när själva "klätterblocket" är klart (det är helt osynligt inne i spelet), så ska vi bar justera det lite innan vi är klara! Minska ner grid-sizen till minsta möjliga, och flytta ut "klätterblocket" 1 enhet från själva stegen. Tada! Vi är klara!

Nu finns det en sak till! Eftersom stegen är en func_wall så kommer vi inte att kunna skjuta igenom den, utan det kommer bli skotthål i "luften" mellan stegpinnarna! ARGH! Så kan vi ju inte ha det!

Lösningen är ganska enkel...

Vi börjar med att göra om våran func_wall till en jättelömsk func_illusionary!

Markera din stege (func_wall). tryck [ALT] + [ENTER] för att se dess egenskaper. Du får se den välbekanta rutan igen. Klicka på "Class:" och scrolla och välj "func_illusionary" istället. Stäng rutan.

Nu har du gjort om din func_wall till en func_illusionary. Det innebär att den är som en synvilla, både du, monster och kulor går igenom den! Man kan tycka att det inte gör något, eftersom func_laddern borde "fånga upp" en, men ofta fungerar det inte som det ska, och man kan fastna, vilket inte är roligt! Dessutom ser det dumt ut när en Headcrab hoppar igenom en stege!

Vi skapar ett nytt block... ...och täcker över func_illusionary

Detta löser vi genom att välja texturen CLIP. Alla block som är helt täckta med texturen CLIP och inte är entities blir helt osynliga, och gör att spelaren inte kan gå där de är. Detta är precis vad vi utnyttjar, vi täcker den lömska stegen med en s.k. "clipbrush", så att man inte kan gå igenom den! Skott däremot, går lätt igenom den. Precis vad vi behöver!

Det är lätt, bara skapa ännu ett lika stort block, helt täckt med texturen CLIP. På alla sidor! Det ska vara lika stort som stegen (func_illusionaryn). När du är nöjd med den, flyttar du den helt enkelt över stegblocket! Tadaa! NU är du färdig!

Samma metod kan användas för att göra staket som man kan skjuta igenom.

Så här blir resultatet:

Här ser du skillnaden mellan de olika stegarna!

Notera här att den högra stegen, som bara är en enkel func_wall, får skottskador i "luften", medan den vänstra, som är den krångligare versionen, med func_illusionary, släpper igenom skotten.

Ladda hem exempelkartan här!

Det var väl det hela! Får ni problem så maila mig bara! Men läs igenom guiden en extra gång för att vara säker. Det absolut bästa sättet att lära sig är att leka runt i programmet!

Xarragon