AoE 1, 2, 3 DE için %100 çevrimdışı LAN çok oyunculu desteği sunan web sunucusu
(github.com/luskaner)- Age LAN Server, resmi oyun sunucularına internet bağlantısı olmasa da Age of Empires serisi oyunların çok oyunculu lobilerini kullanmayı sağlayan bir web sunucusu ve başlatıcıdır; amacı, resmi sunucular bakımda ya da kapanmış olsa bile lobi işlevlerini korumaktır
- Desteklenen oyunlar Age of Empires: Definitive Edition, Age of Empires II: Definitive Edition, Age of Empires III: Definitive Edition, Age of Empires IV: Anniversary Edition, Age of Mythology: Retold; AoM: RT için şu anda yalnızca Steam sürümü desteklenir
- Ortak özellikler senaryolar, lobi içinde harita aktarımı, oyun geri yükleme, veri modu, lobi sohbeti, Steam·Xbox çapraz oyun; oyuna göre izleme, lobi daveti, bağlantı paylaşımı, oyuncu arama, eşli senaryo, rövanş, kanallar, özel mesajlar, gruplar gibi ek özellikler bulunur
- Sunucu, oyunun API isteklerini alıp lobi işleyişi için gereken asgari API yüzeyini yeniden uygular; veriler saklanmaz veya internete gönderilmez
- %100 çevrimdışı oyun için oyunun zorunlu tuttuğu internet ve Steam ya da Xbox Live bağlantı kısıtlarını aşacak özel başlatıcı gerekir; eşleştirme, başarımlar, lider tabloları, klanlar, arkadaş entegrasyonu gibi özellikler uygulanmamıştır veya sınırlıdır
Age LAN Server’ın amacı ve destek kapsamı
- Age LAN Server önceki adıyla AoE 2 DE LAN Server idi; oyun sunucularına internet bağlantısı olmadan çok oyunculu lobilerde oynamayı sağlayan bir web sunucusu ve başlatıcıdır
- Yalnızca LAN ile katı biçimde sınırlı değildir
- Amaç, resmi sunucular bakımdayken veya nihai olarak kapatıldığında da oyunun çok oyunculu işlevlerinin kullanılabilmesini sağlamaktır
- Tamamen çevrimdışı oyun için oyunun zorunlu kıldığı yalnızca çevrimiçi kısıtlarını aşacak özel başlatıcı gerekir
- Platforma ve sürüme göre internet ve Steam veya Xbox Live bağlantı kısıtları uygulanır
- Ayrı bir proje olan ageLANServerLauncherCompanion, Steam Emulator indirmesi ve %100 çevrimdışı oyun için dosya ve bilgi sağlar
Desteklenen oyunlar
- Desteklenen oyunlar şunlardır
-
Age of Empires: Definitive Edition
-
Age of Empires II: Definitive Edition
-
Age of Empires III: Definitive Edition
-
Age of Empires IV: Anniversary Edition
- Age of Mythology: Retold
- Age of Mythology: Retold için şu anda yalnızca Steam sürümü desteklenir
-
Sunulan özellikler ve oyunlara göre farklar
- Ortak özellikler şunları içerir
-
Senaryolar
- Lobi içinde harita aktarımı
- Oyun geri yükleme
- Veri modu
- Lobi sohbeti
- Steam ve Xbox çapraz oyun
- AoE II: DE, AoE III: DE, AoE IV: AE, AoM: RT ek özellikleri destekler
- AoE II: DE’de CapturAge dahil izleme özelliği
- Lobi daveti
- Lobi bağlantısı paylaşımı
- Oyuncu arama
- AoE II: DE ve AoE III: DE, eşli senaryoyu ve rövanşı destekler
- AoE II: DE, kanalları ve özel mesajları destekler
- AoE III: DE ve AoE IV: AE, grupları destekler
- AoM: RT, özel mesajları ve Arena of the Gods’ı destekler
-
Sınırlamalar ve uygulanmamış özellikler
- Genel sınırlamalar şunlardır
- Bağlantı üzerinden oyun lobisine katılma özelliği yalnızca oyun zaten çalışıyorken çalışır
- Çevrimiçi mod abonelikleri yalnızca resmi başlatıcı kullanıldığında çalışır
- Xbox ve Steam arkadaş entegrasyonu yoktur
- AoE III: DE ve AoE IV: AE’de arkadaş listesi tüm çevrimiçi kullanıcıları arkadaş gibi gösterir
- AoM: RT’de de arkadaş listesi tüm çevrimiçi kullanıcıları arkadaş gibi gösterir
- AoM: RT’nin Arena of Gods modu için ayrı bir çalışma biçimi vardır
- Ödül kazanılmaz
- Tüm nimetler ve nadirlikler varsayılan olarak açılmıştır; resmi sunucularda kullanılamayan öğeler de buna dahildir
- favor stash sonsuzdur
- Hikâye modunda tüm görevler varsayılan olarak açılmıştır
- Challenge modunda canlar sonsuzdur, tüm efsanelere erişilebilir ve varsayılan seviye en yüksek değer olan 99’dur
- Uygulanmamış özellikler şunlardır
- Eşleştirme, sınırlı kullanıcı sayısı ve geçici sunucu niteliği nedeniyle uygulanmamıştır; resmi sunucuların kullanılması önerilir
- Başarımlar yalnızca resmi sunucular tarafından işlenmelidir; maç sırasında başarım koşullarının karşılanması sorunlara yol açabilir
- Lider tabloları boş görünür
- Klanlarda tüm oyuncular klan dışı olarak ele alınır, klan gezgini boş görünür ve oluşturma işlemi her zaman hata verir
- Lobide oyuncu engelleme çalışıyor gibi görünür ama gerçekte çalışmaz
- Oyuncu bildirme ve engelleme çalışıyor gibi görünür ama gerçekte çalışmaz
- Uygulanmamış öğelerin çoğu Age of Empires: Definitive Edition için geçerli değildir
Çalışma biçimi
- Sunucu, oyunun API isteklerini alan basit bir web sunucusudur
- Lobi işlevlerinin çalışması için gereken yalnızca asgari API yüzeyini yeniden uygular
- Veriler saklanmaz ve internete gönderilmez
- Başlatıcı, lobi oyununu kolaylaştırırken çevrimiçi oyun için resmi başlatıcının kullanılmaya devam edebilmesini sağlar
- Başlatıcı özellikleri şunları içerir
- Sunucuyu otomatik başlatma·durdurma veya mevcut sunucuya bağlanma
- AoE I hariç resmi oyunla olası sorunları önlemek için yalıtılmış meta veri dizini seçimi kullanma
- hosts dosyasını düzenleyerek oyun API isteklerini LAN sunucusuna yönlendirme
- Resmi oyun durumu algılamasını önlemek için bazı CDN isteklerini proxy üzerinden geçirme
- Sohbet ve kullanıcı adı gösterimi için istekleri proxy üzerinden geçirme
- Oyunun LAN sunucusuna bağlanabilmesi için kendinden imzalı sertifika yükleme
- AoE I ve AoE IV hariç oyun deposuna sertifika ekleme
- Ayar·kurtarma için özel komut çalıştırma
- Windows’ta en yüksek öncelikli ağ arayüzü dışındaki arayüzlere battle server’ı yeniden yayınlama
- Oyunu otomatik keşfetme ve başlatma
- Başlatıcı daha sonra değişiklikleri geri alarak resmi başlatıcının resmi sunuculara bağlanabilmesini sağlar
Sistem gereksinimleri ve istemci koşulları
- Sunucu için kararlı desteklenen ortamlar şunlardır
- Windows 7 veya eşdeğer ortam; Windows 10 ve üzeri önerilir
- Linux kernel 3.2
- macOS Monterey v12
- İşletim sistemine ve ayarlara bağlı olarak 443 portunda HTTPS dinlemek için yönetici yetkisi veya güvenlik duvarı izni gerekebilir
- Sunucu için deneysel desteklenen ortamlar BSD türevleri, Solaris türevleri ve AIX’tir
- Başlatıcı ve Battle Server Manager şu ortamları destekler
- Windows S edition/mode olmayan ortamlar
- Windows 7 x86-64; Windows 10 ve üzeri önerilir
- Windows 11 ARM
- Linux kernel 3.2 üzerinde x86-64 ve ARM64
- Başlatıcının hosts dosyasını, yerel sertifikaları ve yükseltilmiş özel oyun başlatıcısını işlemesi gerekiyorsa yönetici yetkisi yükseltmesi gerekir
- İstemciler her oyunun Steam veya Xbox sürümünü kullanır
- Xbox sürümü yalnızca uyumlu Windows sürümleri için geçerlidir
- AoM: RT için Steam sürümü gerekir
- En yeni veya biraz önceki sürümün kullanılması önemle önerilir; eski sürümlerde bilinen sorunlar vardır
İkili dosyalar ve doğrulama
- Sunucu ve başlatıcı ikili dosyaları, desteklenen işletim sistemlerinin bir kısmı için releases page üzerinden sağlanır
- Sağlanan arşivler full, launcher, Battle Server Manager, server biçimlerinde ayrılır
- Windows’ta antivirüs bir veya daha fazla çalıştırılabilir dosyayı virüs olarak işaretleyebilir; bunun yanlış pozitif olduğu belirtilir
- Doğrulama prosedürü, indirilen dosyanın bakımcı tarafından yüklenen dosyayla aynı olduğunu kontrol etme biçimindedir
- Sürüm etiketinin committer imza anahtarıyla doğrulandığını kontrol etme
..._checksums.txtve..._checksums.txt.sigindirme- release public key anahtarını anahtarlığa içe aktarma
- İmza dosyasıyla checksum dosyasını doğrulama
- Checksum dosyasındaki SHA-256 listesiyle indirilen arşivi doğrulama
En basit kullanım akışı
- Başlatıcı ve sunucu, kurulum olmadan arşivi indirip açarak ve çalıştırarak kullanılabilir
- Temel kullanım adımları şunlardır
- En yeni kararlı sürümden uygun full arşivini indirme
- İstenen konuma çıkarma
- Windows’ta gerekirse başlatıcı·sunucu ikili dosyalarını antivirüs istisna listesine ekleme
- Windows’ta gerekirse
.exedosyalarının engelini kaldırma - Steam veya Xbox başlatıcısı kullanılmıyorsa
launcher/resources/config.<game_title>.tomliçindekiClient.ExecutableveClient.Pathdeğerlerini oyun başlatıcısı yolu ve oyun diziniyle değiştirme - %100 çevrimdışı oyun için özel başlatıcı ve ayrı companion repo’nun sağladıkları gerekir
- AoE IV veya AoM kullanılıyor ve AoE II: DE kurulu değilse BattleServer.exe yolunu
battle-server-manager/resources/config.<game>.tomliçinde belirtme launcher/start_<game_title>betiğini çalıştırma ve gerekli yönetici yetkisi yükseltmelerini ve güvenlik duvarı izinlerini onaylama- LAN’da birlikte oynayacak her PC’de aynı süreci tekrarlama; ilk PC sunucuyu barındırır, diğerleri otomatik keşiften sonra bağlantı yönlendirmesi alır
- Oyunun Multiplayer bölümünde yeni bir lobi barındırma; herkese açık lobi ayarı önerilir
- Herkese açık lobiler tarayıcıdan doğrudan katılınarak veya adla arandıktan sonra arkadaş daveti gönderilerek kullanılabilir
- Oyun izin veriyorsa lobi katılım bağlantısı paylaşılabilir, ancak otomatik katılım yalnızca oyunun içindeyken çalışır
Kullanım koşulları ve sorumluluk reddi
- Yazılım AGPL kapsamında dağıtılır
- Ek kullanım koşulları yalnızca indirme paketini bu kanal üzerinden alan kullanıcı ile sağlayıcı arasındaki sözleşme ilişkisine uygulanır
- Ek koşullar, AGPL’nin güvence altına aldığı kullanma, inceleme, değiştirme, yeniden dağıtma ve koda erişim haklarını sınırlamaz
- İndirme paketi kullanım koşulları şunları içerir
- İlgili oyun ve gerekli DLC’ler için geçerli ve yasal lisansa sahip olma
- Oyun hizmet şartlarına ve geçerli koşullara uyma
- Katı biçimde kişisel kullanım amacı
- Resmi oyun sunucuları kullanılabilir ve çalışır durumdayken LAN ortamında kullanım
- Resmi sunucu bakımı, geçici erişilemezlik veya kalıcı kapanma durumunda LAN gereklilikleri geçersizdir
- Bu yazılım oyun yayıncısı veya geliştiricisiyle bağlantılı değildir ve onlar tarafından onaylanmamıştır
1 yorum
Hacker News yorumları
Klasik AoE’den hoşlanan Hacker News zevkine sahipseniz 0 A.D. de hoşunuza gidebilir
Ücretsiz ve eğlenceli, ama kendinizi strateji ustası sanıyorsanız epey alçakgönüllü olmanızı sağlayan bir oyun
https://play0ad.com/
Sadece AoE’nin değil, genel olarak oyunların gelecekte de çalıştırılabilecek şekilde korunması harika bir şey
Birinin sunucuyu kapatması yüzünden özelliklerin ortadan kalkması üzücü
Medeniyet sayısını 50’nin üzerine çıkaran güncellemelerin yanı sıra görsel iyileştirmeler ve genel oynanış/performans geliştirmeleri de çokça eklendi
Özellikle açık kaynak topluluğunda, bu kadar eski oyunlara yeni geliştirmelerin devam etmesi gerçekten şaşırtıcı
Şirket kapandı ve sunucuları kapattı, ama neyse ki biri matchmaking sunucusunun bir implementasyonunu geliştirdi
Topluluk bugün hâlâ canlı ve büyüyor; oyun geliştirmesi de devam ederek orijinalin çok ötesine taşındı
O proje Forged Alliance Forever
Ürünü kullanmak için gerekli bir hizmet sunuluyorsa güzel, ama o hizmeti ortadan kaldırarak ürünü kullanılamaz ya da yalnızca kısmen kullanılabilir hale getiriyorlarsa implementasyonun ve dokümantasyonun yayımlanması zorunlu olmalı
AoE2, 1997 tarihli bir oyun motoru üzerine kurularak 1999’da çıktı; 2025 baharında ise Definitive Edition için yeni ve büyük bir DLC çıkması bekleniyor
Sandy Petersen’ın gurur duyacağı bir şey
2000’lerde çocukken LAN’da Aoe2 oturumları yapardık; üç oyundan biri kadarında herkes 2-3 saat oynadıktan sonra oyun öylece çökerdi diye hatırlıyorum
Bir bakıma daha iyiydi. Kimse yenilmek zorunda kalmıyordu ve herkes kazandığına inanıyordu
Steam’i sağladığı kolaylık nedeniyle seviyorum ve SteamOS geliştirme çabalarını da takdir ediyorum, ama bağımlılık kaygı veriyor
Bu tür projeler, parasını verip aldığım şeyler üzerinde yeniden daha fazla sahiplik sağlamama yardımcı oluyor; luskaner benim için kahraman gibi biri
Steam’in kendi DRM’i bile zorunlu değil; tamamen oyunun geliştiricisinin ya da yayıncısının tercihi
Steam’de zaten DRM’siz çok sayıda oyun var; dosyalarını yedeklerseniz Steam olmadan da çalıştırılabiliyorlar
AGPL lisansına kullanım koşullarının nasıl eklenebildiğini merak ediyorum
Bu, lisansın kaldırılabileceğini söylediği “ek kısıtlamalar” kapsamına girmiyor mu?
Harika
Bunu yapmak için kullanılan AoE3 API’sinin herkese açık dokümantasyonu var mı, yoksa hepsi baştan tersine mi mühendislik edilmiş merak ediyorum
Bu tür dokümanları arayanları gördüm ama gerçek dokümanı hiç görmedim
Depoda bir yerde cevabı vardır ama benim anlayışımı aşan bir konu olduğu için merak ediyorum. aoe2 DE multiplayer çoğunlukla P2P’ye mi dayanıyor?
Bölgesel sunucuların sadece matchmaking için kullanıldığını, asıl oyun mantığının istemcilerde çalıştığını tahmin ediyorum
Maphack’in mümkün olması ve bir kişi lag yaşadığında herkesin yavaşlaması nedeniyle böyle düşünüyorum; ama AoE forumlarında bu konu her açıldığında çok farklı iddialar ortaya atılıyor
Definitive Edition’ın tasarımı P2P’den uzaklaşacak kadar büyük ölçüde değiştirdiğini sanmıyorum, ama gerçek bilgiyi bilmiyorum
Bu yüzden maphack mümkün hale geliyor
Burada Paxos gibi bir şeye gerek yok. Bir makine saparsa oyun senkronizasyondan çıkar ve durur, ama genellikle kayıt noktasından kurtarılabilir
Örneğin Brezilya-Çin maçı bir AB sunucusunda oynanabilir
Buna bakınca sunucunun istemciler arasında merkezi doğruluk kaynağı gibi kullanıldığı, tüm oyun verilerinin sunucudan geçtiği ama hesaplamanın hâlâ istemci tarafında yapıldığı anlaşılıyor
Ancak bir oyuncunun CPU performansı yüzünden takılma olursa bu herkesi etkiliyor
AoE2’nin satranç kadar uzun ömürlü olmasını isterim. Gerçekten “mükemmel” oyunlardan biri
Age of Empires 2’de şu anda böyle bir şey yaşanıyor
Definitive Edition, yeni AOE3 ve 4 sürümlerinin bazılarından daha fazla yatırım alıyor gibi hissettiriyor
Eğlenceli bir oyunsa denge sorunları ya da bug gibi görünen ama özelliğe dönüşmüş şeyler bile korunabilir bence
Ancak tamamen zararlı ağ kodu bug’ları gibi şeyler daha çetrefilli
Id’nin sonunda kaynak kodunu yayımlamış olmasına gerçekten minnettarım. Bir gün AoE2’nin de öyle olmasını içtenlikle diliyorum
Rastgelelik, sıra tabanlı olmaması ve multiplayer sayesinde satrançla kıyaslandığında da ilginç
Ama satrancın kuralları 1000 kat daha basit ve değişmiyor; rekabetçi oynamak için yüksek APM de gerekmiyor
Bu projenin web sunucusu rolü biraz kafamı karıştırıyor
AoE multiplayer’ın matchmaking veya oyun yayını bileşeni mi?
Bu proje 2. maddeyi ele alıyor gibi. 1. madde ne yazık ki daha karmaşık görünüyor ve Steam’in bağlı olduğuna inandırılmasını içeren bir süreç var