- Mesaj
- 12.047
- Çözümler
- 571
- Beğeni
- 14.345
- Puan
- 5.915
- Ticaret Puanı
- 2
Merhaba arkadaşlar,
Metin2 Geliştirici Eğitimi serisinde kullandığım filesi orijinal konusundaki linkler silindiği için paylaşıyorum.
Tabii ki birebir olduğu gibi kopyalayıp tekrardan yüklemedim. 2-3 gündür files üzerinde yoğun bir şekilde çalışarak bazı düzenlemeler yaptım.
Filesin Geçmişi ve Kaynak Kodları Altyapısı Hakkında Bilgilendirme
Server altyapısı: mainline_released
Client altyapısı: novaline
Vanilla tarafından Vanilla Core geliştirildi ve genel kullanıma açıldı.
Maxmi tarafından Vanilla Core kaynak kodları kullanılarak bu files geliştirildi ve altyapı olarak sunuldu. (Bilinen son yayınlanan sürüm: maxmiblackforce-v.3.6)
Daha sonra frozen bu fileste geliştirmeler yapıp paylaşıma sundu.
Metin2 Geliştirici Eğitimi serisinde bu filesi kullanıyordum. Yeni başlayanlar files konusunda çok sıkıntı yaşadığı için eğitim serisini daha rahat takip edebilmeleri adına bu filesi paylaşacağım. Kısacası bu files son olarak benim elimden geçip halkın kullanımına yeniden sunulmuştur.
Not: Filesin derlenebilmesi için gereken freebsd ve visual studio sürümleri güncellenmemiştir. O dönem yayınlandığı gibidir. Sadece göze çarpan sorunlar düzeltildi ve optimizasyon yapıldı. Yapılanlar listesine geçmeden önce source derlenebilmesi için gerekenlerin listesini veriyim.
Not2: Kafa karışıklığı nedeniyle bu notu ekleme gereği duydum. Bu konuda paylaşılan dosyalar Metin2 Sıfırdan Altyapı Server Files Hazırlama Rehberi 'nde hazırlanan dosyalar değildir. 2016 yılında çekimine başladığım Metin2 Geliştirici Eğitimi serisinde kullandığım filesin dosyalarıdır. Zaten konu başlığında belirtmiştim. Eğer sıfırdan altyapı hazırlama rehberini takip ediyorsanız rehberin ana konusunda yazılanları takip ediniz.
Server source derlemek için gereken sürüm: freebsd 9.3 32bit
Client source derlemek için gereken sürüm: Visual Studio 2013 (visual studio 2019 ile build etmek isterseniz platform toolsetten v120'yi seçiniz. Varsayılan olarak seçilidir. Önümüzdeki rehberlerde vs sürümünü yükseltmeyi göstereceğim.)
Server filesin çalışması için.
Freebsd 9.3/10.3/11.2/12.1 (istediğiniz sürümü seçebilirsiniz. Fakat source 9.3'de build edilmektedir.)
Mysql56
Not2: Bu filesi kendinizi geliştirmek için kullanabilirsiniz. Zaten bu amaç ile paylaşıldı. Eğer bu filesi kullanarak ciddi projeler hazırlamak istiyorsanız source dosyalarının güncel sürümlerde derlenebilmesi için düzenlemeler yapmanız gerekmektedir. Bunun içinde Extern ve kaynak kodlarında değişiklikler yapmanız gerekiyor. Güncel sürümlere yükseltmeyi bilmiyorsanız Metin2 Sıfırdan Altyapı Server Files Hazırlama Rehberi 'ne göz atabilirsiniz.
Not3: 2016 yılına ait files olduğu için fazla eklenti bulunmamaktadır. Günümüzün güncel sistemleri yoktur. Altyapı olarak kullanabilirsiniz ve rahatlıkla sistem denemeleri yapabilirsiniz.
Files ve Kaynak Kodlarında Yaptığım Değişiklikler
Server Files Düzenlemeleri
Source Düzenlemeleri
Not: Oyun içeriğinde ve questlerde değişiklik yapılmamıştır.
Sadece hata veren quest dosyaları düzenlenmiştir.
İndirme Linkleri
Cloud Mail
Toplu İndirme:
Client:
ClientSource:
ServerSource:
Server Files:
Mega
Toplu İndirme:
Client:
ClientSource:
ServerSource:
Server Files:
Kurulum Nasıl Yapılır?
Kurulumun videolu anlatımı geliştirici eğitiminde mevcuttur.
(Güncel kurulum ve source dosyalarını derleme videosu için: Online Oyun Geliştirme Eğitimi (MMORPG))
Aşağıdan da yazılı rehberi inceleyebilirsiniz.
Freebsd kurulum ve Mysql 56 kurulur.
Freebsd ve mysql kurulumunu bilmiyorsanız;
Freebsd kurulum rehberi: Oracle VM VirtualBox İle Freebsd 9.3 Kurulumu
Freebsd'ye MySQL kurulum rehberi: Freebsd 9.3 MySQL Kurulumu
Çalışma ortamı hazırladıktan sonra filesimizi çalıştırmaya geldi. İleri seviye ve yeni başlayanlar için iki ayrı kurulum seçeneği vardır.
Yeni başlayanlar: Source derlemeye girişmeden
Server files kurulumu
İndirdiğiniz dosyadan serverfilesi filezillanızdan /usr/ dizinize atınız.
Daha sonra şu komutu çalıştırınız;
İndirdiğiniz dosyadan serverdb'yi filezillanızdan /var/db/ dizinine atınız.
Daha sonra şu komutu çalıştırınız;
Not: MySQL şifresi değişmemektedir. MySQL kurarken kullandığınız şifre ile giriş yapmalısınız. Server filesi açılması için conf.txt dosyasında yazan bilgilere göre veritabanına yeni kullanıcı hesabı oluşturmanız gerekmektedir.
Daha önce files kurmadıysanız şu videolu rehberi izleyin;
Client kurulumu
İndirdiğiniz Full Client.rar dosyası içindeki Client klasörünü herhangi bir yere çıkarın. Daha sonra pack/root'u açın. serverinfo.py kısmına kendi serverinizin ip adresinizi giriniz.
Packları açıp kapatabilmek için:
EterNexus: Metin2 Pack Açıcı: EterNexus
EPack32: Metin2 Pack Açıcı: EPack32
İşlemleri yaptıktan sonra Client/Metin2Release.exe'ye tıklayın ve başarıyla oyuna girmiş olursunuz.
İleri Seviye: Source derleyerek (Source üzerinden sistem geliştirmek istiyorsanız)
Server Source Derlemesi ve Filesin Kurulumu
Not: Server source freebsd 9.3 - 32bit sürümde çalışmaktadır. Daha yüksek sürümlerde derlemeniz için kaynak kodlarında düzenlemeler yapmalısınız.
Source derlemeye girişmeden önce şu komutları çalıştırın.
Mysql'i kurmadıysanız şu komutu da yazınız.
pkg komutu çalışmıyorsa bu rehberlere göz atın:
Freebsd 9x Pkg Komutunu Çalıştırmak
Freebsd 9.3 Offline Mysql56 Kurulumu Nasıl Yapılır?
İndirdiğiniz dosyadan ServerSource klasörünü filezilladan /home/ dizinine atınız.
Daha sonra Extern dosyasını çıkartmak için ssh'ye şu komutu yazınız.
Source'yi derleyebilmek için cryptopp'u derlemeniz gerekiyor. Sırasıyla şunları yazın
Build işleminin tamamlanmasını bekleyin.
Daha sonra server sourceyi derlemek için şunları yazın.
İşlemler bittiğinde game_r50060, ve db_r50060 dosyalarını elde edeceksiniz. Bunlar oyunumuzun açılması için gerekli. Bu aşamadan sonra yeni başlayanlar - server files kurulumu maddesinde anlatıklarımı takip edin.
Kendi src dosyamızı build ettiğimiz için serverfilesten game ve db dosyalarını silmemiz gerekiyor.
Silmek için komut;
Premium bilgi;
Sürekli derlediğiniz dosyayı filese atmaya uğraşmak yerine symlink oluşturabilirsiniz. Şu komutları girin.
Symlink oluşturmak yerine game_r50060 ve db_r50060 dosyasını usr/game/share içine atın ve isimlerini game, db olarak değiştiriniz.
Daha sonra serveri açabilirsiniz.
Client Source Derlenmesi
Client'i derleyebilmek için visual studio 2013 kurulu olması gerekmektedir. visual studio 2019 ile build etmek isterseniz platform toolset v120 olarak seçili olmalı.
İndirdiğiniz ClientSource dosyanıza giriniz.
Daha sonra Srcs/Extern/cryptopp dizine giriniz. cryptlib.sln dosyasını çalıştırınız ve build ediniz.
Not: Client'i debug modda build edecekseniz cryptopp'u da debug modda build edin.
Cryptopp derlendikten sonra ClientSource/Srcs/Client/client.sln çalıştırın.
Açıldıktan sonra Derle-> çözümü derle / build -> build solution tuşuna basına basın ve bekleyin.
Build işlemi başarılı olursa exe dosyalarını Client/binary içine çıkartacaktır.
Client sourceyi derledikten sonra yeni başlayanlar -> client kurulumu kısmında anlattıklarımı uygulayın. Burada tek fark kendi derlediğiniz exe ile oyuna gireceksiniz.
Bitiş konuşması
Metin2 geliştirici eğitim serimi takip etmek isteyenler files konusunda çok sorun yaşıyordu. Bu konu sayesinde eğitimde kullandığım files üzerinde çalışabileceksiniz. O zamanlar orijinal konusu bulunduğu için insanları yönlendiriyordum. Artık orijinal konuda ki linkler kırıldığı için bende kendi sürümümü paylaştım.
Bu dosyaları düzenlemek ve her şeyini enine boyuna test etmek için -Clientin debug, release, distrubite derlenebilmesi, server kısmında her şeyin düzgün derlenmesi vs.- 2 gündür uyumadan uğraştım.
Tüm dosyaları olabildiğinde optimal seviyeye getirdim. Gereksiz dosyaların çoğu temizlenmiştir.
Metin2 Geliştirici Eğitimi serisinde kullandığım filesi orijinal konusundaki linkler silindiği için paylaşıyorum.
Tabii ki birebir olduğu gibi kopyalayıp tekrardan yüklemedim. 2-3 gündür files üzerinde yoğun bir şekilde çalışarak bazı düzenlemeler yaptım.
Filesin Geçmişi ve Kaynak Kodları Altyapısı Hakkında Bilgilendirme
Server altyapısı: mainline_released
Client altyapısı: novaline
Vanilla tarafından Vanilla Core geliştirildi ve genel kullanıma açıldı.
Maxmi tarafından Vanilla Core kaynak kodları kullanılarak bu files geliştirildi ve altyapı olarak sunuldu. (Bilinen son yayınlanan sürüm: maxmiblackforce-v.3.6)
Daha sonra frozen bu fileste geliştirmeler yapıp paylaşıma sundu.
Metin2 Geliştirici Eğitimi serisinde bu filesi kullanıyordum. Yeni başlayanlar files konusunda çok sıkıntı yaşadığı için eğitim serisini daha rahat takip edebilmeleri adına bu filesi paylaşacağım. Kısacası bu files son olarak benim elimden geçip halkın kullanımına yeniden sunulmuştur.

Not: Filesin derlenebilmesi için gereken freebsd ve visual studio sürümleri güncellenmemiştir. O dönem yayınlandığı gibidir. Sadece göze çarpan sorunlar düzeltildi ve optimizasyon yapıldı. Yapılanlar listesine geçmeden önce source derlenebilmesi için gerekenlerin listesini veriyim.
Not2: Kafa karışıklığı nedeniyle bu notu ekleme gereği duydum. Bu konuda paylaşılan dosyalar Metin2 Sıfırdan Altyapı Server Files Hazırlama Rehberi 'nde hazırlanan dosyalar değildir. 2016 yılında çekimine başladığım Metin2 Geliştirici Eğitimi serisinde kullandığım filesin dosyalarıdır. Zaten konu başlığında belirtmiştim. Eğer sıfırdan altyapı hazırlama rehberini takip ediyorsanız rehberin ana konusunda yazılanları takip ediniz.
Server source derlemek için gereken sürüm: freebsd 9.3 32bit
Client source derlemek için gereken sürüm: Visual Studio 2013 (visual studio 2019 ile build etmek isterseniz platform toolsetten v120'yi seçiniz. Varsayılan olarak seçilidir. Önümüzdeki rehberlerde vs sürümünü yükseltmeyi göstereceğim.)
Server filesin çalışması için.
Freebsd 9.3/10.3/11.2/12.1 (istediğiniz sürümü seçebilirsiniz. Fakat source 9.3'de build edilmektedir.)
Mysql56
Not2: Bu filesi kendinizi geliştirmek için kullanabilirsiniz. Zaten bu amaç ile paylaşıldı. Eğer bu filesi kullanarak ciddi projeler hazırlamak istiyorsanız source dosyalarının güncel sürümlerde derlenebilmesi için düzenlemeler yapmanız gerekmektedir. Bunun içinde Extern ve kaynak kodlarında değişiklikler yapmanız gerekiyor. Güncel sürümlere yükseltmeyi bilmiyorsanız Metin2 Sıfırdan Altyapı Server Files Hazırlama Rehberi 'ne göz atabilirsiniz.
Not3: 2016 yılına ait files olduğu için fazla eklenti bulunmamaktadır. Günümüzün güncel sistemleri yoktur. Altyapı olarak kullanabilirsiniz ve rahatlıkla sistem denemeleri yapabilirsiniz.
Files ve Kaynak Kodlarında Yaptığım Değişiklikler
Server Files Düzenlemeleri
- Coreler baştan ayarlandı. Artık filesi illa /usr/game altına kurmanıza gerek yok.
- no_txt özelliği kapatıldı. İsteyenler tekrardan aktif edebilir. (Eğitim videolarında txt üzerinden gittiğim için varsayılan kapalıdır.)
- MySQL tablolarında yer alan sorunlar çözüldü. Oyun tarafından kullanılmayan tablolar silindi.
- quest altındaki object klasörü silindi. Filesi kurduktan sonra make.sh yapmayı unutmayınız.
- Başlatıcı ve Kapatıcı scriptleri baştan ayarlandı.
Source Düzenlemeleri
- Server ve Clientin düzgün bir şekilde derlenebilmesi için düzenlemeler yapıldı. Çok yer kaplayan gereksiz dosyalar temizlendi.
- Server src'yi visual studio ile açabilmek için düzenlemeler yapıldı. Sistem geliştirirken rahat oluyor. (En son visual studio 2019 tarafından açılmıştır.)
- Client src, visual studio ayarları düzenlendi. (En son visual studio 2019 tarafından açılmıştır. Build için platform toolset v120 seçilidir. Sizde gözükmüyorsa visual studio 2013 kurunuz.)
- Server tarafında makefileler güncellendi.
- Server Extern'i yeniden yapılandırıldı.
- Server build olurken cryptopp warningleri çözüldü.
- Kanalların kapanmasına sebep olan güvenlik açığı kapatıldı.
- questler için qc artık derlenebilecek.
- proto dosyalarını okumama sorunu giderildi. (proto dosyalarını filesimize uyarlamak videosunda anlatılanlar.)
- Orijinal konusunda dump_proto verilmiyordu. Bu filese uygun dump_proto src eklendi.
Not: Oyun içeriğinde ve questlerde değişiklik yapılmamıştır.
Sadece hata veren quest dosyaları düzenlenmiştir.
İndirme Linkleri
Cloud Mail
Toplu İndirme:
Burayı görüntülemek için üye girişi yapmalı veya kayıt olmalısınız.
Client:
Burayı görüntülemek için üye girişi yapmalı veya kayıt olmalısınız.
(1.12 GB)ClientSource:
Burayı görüntülemek için üye girişi yapmalı veya kayıt olmalısınız.
(18.3 MB)ServerSource:
Burayı görüntülemek için üye girişi yapmalı veya kayıt olmalısınız.
(24.7 MB)Server Files:
Burayı görüntülemek için üye girişi yapmalı veya kayıt olmalısınız.
(34.7MB)Mega
Toplu İndirme:
Burayı görüntülemek için üye girişi yapmalı veya kayıt olmalısınız.
Client:
Burayı görüntülemek için üye girişi yapmalı veya kayıt olmalısınız.
(1.12 GB)ClientSource:
Burayı görüntülemek için üye girişi yapmalı veya kayıt olmalısınız.
(18.3 MB)ServerSource:
Burayı görüntülemek için üye girişi yapmalı veya kayıt olmalısınız.
(24.7 MB)Server Files:
Burayı görüntülemek için üye girişi yapmalı veya kayıt olmalısınız.
(24.7 MB)Kurulum Nasıl Yapılır?
Kurulumun videolu anlatımı geliştirici eğitiminde mevcuttur.
(Güncel kurulum ve source dosyalarını derleme videosu için: Online Oyun Geliştirme Eğitimi (MMORPG))
Aşağıdan da yazılı rehberi inceleyebilirsiniz.
Freebsd kurulum ve Mysql 56 kurulur.
Freebsd ve mysql kurulumunu bilmiyorsanız;
Freebsd kurulum rehberi: Oracle VM VirtualBox İle Freebsd 9.3 Kurulumu
Freebsd'ye MySQL kurulum rehberi: Freebsd 9.3 MySQL Kurulumu
Çalışma ortamı hazırladıktan sonra filesimizi çalıştırmaya geldi. İleri seviye ve yeni başlayanlar için iki ayrı kurulum seçeneği vardır.
Yeni başlayanlar: Source derlemeye girişmeden
Server files kurulumu
İndirdiğiniz dosyadan serverfilesi filezillanızdan /usr/ dizinize atınız.
Daha sonra şu komutu çalıştırınız;
Bash:
tar -zxf serverfiles.tgz
İndirdiğiniz dosyadan serverdb'yi filezillanızdan /var/db/ dizinine atınız.
Daha sonra şu komutu çalıştırınız;
Bash:
tar -zxf serverdb.tgz
Daha önce files kurmadıysanız şu videolu rehberi izleyin;
Client kurulumu
İndirdiğiniz Full Client.rar dosyası içindeki Client klasörünü herhangi bir yere çıkarın. Daha sonra pack/root'u açın. serverinfo.py kısmına kendi serverinizin ip adresinizi giriniz.
Packları açıp kapatabilmek için:
EterNexus: Metin2 Pack Açıcı: EterNexus
EPack32: Metin2 Pack Açıcı: EPack32
İşlemleri yaptıktan sonra Client/Metin2Release.exe'ye tıklayın ve başarıyla oyuna girmiş olursunuz.
İleri Seviye: Source derleyerek (Source üzerinden sistem geliştirmek istiyorsanız)
Server Source Derlemesi ve Filesin Kurulumu
Not: Server source freebsd 9.3 - 32bit sürümde çalışmaktadır. Daha yüksek sürümlerde derlemeniz için kaynak kodlarında düzenlemeler yapmalısınız.
Source derlemeye girişmeden önce şu komutları çalıştırın.
Bash:
pkg install gmake makedepend gcc python
Bash:
pkg install mysql56-client mysql56-server
pkg komutu çalışmıyorsa bu rehberlere göz atın:
Freebsd 9x Pkg Komutunu Çalıştırmak
Freebsd 9.3 Offline Mysql56 Kurulumu Nasıl Yapılır?
İndirdiğiniz dosyadan ServerSource klasörünü filezilladan /home/ dizinine atınız.
Daha sonra Extern dosyasını çıkartmak için ssh'ye şu komutu yazınız.
Bash:
tar -zxf Extern-server-freebsd-93.tgz
Source'yi derleyebilmek için cryptopp'u derlemeniz gerekiyor. Sırasıyla şunları yazın
Bash:
cd /home/ServerSource/Srcs/Extern/cryptopp
gmake libcryptopp.a -j6
Build işleminin tamamlanmasını bekleyin.
Daha sonra server sourceyi derlemek için şunları yazın.
Bash:
cd /home/ServerSource/Srcs/Server
gmake all
İşlemler bittiğinde game_r50060, ve db_r50060 dosyalarını elde edeceksiniz. Bunlar oyunumuzun açılması için gerekli. Bu aşamadan sonra yeni başlayanlar - server files kurulumu maddesinde anlatıklarımı takip edin.
Kendi src dosyamızı build ettiğimiz için serverfilesten game ve db dosyalarını silmemiz gerekiyor.
Silmek için komut;
Bash:
cd /usr/game/share & rm -rf game
Bash:
cd /usr/game/share & rm -rf db
Premium bilgi;
Sürekli derlediğiniz dosyayı filese atmaya uğraşmak yerine symlink oluşturabilirsiniz. Şu komutları girin.
Bash:
ln -s /home/ServerSource/Srcs/Server/game/game_r50060 /usr/game/share/game
Bash:
ln -s /home/ServerSource/Srcs/Server/db/db_r50060 /urs/game/share/db
Symlink oluşturmak yerine game_r50060 ve db_r50060 dosyasını usr/game/share içine atın ve isimlerini game, db olarak değiştiriniz.
Daha sonra serveri açabilirsiniz.

Client Source Derlenmesi
Client'i derleyebilmek için visual studio 2013 kurulu olması gerekmektedir. visual studio 2019 ile build etmek isterseniz platform toolset v120 olarak seçili olmalı.
İndirdiğiniz ClientSource dosyanıza giriniz.
Daha sonra Srcs/Extern/cryptopp dizine giriniz. cryptlib.sln dosyasını çalıştırınız ve build ediniz.
Not: Client'i debug modda build edecekseniz cryptopp'u da debug modda build edin.
Cryptopp derlendikten sonra ClientSource/Srcs/Client/client.sln çalıştırın.
Açıldıktan sonra Derle-> çözümü derle / build -> build solution tuşuna basına basın ve bekleyin.
Build işlemi başarılı olursa exe dosyalarını Client/binary içine çıkartacaktır.
Client sourceyi derledikten sonra yeni başlayanlar -> client kurulumu kısmında anlattıklarımı uygulayın. Burada tek fark kendi derlediğiniz exe ile oyuna gireceksiniz.
Bitiş konuşması
Metin2 geliştirici eğitim serimi takip etmek isteyenler files konusunda çok sorun yaşıyordu. Bu konu sayesinde eğitimde kullandığım files üzerinde çalışabileceksiniz. O zamanlar orijinal konusu bulunduğu için insanları yönlendiriyordum. Artık orijinal konuda ki linkler kırıldığı için bende kendi sürümümü paylaştım.
Bu dosyaları düzenlemek ve her şeyini enine boyuna test etmek için -Clientin debug, release, distrubite derlenebilmesi, server kısmında her şeyin düzgün derlenmesi vs.- 2 gündür uyumadan uğraştım.
Tüm dosyaları olabildiğinde optimal seviyeye getirdim. Gereksiz dosyaların çoğu temizlenmiştir.
Bu yazının tamamı, videolu anlatım ve dosyalar MMO Tutkunları'na ait özgün içeriktir. Kaynağı gösterildiği sürece başka platformlarda paylaşılabilir.
Son düzenleme: