Ore Eklentisi Gönderme Kuralları

Ore sunum kılavuzuna hoş geldiniz. Bu belge hem proje hem de dosya sunumlarına yönelik beklentilerimizin bir taslağını sunmaktadır.

Bunların sadece kurallar olduğunu ve bu kılavuz ilkeler boyunca “personel” olarak belirtilen Ore takımı, burada açıkça belirtilmeyen bir eylemi kendi takdirimize bağlı olarak kabul veya reddetmeyi seçebilir.


Projeler

Gönderilen projeler aşağıdaki beklentileri karşılamalıdır:

Ad

Your project’s submitted name should not include a version, tagline, or other description. The name should be unique and original and must not have a name implying it is an official Sponge project.

Examples of names that are not acceptable:

  • SpongeWarp

  • SpongeHome

  • SpongeEssentials

  • SpongeCloud

Examples of names that are acceptable:

  • CoolWarps-Sponge

  • MoneyMiner-Sponge

  • Golfball-for-Sponge

  • Calendar-for-Sponge

Ana Belgeler Sayfası (Ev)

This is the first page that anyone will see when visiting your project. Information here should include a clear and concise description of your project’s features and goals. The following, if present in your plugin, should be documented on the main page if relevant:

Harici Bağlantılar

Projeniz bir web API’sini kullanıyorsa, veri toplamak için eve telefon açarsa veya çalışmakta olduğu sunucunun dışındaki bir sisteme bağlanırsa, bu özelliğin varlığı ve bunun nasıl etkinleştirileceği veya devre dışı bırakılacağına dair bilgiler belirgin bir şekilde gösterilmelidir Ana sayfa. Projenizin tek amacı harici bir sistem kullanmayı içeriyorsa (diller arasında sohbeti çeviren bir Sünger eklentisi gibi), bu hizmetle bağlantı kurmaya geçiş yapacak bir yapılandırma seçeneği gerekmez. Eklentiniz bilgi gönderirse (örneğin, eklenti listesi veya oynatıcı verileri), toplanan bilgilerin ana sayfada listelenmesi gerekir.

Dokümantasyon gerektiren sistem örnekleri:

  • İstatistik veya kullanım bilgileri toplama (‘metrikler’)

  • Coğrafi Konum

  • Çeviri servisi

  • Eklenti üzerinde çalışan, kullanıcılara bilgi sunan Web sunucusu

  • Eklenti üzerinde çalışan, diğer servislerden gelen istekleri dinleyen sunucu

  • IRC/Discord/Telegram/WhatsApp bot veya röle

Examples of systems that do not require documentation:

  • Local databases or database connections specified by the end-user

Kategori

Seçtiğiniz kategori doğru olmalıdır. Projeniz, hafifçe uygulanan herhangi bir kategoriden ziyade mümkün olan en dar kategoriyi kullanmalıdır. Herhangi bir kategori doğru görünmüyorsa, Muhtelif kategori kullanılmalıdır.

Para Kazandırma / Reklamcılık

Gönderimler satılamaz, ödeme ile ek özelliklerin kilidinin açılması mümkün olmayabilir. Reklamlar ve diğer gelir getiren bağlantılar (ör. Adfly) için izin verilmiyor. Dokümantasyon, proje yöneticisine veya diğer katkıda bulunanlara teşekkür etmek için bağış yapacak bir sayfaya bağlantı içerebilir, ancak bu sayfa ek özellikler veya satış için ek eklentiler / modlar sunmayabilir.

“Kırık” / Çevrimdışı-modu / çevrimiçi-moda=yanlış Destek

Bu tür kullanımlar için tasarlandıklarını açıkça beyan eden projelere izin verilmez. Kimlik doğrulama sistemleri gibi bazı projelerde, sunucunun Mojang kimlik doğrulamasını kullanmasından bağımsız olarak sunucular için yararlı olabilecek işlevler olabilir, ancak bu ek kullanımını destekleyemeyebilir veya Mojang kimlik doğrulamasını engelleyen sunucular için özel olarak tasarlanmış olabilirler. Minecraft hesabı sahipliğinin atılmasını kolaylaştırmak için yazılmadığı sürece, çevrimiçi mod = yanlış gerektiren vekiller için tasarlanan projelere izin verilir.

EULA

Tamamıyla Mojang EULA’ya uymayı hedefliyoruz. EULA’yı ihlal ettiğinden şüphelenilen eklentiler, hizmetler, mesajlar ve / veya bağlantılar, Sponge Personelinin takdirine bağlı olarak veya Mojang AB’nin talebi üzerine kaldırılabilir.

Çatallar

Çatallara, aşağıdaki listede yer alan tüm öğeleri karşılamaları şartıyla izin verilir. Kabul edilen çatalı neyin oluşturduğu konusunda personel son neticeye sahiptir. Ana projenin lisansını uygun bir şekilde uygulayın.

Her iki:

  • Yeni bir projenin oluşturulmasını garanti eden önemli değişiklikler içerir. Bu, “Eklenti X’deki ileti renklerini değiştirdim ve şimdi de kredi talebinde bulunmaktan” kaçınmaktır

  • Terk edilmiş olan bir eklentiyi devam ettirin, yazarların iletileri cevaplamadığına dair kanıtla veya projenin artık güncelleneceğini belirtmeden kağıda geçirin.

Geçmişte olan eklentiyi ve geliştiricileri onaylayın veya kredilendirin. Esasen yeni bir eklenti ve yalnızca yaratılışınız olduğunu iddia etmeyin.


Dosyalar

Sunulan dosyalar aşağıdaki beklentileri karşılamalıdır:

Gizleme

Şaşırtmayı kullanan bir dosya, aşağıdaki istisna kapsamına girmediği sürece reddedilecektir:

NMS Çatışması

Bu sadece Minecraft veya Forge modunu referans alan eklentiler için geçerlidir. Örnekler, Mixins’i kullanan bir eklenti veya bir Forge modu (karma eklenti) olarak iki katına çıkaran bir eklenti olacaktır. Yalnızca karmaşık referansların ForgeGradle veya VanillaGradle kullanılarak üretilen karmaşık kaynaklara ait olması koşuluyla, eklentinin inceleme süreci boyunca ilerlemesine izin verilir.

Çekirdek Modlar ve Karışıklıklar: Minecraft Temel Kodunun Değiştirilmesi

Plugins and mods that use a system that modifies the Minecraft base code at runtime, (such as core mods and mixins) must disclose the edits that they make to the Minecraft code, and their reasoning for them. Sponge plugins should use SpongeAPI where possible. Sponge implementations may implement technical restrictions to prevent such modifications from being applied by default. Files are not permitted to attempt to work around these restrictions, but can notify the user that enhanced functionality can be enabled via the Sponge provided configuration options.

Harici Bağlantılar (Web API’leri, Telefon Defteri Evleri vb.)

Harici sistemlere çağrı yaparak birçok harika özellik yazılabilir. Proje açıklamalarında açıkça belgelenmiş olmasının yanı sıra bu tür işlevler varsayılan olarak yapılandırılabilir ve devre dışı bırakılmış olmalıdır. Projenizin tek amacı harici bir sistem kullanmayı içeriyorsa (diller arasında sohbeti çeviren bir Sponge eklentisi gibi), o sisteme bağlanmanın devre dışı bırakılması gerekmez. Eklentiniz dış sistemlere bilgi (ör. Bir eklenti listesi, oynatıcı verileri veya harita verileri) gönderirse, toplanan bilgiler ana sayfada listelenmelidir (yukarıya bakın).

Metrics (Data Collection)

Whenever data collected about the server (often referred to as “stats” or “metrics” data, such as server or plugin versions, as well as usage information) is to be sent to an external service, the plugin must first query the Sponge API MetricsConfigManager. Documentation on doing so can be found Here. This API must be checked each time data is sent, not only once. Plugins may not modify the values the API returns, but may encourage users to make the decision to enable the collection and sending of this data for their plugin.

Not

This API was added in API 7.1.0. Plugins built against older API versions must instead check against a variable in a configuration file unique to that plugin for the enabled/disabled status, which must also default to disabled.

İndirilen Kodun Yürütülmesi

We cannot ensure that content that is downloaded and executed at runtime is safe and complies with our guidelines. Any project that performs downloads and execution of code will have warnings on the project page and a warning prior to download to ensure users know the risk.

The following conditions must be also be met by the project:

  • Downloaded content must have hard-coded SHA256 (or better) based hash checking

  • Downloaded content must be explained in the main project page as to what is downloaded and what purpose it serves

  • Downloaded content must be performed over HTTPS connections

  • Downloaded content must not be hosted in a location that will limit downloads (e.g. DropBox, Google Drive)

  • Downloading another plugin must go through Ore’s API in the same fashion as Update Checking

Para Kazandırma / Reklamcılık

All functionality present in your plugin should be usable without restriction, and cannot require a license key to operate. External APIs, such as translation or geolocation services, that require payment for functionality can be allowed but must be discussed among staff prior to approval. Plugins may not be used to display advertisements.

Güncelleme Kontrolü

Güncellemeleri kontrol etmek, verilen Ore API’sını kullanarak yapılmalıdır. Eklentinizdeki kullanıcıları yeni sürümleri indirmeye yönlendirirken eklentiniz hiçbir Cidden bağlanamaz. Bu güncelleme denetiminin, belgelenmesi ve onu devre dışı bırakmak için hangi yapılandırmanın var olması gereken harici bir bağlantı olarak sayıldığına dikkat edin.

Ayrıcalık Vermek

Eklentiler, eklenti geliştiricisi tarafından belirlenen herhangi bir kullanıcıya veya kullanıcı grubuna özellik erişimi vermemeli veya iptal etmemelidir. Bu, yazarın kendisine özel bir görünen ad vermesi ya da kendisine özel bir komut vermesine izin verir. Mümkünse, yazar tarafından önceden belirlenmiş bir erişim olmak yerine, izin düğümlerinin arkasına kilitlenmelidir. Belirli, önceden programlanmış kullanıcılara OP veya izin verme talimatları kabul edilemez.