valvehammer
= Harita Tasarım Aracı
= Compile Araçları
= Haritalar için wad Dosyası olusturur
= Bsp formatındaki haritaları map formatına çevirme(
Bu programları sitemizdeki counter-strike programları adlı kategoriden indirebilirsiniz
Şimdilik bu kadar
program yeter bunlar temel İşlevler için ileride baska programlarda eklicem.Başlıyoruz;
Önce indirdiğimiz zip dosyalarını extrac edelim,ondan sonra valve hammer
editörü yükliyelim.Yükledikten sonra,programın ayarlarını yapmaya
baslıyabiliriz.
Resimli anlatım
Game Configuration
Build Programs
arklar ustteki resimde gözükmüyor sas sistemci yazıyor
csg
bsp
vis
rad
bunlar indirdiğimiz dosyalrın içindeki programlar bunları secelim
General
2d views
Textures
biten doyalardır sececeğiniz< dosyalar
cstrike.wad
cbble.wad gibi 4 tane ismini hatırladıgınınz dosyaları secın
Yazılı
anlatım
Programı calıstırın Tools penceresinden Options u secin cıkan
pencerede Game configurations seceneğine tıklayın,ayarları aşağıdaki
gibi yapın;
Configurations:Edit butonuna basın daha sonra add butonuna en son acılan yere istediğiniz bir adı girin Ben Counter-Strike olarak atadım ismini.Daha sonra ok ve close tuslarına basarak pencereleri kapatın.
Game DataFiles:Add butonuna basın, Hammer ı yüklediğiniz yerde fdg isimli klasörün içinde counter-strike isimli fdg dosyası olucak onu seçin.
Texture Format:Burda ayar yapmıyacağız.
Map Type:Burda ayar yapmıyacağız.
Default PointEntity class:
info_player_start ı seciyoruz.Default SolidEntity Class:Func_wall ı seciyoruz.
Game Executable Directory:Counter-Strike nın klasorunun yerini belirtiyoruz.
Örnek:C:/Program Files/Counter-Strike/cstrike
Mod Directory:Tfc yada baska yüklü olan hl modlarının yuklu oldugu
klasörünün yerini belirtiyoruz(dikka sadece bir mod secilebilir).
Örnek:Bende cs1.6 yüklü olduğundan mod yüklü deil bende böyle gösterdim.
C:/Program Files/Counter-Strike/platform
Game Directory:Valve klasörünün olduğu yeri belirtiyoruz.
Örnek:C:/Program Files/Counter-Strike/valve
RMF Directory:Haritanızı yaparken kaydetmek istediğiniz zaman nereye
kaydettiğinizi bilmeniz gerekir,belgelerim klasörüne Haritalarım isimli bi klasör
açın ve rmf directory e klasörünüzü tanıtın.
Örnek:C:/Haritalarım(ben c de klasör actım).
Sıra geldi Build Programs Ayarlarına,panelden Build Programsı seçin ve
ayarları yapın;
Build Programs
Not:Game Configurationda ki configurationsa handi adı girdiyseniz build
programda ki configurationsa daki isim otamatik çıkar iki adın da aynı
olmasına dikkat edin.
Game Executable:Hl.exe nin yerini tanıtın.
Örnek:C:Program FilesCounter-Strikehl.exe
CSG Executable:Masaüstüne extract ettiğimiz zhlt klasöründeki csg.exe yi
tanıtın.
Örnek:C:Documents and SettingsSaS_sistemciDesktopzonershlcsg.exe
BSP Executable:Masaüstüne extract ettiğimiz zhlt klasöründeki bsp.exe yi
tanıtın.
Örnek:C:Documents and SettingsSaS_sistemciDesktopzonershlbsp.exe
VIS Executable:Masaüstüne extract ettiğimiz zhlt klasöründeki vis.exe yi
tanıtın.
Örnek:C:Documents and SettingsSaS_sistemciDesktopzonershlvis.exe
tanıtın.
Place compile maps in this directory before running the game:
Haritanızı yaptınız compile ettiniz,compile işlemi bittikten sonra maplarımızı
kaydeticeğimiz klasörü belirtmemiz lazım.
Örnek:C:Program FilesCounter-Strikecstrikemaps
Not:Genelde olan bir hata var bazı yeni başlayan tasarımcılar maplarını
başka klasörlere kaydettikleri için compile bittiğinde oyun calıştıgında harita
bulunamadı gibi bir hata alıyorlar bunun nedeni,cs nin haritayı
bulamamasıdır,bunun olmaması için Place compile maps in this directory
before running the game:
Örnek:C:ProgramFilesCounter-Strikecstrikemaps ayarı bu şekilde yapın.O
zaman maplar direk cs maps klasörüne kaydedileceği için haritanız
açılacaktır.
Şimdi sıra 2d views ayarlarında,2d views penceresini seçin ve ayarları yapın.
2d views
Options:Burda Reorientprimitives on creaation in the active 2D view
seceneği hariç hepsini seçin dikkat Grid ayarlarına ellemeyin.
Grid:Burda ayar yapmıyacağız.
Burda ayar yapmıyacağız.
istiyorsunuz.O zaman buraya bir değer girin ve ne kadar geri almak istiyosanız
o kadar geri alın.
Not:Dikkat undo level değerinde bilgisayarının ram ı düşük olanlar için 50
ideal bir değer bu tur sistemi düşük olanlar fazla değer girmesinler yoksa pc
de kasmalar başlar.
dosyalarının yerini belirtir.
Diğer konularda Hammerda ki araçların ne işe yaradığını
acıklayacağım.
Selection Tool:Bu araç çizdiğimiz nesneleri seçmemize yarar
Örnek:
Magnify:Üzerinde çalıştığımız alanı zoom yapmaya yarar.
Camera:Camera ile 3d Görüntüde çalışırken gezmemizi sağlar.
Entity Tool:Entity tool ile haritamıza counter ve teröristleri yerlere silahları koyarız veya arac yolu yapabiliriz mesela hl de bi mapta küçük sarı bi tren vardı üzerinde gittiğimiz multiplayer olrak oynarken, onun için yollar yapabiliriz(path corner koyarak tam adı bu muydu ne herhalde bu olması lazım)
Block Tool:Bu araç ile araba,ev,kapı,duvar vb. şeyler çizebiliriz. Block tool ile 5 farklı çizim neceneği vardır.Bunlar;block,wedge,cylinder,spike ve arc tipi çizimlerdir ve objects kısmından secilirler.
Örnek
:
Block:Duvar kapı pencere merdiven çizmek için kullanılır.
Arc:Dönen merdiven Yapımında Kullanılır.
Wedge:Üçgen şekiller yapılır.
Spike:Tam acıklıyamıcam ama silindir ve üçgen karışımı bişi ortaya cıkıyo,deneyin anlarsınız.
Cylender:silindir nesneler yapma için kullanılır,mesela benzin varili,havuz,tekerlek vb.
Toggle texture appcilation:haritamıza çizmiğimiz nesneleri kaplamaya yarar mesela bir duvara pencere texturesi kaplıcaz diyelim.
seçiyoruz ve sağ yanda cıkan face properties penceresinden browse ye basarak istediğimiz resmi nesnemize uyguluyoruz.
Örnek: resmin sol tarafındaki beyaz yer kaplanmamış hali (sol üste cizgiden bakın).
Apply current texture:Toggle texture appcilation le aynı işlevi görüyor tek fark toggle texture nesnenin sadece bir yüzeyini kaplıyor,apply current ise nesnenin tamamını kaplıyor.
Örnek:
Apply Decals:Duvar üstüne yazı yada logo koymak için Kullanılır(İlerki zamanlarda yapılışını anlatacağım).
Clipping Tool:Nesneleri kesmeye yarar.
Örnek:
Vertex Tool:Nesneleri yamultmaya yarar mesela bu yöntemle dağ yapabiliriz cs_siege deki dağlar gibi
Path Tool:Tam olarak ne işe yaradığını hatırlamıyorum sun bi araz yazarım işlevini.
Evet hammer da kullanıcağımız araçlarıda öğrendik sıradaki konumuz entity ler.
-------------------------------------------------------------------------------------------------------------
arkalr yapcağımız map çok basit öğrendinizmi diye bir test gibi
bir yer çizin etrafına duvar yapın ve bir tanede tavan çizin
şimdi bir tane küp yapmış olmanız gerekır kamare ile küpün içine girin
içine iki duvar çizin yanyana yapmayın birtarafta ct lerin yeri
diğer tarafta t lerin yeri bu yüzden birbirine yakın çizmeyin farklı yerlerde olsunlar
şimdi oyuncuları yapak rresme tıklyın sağ altta böyle bir kutu var
ama yazılar farklıdır
şu şekilde ayarlayın
CATEGORİTES: [ENTİTİES]
OBJECT: İNFO_PLAYER_START
YPIN SONRA PROGRAMIN ORTASINA GELIN EN BAŞTEKI KUTUCUK TAKİ İSTEDİĞİNİZ YERE İSTEDİĞİNİZ KADAR KOYUN
AMA KOYDUKTANSONRA YEŞİL RENKTE KUTULAR CIKAR BUNLAR DUVARA GÖMÜLMÜŞ VAZİYETTEDİRLER
BUNLARI İLE SEÇİP SİYAH EKRANLARDA YANA VEYA YUKARI KALDIRINKI OYUNCU DOGDUGUNDA
YERE GOMULU DURMASIN
ŞİMDİ GELDİK T YAPMAYA
CATEGORİTES: [ENTİTİES]
OBJECT: İNFO_PLAYER_DEADTMATCH
YAPIN
TEKRAR AYNI İŞLEMI UYGULAYIN
BASIT MAPIMIZ TAMAM DIR SIRA GELDI MAPIMIZI OYNAMAYA
PROGRAM ACIKKEN F9 A BASIN KAYDETME YERI ACILIR ISMINIZI YAZIN MAPIN SONRA KAYDEDIN
KAYDETTIKTEN SONRA PENCERE ACILACK BIRTANE
GELEN PENCEREDKİ AYARLARI YAPAK
PENCEREDE EXPERT YAZAR ONA TIKLYIN YAZMIYORSA SIKTIR EDIN
BASKA BİR PENCE GELECKTİR
PENCERRENIN EN USTUNDE
CONFIGURATIONS VAR
ORAYI
HALFLİFE:COUNTERSTRİKE OLARAK AYARLAYIN SONRADA GO! TUSUNA BASIN İŞTE BU KADAR
EĞER HATA ALRISANIZ
allta professional mapyapımı verılmıstır kendınıze guvenıyorsanız buyrun yapın
Nesnelere Özellik Verme
Nesnelere bazı özellikler verebiliriz,nedir mesela bunlar?
func_bomb_target:Oyunda
bomba kuracağımız alanı belirler,nereye kadar bomba kurulmasını istiyorsak o
kadar büyüklükte boyutunu ayarlayıp bir brush(nesne)çizeriz tabiki bu nesne
aaatrigger texturesi ile kaplı olmalıdır.Daha sonra çizdiğimiz brush a func_bomb_target
özelliği ekleriz.
Not:Bomba
kurduğunuz bölegedeki kutu veya benzer şeylerin kırılmasını istiyorsanız
Func_bomb_target atadığınız brushun name kısmına targeta yazın daha sonra
kırılacak nesneninde(func_breakable olarak atadığımız nesne) name kısmına
target a yazın böylece bomba patlayınca kutularda kırılmış olur.Bir örnekle
göstereyim isterseniz.
func_breakable:Nesneye
kırılganlık özelliği verir.Mesela kutuya ates edersek bu özellik sayesinde
kırılır yada bomba alanına koyduğumuz kutular bomba patlayınca kutularda
kırılır.
Strength : Nesnenin nesnenin
ne kadar sağlam olduğunu ayarlarız 1 cok zayıf 255 cok sağlam.
Material Type:Kırılan
parçaların dağılırken ne olmasını istiyorsak onu seçeriz mesela
tahta,metal,cam,
Gibs Direction:Kırıldıktan
sonra ki parçaların nereye dağılmalarını istiyorsak onu ayarlarız.
Delay Before Fire:Ateş
edildikten ne kadar süre yazdıysanız o zaman kırılır mesela 15sn bekler ve
kırılır.
Gib Model:Kırıldıktan sonra
dağılan parçalar için model ekleyebilirsiniz mesela kırılınca altın
dağılabilir.
Spawn On Break:Kırılınca
içinden alet edevat cıkar mesela healt mermi vs (Sadece hl için yapılan
maplarda olur).
İşaretler:
Only Trigger:Sadece func_bomb_target
gibi başka bir entity tetiklediğinde kırılması için.
Touch:Değince kırılması için.
Pressaure:Üstüne cıkınca
kırılması için.
Instant crowbar:levye ile
kırılır. (Half-Life için)
func_button:Asansörlerin yada
normal kapıları acmak için func_button özelliği atarız böylece kapıları
duğmeye basarak açabiliriz.
Speed:Düğmenin hareket hızı.
1ile 255 arası.
Trgetted Object:Tetiklemek
istediğimiz başka entity varsa onun adı.
Master:Bu düğme başka bir
entity tarafından çalışır hale getirilebilir.
Sounds:Düğmeye basınca ortaya
cıkan ses.
Delay before reset:Her
basmada tekrar çalışır hale gelmesi -1 sn ye yazarsanız bir defa
çalışacaktır.
Delay before trigger:Girdiğiğiniz
değer kadar bekler ve sonra çalıştıracağı hangi entity varsa onu tetikler.
Locked Sound:Eğer master'i
varsa, tetiklenmeden önce çıkaracağı kilitli sesi.
Unlocked Sound:Eğer master'i
varsa, master aktif hale gelince çıkaracağı ses.
İşaretler:
Don't Move:Hareket etmemesi
için.
Toggle:Düğmenin ışığı her
basmada yanıp söner.
Sparks:Kıvılcım çıkarır.
Touch Activates:Düğme
dokunduğunuz an çalışır.
func_buyzone:Oyuncular silah
alacağı mesafeyi belirlememizi sağlar nereye koyarsak oradan alırlar yanlız
sadece baselere cizin haksızlık olmasın.Team kısmından hangi takım için
olmasını istediğinizi seçebilirsiniz.
func_conveyor:Bu özellik
verilen nesnenin üzerine çıkan kimse nesneyle birlikte hareket eder.mesela
alışveriş mağazalarında ki yürüyen merdivenin arabalar için olanını düşünün.
Speed:Kayma hızı 1 ile 255
arası.
İşaretler:
No Push:Bant kayar ama
oyuncuyu yada bir nesneyi üzerinde taşıyamaz.
No Solid:Görünmez olur.
func_door:Kayarak
açılan kapı yapımında kullanılır.Yukarı-aşağı gitmesini istiyorsak menuden
up-down seçeneğini işaretleyin.
Parametreler:
Speed:Açılma hızı.
Master:Dönmesini sağlayan
nesne mesela tekrar verelim(zaten hep aynı örnek ) düğme gibi.
Move Sound:Açılma sesi.
Stop Sound:Kapanma sesi.
Delay before close:Açık kalma
süresi.
Lip:Mesela kapıdan gecicez
diyelim açmaya çalıştığımızda buraya ne değer verirsek o kadar süre bekler
ve öyle açılır
Damage infilicted when blocked:Kapının
arasına sıkışıp kalan nesneye
(func_breakable özelliği olan nesne)vereceği hasar.
Health:Kapıya sıkışan
oyuncuya vereceği hasar.
İşaretler:
Starts Open:oyun başlayınca
kapıda açık olarak başlar.
Toggle:Değdiğiniz zaman yada
baska bir entity tarafından tetiklenince açılır tekrar dokunursanız kapanır.
Use Only:Sadece "use" tuşu
ile çalışır.
func_door_rotating:
Normal kapı yapımında kullanılır donmesi için,döneceği yere göre menteşe
çizilir bu çizilen nesne ''origin'' adlı texture ile kaplanır.
Parametreler:
Distance:Dönme açısı.Hiç bir
şey yazmazsananız 90 derece dönecektir.
İşaretler:
Reverse Dir:Kapı oyuncuya
doğru açılır.
One Way:Kapı tek tarafa
açılır.
func_escapezone:Escape
haritalarında teroristlerin kaçış bölgesini belirtmek için kullanılır.
func_hostage_rescue:Rehine
kurtarma bölgesini belirtmek için kullanılır.
func_illiusionary:Bir
nesneye bu özelliği verdiğiniz zaman oyuncu onun içinde geçebilir mesela
çalı çırpı yaparken kullanabilirsiniz.
func_ladder:Bu
özelliği verdiğiniz nesneden oyuncu yukarı doğru tırmana bilir mesela
merdiveni olabilir.
func_pendulum:Sallanma
özelliği yaratır mesela tabela yada ağaç veya baska bir şeyi
sallandırabiliriz.
func_pushable:Çizdiğini
nesneleri itmenizi sağlar(hl single player oynarken kutuları itebiliyoduk
hatırladınızmı?).
func_rot_button: Vana
veya benzeri dönerek çalışan nesneler için kullanılır.Herzaman ki gibi yine
origin olmalı.
Parametreler:
Pitch Yaw Roll (x y z):Dönme
açısını ayarlamak için.
Targetted Object: Tetiklemek
istediğimiz entity.
func_rotating:Bu
özelliği atadığımız nesne sürekli döner mesela pervane.
func_vip_safetyzone:Vip
haritalarında vip kaçış bölgesini belirtir mesela as_oilrig haritası gibi.
func_wall:Tel,ağaç,merdiven
gibi arkası görünen yada cam gibi nesnelerin içini gösterebilen özelliklere
sahip textureleri func_wall ile yaparız.
Tel,ağaç,merdiven gibi nesnelerin mavi olan yerlerin oyunda gözükmemesi için
func_wall atadığımız nesnenin özelliklerinden şu ayarları yaparız.
Render Mode:Solid
FX Amount:255 yapılır.
Cam gibi nesneler için ise
Render Mode:Texture
Fx Amount:1-255arası sayı
girerek seffalıgını ayarlarız.Eğer camın kırılmasını istiyorsanın Func_breakable
olrak atadığımız camın özelliklerinden yine üsteki aynı özellikleri
yazmalıyız.
trigger_once: Eğer bi
oyuncu bu entity edokunursa baska bir entity tetiklenir mesela ben haritamda
oyuncular için msj yazıyorum msl oyuncu dokunuyo trigger_once ye ve
karsısında yazı cıkıyor Bilmemm ne haritasına hoş geldiniz iyi oyunlar
falan.
Tüm bu özellikleri nesnelere nasıl veririz,Özellik vereceğimiz nesneye
mousenin sağ tuşu ile tıklarız cıkan pencerede tie to entity seçeriz ve
karsımıza bir panel cıktı ordaki class kısmından istediğimiz özelliği atarız
ve attiributes kısmındanda atadığımız özelliklerin ayarlarını yaparız .
Noktasal
Özellikler
ambient_generic:Haritanıza
ses eklemenizi sağlar(dosya waw formatında olmalı)
Parametreler:
Path/filename...:Haritanızda
kullandığınız sesin klasörünü belirtin(cstrikesound klasöründe olucak
koyacağınız sesler)
Volume:Ses ayarı (1-10)
arasında değer verebilisiniz.
Diğer parametreler çeşitli efektler eklemek içindir.
İşaretler:
Play Evrywhere:Ses tüm
haritada duyulur.
Small Radius:Ses küçük bir
alanda duyulur.
Medium Radius:Ses normal bir
alanda duyulur.
Large Radius:Ses geniş bir
alanda duyulur.
Start slient:Başlangıçta
sessiz.
is NOT looped:Ses bir defa
çalınır.
armoury_entity:
Haritanızda yere silah veya
kalkan koymak için kullanılır(O-2 ile alıyoruzya)
Örnek:aim_ak_colt
ta yerdeki silahlar gibi
Parametreler:
Item:Yere
konulacak silahların adı
Count:Ne
kadar koymak istiyorsanız o değeri girin
env_beam:Lazer
sprites eklemenizi sağlar
Parametreler:
Start Entity:Başlangıç yerini
belirten info_target in "name" parametresi.
Ending Entity:Bitiş yerini
belirten info_target in "name" parametresi.
Brightness:Parlaklık
Sprite Name:Efekt
için kullanılacak sprite dosyasının adı.
Texture Scroll Rate:Eklediğinizi
sprite nin haraket hızıdır.
env_beverage:İçinden
enerji veren nesneler cıkar(half-life multiplayer haritalarında olurdu kola
makinelerine basınca düşen kola enerjimizi arttırırdı)
env_blood:Kan
efekti çıkartır.
env_explotion:Patlama
efekti verir
Parametreleri:
Magnitude:Patlama
şiddeti.
İşaretleri:
No damage:Hasar
vermemesi için.
Repeatable:Tekrar
patlaması için olması için
No fireball:Alev
çıkmaz.
No smoke:Duman
çıkmaz.
No decal:Patlama
yerinde siyah is oluşmaz.
No sparks:Kıvılcım
oluşmaz.
env_glow:Işık
entityleri ile kullanıldıklarında flu bir parlaklık oluşur.
env_shake:
Sallantı efekti ekler.
Parametreler:
Amplitude:Sallantı şiddeti.
Efect Radius:Etki alanı
Duration:Etki süresi ne kadar
değer girerseniz o kadar sb ye etki eder
env_spark:
Kıvılcım efekti ekler. Arızalı cihaz yapmak için
kullanabilirsiniz.Mesela bozuk asansör düğmesi veya lamba düğmesi olark
kullanabilirsiniz.
env_sprite:İsteğiniz
bir sprite eklersiniz.Mesela kendi Sprites inizide yapabilirsiniz.
hostage_entity:
Haritanıza rehine koymanızı sağlar(cs haritaları için sadece mesela
cs_militia,cs_siege veya cs_assault için)
info_map_parameters:Bununla
haritanızda silah satın alma yerini ve bombanın etki alanını
ayarlayabilirsiniz.
info_player_deathmatch:Haritaya
terörist eklemek için kullanılır.
info_player_start:Haritaya
Anti-Terörist eklemek için kullanılır
Not:Haritayı test
ederken bir tane bu entyt den koymanız şart yokya haritada dolaşamassınız ve
birde oyuncular yerden 16 px yukarda olmalı yere temas ederlerse oyundayken
hareket edemezler(hatırlayın oyuna başlayınca cok hafif yukardan yere
düşüyorsunuz bi hatırlayın nedenı bu işte)
info_target:Başka bir entity için kullanılır mesela
kamera koyduk haritamıza kameranın ne yönü göstermemizi istiyorsak oraya
koyarız bir tane.
info_vip_start:Haritanıza
vip eklemek için kullanılır.(as_haritaları yapılırken mesela as_oilrig
haritasında ce deki vip).
light:Ortama
ışık koymak için kullanılır.
light_environment:Ortam
ışığı koymak için(güneş yada ay olarak kullanırız)bir tane yeterlidir.
light_spot:İnfo_target
ile birlikte, spot ışık oluşturur.
trigger_camera:Kamera
Yapmak İçin Kullanılır
multi_manager:Bir
seferde bir çok entity tetiklemek için kullanılır.
env_render:Bu
özellik tetiklemse sonrasında target kısmına hangi modelin adı yazılmışşsa
veya sprites onu meydana cıkarır.
cycler_sprite:Sprites
yada model eklemek için kullanılır.
Evet arkadaşlar şimdi sizlere kendi yaptığınız maplara wad dosyası hazırlamak için örnekler anlatacağım, evet gelelim ilk önce wad dosyasında kullanacağımız resimleri secmeye diyelim resimlerimiz hazır, ben 2 tane resim sectim bir tane demir kapı bir tanede duvar, resimlerden önce cok öenmli bir şey anlatmak istiyorum half-life da ki kaplamaların belli başlı boyutları vardır, belli ölçülere bağlı boyutlar bunlar bu boyutlar 16 nın katları sekşinde olur mesela;
16, 32, 48, 64, 80, 96, 112, 128, 144, 160, 176, 192, 208, 224, 240, 256,
272, 288, 304, 320, 336, 352, 368, 384, 400, 416, 432, 448, 464, 480, 496,
512
diye gider 512 nin üstüne cıkarsanız ki zaten cıktıgınızda hata vercektir muhakkak, diyelimki 512 den buyuk bir resim doyası koydunuz wally e ki eğer boyutuda 16 nın katlarına uyuyorsa mesela 640*640 wally kabul eder ve izin verir wad dosyasına eklemenize ve haritayıda kompile eder sorun cıkarmaz taki sorun oyuna girerken cıkar kaplamanın boyutunun cok buyuk oldugu konusunda uyarı verir, şimdi sectiğim resmi photoshopta boyutunu ayarlıcam öncelikle kapının boyutunu ayarlıyalım yukardakilerden hangisi uygun kapının yuksekliği için onu söyliyeyim, ben genelde 128 kullanırım bu seferde öyle yapıcam yukseklik 128 olarak ayarladık genişlikte 80 olarak ayarladım,genelde 96*128 olarak ayarlarım ama burda kapının uzunlugu genıslığine oranla uzun kaldıgı ıcın 80 olarak ayarladım deneme yanılma ile kapı yuksekliğini ayarlarsınız yanlız yukardakı rakamlara gore olcak.Gelelim şimdi ikinci resmimize ikinci resmimde bir duvar,şimdi kullandığınız duvar şekilleri kare olur genelde ben bir tane kare bir duvar ayarladım duvarın boyutunuda her zaman 128*128 olarak uygularım 256*256 da olabilir ama oyunda duvar buyuk gelebilir oyuncunun gözüne evet resimlerin boyutunu ayarladık şimdi gelelim resimleri wally ile wad dosyalarına eklemeye öncelikle wally i acalım ve yeni dosya oluşturmaya baslıyalım,
kırmızı ile işaretlenmiş yere basıp dosya oluşturun
Daha sonra cıkan menude type yazan yerdeki yeri aşağıdaki resimde olan seçimle aynı yapın;
Sonra ok ye basın,oluştırduğumuz dosya gelicek ekrana;
Evet arkadaşlar gelelim tekrar photoshop a, şimdi resimlerin boyutlar hazır önce kapıyı koyacağız,kapıyı ctrl+a ile secip ctrl+c ile kopyala dıyoruz resmi kopyaladıktan sonra üstteki resimdeki dosyanın ustune sağ tıklıyoruz cıkan menude "Paste As New" e basıyoruz
Sonra bir pencere cıkacak yine karsımıza ordada kaplamamıza vereceğimiz adı soruyor orayada ne koymussak mesela ben kapı koydum
oraya kapi yazıyoruz ve ok diyoruz aşağıdaki gibi resimler ekleniyor
sonra wallyde file kısmından save diyoruz kayıt için ne ad giriceğimizle ilgili isim soruyor ne olucak diyelim mapın adı de_sistemci wad dosyasının adıda de_sistemci olsun
Not:Wallyde dosyada iken kaplamanın adını girdiğinizde harflerin uyumuna dikkat edin türkçe karakterler kullanırsanız hammerda sorun cıkarır Ö,Ü,Ç,İ ve ı harflerini kullanmayın i ve ı da anlatmak istediğim buyük İ ve kucuk ı olmıyacak
Teleport Yapımı
Önce Resimleri Vereyim Resimlere Biraz Dikkat Edin!
Şimdi burda belirttiklerimiz neler açıklayayım;(Öbür topicde Sistemci abimiz açıklamıştı ama biz burda gene değinelim)
info_player_start : Ct nin doğacağı yer.Yani bunu Nere Koyarsanız Ct Ordan Doğar.Bunları birbirine ve yere duvarlara cok yakın koymayın sorunlar cıkabilior!
info_player_deathmach : T nin doğacağıyer.Yani bunu nere koyarsanız T orda Doğar.Gene yakınlık olayına dikakt edin!
trigger_teleport : Bu ise bizi ışınlıyacak olan nesnedir.
info_teleport_destination : Bu da ışınlandıkdan sonra nerde çıkacağımızı gösteren nesnedir.Yanı bunu nere koyarsak ışınlandıktan sonra burda çıkarız.
Şimdi Yuvarlak Hesap Anlatalım;
Bu araç ile player startları çizeriz.Ve bunu gibi bir çok özelliği çizebiliriz kısaca.Ama şimdilik bize burda player startları çizmek için gerekli.
Bu araç ilede nesne leri çizeriz.
Trigger_teleport Yapımı:
1-Önce bir nesne çizilir.
2-Bu Nesne aaatiger kaplaması ile kaplanır.(bu özel kaplamadır valve/halflife.wad dosyası içinde bulunur textureler arasına bununa eklemeyı unutmayın)
3-Çizilip aaatiger kaplaması ile kaplanan nesnemiz araç çubuğundan ok işareti(ilk sırada olan) ile seçilir ve sağ taraftakı bloktan entitye tıklanır.
4-son olarak menüden trigger_teleport secilir.target kısmına info_teleport_destination'a verecegimiz isim verilir(birbirine karışmayacak isimler vermeye özen gosterin)
İnfo_teleport_destination yapımı:
Bir çoğumuz valve hammer editör kullanıyor ama bunda bazı özellıkler eksık o yuzden biz kendımız yazıcaz onları şimdi anlarsınız
1- Seçin
2-info_player_start çizin.daha sonra ok işareti ile (araç çubugu en usttekı) seçin.
3-alt+enter yaparak özellıklere girin o ekranda info_player_start yazan yeri silin info_teleport_destination yazın enterleyın. simdi ordakı yazılar kaybolmstur. Ordan ekle deyin key kısmına targetname vaule değer kısmına "biraz önce trigger_teleportun target kısmına yazdıgımız ismi" yazın.
4-Zaten nesnemız kucuk pembe bişey olmuştur. gene bununda yere fln çok yakın olmamasına dikkat edin!
MAYIN YAPIMI
Adım1) yere istdeğiniz texture ve boyutlarda küçük şekiller çizin. ben sarı renkte çizdim rahat görülebilsin diye siz isterseniz mayınlarınızı gömebilirsiniz..
adım2) daha sonra mayınlarınızın hepsini seçili hale getirin.(ctrl tuşuna basarak) farenin sağ tuşuna basın ve Tie to Entity sçeneğine basın. açılan pencerden func_breakable seçeneğini seçin..
Name: kaboom
Render Mode: Texture
FX amount:0
Explode Magnitude:300
adım3) şimdi geriye son bir şeyi yapmak kaldı. aaatrigger ile her mayının üstünü örtün. (aaatrigger sadece halflife.wad dosyasının içinde bulunmaktadır.) aaatrigger ların hepsinin ismini kaboom olarak değiştirin.
Kapı ile Menteşe Yapmak
hem kapıyı hem origini seçip sonra entitiye bağlayacaksın. önceden bende ayrı ayrı yapıp sadece açılmasını istediğime func_door_rotating veriyordum ve hata veriyordu ikisini birden seçmek içinde ctrl ye basılı tutacaksın sonra func_door_rotatinge bağlıyacaksın.
Diğer Araçları Convert Etme
Diğer haritaları convert edip araçları kopyaladım convert işlemi sırasında hiçbir zaman tam olarak çevrilemediği için araba modellerisürekli hata veriyordu. En sonunda kendim basitte olsa hareket eden bi araç modeli yapmaya karar verdim.Yabancı forumlarda araştırdım ve çözümü buldum.
Öncelikle araç modelini tasarlıyoruz (yerden biraz yüksek yapın).Sonra texture olarak origini seçiyoruz uzun ince bir çubuk yaparak ve modelin içine koyuyoruz. Hepsini bir seçerek Ctrl+T tuşuna basarak func_vehicle entitisine bağlıyoruz. Ayarlardan isim olarak araba , first stop target:fren 1
sound: vehicle 1 ,2 3 (istediğiniz) width ve length değerelerine aracın boyutlarını yazıyoruz. Speed: Hız (ben 1000 veriyorum) Damege on crush: Vurunca götürdüğü can miktarı (ben 20 verdim)
Daha sonra aaatrigger kaplamasını seçip bir diktörtgen pirizma veya kare yapıp(aracın kontrol mekanizması, 1 insan boyu kadar olmalı) bunu da ctrl+T ile func_vehicle_contol entitisine bağlıyoruz. Vehicle name araba yazıyoruz.
Daha sonra aracın önüne ve arkasına path_track entitisi koyuyoruz. Öndekine name bölümüne fren1 ,next stop yerine fren2 yazıyoruz. Arkadakine isim olarak fren2, next stop target olarak fren 1 yazıyoruz. Hepsini bir seçip grup yapıyoruz. Haritayı compile edip aracı kontrol ediyoruz.
Vis-W_Poly
Oyungrafik motoru, yapılan nesneleri üçgenlere(polygon) bölerek çizer. Software render yapabilen ekran kartları bir frame'de(poz) ençok 600 polygon çizebilir. OpenGL ve Direc3D teknolojisi kullabilen 3D ekran kartları için bu değer 3-4 katına kadar çıkabilir. Ancak w_poly değeri nekadar fazla olursa karta düşen iş o kadar artacaktır. Bu da fps'nin (frame per second) düşmesine ve oyunun yavaşlamasına neden olacaktır. Bundan dolayı Resmi Counter-Strike sitesi
ençok w_poly değerini 600 olarak kabul etmiştir.
Hint Brush:
Hint özel bir texturedir. Bu texture Zoner's Compile Tools ile birlikte gelen zhlt.wad içinde vardır. Hint ile yapılan bir nesne ile nesnelerin nereden polygonlara ayrılacağını belirtebiliriz. Ancak bu gene Zoner's in hlvis.exe'si ile faydalı olacaktır. Bunun için eğer yoksa Zoner's i mutlaka kurmanızı ve ayarlarınızı Zoners'e göre değiştirmenizi öneriyoruz.
Üstteki iki şekilde duvarlar buna benzer şekilde poligonlara bölünür. İlk resimde oyuncunun tam karşıda gördüğü poligon koridor sonundaki diğer başka bir leaf'a deydiğinden bu leaf'da mecburen çiziliyor. Ama oyuncu bu konumda bu leaf'i görmüyor. Bunun için bu leaf gereksizce grafik motoruna yük oluyor. İkinci resimde ise pembe renkle çizilen hint brushlar poligonları ufaltıp diğer leaf'e uzanmasını engelliyor. Hint brush'ın üstündeki skip texturesi hint texturesinin yaptığı işin tavan için yapılmamasını sağlıyor. Eğer skip yerine hint kalsaydı, bu sefer tavandaki brush gereksizce hint tarafından polygonlara bölünecekti.
Vis Blok:
Vis bloğu iki leaf'i birbirinden ayırmak için kullanılır. Vis bloğu normal bir textureden yapılan , normal bir nesnedir. Vis bloğunun yerini saptamak , bloğu yapmaktan daha zordur. Çünkü vis bloğunu koyacağınız yer haritanın en canalıcı yeri olabilir. Bunun için leaf olabilcek alanları vis işlemini düşünerek tasarlamanız faydalı olacaktır.
func_wall:
Oyuncu tarafından görülen yüzeylere temas eden başka nesneler, bu yüzeylerin patch sayısını artıracaktır. Rad işleminde nesnelerin ışık alan yüzeyleri patch denilen bölümlere ayrılır. Bir haritada maksimum patch değeri 65535 dir. Bunun için yüzeylere değen nesneleri , yüzeyden 1 pixel uzaklaştırmak bu soruna çare olur. Yere koyduğunuz bir kasanın 1 pixel havada durduğunu kimse farketmeyecektir. Ayrıca silindir gibi çokyüzlü nesnelerin temas ettiği durumlarda ise bu nesneleri func_wall yapmak patches değerinin artmamasına yarayabilir. Entity yapılan nesnelerin rad hesabına dahil olmadığını hatırlayınız.
floresan nesnesi, tavandan 1 pixel aşağıda olmalıdır.
tabana ve tavana değen silindirler func_wall yapılmalıdır
Yukarıdaki yöntemler vis işleminin uzamasını engelleyeceği gibi w_poly değerini düşük tutmaya yarayacaktır. Textureler , yaptığınız nesneler ne kadar güzel olursa olsun 10-20 fps ile oynanan bir oyun, bu güzellikleri silip atacaktır.
anlatım : Pro of DeMeNteD | impawnu ##
saygılarrrr