Compile Araçları:Bunlar önemli, bunlar olmasa haritamızı bitirip oyunda çalıştıramayız.Burda Vis; v_poly gibi değerleri hesaplar, rad gölgelendirmeyi ve ışıklandırmayırmayi sağlar. Csg kaplamaların ayarlanmasını ve çizilen nesnelerin oyuna aktarılmasını sağlar, bsp de zaten bsp oluşumuna yarıyor.
Wally:Oyunda gördüğümüz haritalardaki, duvar, kapı, çimen, ağaç, cam vs gibi kaplamaların olduğu wad dosyalarını yapmamıza yarıyan program.Yani bir harita yaparken kendi wad dosyamızı oluşturup, onunla yayınlıyabiliriz mapları.
Winbspc:Bu programın amacı, daha önceden yapılmış haritalarıaçarak ki buna decompile deniyor, kendimize göre değiştirerel editleyip kullanmamızdır.
Not:Arkadaşlar gerçekten bu işle uğraşıcaksanız decompile olayını başka haritaları değiştirmek için değilde içinde kullanılan öözellikleri(entity) öğrenmek için kullanın.Nedenine gelince onunda hırsızlıktan farkı yoktur düşünsenize kendi yaptığınız bir mapı başkasının editleyip değiştirerek yayınladığını.Bu hiç hoş olmazdı.
Ş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.
Valve Hammer Editör
Programı yükledikten sonra Çalıştırın bir pencere acılcak ve ayarlarla ilgili yardım isteyip istemediğinizi sorucak, hayır seçeneğine tıklayın ve karşımızda ayarlar tablosu, ekranda ki ayarları beraber yapalım şimdi.
Not:Build Programlar, dediği arkadaşlar compile araçları diye indirdiğiniz programda bulunan dosyalardır ben her zaman masaüstüne extract ederim.Siz nereye açtıysanız oradan göstericeksiniz ayarlardan.
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;
Game configurations
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.
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 Configurations:Counter-Strike yi seçin.
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.
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:\\\\ProgramFiles\\\\Counter-Strike\\\\cstrike\\\\maps 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.
3d views
Burda ayar yapmıyacağız.
General
Undo Levels:Bu ayar haritanızı yaparken bir hata yaptınız ve geri almak 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.
Textures
Texture Files:Haritanızı tasarlarken kullanacağınız kaplamaların olduğu wad dosyalarının yerini belirtir. Örnek:C:\\\\Program Files\\\\Counter-Strike\\\\cstrike\\\\csdust.wad. Diğer konularda Hammerda ki araçların ne işe yaradığını acıklayacağım.Herkese kolay gelsin.Güzel Haritalar Yapmanız Dileği ile Hoşçakalın..
Valve Hammer Araçlar
Hammerda Çizim için Kulanacağımız araçları tanıyalım
Selection Tool:Bu araç çizdiğimiz nesneleri seçmemize yarar
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.
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.
Vertex Tool:Nesneleri yamultmaya yarar mesela bu yöntemle dağ yapabiliriz cs_siege deki dağlar gibi(bence programı tam olarak kullanmadan denemeyin bu yöntemi derim.
Path Tool:Araçlar için gidiş yoları oluşturur(Hl single mapında trenle gittiğinizi hatırlayın tren kendi kendine nasıl gidiyor sandınız yada hl multiplayer mapı vardi bir tane küçük tren hareket ettiriyorduk onun gidiş yollarını belirlemek için)
Evet hammer da kullanıcağımız araçlarıda öğrendik sıradaki konumuz entity ler.
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,****l,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).
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 Openyun 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 .
Evet işte bu kadar,anlamadığınız bir yer varsa lütfen yazın,herkese kolay gelsin.
Noktasal Özellikler
ambient_generic:Haritanıza ses eklemenizi sağlar(dosya waw formatında olmalı)
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.
Hammer ile ilgili ayar ve araç kullanımı hakkında hazırladığım video
Oyun grafik 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 (http://www.counter-strike.net) ençok w_polydeğ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.