Görevler özelliği paketi, oyuncuların deneyiminizde ödüller ve ilerleme elde etmek için tamamlayabilecekleri görevler oluşturmak için kutudan dışarı işlevsellik sunar.Tüm görevlerin bir kimliği, kategorisi ve oyuncuların görevi bitirmek için tamamlaması gereken bir görev listesi olmalıdır.Ancak, görev listesi boş olabilir, böylece görevin ödülleri hemen talep edilebilir.
Paketin özelleştirme seçeneklerini kullanarak, benzersiz oyun gereksinimlerinizi karşılamak için tüm görevleri kişiselleştirebilirsiniz, örneğin:
- Yeni oyuncuları deneyiminize bindiren görevler oluşturmak ve D1 muhafazasını geliştirmek.
- Orta ve uzun vadeli hedefler ve ilerleme duygusu ekleyerek D7 ve D30 muhafaza hedefi belirlemek
- Oyununuzdaki çeşitli sistemleri ortaya çıkararak katılımı artırmak ve oyuncuları onlarla etkileşim kurmak için ödüllendirmek.

Paket alın
Yaratıcı Dükkanı Roblox ve Roblox topluluğu tarafından yapılan tüm varlıkları bulmak için kullanabileceğiniz Araç Çubuğu'nun bir sekmesidir, model, görüntü, mesh, ses, eklenti, video ve font varlıkları dahil olmak üzere projelerinizde kullanılan tüm varlıkları bulmak için.Özellik paketleri de dahil olmak üzere açık bir deneyime bir veya daha fazla varlık doğrudan eklemek için Yaratıcı Dükkanı kullanabilirsiniz!
Her özellik paketi doğru çalışması için Çekirdek özellik paketine ihtiyaç duyar. Çekirdek ve Görevler özellik paketlerinin envanterinizde olduğunda, platformdaki herhangi bir projede yeniden kullanabilirsiniz
Paketleri envanterinden deneyiminize almak için:
Stüdyo içindeki envanterinize Çekirdek ve Görevler ekleyin, aşağıdaki bileşenlerden Envantere Ekle bağlantısına tıklayarak.
Araç çubuğunda, Görüntüle sekmesini seçin.
Araç çantasına tıklayın . Araç çantası penceresi görüntülenir.
Araç kutusu penceresinde, Envanter sekmesine tıklayın. Modellerim sıralaması görüntülenir.
Özellik Paketi Çekirdeği tuşuna tıklayın, ardından Görev Özelliği Paketi tuşuna tıklayın.Her iki paket klasörü Gezgini penceresinde görüntülenir.
Paket klasörlerini Yeniden Yansıtılan Depoya sürükle.
Görevleri tanımla
Her tamamlanabilir görev, görevi tamamlamak, yapılandırma seçenekleri ve seçici görüntü verilerini bitirmek için bitirilmesi gereken bir dizi görev içerir, hepsi de aynı klasörde , çıktı kaydı ile çıkarılan kaydı ile tanımlanabilir.
Gerekli alanlar
Her görev için aşağıdaki alanlar gereklidir.
Adı | Tür | Açıklama |
---|---|---|
missionId | string | Ana Görev tablosu anahtarı. Tüm görevler kendi benzersiz diziile tanımlanır. |
categoryId | string | Görevler bir kategoriye ait olmalı ve UI'de kategoriye göre gruplandırılmalıdır. |
tasks | table | Oyuncunun görevi tamamlaması için bitirmesi gereken görevlerin bir listesi. |
Şartların kilidini aç
Varsayılan olarak, görevler otomatik olarak oyuncular için kilitlenir ve tek seferde tamamlanabilir.Ancak, bu davranışı değiştirmek için aşağıdaki isteğe bağlı yapılandırma seçeneklerini kullanabilirsiniz.
Adı | Tür | Açıklama |
---|---|---|
prerequisites | table | Görevin kilidi açılmadan önce tamamlanması gereken diğer görev kimliklerinin bir listesi. |
manualOnly | bool | Görevin otomatik kilidini açmayı devre dışı bırakır.Bunun yerine, görevin kilidini açmak için bir işlev çağrılmalıdır.Diğer kilit koşullarının da hala karşılanması gerekir. |
availableAfterUtc | bool | Belirtilen UTC saatinden önce görevin kilidi açılamaz. |
availableBeforeUtc | bool | Belirtilen UTC saatinden sonra görev açılamaz. Eğer bu saatten önce açılır ve bu saatten önce bitirilmezse, görev başarısız olur. |
repeatable | bool | Görev tamamlandıktan sonra tekrar kilidi açılır. |
repeatLimit | number | Eğer görev tekrarlanabilirse, bu kadar çok kez tekrarlanamaz. |
repeatCooldownSeconds | number | Eğer görev tekrarlanabilirse, kilidi açılmadan önce bir gecikme olur. |
expireSeconds | number | Eğer görev kilitlenir ve belirtilen sürede bitirilmezse, yerine başarısız olur. |
expireCountOffline | bool | Eğer görevin expireSeconds ve expireCountOffline varsa ve oyuncu aslında deneyimde değilse, oyuncunun deneyime girmesi süresi görevin sona ermesine yönelik olarak sayılacaktır. |
Meta veriler
Görevlerin, görevlerin kullanıcı arayüzünde nasıl görüntüleneceğini belirten metadatları vardır.Metadatı özelleştirmek için aşağıdaki isteğe bağlı alanları kullanabilirsiniz.
Adı | Tür | Açıklama |
---|---|---|
displayName | string | Kullanıcı arayüzünde gösterilecek bir isim, missionId yerine misyon için. |
description | string | Görevle ilgili ek bilgi veya konteks sağlayan daha uzun bir metin bloku. |
visibleAfterComplete | bool | Doğru olarak ayarlanırsa, görev tamamlandıktan sonra bile görev listesinde görünecek ve tamamlandı olarak işaretlenecektir. |
visibleAfterFailed | bool | Doğru ayarlanırsa, görev başarısız olsa bile görevler listesinde görünecek ve başarısız olarak işaretlenecektir. |
visibleBeforeUnlocked | bool | Doğru olarak ayarlanırsa, görev mevcut olmadan önce listede görünecek ve bitirilmesi için kilitlenecektir. |
invisibleWhileActive | bool | Doğru ayarlanırsa, görev aktifken bile görünmez olacaktır. |
rewards | table | Ödül görüntüleme bilgilerinin bir listesi.
|
Görevleri tanımla
Her görev sıfır veya daha fazla görev içerebilir.Bir görevin sıfır görevi varsa, kilidi açıldıktan hemen sonra talep edilebilir; bir görevin bir veya daha fazla görevi varsa, görevler tamamlandıktan sonra oyuncu görevle ilgili herhangi bir ödülü toplayabilir.Her görevin bir taskId var, ki bu, belirli bir görev için görevle ilişkili anahtardır.
Görevler iki tipe gelir:
- Süreli Görevler - Görevi zamanın farklı noktalarında başlatmanızı ve durdurmanızı sağlar.Görevin zamanlayıcısı çalışırken belli bir süre geçmelidir, ardından görev tamamlanır.
- Görevleri say - Görevin ilerlemesini eklemek veya ayarlamak için izin verir. İlerleme belli bir değere ulaştığında, görev tamamlanır.
Her iki görev türü de aşağıdaki alanları paylaşır:
Adı | Tür | Açıklama |
---|---|---|
taskType | string | Görev türünün sayılı veya zamanlı olup olmadığını belirtir. |
counter | object | (Opsiyonel) Bu görevin takip ettiği sayaç.Sayaçlar, bir sayı veya bir zamanlayıcı için oyuncu özel kalıcı depolama alanıdır.Birden fazla görev tek bir karşı teklifizleyebilir; örneğin, eğer birden fazla görev bir oyuncunun topladığı kaç para olduğunu izlerse, hepsi aynı "para" karşı teklifpaylaşabilir.Bu görevler, sıfırdan başlayarak yeni toplanan paraları bağımsız olarak izleyebilir veya sayıcı değerinden sayımı sürdürebilir (tüm paralar zaten toplandı).
|
metadata | object | (Opsiyonel) Görevin UI'de nasıl göründüğüyle ilgili bilgi.
|
callToAction | object | (Opsiyonel) Bir geri çağrı işlevini tetikleyen bir düğme.
|
Görev alanları say
Görev sayısının gerekli bir değeri vardır. Görev ilerlemesi bu miktara ulaştığında görev tamamlanır.
Adı | Tür | Açıklama |
---|---|---|
goalCount | number | (Opsiyonel) Görevi tamamlamak için gereken ilerleme. |
Zaman görevleri alanları
Süre görevlerinin hedef süre miktarı vardır ve başlatılır ve durdurulur. Hedef süre miktarı karşılandığında görev tamamlanır.
Adı | Tür | Açıklama |
---|---|---|
goalSeconds | number | Görevi tamamlamak için geçmesi gereken saniye sayısı. |
startImmediately | bool | Görev, yalnızca başladıktan sonra değil, hemen zaman sayımına başlamalıdır, eğer görev yalnızca başladıktan sonra sayım yapılırsa. |
includesOfflineTime | bool | Eğer görev, oyuncu aktif olarak deneyimde değilken harcanan süre içermelidir. |
Kategorileri yapılandır
Kategorilerin kullanılmak üzere açıkça tanımlanması gerekmez, çünkü bir görevin kategorisi için varsayılan değerler kullanılacaktır.Ancak, bu değerleri kategoride ek etkiler eklemek için ReplicatedStorage.Missions.Configs.Categories düzenleyebilirsiniz.Kategoriler benzersiz CategoryIds tarafından tanımlanır, görevlerde referans edilen aynılar.
Adı | Tür | Açıklama |
---|---|---|
repeatDelaySeconds | number | (Opsiyonel) ayarla, kategorideki tüm görevler, belirtilen süre geçtiğinde her seferinde sıfırlanır ve kilidi açılabilir, tamamlanabilir ve ödülleri tekrar talep edilebilir.Bu, tekrarlanabilir görevlerden ayrıdır, ki bunlar belli bir kategori tekrarı içinde tekrarlanabilir. |
Sunucu mantığını entegre et
Sunucunuzun ReplicatedStorage.Missions.Server.Examples.MissionsExample ile nasıl etkileşime gireceğini gösteren Görevler özelliği paketine bir göz atın.
Ana olarak, deneyiminize Görevler özelliği paketini sürükledikten sonra dört şey bağlamanız gerekir:
Görevlerinizi görev yapılandırmasında tanımlayın.
Görev ilerleme durumunu veya ilerlemeye bağlı sayaçları güncellemek için deneyime mantık ekleyin.
OKUMAK İçin README-- Bir görevde Jumps görevi ile atlayarak ilerleme artırırMissions.addProgressToTask(player, "Jumping", "Jumps", 1)-- Savaş Zamanı adlı bir görevde zamanlayıcıyı bir TimeInBattle görevi ile başlatırMissions.startTimedTask(player, "BattlingTime", "TimeInBattle")-- Zamanlayıcıyı bir görevde Savaş Süresi ile TimeInBattle göreviyle durdururMissions.stopTimedTask(player, "BattlingTime", "TimeInBattle")-- Zıplama sayacına bağlı tüm görevlerin ilerlemesini artırırCounterSystem.addCounter(player, "Jumps", 1)-- Savaş Süresi sayacısına bağlı tüm zamanlı görevler üzerinde zamanlayıcıyı başlatır TimeInBattle sayaç sayacısına bağlı tüm zamanlı görevler üzerinde zamanlayıcıyı başlatırCounterSystem.startTimer(player, "TimeInBattle")-- Savaş Zamanı sayaç sayacına bağlı tüm zamanlı görevleri durdurur TimeInBattle sayaç sayacına bağlı tüm zamanlı görevleri karşı teklifCounterSystem.stopTimer(player, "TimeInBattle")Görev bitirme elemanlarını ayarlayın ve isteğe bağlı olarak elemanların kilidini açın veya başarısız olun.Deneyiminizdeki görevlerden ödülleri vermek için tamamlayıcıyı kullanın.
OKUMAK İçin READMElocal function completeHandler(player: Player, missionId: Types.MissionId)print(`{player} completed mission {missionId}`)-- Oyunculara ödüllerini verin.endMissions.setCompletionHandler(missionId, completeHandler)Otomatik olarak kilidi açılmayan görevlerin kilidini açın. Görevler özellik paketi mantığı, görev tamamlanmadan önce tüm görev gereksinimlerinin karşılandığını ve ödüllerin koleksiyonolduğunu garanti eder.
OKUMAK İçin READMEMissions.unlockMission(player, "Manual")
Konstantları yapılandır
Çekirdek özelliği paketi için sabitler iki noktada yaşıyor:
Paylaşılan sabitler ReplicatedStorage.FeaturePackagesCore.Configs.SharedConstants 'de yaşar.
Paket spesifik konular, bu durumda Görevler özelliği paketi, canlı olarak yaşıyor ReplicatedStorage.Missions.Configs.Constants .
Ayrıca, çeviri için ayrılmış bir konuma sahip dize bulabilirsiniz: ReplicatedStorage.FeaturePackagesCore.Configs.TranslationStrings .
UI bileşenlerini özelleştirin
Renkler, yazı tipi ve saydamlık gibi paket nesnelerini değiştirerek, görevlerinizin görsel sunumunu ayarlayabilirsiniz.Örneğin, ReplicatedStorage.Missions.Configs.Constants , bir görevin sadece tek bir görevi olduğu durumlarda görevin kendisi üzerinde bir görev çubuğu görüntülemek için SingleTaskMode 'yi etkinleştirebilirsiniz.
Ayrıca, deneyiminiz zaten Misyonlar özelliği paketiyle entegre olmak istediğiniz mevcut bir UI'ye sahipse, istemci tüm oyuncunun gönderdiği oyunların bilgilerini almak için gerekli tüm fonksiyonları içerir.