İkili Modüller Oluşturmak için Visual Studio’yu Hazırlama

Bunu kullanmamanızı tavsiye ederiz. Gelecekteki bir güncellemede değiştirilebilir veya kaldırılabilir.

Bu sayfa, gmod-module-base'in eski bir sürümü için hazırlanmıştır.

Binary Modül Oluşturma: CMake veya Binary Modül Oluşturma: Premake sayfalarını kullanın.

Temel C++ Bilgisi

Devam etmeden önce temel düzeyde C++ bilgisine sahip olmalısınız. Burada bulunan eğitim materyallerini okumanızı tavsiye ederim.

IDE'nizi İndirme

Öncelikle Visual Studio 2010'u indirmeniz gerekiyor. Hangi IDE'yi kullanacağınız tamamen kişisel tercihinize bağlıdır. 2012 veya 2013 sürümünü kullanabilirsiniz; hatta Visual Studio kullanmak zorunda bile değilsiniz. Bu eğitimde ben Visual Studio 2010 kullandığım için, eğer bu sizin ilk modülünüz olacaksa bunu kullanmanızı tavsiye ederim.

Garry's Mod Lua Başlık Dosyaları

İhtiyacınız olan başlık dosyaları (header) ve bir örnek burada mevcuttur. Sayfanın sağ tarafında bulunan "Download Zip" düğmesine tıklamanız gerekecektir. Buradan `include` klasörünü bir yere çıkarın. "C:\Garry's Mod Lua Headers" veya "C:\Users\<kullanıcı_adı>\Documents\Garry's Mod Lua Headers" gibi bir konuma çıkarmanızı tavsiye ederim.

Yeni Bir Proje Oluşturma

IDE'nizi, bu örnekte Visual Studio 2010'u, açın ve ardından yeni bir proje oluşturun.

"Win32" seçeneğini seçin ve ardından "OK" düğmesine tıklayın. Buradan Win32 Project'i seçin ve projeye istediğiniz ismi verin. İlk modülünüz için `gm_test` gibi bir isim kullanmanızı tavsiye ederim.

Win32 Uygulama Sihirbazı'nın açılması gerekir. "Next"e tıklayın, ardından "Application type" altında DLL'i seçin. Sonrasında "Empty project" kutusunu işaretleyin ve son olarak "Finish"e tıklayın.

Tebrikler! Artık boş bir projeniz var.

Projeyi Ayarlama

Artık boş bir projeniz olduğuna göre, bazı dizinleri kurmanız, bazı dosyaları eklemeniz ve bazı özellikleri ayarlamanız gerekiyor. Öncelikle "Source Files" klasörüne sağ tıklayıp ardından "Add new item..." seçeneğine tıklayın.

Buradan "C++ file (.cpp)" seçeneğine tıklayın ve dosyayı "main" olarak adlandırın.

Yapmanız gereken bir sonraki şey, derleme modunu "release" olarak ayarlamaktır. Üst kısımda, yeşil oynat düğmesinin yakınında, "Debug" ve ardından "Win32" yazılarını görmelisiniz. "Debug" üzerindeki açılır menüyü açın ve "Release" olarak ayarlayın.

Özellikler

Şimdi projenize, bu örnekte "gm_test", sağ tıklayın ve ardından "Properties" seçeneğine tıklayın.

Yapılandırma Özellikleri

"Configuration Properties" bölümüne gidin ve "Project Defaults" altında "Character Set"e giderek "Use Multi-Byte Character Set" seçeneğini belirleyin. Bu, stringlerle çalışırken gereksiz şeylerle uğraşmamanız için yardımcı olur. Ardından, yine "Configuration Properties" içinde "Target Name"i "gmcl_test_win32" gibi bir şey yapın ki her derlemeden sonra yeniden adlandırmak zorunda kalmadan doğrudan `lua/bin` klasörünüze sürükleyip bırakabilesiniz.

C/C++

Bu kısmı hallettiğimize göre, "C/C++" kategorisine tıklayın ve ardından "Additional Include Directories" seçeneğini bulun, açılır menüden "<Edit...>" seçeneğini seçin.

Bu menünün içinden küçük klasör simgesini seçin, bu yeni bir boş giriş oluşturacaktır. Üzerine çift tıklayın ve ardından "..." düğmesini seçin.

Şimdi başlık dosyalarınızı kaydettiğiniz yere gidin, bu örnekte "C:\Garry's Mod Headers", buradan "include\GarrysMod\Lua" klasörüne gidin ve "Select folder" düğmesine tıklayın. Tam yolunuz "C:\Garry's Mod Headers\include\GarrysMod\Lua" gibi bir şey olmalıdır.

OK'a, ardından Apply'a ve sonra tekrar OK'a tıklayın. İlk modülünüzü derlemeye neredeyse hazırsınız.

Main.cpp

main.cpp dosyasını açın ve aşağıdaki kodu ekleyin:

#define GMMODULE #include "Interface.h" // Modül açıldığında çağrılır GMOD_MODULE_OPEN() { return 0; } // Modül kapandığında çağrılır GMOD_MODULE_CLOSE() { return 0; }

Derleme

Eğer her şeyi doğru yaptıysanız, projeyi derleyebilmelisiniz. Projenize sağ tıklayın ve "Rebuild" seçeneğine tıklayın. Unutmayın ki "build" yerine her zaman "rebuild" seçeneğini kullanmak iyi bir alışkanlıktır.

Tüm sunucular · GmodTR Launcher · Rehber · GMod Wiki · GmodTR nedir? · Sunucu ekle · Discord