gunluk. lkd. org. tr'den alınmıştır. İçindekiler

Giriş Yazısı 3 Başla ve Oyna! : -Gamers 4 Wesnoth'a Dalış III 15 Pardus'ta Scilab II 24 Pardus'ta Django 27 Makale: Microsoft'un Rehberliğinde Teknoloji Geliştirmek 31 Makale: Yaratıcılık ve Özgür Düşünce Üzerine 32 Röportaj: Alexandre Julliard (Wine) 35 Torrentlerinizi Uzaktan Yönetin 39

2 Giriş Yazısı Erdem Artan

Merhaba Özgür Yazılım Dostları, ben Erdem Artan Wine projesinin lideri kaçarlar evlerine Alexandre Julliard ile yaptığım röportajı ve onlar ki bir nice mürtede hançer üşürürler Mayıs ayı.. İşçilerin özgürce Taksim' ve uzaktan torrent yönetimini sizler için ve yeşil bir ağaç gibi gülen de bayramlarını kutlayabildikleri hazırladık. ve merasimsiz ağlayan Mayıs ayı... Linux Kullanıcıları Derneği' ve ana avrat küfreden ki onlardır, nin "Özgür Bir Dünya İçin Özgür Ya- Beğeneceğinizi umduğum sayıyı size destanımızda yalnız onların maceraları vardır. zılım" pankartıyla korteje katıldığı Ma- sunarken Annelerimizin Anneler Günü- yıs ayı... Fidanların yeşerdiği veya nü ve İşçi Kardeşlerimizin geçmiş bay- Demir, yeşermesi gerektiği Mayıs ayı... Hepi- ramlarını kutlar, sizleri Nazım Hikmet'in kömür mizin en büyük varlığı olan, olması ge- "Onlar" adlı şiiri ile başbaşa bırakıyo- ve şeker reken, dünyadaki tüm güzellikleri hak e- rum. ve kırmızı bakır den annelerimiz için düşünülen ufa- ve mensucat cık, tepecik, bir dolu fıçıcık gününü Bu arada TruvaLinux 6 yılı devirmiş. ve sevda ve zulüm ve hayat barındıran Mayıs ayı... Mutlu yıllar dilerim. ve bilcümle sanayi kollarının ve gökyüzü Ve Pardus Kullanıcıları Derneği hizmet- Onlar ki toprakta karınca, ve sahra lerinden olan Pardus-Linux.Org Toplulu- suda balık, ve mavi okyanus ğu tarafından hazırlan Pardus-Linux.Org havada kuş kadar ve kederli nehir yollarının, eDergi (Pardus eDergi)'nin 19. sayısı ile çokturlar; sürülmüş toprağın ve şehirlerin bahtı karşınızdayız. Bu sayımızda Hamit Giray bir sabah vakti değişmiş olur, Nart oyuncular için LiveCD mantığıyla korkak, bir şafak vakti karanlığın kenarından çalışan Linux-Gamers dağıtımının tanı- cesur, onlar ağır ellerini toprağa basıp tımı ve Wesnoth'a Dalış serisinin üçüncü cahil doğruldukları zaman. bölümünü, Muslu Yüksektepe Django hakim bölümünde geçen sayımızda anlatmış ve çocukturlar En bilgin aynalara olduğu blog yönetimine yorum ekleme- en renkli şekilleri aksettiren onlardır. nin nasıl yapılabileceğini içeren bir yazı- ve kahreden Asırda onlar yendi, onlar yenildi. yı, Onur Tuna MATLAB alternatifi sayıla- yaratan ki onlardır, Çok sözler edildi onlara dair bilecek Scilab'ın değişkenler bölümünü destanımızda yalnız onların maceraları vardır. ve onlar için: içeren bir yazıyı, Kemal Karataş "Micro- zincirlerinden başka kaybedecek şeyleri yoktur, soft'un Rehberliğinde Teknoloji Geliştir- Onlar ki uyup hainin iğvasına denildi. mek" başlıklı makaleyi, Aydın Bez "Dev- sancaklarını elden yere düşürürler rim ve Yaratıcılık" başlıklı makaleyi ve ve düşmanı meydanda koyup Nazım Hikmet Ran

3 Başlat ve Oyna! : Linux­Gamers Hamit Giray Nart

Başlat ve Oyna! (Boot'n Play! ) Arch Linux tabanlı bir çalışan DVD oluş- zın. USB, bende sdc olarak bağlanıyor, turdular. Projenin adına da “live.linux- sizde farklı olabilir. Adresi öğrenmek i- gamers” dediler. 2009 yılında Sven- çin: Hendrik Haase projeyi devraldı. Sonun- da hem aile dostu çocuk oyunlarını, sudo fdisk - l hem de yüksek performans isteyen o- yunları içeren bir çalışan Linux dağıtımı komutunu kullanabilirsiniz. Yine “dd” ko- oluşturdular. mutunu kullandığınızda işlemi yarıda Dağıtımı resmi sitesinden [1] indirebi- kesmeyin; bilgisayarınızı başka bir işlem lirsiniz. Dağıtım, USB ve ISO olarak in- için kullanmayın. dirilebiliyor. ISO dosyasını indirdiğinize, Bir Arch Linux tabanlı oyuncu dağıtımı kullandığınız CD/DVD yazıcı programı- USB veya ISO biçimleri de kendi arala- olan Linux-Gamers dağıtımının “Hakkın- nızla kalıbı optik ortama yazdırabilirsi- rında “Big” ve “Lite” olmak üzere ikiye da” kısmında yazan tek cümle. Ama da- niz. USB olarak indirirseniz, USB bellek- ayrılıyorlar. Büyük (Big) sürümü, tam ğıtımı başından sonuna tanımlıyor. Ta- ten çalışan bir dağıtım oluşturursunuz. performans oyunları ve 3B destekli son mamıyla, biz özgür oyunculara yönelik Bunun için şu komutu kullanmanız ge- sürücüleri içerirken; daha eski makine- bir dağıtım. rekir: ler için olan hafif (Lite) sürümü ise, 3B oyunlar ve 3B desteği olan sürücüler Proje, gerçekten de oldukça zor bir he- sudo dd bs=8M if=/TAMADRES of=/USBBELLEK yerine,temel sürücüler ile performans defi gerçekleştirmiş. Tüm X86 sistem- istemeyen ve daha çok çocuklara hitap lerde, yüksek performanslı çalışan bir TAMADRES, indirdiğiniz USB dosyasının eden oyunları içeriyor. Tabi boyutları da Linux oyun dağıtımı oluşturmak. tam konumu; USBBELLEK ise USB belle- içeriklerine göre. Büyük sürüm 4.7 GB ğinizin adresi olacaktır. Örnek: boyutunda. Yazmak için bir DVD ya da Başlangıçta takım, iki gruba ayrılmış. İlk en az 5 GB'lik bir USB bellek gerekiyor. grup, mevcut çalışan DVD olan dağıtım- sudo dd bs=8M Hafif sürüm ise 700 MB boyutunda. Bir lardan birine, genç oyuncular için oyun- if=/home/hamit/İndirilenler/lg- live- CD veya dengi bir USB bellek yeterli. lar eklemek amacındaydı. İkinci grup 0. 9. 5- i686- big. usb of=/dev/sdc ise, yüksek performans isteyen 3B o- Live Linux-Gamer'ı çalıştırmak için, yaz- yunların peşine düştü. İlk grup, ne yazık dığınız ortamı bilgisayara takarak, bil- ki, başarılı olamadı. İstedikleri aile oyun- Not: Burada USB belleğinizin temel ad- gisayarı bu ortamdan başlatmanız ye- larını içeren bir çalışan dağıtım bulama- resini yazın. Yani bölüm belirten terli. Ben incelememi büyük ISO biçimi- dılar. Ama ikinci grup başarıya ulaştı. /dev/sdc1 olarak değil; /dev/sdc olarak ya- ni, DVD'ye yazdırarak yaptım. Benim,

4 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Başla ve Oyna! : Linux-Gamers P4 3 Ghz, 3GBRam ve Nvidia 7600 GS kiyor. Tabi kartınız Nvidia ise. ekran kartlı makinem, tüm oyunları tam performanslı ve sorunsuz olarak çalıştır- dı.

otomatikman oluşturuluyor. Dağıtım, ağ Sürücüler yüklendikten sonra, Linux- ayarları için Wicd ağ yöneticisini kulla- Gamers açılmaya devam ediyor ve doğ- nırken, ses içinse Alsamixer'i kullanıyor. İlk olarak, tanıdık GRUB ekranı sizi karşı- rudan masaüstü geliyor. Masaüstü orta- Web tarayıcısı içinse, Firefox tabanlı layacak. Buradan isterseniz, dağıtımı mı olarak GNOME kullanılıyor. Ancak Gran Paradiso'yu kullanıyor. Bunların dı- başlatmadan, ilk bilgisayar oyunların- masaüstü ortamı alıştığınız işlevselliğe şında herhangi bir başka uygulama söz dan biri olan Space Invaders adlı oyunu sahip değil. Yani masaüstünde bulunan konusu değil. Bir dosya yöneticisi yok. oynayabilirsiniz. iki panel vasıtasıyla oyunları başlatabi- Sabit diskinize erişimi unutun. Ona za- lirsiniz. Sağ tuş ise oyunların, uygula- ten ihtiyacınız da yok. Müzik, film gibi Linux-Gamers'ı başlattığınızda, dağıtım, maların, sistem ayarları ve kapanma ko- uygulamalar da yok. Sadece ve sadece otomatik olarak ekran kartınızı tanıya- mutlarının bulunduğu menüyü açıyor. oyun. Linux-Gamers, joypad destekliyor. cak ve sürücülerini yükleyecektir. Yapabileceklerinizin hepsi bu kadar. Ancak joypadinizi görmesi için, dağıtımı başlatmadan önce, joypadinizi bilgisa- Linux-Gamers, benim Nvidia kartımı gö- Sistem ayarları sadece ağ ve ses ayar- yara takmış olmanız gerekiyor. Sonra- rerek, kapalı kodlu Nvidia sürücülerini larından oluşuyor. Linux-Gamers oyun- dan takmak bir işe yaramıyor. kurdu. Bu sürücüleri yüklemek için, larında, elbetteki çoklu-oyunculu oyun- Nvidia'nın lisansını kabul etmeniz gere- lar da mevcut. Bu yüzden ağ desteği de Büyük sürümde toplam 33 adet Linux oyunu mevcut. Bunlar:

5 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Başla ve Oyna! : Linux-Gamers 1- ArmagetronAD: Raster Runer isimli vuruyoruz. Gemimizi yeni silahlar, sa- Çünkü oyunda ses yok. :-) oyunun 3 boyutlu Linux sürümü olan bu vunma sistemleri, güç birimleri gibi do- oyun, kesinlikle bağımlılık yapacak tür- nanımlarla donatabilmemiz için para ka- den. Arkasında ışıktan bir duvar bıraka- zanmamız; para kazanmak için de rak giden bir aracı kullandığınız bu o- mümkün olduğunca çok düşman yok et- yunda, kendi ve rakibinizin duvarlarına meniz gerek. Oyun Pardus deposunda ve oyunun alanının kenarlarına çarpma- da mevcut. dan, birbirinizi sıkıştırıp, duvarlara ya da kenara çarpmaya zorlayacaksınız. Oyun bilgisayara karşı oynanabildiği gibi, 32 oyuncuya kadar ağ üzerinden de oyna- nabiliyor. Oyun, Pardus deposunda da mevcut. Tron isimli bir film vardı. O film- de vardı bu oyun. :-)

4- Battle Tanks: Battle Tanks, oldukça hızlı bir oynanışa, çok-oyuncu ve bölün- müş ekran moduna sahip, iki boyutlu bir arcade tank savaşı oyunu. Oldukça kali- teli çizgi roman tarzı grafiklerden oluşan

3- Blobby Volley: Oldukça popüler o- yunlardan biri olan Blobby Volley, olduk- ça komik oyuncuları olan bir voleybol o- yunu. Zıplayıp duran topu, rakip sahaya düşürmek amacınız. Üstelik resmi vo- leybol kuralları da bu oyunda yok. Tek kişi, ağ üzerinden veya aynı bilgisayar- 2- Astromenace: 3 boyutlu bir uzay dan iki kişi oyunu oynayabiliyorsunuz. hepsini vur tarzı oyunda, geliştirip güç- Oyun, Pardus deposunda mevcut. Zevkli lendirebileceğimiz bir uzay savaş gemisi zaman geçirtecek bu oyunu açtığınız ile karşımıza çıkan düşman gemilerini zaman, ses ayarlarınızla oynamayınız.

6 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Başla ve Oyna! : Linux-Gamers oyun, hoş müziklerle desteklenmiş. Üç 6- Extreme Tux Racer: Karlı dağlarda, Pardus deposunda mevcut. savaş tankından birini ve geniş bir yel- Linux'un maskotu Tux olarak, hızlı bir pazeden silahlarınızı seçerek, dan-dun'a yarışa giriyorsunuz. Oyun esnasında da başlıyorsunuz. Oyun Pardus deposunda oldukça farklı varyasyonlar, işinizi zor- da mevcut. Çoklu oyuncuda laştırıyor. Gece, sis ve hızlı rüzgar gibi. “” ve “cooperative” seçe- Oyun Pardus deposunda mevcut. nekleri mevcut.

5- Chromium BSU: Kuş bakışı dikey kaymalı, hepsini vur tarzında bir arcade oyunu olan Chromium BSU'da, ön safla- ra mühimmat taşıyan bir kargo gemisi kaptanı olarak, kargonuzu düşmanlar- dan koruyorsunuz. Ancak bu o kadar ko- 8- Frets On Fire: Elinize hayali bir gi- lay değil. Düşmanlardan hiçbiri savaş tar alıp da çaldınız mı hiç? İşte size fır- geminizi aşıp da arkadaki kargo gemisi- sat. Klavyenizi bir gitar gibi kullandığınız ne ulaşmamalı. Bir tanesi bile. Fareyi oyunda F1-F5 tuşları ile doğru zamanda kullanarak oynadığınız oldukça hızlı bir doğru akoru basarak, çalan müziği düz- oyun. Pardus deposunda da mevcut. gün şekilde tamamlamaya çalışıyorsu-

7- Foobillard: Bir OpneGL 3B bilardo oyunu olan Foobillard, gerçek fizik ku- ralları ile öne çıkıyor. Çünkü gerçek bi- lardo profesyonellerinin geri bildirimleri ile geliştiriliyor. Üç bant, snooker gibi bilardo oyun çeşitlerini içeren Foobil- lard'da, yapay zeka ya da diğer oyun- culara karşı oynayabiliyorsunuz. Oyun,

7 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Başla ve Oyna! : Linux-Gamers nuz. Kendi müziğinizi oluşturabileceği- boyutlu bir kişiselleştirilebilir eş zamanlı lışıyorsunuz. Hareketlerinizi iyi düşünü- niz oyunda, bir de alıştırma bölümü strateji oyunu Glest. Dağıtımın hafif nün ama acele edin. Zira süreniz kısıtlı. mevcut. Oyun, Pardus deposunda yok. (Lite) sürümünde yok. Teknolojinin büyü Pardus deposunda da mevcut olan o- Pardus'ta oynamak için adresinden [2] ile çarpıştığı oyunda, tarafınızı seçerek; yun, tek ve çok-oyunculu olarak oyna- indirip derlemeniz gerekiyor. Oyun, karmaşık savaş makineleri yapıyor ya nabiliyor. dağıtımın hafif (Lite) sürümünde yok. da kadim iblisleri çağırarak düşmanı yok etmeye çalışıyorsunuz. Pardus deposun- 9- Frozen Bubble: Puzzle Bubble salon da da mevcut olan oyunda, tek kişi bil- oyununun Linux sürümü olan Frozen gisayara karşı ya da ağ üzerinden dört Bubble'da da aynı renkli baloncukları bir oyuncuya kadar çok-oyunculu oynaya- araya toplayarak alanımızı temizlemeye biliyorsunuz. çalışıyoruz. Tek kişilik oyunda 100 bö- lüm, saatlerce süren iki kişilik mod ve ağ üzerinden beş oyuncu desteği bulu- nan oyuna; bir bölüm düzenleyicisi ve harika müzikler eşlik ediyor. Oyun, Par- dus deposunda da mevcut.

12- LBreakout: Bir sopa ve top ile tuğ- laları kırarak temizlemeye çalıştığımız meşhur Breakout oyununun Linux'taki adı. 50'den fazla normal ve bir o kadar da fazladan bölümü olan oyunda, pek 11- Hedgewars: Worms oyununun Li- çok ekstra özellikler (mıknatıslanma, çift nux klonu. Yalnız burada kurtçuklar ye- top, uzun sopa vs...) yardımı ile tüm rine kirpicikler var. Beysbol sopasından, tuğlaları yok etmeye çalışıyorsunuz. El- bomba ve roketlere varan geniş bir yel- bette gitgide hızlanan topu oyun alanın- pazeden seçebileceğiniz silahlar ve pa- da tutmaya çalışarak. Ayrıca kendi bö- raşüt, ip ve kazma gibi araçlar kullana- lümlerinizi de tasarlayabileceğiniz bir 10- Glest: GNU/GPL ile lisanslanmış, üç rak, düşman kirpicikleri yok etmeye ça- düzenleyici mevcut. Oyun Pardus depo-

8 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Başla ve Oyna! : Linux-Gamers sunda da mevcut. fazla değil. O yüzden gerçekten hızlı ol- 15- Neverputt: Neverball tarzı grafik- manız gerekiyor. Fizik modelinin oldukça lere sahip üç boyutlu bir mini golf oyunu başarılı olduğu oyun, tek kişilik hikaye Neverputt. Oyunda 18 adet delik var ve modu ve çok-oyunculu oyun modu ve bu deliklere en az sayıda vuruşla topları pist tasarlayabileceğiniz bir düzenleyi- sokmaya çalışıyorsunuz. Gerçekçi fizik- ciye sahip. Oyun Pardus deposunda da sel hareketlere sahip oyunda 1-4 oyun- mevcut. Linux-Gamers hafif sürümde cuya kadar yarışabiliyorsunuz. Ancak ağ ise yok. desteği yok. Hareketli platformlar, bari- yerler, ışınlayıcılar, rampalar oyunda 14- Neverball: 3 boyutlu bir top yuvar- ellerinizden öperler. Neverputt, dağıtı- lama oyunu olan Neverball, bağımlılık mın hafif sürümünde mevcut değil. yapabilecek bir oyun. Topu bulunduğu zemini yatırarak yuvarlayıp, hedefe u- laşmaya çalışıyorsunuz. Ancak geçme- niz gereken labirentler, dengesi pamuk 13- ManiaDrive: Trackmania 3D oyu- ipliğine bağlı köprüler, yön saptırıcılar nunun klonu olan izometrik grafiğe sa- hiç de dost canlısı değiller. Oyun, Pardus hip ManiaDrive'da akrobatik pistleri hızlı deposunda da mevcut. Linux-Gamers bir şekilde tamamlamaya çalışıyor- hafif sürümde mevcut değil. sunuz. Bölümlerin hiçbiri bir dakikadan

16- Nexuiz: Ağ üzerinde oynanan birin- ci şahıs nişancı (FPS) oyunlarında Linux' un ağır silahı Nexuiz. Oynanış tarzı ola- rak ve Unreal Tournament arası olan Nexuiz, ağda en çok oynanan o- yunlardan biri. Oyunda pek çok mod

9 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Başla ve Oyna! : Linux-Gamers (bayrağı yakala, herkesi öldür, takım o- yok. Pardus'ta oynamak için sitesinden gus, tasarım ve orijinal hareketleri ile yunu, son adam)var ve dahası da oyun- [3] indirmeniz gerek. klondan öteye geçti. Kendi kendilerine cular ve oyunun topluluğu tarafından yürüyen Tux'ları, çeşitli komutlarla (tır- geliştirilmeye devam ediyor. Pardus de- man, paraşüt, bariyer, köprü kur, kaz, posunda mevcut olan Nexuiz, Linux- kendini uçur...), tuzaklarla dolu bölge- Gamers'ın hafif sürümünde ise yok. lerden geçirip çıkışa götürmeniz gere- kiyor. Oyun Pardus deposunda da mev- cut.

19- Quadra: Açık kaynaklı ve İnternet üzerinden çok-oyunculu olarak oynanan bir Tetris oyunu. Blokları yok edip, raki- binize yollayarak, onu bertaraf etmeniz gerekiyor. Oyun Pardus deposunda yok. Pardus'ta oynamak istiyorsanız, adresin- den [4] indirip derlemeniz gerekiyor. 18- Pingus: İşte tek paragrafta tanıt- maya çalışarak hakaret edeceğim bir o- yun daha. Meşhur Lemings klonu olarak tasarlanan ve özgür bir oyun olan Pin- 17- OpenLieroX: Worms benzeri diğer bir oyun. Meşhur Liero'nun Linux versi- yonu. Ağ üzerinden oynanan Open- LieroX'da bir kurtçuk (ya da ona benzer bir şey) olarak, diğer kurtçukları öldür- meye çalışıyorsunuz. Oldukça geniş si- lah repertuvarınız ve bir ninja ipiniz var. Ancak oyun, benzeri Hedgewars gibi sı- ralı değil; eş zamanlı. Ağ üzerinden oy- nanan oyunu, tek başınıza botlarla da oynayabilirsiniz. Oyun, hafif sürümde 20- Sauerbraten: Bir oyundan ziyade, mevcut değil. Pardus deposunda da Cube tabanlı bir FPS ve RPG oyun moto-

10 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Başla ve Oyna! : Linux-Gamers ru olan Sauerbraten, oyundan ziyade Pardus deposunda da mevcut olan o- yo Chronicles. Aynen Maryo gibi, atlayıp oyunu oynarken haritada değişiklikler yun, Linux-Gamers'ın hafif sürümünde zıplayıp, düşmanların üzerlerine basa- yapmak gibi, daha çok düzenleme ile mevcut değil. rak; bölüm sonuna ulaşmaya çalışıyo- ilgilenen oyunculara yönelik. Motor, di- ruz. Daha iyi grafiklere sahip SMC, Par- namik olarak harita ve geometri düzen- dus deposunda da mevcut. lemesi yapmayı mümkün kılıyor. Pardus deposunda mevcut olan Sauerbraten, 23- SuperTuxKart: Tux ve arkadaşla- Linux-Gamers'ın hafif sürümünde yok. rının kullandığı Go-Kart araçları ile kart yarışı yaptığımız bir oyun. Oldukça gü- zel yerlerde (sahil, piramitler, uzay...) yarıştığınız oyunu, aynı bilgisayarda dört oyuncuya kadar oynayabiliyorsu- nuz. Ağ desteği ise geliştiriliyor. Pardus deposunda da mevcut olan oyun; Linux- Gamers hafif sürümde yok.

22- Secret Maryo Chronicles: Süper Maryo dünyasında geçen ve kendi bö- lüm ve dünyanızı oluşturabileceğiniz iki boyutlu bir platform oyunu Secret Mar-

21- Scorched 3D: Üç boyutlu OpenGL bir topçu savaşı oyunu Scorched3D. Rüzgar, açı ve atış gücü gibi etmenleri ayarlayarak, bölgedeki düşman toplarını yok etmeye çalışıyorsunuz. Ne kadar çok düşman topu vurursanız, o kadar para kazanırsınız. Ne kadar para kaza- nırsanız, o kadar güçlü silahlara sahip 24- Teeworlds: Quake ile Worms mele- olursunuz. Tek başınıza ya da ağ üzerin- zi bir oyun. Ağ üzerinden oynanan o- den diğer oyuncularla oynayabilirsiniz. yunda, silahlı ve sevimli(?) noktacıkları

11 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Başla ve Oyna! : Linux-Gamers kontrol ederek, diğerlerini yok etmeye rup düşmanı ezmesi için yardım ediyor- çalışıyoruz. Silahlarımız, tabanca, pom- sunuz. Tek paragraf yer ayırarak haka- palı, bomba atar, lazer ve bir çekiçten ret ettiğimiz bu oyun da Pardus depo- ibaret. Ancak sağlık ve zırh bonusları, sunda mevcut. Dağıtımın ise hafif sürü- diğer oyuncuları kilitlemek gibi özellikler münde yok. mevcut. Eş zamanlı oynanan Teeworlds, Pardus deposunda var. 27- Urban Terror: Aksiyonu bol, ağ ü- zerinden oynanan, takım birinci şahıs nişancılık oyunu UT. Meşhur Counter Strike'ın Linux'taki karşılığı diye özetle- yebiliriz. Kırmızı ya da mavi takımlardan birini ve silahlarınızı seçerek, oyuna başlıyorsunuz. Ancak CS'den farklı ola- rak, yaralanmak hareketlerinizi kısıtlı- 26- Tremulous: Oyun bizi, insanların, yor. İlk yardım almak ve çeşitli oyun uzaylılara karşı savaştığı bir dünyaya modları (bayrağı yakala, takım hepsini götürüyor. Strateji ve birinci şahıs nişan- vur gibi) mevcut. Oyun Pardus deposun- cılık karışımı olan oyunda tarafınızı se- da var. Linux-Gamers'ın ise hafif sürü- çerek, tarafınızın düzinelerce özellik- münde yok. lerini kullanıyor; takımınıza, üs oluştu-

25- TORCS: Açık kaynaklı bir araba ya- rış benzetimi oyunu TORCS. Her benze- tim oyunu gibi, grafik ve gerçekçilik de TORCS'da ön planda tutulmuş. Araba- ların düzenlenmesi ve hasar efektleri ol- dukça gerçekçi. Yarış oyunu sevenlerin eğlenceli saatler geçireceği TORCS, Par- dus deposunda mevcut. Ancak Linux- Gamers'ın hafif sürümünde yok.

12 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Başla ve Oyna! : Linux-Gamers

28- Warsow: Modifiye edilmiş Quake Oldukça sürükleyici olan W2100'de a- ise mevcut değil. motoru olan Qfusion3D motoru ile yapıl- raçlarınızı kendiniz tasarlayıp geliştire- mış, çizgi tarzı grafikleri olan hoş bir bi- rek; 3 devasa haritada hakimiyet kur- rinci şahıs nişancı oyunu Warsow. Tam maya çalışıyorsunuz. 400'den fazla a- bir Quake klonu. Ancak farklı olarak si- raştırılacak teknoloji, 2000'den fazla lahlar, zayıf ve güçlü atış moduna sahip. farklı tasarımlarda ünite geliştirilmeyi Ayrıca mermi özellikleri de var. Sıradan bekliyor. Ağ üzerinden de oynanabilen mermilerin yanında, daha güçlü ve ge- oyun, Pardus deposunda mevcut. Linux- niş alanı etkileyen mermiler de kullana- Gamers hafif sürümde ise yok. biliyorsunuz. Oyun Pardus deposunda da mevcut, ancak Linux-Gamers'ın hafif sürümünde yok.

31- World Of Goo - Demo: Bağımlılık potansiyeli yüksek bir oyun olan World of Goo, bir inşa tarzı bulmaca oyunu. O- yunda belli sayıda yapışkan topu, bir e- lektrikli süpürgenin ağzına getirmeye

30- Wesnoth: Eğlenceli ve basit kural- ları olan, fantastik öğeli bir tur tabanlı starteji oyunu Battle for Wesnoth. Yüz- lerce yıllık Wesnoth tarihini; 6 ana itti- 29- Warzone 2100: Gelecekte geçen fak, 16 ayrı ırk ve 200'den fazla ünite ile üç boyutlu bir strateji oyunu W2100. oynayabileceğiniz gibi, ağ üzerinden di- Oyun 1999 senesinde ticari olarak çık- ğer oyuncularla da fantastik savaşlar mış, 2004 senesinde GPL ile lisanslana- yapabilirsiniz. Oyun Pardus deposunda rak, açık kaynak camiasına katılmıştır. mevcut. Linux-Gamers hafif sürümünde

13 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Başla ve Oyna! : Linux-Gamers çalışıyorsunuz. Toplar, birbirlerine bağla- bölümü, abuk sabuk akrobatik hareket- bilmenize bile- gerek yok. Dağıtım her- narak gidiyorlar. Ancak belli sayıda top ler yaparak, olabildiğince çabuk şekilde şeyi otomatikman yaparak, size anahtar sona ulaşmalı. Fizik kurallarının başınızı bitirmeniz gerekiyor. Oyunun fizik moto- teslimi bir Linux dağıtımı sunuyor. Gitti- bayağı ağrıtacağı oyun, ücretsiz değil. ru harika. O yüzden kontrolleri bir an ğiniz her yere Linux oyunlarınızı götü- Linux-Gamers'da oyunun demosu var. boş bırakırsanız, tepetaklak oluveriyor- rebilir, “Linux'ta da oyun mu varmış! ” sunuz. Grafikler ve sesler kötü. Ama at- diyenlere gösteriler yapabilirsiniz. Hem 32- World of Padman: Bir başka çizgi mosfer inanılmaz. Sıkılmanız mümkün de bilgisayara hiç dokunmadan. grafikli bir Quake modifikasyonu World değil. Oyun, Pardus deposunda da mev- Of Pardman. Ancak komik karakterler, cut. Ancak, her şey bu kadar güzel değil. Ça- ucubik silahlar ve tam bir hareket mev- lışan bir dağıtım olan Linux-Gamers, ne cut. Bu oyunda plan, strateji falan yok. yazık ki kayıt olayını desteklemiyor. Ya- Sadece “herkesi öldür” modunun oldu- ni, bir oyuna ya başlamayın, ya da bitir- ğu oyunda, tek kişilik oynama şansı da meden kalkmayın. Öyle ya! Sabit diski- yok. Oyun Pardus deposunda mevcut. miz yok, oyunu nereye kaydedeceğiz? Linux-Gamers'ın ise hafif sürümünde Edemiyorsunuz. O yüzden Wesnoth, yok. Warzone 2100 gibi uzun oyunlar, daha baştan anlamlarını yitiriyorlar. Neyse ki bu tip oyunlar fazla yok. Aynı şekilde harita ve bölüm düzenleyiciler de baş- tan kopmuş oluyor. Harita yaptık, bölüm yaptık. Nereye kaydedeceğiz? Edeme- yeceğiz.

Sonsöz Herkese özgür oyunlar.

Linux-Gamers Live dağıtımı, başına o- [1] http://live.linux-gamers.net/ turduğunuz herhangi bir bilgisayarı, sa- [2] http://fretsonfire.sourceforge.net/ bit diskine hiç dokunmadan, bir Linux [3] http://openlierox.net/ oyun makinesine anında çevirecek bir [4] http://code.google.com/p/quadra/ dağıtım. Gerçekten zorlu bir görevi 33- Xmoto: 2 boyutlu bir motokros başarmış. Linux-Gamers'ı çalıştırdığınız- Hamit Giray Nart platform oyunu XMoto. 100'den fazla da, hiçbir ayar yapmanıza -hatta Linux'u [email protected]

14 Wesnoth'a Dalış ­ III Hamit Giray Nart

/usr/share/wesnoth/data/core/images/port 1- Karakterlerimizi Çizelim raits

Bu klasörde, ünitelerin, yardım kılavuzu ve diyaloglarda geçen resimleri bulunur. Buradaki resimler 205 * 205 boyutların- 3. Bölüm da .png dosyalarıdır. Bu klasörün içeri- ğinde, ırkların isimlerinde pekçok alt klasör vardır. Bu klasörlerde, bulunan siyah arka zeminli portre resimleri, yar- Wesnoth'a Dalış yazı dizimizin ikinci bö- dım kılavuzu altında kullanılan resim- lümünde, Wesnoth'ta hikaye oluşturma lerdir. “Transparent” klasörü altında ise yolculuğumuzun ilk durağı olan Wes- aynı resimlerin, şeffaf arka zeminli olan- noth verileri, harita oluşturma ve palet İlk olarak karakterimizin bir görüntüsü ları vardır. Bunlar ise oyun içindeki diya- eklemeyi geride bırakarak; bir sonraki olmalı. Aslında burası seçimlik bir adım. loglarda görünen resimlerdir. Bu resim- (bu) yazımızda karakter oluşturma aşa- İsterseniz karakterinizi çizmeseniz de o- lerin boyutları ise 400 * 400 ebatlarında masına geçeceğimizi belirterek noktayı lur. Gerçekten de öyle. Karakterinizin bir olmalıdır (geniş olan ya da uzun silah- koymuştuk. Yolumuza kaldığımız yerden resmi olmazsa, hikayeniz yine de çalışır. lara sahip üniteler için 500 * 500 boyut- devam edelim. Karakterinizin yerinde ise, onun gücünü larına çıkabilir). Bu diyalog resimlerini gösteren bir bar ile dolanan boş bir altı- oluştururken, kırpma (crop) işlemlerini gen oluşur. Tamam; oyunda görünme- en üst ve sağ taraftan yapmamaya çalı- Karakter Oluşturmak yen üniteler mevcut. Ama kimse kendi- şın. Yoksa, diyalog metinleri ile resmin sine görünmeyen bir ünite ile oynamak- üst üste binmesi gibi sorunlar yaşıyor- Tahmin ettiniz sanırım. Evet, üniteler de tan hoşlanmaz değil mi? Ayrıca ünite sunuz. WML kodlarından oluşmuş birer düz me- sadece size görünmez olur. :-) Öncelikle tin dosyalarıdır. Karakter oluşturmanın oyun karakterlerimizin yerlerine bir ba- 205 * 205 karakter ilk adımı da, aynen palet oluşturmak gi- kalım. Wesnoth, karakter resimlerini: profilinde kullanı- bi, karakterimizin harita, sağ sütun ve lacak olan resmim. yardım kısımlarındaki resimlerini oluş- /usr/share/wesnoth/data/core/images turmaktır. Harita paleti oluşturmada ol- duğu gibi, en kolay yol, var olan bir ka- rakteri düzenlemektir. Karakter oluştur- klasörü altında toplar. Bu klasörün iki alt ma adımlarımızı atmaya başlayalım. klasörü daha vardır. Bunlar:

15 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Wesnoth'a Dalış - III 400 * 400 diya- bunları nasıl yapacağımızı göreceğiz. animasyonlar için de geçerlidir. Eğer ka- loglarda kullanı- Ancak önce bunları görsel olarak hazır- rakteriniz için, farklı saldırı animasyon- lacak olan resim. lamamız gerekiyor. Bu kısım biraz uğraş ları resimleri oluşturacaksanız; kuzey, gerektirecek. Grafikten anlayan arka- kuzeydoğu, güneydoğu ve güney yön- daşlarınız varsa onlardan yardım isteye- lerinde yapmanız gerekiyor. Mesela ka- bilirsiniz; ayrıca Wesnoth forumunun rakterimiz kuzeybatı yönüne saldıracak- “Art Contributions” [1] kısmı işinize çok sa, kuzeydoğu için oluşturduğumuz re- yarayacaktır. sim, Wesnoth tarafından otomatikman dikey çevrilerek, kuzeybatı yönü için Harita üzerinde kullanılan karakter re- kullanılacaktır. Hamit karakteri için re- simleri de 72 * 72 boyutlarında .png simler: Harita üzerinde kullanılan resimleri ise; dosyalarından oluşmaktalar. Ancak pa- /usr/share/wesnoth/data/core/images/unit letten farklı olarak, bu sefer karakteri- s klasörü altındadır. Aynı şekilde ırk i- mizi bir altıgen içinde yapmak zorunda Normal konum için. simleri ile adlandırılmış alt klasörlerde, değiliz. Karakterin harita resmini oluş- haritadaki ünite resimleri ve animasyon turmanın en kolay yolu, yaptığınız ka- kareleri bulunur. Karakterimizin WML ko- raktere en çok benzeyen karakteri bula- dunu yazarken belirtebileceğimiz dört rak, üzerinde oynama yapmaktır. Savunma konumu pozisyonu çeşit animasyon olacak. Bunlar: Burada dikkat edeceğiniz bazı noktalar 1- Saldırı var. Eğer klasör altındaki resimleri ince- 2- Savunma lediyseniz, hepsinin ilk konumlarının hep Saldırı animasyon 3- Boş bekleme güneydoğu yönüne doğru olduğunu fark resimleri. 4- Ölüm etmişsinizdir. Resimlerinizin hepsinin ilk konumu, güneydoğu istikametine baka- Aslında bu animasyonları yapmak zo- cak şekilde olmalı. Batı istikametine ka- Bu resimleri daha da çoğaltabilirsiniz. runda değilsiniz. Yapmazsanız, karakter rakterimizi yönlendirdiğimizde, Wes- Ne kadar çok kare oluşturursanız, ka- resminiz, her konumda aynı olacaktır. noth, resmimizi otomatik olarak dikey rakterinizin hareketleri de o kadar akıcı Yaparsanız, hikayenize biraz görsellik eksende döndürecektir. Eğer resmi gü- ve gerçekçi olur. Çizgi film mantığı yani. katmış olursunuz. neydoğu istikametine doğru oluşturmaz- :-) sanız, Wesnoth resmi döndürdüğünde Karakterimizin WML kodlarını yazarken karakteriniz, geri geri gider. Aynı şey

16 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Wesnoth'a Dalış - III 2- Karakterimizi Kodlayalım iki nokta var: Dosya adı büyük harfle dır. Eğer tek bir ünite yaptıysanız (ken- başlamalı; boşluk ve Türkçe karakter i- diniz veya bir kahraman), buraya isim Grafik kısmını geride bıraktıktan sonra, çermemeli. Ben kendi dosyama Ha- girmeniz gerekir. Eğer bir asker tipi ta- WML ile kodlama kısmına geçelim. Bu- mit. cfg adını verdim. Öncelikle dosya- sarladıysanız bu değere kakakterinizin nun için karakter adımızı taşıyan bir nızın başına bir açıklama koyun. Mecbur tipini girin. Bu değişken, çevrilebilir bir *.cfg dosyası oluşturmamız gerekiyor. değilsiniz, ancak seferberliğin ismini ta- değişkendir. “_” bu anlama gelir. Yani , Kullanacağımız tag ise: [ unit_type] şıması, diğer .cfg dosyaları ile karıştırıl- yerelleştirme kısmında, yerel dile çevri- masını önleyecektir. Bunun için en başa: lebilir. Eğer Wesnoth değeri çeviremez- [ unit_type] se, yazdığınız biçimi ile kullanacaktır. ------#textdomain Senaryo Adı Kullanımı: ------[ /unit_type] şeklinde yazabilirsiniz. Ardından [ unit_type] [ unit_type] tagını açarak karakterimizi name=_ “Hamit” tagları arasına karakterimizin özellikle- oluşturmaya başlıyoruz. Gireceğimiz ve- [ /unit_type] rini belirteceğiz. Karakter. cfg dosya- ri değişkenleri: mız, karakterimiz ile ilgili şu kısımları i- şeklindedir. çerecek: id: Karakterimizin, tanımlanacağı de- ğişkendir. Zorunludur. Herhangi bir isim race: Karakterimizin ırkını belirleyen 1- Genel özellikler: Ünitenin gelişim kıs- kullanabilirsiniz. Ancak sıfırdan bir ka- değişkendir. Zorunludur. Kullanımı mı, adı, tanımı, açıklamaları, resimleri, rakter tanımladıysanız, ismini vermeniz yaşam puanı gibi bilgileri içeren kısım. daha doğru olur. Çünkü “id” değişkenin [ unit_type] değeri, aynı anda iki karakterde birden race=human 2- Saldırı: Ünitenin saldırı tipi ve gücü ile olamaz. Kullanımı: [ /unit_type] ilgili bilgileri ve -varsa- özel saldırı yete- neklerini tanımlayacağımız kısım. [ unit_type] şeklindedir. Wesnoth altında alabileceği id=Hamit değerler: bats, mechanical, drake, 3- Animasyonlar: Saldırı, savunma ve [ /unit_type] dwarf, elf, goblin, gryphon, human, ölüm esnasında -oluşturduysak- animas- lizard, merman, monster, naga, ogre, yon resimlerimizi düzenleyeceğimiz kı- şeklindedir. orc, troll, undead ve wose değerleridir. sım. image: Sağ sütunda gösterilecek olan İlk olarak dosyamızda dikkat edeceğimiz name: Karakterimizin oyun içindeki adı- resimdir. Karakterimizin harita resmi ile

17 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Wesnoth'a Dalış - III aynı resim ya da -tasarladıysanız- bir zaman Wesnoth, karakter cinsiyetini hitpoints: Karakterimizin, oyundaki başka harita tipi (72 * 72 boyutlar ve rastgele seçiyor. Ancak değeri bu şekil- yaşam puanını belirleyeceğimiz değiş- şeffaf arka zeminli bir png resmi) resim de girersek, haliyle, birer erkek ve kadın ken. Zorunludur. Sayısal değer alır. Kul- konumu belirtebilirsiniz. Seferberlik kla- portre resimleri oluşturmamız gerekiyor. lanımı: sörünüzün içinden başlayarak, resmi ne- Portre resimlerini karakter çiziminde de- reye koyduysanız, tam yolu yazmanız ğindiğimiz gibi hazırlayıp kaydediyoruz. [ unit_type] gerekiyor. Kullanımı: Yalnız burada dikkat etmemiz gereken hitpoints=30 husus, kadın karakterin resmini kayde- [ /unit_type] [ unit_type] derken, varsayılan olarak kullanılan, er- image=/images/Hamit. png kek karakter resminin adına “+female” şeklindedir. [ /unit_type] koyarak isimlendirmemiz gerekiyor. Me- sela oyundaki elf okçularını ele alalım. movement_type: Karakterimizin, bulun- şeklindedir. Buradaki kullanımı: duğu harita paletleri üzerinde nasıl iler- leyebileceği ve harita paleti üzerindeki profile: Karakterimizin profil tanımın- [unit_type] savunma hesaplamasına etki edecek da kullanılacak olan resmi tanımlayan gender=male,female olan hareket tipini belirleyeceğimiz de- değişken. Siyah arka zeminli 205 * 205 [/unit_type] ğişkendir. Kullanımı: boyutlarında olan .png resmimiz. Kulla- nımı aynı “image” değişkeni gibidir. Zo- şeklindedir. Burada “image” ve “profile” [ unit_type] runludur. değişkenlerinde tanımlanan resim dos- movement_type=smallfood yaları, erkek okçunun resim dosyalarıdır. [ /unit_type] gender: Karakterimizin cinsiyetini ta- Ancak aynı klasörlerde kadın okçuların nımlayacağımız değişken. Erkek bir ka- da resimleri olmalıdır. Burada archer. png şeklindedir. Bu değişkenin alabileceği rakter tasarladıysanız “male”; kadın bir erkek okçunun resmi olurken; kadın değerler; armoredfoot, deepsea, karakter yaptıysanız “female” değeri gir- okçunun resmi, archer+female. png şek- drakefly, drakefoot, dwarvishfoot, melisiniz. Yaptığınız karakter, tek karak- linde isimlendirilmiştir. Wesnoth, bu ka- elusivefoot, float, fly, largefoot, lizard, ter ise ve bu değişkeni belirtmezseniz, rakterin cinsiyetini rastgele belirleye- mountainfoot, mounted, naga, Wesnoth varsayılan olarak, karakterinizi cektir. Eğer karakter erkek gelirse orcishfoot, scuttlefoot, smallfoot, erkek olarak görecektir. Ancak tasarla- archer. png; kadın gelirse swimmer, treefolk, undeadfly, dığınız ünite bir askeri birim ise ve er- archer+female. png resmileri otomatikman undeadfoot, undeadspirit, woodland, kek/kadın olabilecek ise, bu değeri kullanılacaktır. woodlandfloat değerleridir. “male, female” şeklinde tanımlıyoruz. O

18 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Wesnoth'a Dalış - III movement: Karakterimzin, el başına kaç şeklindedir. gibi kullanılır. Peki son kademeye gelip altıgen gideceğini, yani hareket puanını de, daha ilerleyemeyecek olan karakter- belirleyen değişkendir. Zorunludur. Kul- alignment: Karakterimizin, gece-gün- ler nasıl olmalı? Burada da WML'nin lanımı düz durumlarına göre tipini belirten de- AMLA (After Maxsimum Advance- ğişkendir. Karakterin kaypak (chaotic), ment) makrosu imdada yetişecek. [ unit_type] adil (lawful) ya da nötr (neutral) olaca- movement=5 ğını belirler. Zorunludur. Kullanımı: Karakterin son kademesinde olan veya [ /unit_type] oyunda “noob” olarak tabir edilen, yani [ unit_type] kademesi artmayan karakterlerin kade- şeklindedir. alignment=lawful me geçişlerinde kullanılan WML makro- [ /unit_type] suna, AMLA deniyor. İki farklı şekilde experience: Karakterin bir üst kademe- kullanılabilir. İlk olarak, son kademeye ye geçeceği tecrübe puanını belirleyen şeklindedir. Alacağı değerler; neutral, gelmiş ve artık ilerlemeyecek olan üni- değişkendir. Sayısal değer alır. Zorunlu lawful ve chaotic değerleridir. teler için kısa yol kullanımı: değişkendir. Kullanımı: advances_to: Karakterin bir sonraki ka- [ unit_type] demede hangi üniteye dönüşeceğini be- [ unit_type] experience=40 lirten değerdir. Bir sonraki ünitenin adını advances_to=null [ /unit_type] alır. Zorunludur. Kullanımı: {AMLA_DEFAULT} [ /unit_type] şeklindedir. [ unit_type] advances_to=Thug level: Karakterin bulunduğu kademe- [ /unit_type] dir. 0 ve 4 arası sayısal bir değer alabilir. şeklindedir. Ünite +3 yaşam puanı ve Zorunludur. Karakterin durumunu etkile- şeklindedir. Eğer sonraki adımda oyun- iyileşme dışında ilerleme sağlamaz. Yi- memekle birlikte, bu karakter ile dövü- cudan bir karakter seçmesi istenecekse, ne bu yoldan, “noob” karakterlerin ge- şen ya da bu karakteri öldüren birimin seçenek olacak karakterler aralarında lişmesini de sağlayabilirsiniz. Burada ise ne kadar tecrübe puanı kazanacağını virgül ile yazılabilirler. Mesela: saldırı adının gücünü, sayısını ya da ka- belirler. Kullanımı: rakterimizin yaşam puanını arttırabiliriz. [ unit_type] [ unit_type] Benim gibi işi bodoslama ya da kestir- level=1 advances_to=Fire Mage, Silver Mage meden yapmayı sevenler, AMLA değer- [ /unit_type] [ /unit_type] leri içinde gelişim tanımlayabilirler.

19 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Wesnoth'a Dalış - III Örnek: strict_amla: Karakter, bir başka karaktere kademe atlaya- caksa, AMLA'yı kapatıp açmaya yarar. “yes” ya da “no” de- [ unit_type] ğerlerini alır. Varsayılan değerde “yes” konumundadır. advances_to=null {SWORD_DAMAGE} max_times: AMLA'nın kaç defa tekrar edeceğini belirtir. {SWORD_STRIKE} {FIGHTER_HP} id: AMLA'nın kodlamadaki adıdır. Kullanım aynı adda oldu- [ /unit_type] ğundan dolayı değiştirilemez. Değeri her zaman amla_default değeridir. şeklinde kullanılır. Bu tanımlamada Wesnoth, bana her kade- me atlamada seçenek sunacak. İlk seçenek kılıç saldırısı ha- description: AMLA'nın yapacaklarını açıklayan değişken. sarına 1 puan ekleyecek; ikinci seçenek kılıçla yapılan saldırı Farklı tanımladıysanız, ne gibi değişiklikler olacağını açıklayan sayısına 1 sayı ekleyecek; üçüncü seçenek ise karakterin ya- birkaç kelime. Yerelleştirilebilir bir değişkendir. şam gücüne 3 puan ekleyecek. Tüm bu eklemelerin yanında ise tecrübe puanı, bir önceki puanın %20'si kadar yükseltilir. Daha sonra ise [ event] alt tagı yazılır. Burada ise AMLA'nın Bunlar AMLA'nın varsayılan değerlerinde belirtilir. AMLA mak- yapacağı değişiklikler tanımlanır. Her etki için, ayrı tag açma- rosunu, /usr/share/wesnoth/data/core/macros klasörü altında nız gerekir. Bu tagın, komutları ise: bulabilirsiniz. apply_to: AMLA değişikliğinin nereye uygulanacağını belirtir. Uzun yol ise, kendi AMLA'nızı oluşturmaktır. Bunun için increase: Değerin en kadar arttırılacağını belirtir. Sayısal ya [ unit_type] tagının alt taglarından olan [ advancement] tagını da yüzdesel değer alır. kullanacağız. Kullanımı: heal_full: Kademe geçişte, karakterin gücünü doldurur. [ unit_type] [ advancement] remove: Karakterden; yavaşlama, zehirlenme gibi düşman AMLA' mızı buraya yazacağız. etkilerini kaldırır. [ /advancement [ /unit_type] Yukarıda yazılanları hemen örneklendirelim. Mesela bir “noob” karaktere, kademe atlamada 10 yaşam puanı arttıran, şeklindedir. AMLA'yı yazarken kullanacağımız değişkenler ve etkileri kaldıran ve beş defa tekrarlanan bir AMLA oluştura- taglar ise şu şekildedir: lım.

20 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Wesnoth'a Dalış - III [ unit_type] birim tasarlıyorsanız, bir fiyat belirtmeniz gerekir. Sayısal de- [ advancement] ğer alır. Kullanımı: strict_amla=yes max_times=5 [ unit_type] id=amla_default cost=10 description=_ “Yaşam gücünüzü 8 puan [ /unit_type] arttırır. Ancak beş defadansonraartış şeklindedir. olmayacak” [ effect] usage: Yapay zekaya bu karakterin nasıl kullanılacağını belir- apply_to=hitpoints ten değişkendir. Karakteri bilgisayar yönetmeyecekse, belirt- increase=10 meniz gerekmez. Kullanımı: heal_full=yes [ /effect] [ unit_type] [ effect] usage=fighter apply_to=status [ /unit_type] remove=poisoned [ /effect] şeklindedir. Alacağı değerler; archer, fighter, healer, mixed- [ effect] fighter ve scout değerleridir. apply_to=status remove=slowed description: Karakterimizin tanımını yapacağımız değişken. [ /effect] Yardım kılavuzunda, karakterimizin nasıl kullanılacağını ve ne [ /advacement] gibi özellikleri, güçleri olduğunu oyuncuya belirteceğimiz de- [ /unit_type] ğişkendir. İsteğe bağlıdır. Yazmak zorunda değilsiniz. Çevrile- bilir bir değişkendir. Kullanımı: Gelişme ve AMLA kısmı, temel olarak bu şekilde. Karakterimi- zin genel özelliklerinin değişkenlerine kaldığımız yerden de- [ unit_type] vam edelim. description=_ “Napacanız bu Hamit' in açıklamasını falan??! İbişin teki işte. ” cost: Karakterimizin, alınırken oyuncuya kaç altına patlaya- [ /unit_type] cağını belirleyen değişkendir. Eğer tek karakter yapıyorsanız, kullanmak zorunda değilsiniz. Ancak, alınabilecek askeri bir şeklindedir.

21 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Wesnoth'a Dalış - III die_sound: Karakterinizin ölürken çıkaracağı sesi tanımlar. değişkeninin değeri “right”; “mirror” değişkeninin değeri ise İsteğe bağlıdır. Kullanımı: “true” olarak değiştirilmeli.

[ unit_type] [ abilities] : Karakterin, kişisel özelliklerini ayarlayacağımız die_sound={SOUND_LIST: HUMAN: DIE} alt tagtır. Bu tagların değişkenleri olmamakla beraber, tanım- [ /unit_type] lanmış karakter özellikleri atanabilir. Eğer, karakterinize özel- lik tanımlayacaksanız kullanmak zorundasınız. Kullanımı: şeklindedir. [ unit_type] [ abilities] Karakterimizin özellik değişkenleri bu şekildedir. Ancak hepsi {ABILITIES_CURES} bu kadar değil. Karakterimizin özelliklerini belirleyecek {ABILITIES_HEALS} [ unit_type] tagının alt taglar da var. Bunlar: [ /abilities] [ /unit_type] [ portrait] : Karakterin, oyun içinde açılacak diyaloglarda kullanılacak olan resmi ve biçimini belirtebileceğimiz alt tag- şeklindedir. Burada, tanımlanan özelliklere sahip ünite, ilaç dır. Kullanmak zorunda değilsiniz. Kullanmazsanız, karakteri- verme ve iyileştirme özelliklerine sahiptir. Wesnoth'ta tanım- niz konuşurken, resim gözükmeyecektir. Kullanımı: lanan özellik makroları:

[ unit_type] ABILITY_AMBUSH ( Gizlenir) [ portrait] ABILITY_CURES ( İlaç verir) size=400 ( Resmin boyutu) ABILITY_HEALS ( İyileştirir) side=”left” ( Resmin çıkacağı taraf) ABILITY_ILLUMINATES ( Çevresine ışık saçar) mirror=”false” ( Resmin dikey olarak ABILITY_LEADERSHIP_LEVEL_1 … ABILITY_LEADERSHIP_LEVEL_5 çevrilip, çevrilmeyeceği) ABILITY_REGENERATES ( Kendi kendine iyileşir) image=”/images/portraits/Hamit. png” ( konum) ABILITY_SKIRMISHER ( İlk atak) [ /portrait] ABILITY_STEADFAST ( Sarsılmaz) [ /unit_type] ABILITY_TELEPORT ( Işınlanır)

şeklindedir. Resmin sağ tarafta gösterilmesi durumu için de [ portrait] tagları arasındaki kısmı yeniden yazmamız gere- [ resistance] : Karakterin, saldırı tiplerine direncini belirle- kiyor. Aynen kopyalayıp, yapıştırabilirsiniz. Ancak “side” yeceğimiz alt tagtır. İsteğe bağlıdır. Kullanımı:

22 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Wesnoth'a Dalış - III [ unit_type] animasyonları tanımlamaya çalışacağız [ resistence] ve seferberlik oluşturma kısmına yavaş blade=80 yavaş gireceğiz. O zaman kadar herkese impact=80 özgür oyunlar... [ /resistance] [ /unit_type] [1]http://forums.wesnoth.org/ şeklindedir. Burada belirtilen rakamlar, yüzdelik değerlerdir. Örnekte, karakter, kesem ve darbe saldırılarından %80 hasar alacaktır. Oyunda ise, karakterin bu dirençlerini %20 şeklinde görürsü- nüz. Şayet bu rakamlar, yüzün üzerinde olursa, karakter direnci eksi konuma ge- çecektir. Mesela “blade” kısmına “110” yazarsanız; karakter, hançer tipi saldı- rılardan %110 hasar alacaktır. Oyunda ise direnç, “-%10” olarak gözükecek, karakter bu tip saldırıdan normalden %10 daha fazla hasar alacaktır.

Sonsöz

Karakter oluşturma aşamasını, hem kendime hem de sizlere baygınlıklar geçirtmemek için şimdilik burada kesi- yorum. Karakteri oluşturma ve kişisel özelliklerini tanımlayarak, karakter oluş- turma kısmının önemli bir bölümünü ge- ride bıraksak da, henüz bitirmiş değiliz. Hamit Giray Nart Önümüzdeki yazıda, saldırı tipleri ve [email protected]

23 Pardus'ta Scilab ­ II Onur Tuna

Pardus'ta Scilab II - - >x=1 - Çıkartma * Çarpma Scilab dilini öğrenmeye başlayabiliriz. Bu komutun çıktısı şöyle olacaktır: / Sağ bölme Konsolda değişken tanımlayalım. Bunun \ Sol bölme için şöyle bir komut girelim: x = ^ Kuvvet ** Kuvvet - - >x = 1 1. “/” operatörü, sağ taraftaki sayıyı bölen Bu komutu yazıp entera tıkladığımızda Şimdi şöyle bir komut verebiliriz: yapar. Şöyle yazaılabilir: şöyle bi çıktı verecek: - - >x = x * 2 x / y = x * y ^ ( - 1) x = Bu komutun çıktısı şu şekilde olacaktır: “\” operatörü, sol taraftaki sayıyı bölen 1. yapar. Şöyle yazılabilir: x = Konsolda tanımladığımız değişkenleri e- x \ y = x ^ ( - 1) * y ditörde de tanımlayabiliriz. Editöre şöyle 2. bir betik yazalım: Scilab'ta kodların arasına yorumlar da Her komut verince komut çalıştırılır. Biz yazabilirsiniz. Bunun için saturun başına x = 1 komutun çalıştırılmasını istemiyorsak “//” koymanız yeterlidir. yani önce tanımlamaları yapıp sonra ko- Bu betiği .sce uzantılı kaydedip Execute mut çalıştırmak istiyorsak komut sonu- - - >// Bu bir yorum > Load Into Scilab' a tıkladığımızda kon- na “;” koymalıyız. Şöyle yapabiliriz: solda şöyle bir çıktı alacağız: Bir komut yazdıktan sonra verdiğiniz sa- - - >y = 1; yı değerini arttırmak da oldukça kolay- x = dır. - - >y = y * 2; - - >x = 1. . 1. - - >+1. . Scilab'ta kullanabileceğiniz operatörler - - >+2 Konsolda birkaç değişken daha tanımla- şöyle: x = yalım. Şöyle bir komut verelim: + Toplama 4.

24 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Pardus'ta Scilab - II Matematiksel fonksiyonları da kullanabi- Karşılaştırma operatörlerini de - - >real( x) lirsiniz. İsterseniz kendiniz betik yazarsı- kullanabilirsiniz. ans = nız ya da önceden yazılmış olan fonksi- yonları kullanarak daha kolay kodlar ya- & Mantıksal ve 1. zabilirsiniz. trigonometri fonksiyonları | Mantıksal ya da şöyle: ~ Mantıksal değil acos acosd acosh acoshm acosm acot acotd == İki ifade eşitse doğru - - >imag( x) acoth acsc acscd acsch asec asecd asech ~= ya da <> İki ifade farklıysa doğru ans = asin asind asinh asinhm asinm atan atand < Küçüktür atanh atanhm atanm cos cosd cosh coshm > Büyüktür 1. cosm cotd cotg coth cothm csc cscd csch <= Küçük eşit sec secd sech sin sinc sind sinh sinhm >= Büyük eşit sinm tan tand tanh tanhm tanm Sözdizimleri de tanımlayabiliriz. Scilab'ta karmaşık sayılarla işlem de ya- - - >x = cos( 0) pabilirsiniz. - - >x = " foo" x = x = - - >x = 1 + %i 1. x = foo

Bilinen matematiksel sabitleri kullan- 1. + i mak için de değişkenin başına “%” koy- Değişken türlerini değiştirebiliriz. malıyız. Örneğin “i” sayısı için “%i” yaz- Bir sayının gerçel mi karmaşık mı oldu- malıyız. ğunu kontrol de edebiliriz. - - >x = 1 x = %i i sanal sayısı - - >isreal( x) %e Euler sabiti ans = 1. %pi π sayısı F - - >x + 1 - - >x = cos( %pi / 3) ans = x = Bir karmaşık sayıda gerçel ve sanal kı- sımları öğrenebiliriz. 2. 0. 5

25 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Pardus'ta Scilab - II - - >x = " foo" x =

foo

- - >x + " bar" ans =

foobar

Bir sonraki sayıda görüşmek üzere...

Onur Tuna [email protected]

26 Pardus'ta Django (Blog Projesine Yorum Eklemek) Muslu Yüksektepe

Bu dersimiz daha önceden yapmış olduğumuz blog projesine muslu@muslu- laptop: ~/dj ango/blogproj e$ python manage. py runserver yorum eklemeyi hazırlayacağız. Öncelikle blog projemize giriş Validating models. . . yapalım. Bu arada ben Özlem için hazırladığım tasarımı kulla- 0 errors found nacağım. Blog projemize geçiş yapmak için komut satırında

Dj ango version 1. 1. 1, using settings ' blogproj e. settings' cd /home/musludj ango/blogproj e/ Development server is running at http: //127. 0. 0. 1: 8000/ Quit the server with CONTROL- . yazarak giriş yapıyoruz. Metin editörü ile settings.py dosyası- nın kullanacağımız uygulamalar kısmına İnternet tarayıcımızda http://127.0.0.1:8000/ yazarak sitemi- ' dj ango. contrib. comments' , ze gidiyoruz.

yazarak yorumlar modülünü etkinleştiriyoruz. Tekrar komut Herhangi bir hata oluşmadı ise sitemiz açılıyor. Daha sonra satırına geçiş yapıp, tarayıcımızda http://127.0.0.1:8000/admin/ yazarak yönetim paneline geçiş yapıyoruz. python manage. py syncdb Blog kısmına gelerek herhangi bir kayıt oluşturuyoruz. komutunu vererek veritabanımıza yorumlar modülünün tablo- larını ekletiyoruz. Kayıt işlemini gerçekleştirdikten sonra tekrar ayrı bir pencere- de http://127.0.0.1:8000/ yazarak sayfamızı açıyoruz. muslu@muslu- laptop: ~/dj ango/blogproj e$ python manage. py syncdb Installing index for comments. Comment model Blog kaydımıza yorum ekletmek için bu html sayfamıza yo- Installing index for comments. CommentFlag model rumların etikerinin eklenmesi gerekiyor. Bunun içinde /home/muslu/dj ango/blogproj e/templates/blog yolundaki şeklinde bir çıktı alırsanız tablolar oluşturulmuştur. blogtekliste. html dosyasını metin editörü yardımı ile açıyo- ruz. Ardından komut satırında Sayfanın en başına yorumlar eklentisinin yüklenmesini sağla- python manage. py runserver mak için {% load comments %} etiketini ekliyoruz.

yazarak sunucumuzu çalıştırıyoruz. Ardından aşağıdaki gibi ekleme yapıyoruz:

27 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Pardus'ta Django Yorum ekletmek için ayarlarımızı ve sayfamızı düzenledik {%extends ' gerekli. htm' %} şimdi yapmamız gereken işlemler: {% load comments %}

1. urls.py düzenleyip comments modülünün url yapısını etkin- {%block main%} leştirmek 2. urllerden gelen yönlendirmeleri göstermek için html dosya-

{{blogdetay. baslik}}

ları yapılandırmak
{{blogdetay. aciklama}}
Metin editörümüz ile urls.py dosyamızı açıyoruz ve {blogdetay. tarih| date}}

( r' ^admin/' , include( admin. site. urls) ) ,

( r' ^comments/' , include( ' dj ango. contrib. comments. urls' ) ) ,

Yorumlar:

{% get_comment_list for blogdetay as comment_list %} şeklinde en sona ekleme yapınız. Artık gelecek olan yorum //// Bu kısım yorumların listesini almamızı ve oluşturduğumuz urllerini yönlendirebiliriz. blogdetaya göre sıralatmamızı sağlayacak

Şimdi de yönlenecek urlleri html dosyaları üzerinden göstere- {% for comment in comment_list %} lim:

////////// for döngsü ile comment etine tüm yorumların liste- /usr/local/lib/python2. 6/dist- packages/dj ango/contrib/com- sini ekliyoruz ments/templates

{{ comment. user_name }} - {{ comment. submit_date }}

veya kurduğunuz yol üzerinden {{ comment. comment }} {% endfor %} dj ango/contrib/comments/templates altında ki comments klasörü-

nü kendi templates klasörümüzün altına yapıştırıyoruz.

Yorumla:

Sayfamız üzerinden eklediğimiz blog linki tıklayıp bu sayfayı ///////////// render komutu ile blogdetaya formu çağırıyoruz. görmemiz gerekiyor: {% render_comment_form for blogdetay %}

{%endblock%}

28 Pardus eDergi : Pardus-Linux.Org Topluluğu Elektronik Dergisi Pardus'ta Django {% else %} {% if field. errors %}{{ field. errors }}{% endif %}

{{ field. label_tag }} {{ field }}

{% endif %} {% endfor %}

urls.py dosyanız eski sürümden kalan bir bug yüzünden çalış-

mıyor demektir.