Skript Paylaşımı ServerHelp| Öneri,Şikayet,Bug Bildirme | Config Kolay Ayarlanabilir

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

KrabsyX

Koydum Çalışma Masasını
Katılım
18 Mart 2020
Mesajlar
60
Elmaslar
38
Puan
6.280
Minecraft
KrabsyX
Selamlar MC-TR Ailesi,
Bugün sizlere kodladığım "ServerHelp" skriptimi tanıtacağım.Skriptin işlevi oyuncular sunucuda eklenmekleri istediği şeyi (Önerisini), sunucuda rahatsız oldukları konuyu (Şikayetini),sunucuda bir açık gördüğünde bildirmek (Bug) için yarayan bir skripttir.Her oyuncunun 3 hakkı var ( 1 şikayet , 1 bug bildirme ve 1 öneri hakkı) , 24 Saatte bir sıfırlanıyor.Aynı zamanda özel yml dosyalarına kaydoluyor örneğin öneri komudunu kullandığında "ServerHelp/oneri.yml" dosyasına kaydoluyor şikayet(ServerHelp/sikayet.yml) ve bug bildirmede(ServerHelp/bug.yml) de aynı şekildedir. Resimler sadece öneri üzerine screenshotlar alınmıştır sebebi ise şikayet ve bug bildirince de aynı yazılar çıkıyor.Neyse fazla uzatmadan skripte geçelim.
Capture.PNG
Öneri.PNG
Öneri Ver.PNG
2Capture.PNG
config.PNG

oneriyml.PNG
EKLENECEKLER LISTESI:
• Oyuncuyu Komutu Kullanmasını Engelleme
• Yetkililere mesaj bildirimi

Not: Şuan skript beta aşamasındadır. Yavaşça eklenecek listesindekiler eklenicek ve tamamlanacaktır eğer eklenecekler listesi dışında eklememi istediğiniz şeyler varsa yazabilirsiniz.Config Dosyasını düzenlerken renk kodu için & bu işareti değil, § bu işareti kullanın.
JavaScript:
#------------------------\ INFORMATION /------------------------#
#Author: KrabsyX
#Skript Name: ServerHelp
#Skript Version: 0.1
#------------------------\ INFORMATION /------------------------#
#-----------------------\ Config System /-----------------------#
on load:
    delete {sunucu::*}
    if file "plugins/ServerHelp/config.yml" doesn't exists:
        create file "./plugins/ServerHelp/config.yml"
        set yaml value "prefix" from file "../../ServerHelp/config.yml" to "&bSunucuAdı &7»"
        set yaml value "error" from file "../../ServerHelp/config.yml" to "&4Hata &7»"
        set yaml value "author" from file "../../ServerHelp/config.yml" to "KrabsyX"
    if file "plugins/ServerHelp/oneri.yml" doesn't exists:
        create file "/plugins/ServerHelp/oneri.yml"
        wf "Öneri Listesi" to "plugins/ServerHelp/oneri.yml"
        wf "///////////////////////////////////////" to "plugins/ServerHelp/oneri.yml"
    if file "plugins/ServerHelp/bug.yml" doesn't exists:
        create file "/plugins/ServerHelp/bug.yml"
        wf "Bug Listesi" to "plugins/ServerHelp/bug.yml"
        wf "///////////////////////////////////////" to "plugins/ServerHelp/bug.yml"
    if file "plugins/ServerHelp/sikayet.yml" doesn't exists:
        create file "/plugins/ServerHelp/sikayet.yml"
        wf "Şikayet Listesi" to "plugins/ServerHelp/sikayet.yml"
        wf "///////////////////////////////////////" to "plugins/ServerHelp/sikayet.yml"
    wait 1 second
    invoke "serversettings"
sub "serversettings":
    set {serversettings::prefix} to single value "prefix" get of "plugins/ServerHelp/config.yml" parsed as text
    set {serversettings::error} to single value "error" get of "plugins/ServerHelp/config.yml" parsed as text
    set {serversettings::author} to single value "author" get of "plugins/ServerHelp/config.yml" parsed as text
variables:
    {sunucuengel.%player%} = false
#-----------------------\ Config System /-----------------------#
    
command /sunucu [<text>] [<text>]:
    permission: sunucu.oyuncu
    permission message: &cMaalesef bunun için yetkin yok!
    trigger:
        if {sunucuengel.%player%} is false:
            if argument 1 is set:
                if argument 1 is "öneri" or "oneri":
                    if argument 2 is set:
                        if {sunucu::oneri::*} contains player's uuid:
                            send "%{serversettings::error}% Günlük öneri hakkınız kalmamıştır." to player
                            stop
                        add player's uuid to {sunucu::oneri::*}
                        send "%{serversettings::prefix}% Öneriniz sunucu yetkililerine bildirilmiştir." to player
                        wf "Öneren Oyuncu » %player's name%" to "plugins/ServerHelp/oneri.yml"
                        wf "Öneri » %arg-2%" to "plugins/ServerHelp/oneri.yml"
                        wf "Öneri Tarihi » %now%" to "plugins/ServerHelp/oneri.yml"
                        wf "///////////////////////////////////////" to "plugins/ServerHelp/oneri.yml"
                        loop players:
                            if loop-player has permission "sunucu.yetkili":
                                send "&7&m---------------&f&m[&7&m-&6&l ServerHelp &7&m-&f&m]&7&m---------------" to loop-player
                                send "%{serversettings::prefix}% Yeni öneri geldi!" to loop-player
                                send "&bÖneren Oyuncu &7» &f%player's display name%" to loop-player
                                send "&bÖneri &7» &f%arg-2%" to loop-player
                                send "&7&m---------------&f&m[&7&m-&6&l ServerHelp &7&m-&f&m]&7&m---------------" to loop-player
                    else:
                        send "%{serversettings::error}% Öneri tespit edilmedi! &fKullanım &8: &f/sunucu öneri [Öneriniz] " to player
                if argument 1 is "şikayet" or "sikayet":
                    if argument 2 is set:   
                        if {sunucu::sikayet::*} contains player's uuid:
                            send "%{serversettings::error}% Günlük şikayet hakkınız kalmamıştır." to player
                            stop
                        add player's uuid to {sunucu::sikayet::*}
                        send "%{serversettings::prefix}% Şikayetiniz sunucu yetkililerine bildirilmiştir." to player
                        wf "Şikayet Eden Oyuncu » %player's name%" to "plugins/ServerHelp/sikayet.yml"
                        wf "Şikayet » %arg-2%" to "plugins/ServerHelp/sikayet.yml"
                        wf "Şikayet Tarihi » %now%" to "plugins/ServerHelp/sikayet.yml"
                        wf "///////////////////////////////////////" to "plugins/ServerHelp/sikayet.yml"
                        loop players:
                            if loop-player has permission "sunucu.yetkili":
                                send "&7&m---------------&f&m[&7&m-&6&l ServerHelp &7&m-&f&m]&7&m---------------" to loop-player
                                send "%{serversettings::prefix}% Yeni şikayet geldi!" to loop-player
                                send "&bŞikayet Eden Oyuncu &7» &f%player's display name%" to loop-player
                                send "&bŞikayeti &7» &f%arg-2%" to loop-player
                                send "&7&m---------------&f&m[&7&m-&6&l ServerHelp &7&m-&f&m]&7&m---------------" to loop-player
                    else:
                        send "%{serversettings::error}% Şikayet tespit edilmedi! &fKullanım &8: &f/sunucu şikayet [Şikayetiniz] " to player
                if argument 1 is "bug":
                    if argument 2 is set:
                        if {sunucu::bug::*} contains player's uuid:
                            send "%{serversettings::error}% Günlük bug bildirme hakkınız kalmamıştır." to player
                            stop
                        add player's uuid to {sunucu::bug::*}
                        send "%{serversettings::prefix}% Bug sunucu yetkililerine bildirilmiştir." to player
                        wf "Bug Bildiren Oyuncu » %player's name%" to "plugins/ServerHelp/bug.yml"
                        wf "Bulduğu Bug » %arg-2%" to "plugins/ServerHelp/bug.yml"
                        wf "Bildirme Tarihi » %now%" to "plugins/ServerHelp/bug.yml"
                        wf "///////////////////////////////////////" to "plugins/ServerHelp/bug.yml"
                        loop players:
                            if loop-player has permission "sunucu.yetkili":
                                send "&7&m---------------&f&m[&7&m-&6&l ServerHelp &7&m-&f&m]&7&m---------------" to loop-player
                                send "%{serversettings::prefix}% Yeni bug bildirme geldi!" to loop-player
                                send "&bAçığı Bildiren Oyuncu &7» &f%player's display name%" to loop-player
                                send "&bBulduğu Açık&7» &f%arg-2%" to loop-player
                                send "&7&m---------------&f&m[&7&m-&6&l ServerHelp &7&m-&f&m]&7&m---------------" to loop-player
                    else:
                        send "%{serversettings::error}% Bug tespit edilmedi! &fKullanım &8: &f/sunucu bug [Bulduğunuz bug] " to player
                if argument 1 is "reload":
                    if player has permission "sunucu.config":
                        send "%{serversettings::prefix}% &aServerHelp config dosyası yenileniyor.." to player
                        wait 1 second
                        invoke "serversettings"
                        send "%{serversettings::prefix}% &aServerHelp config dosyası yenilendi." to player
                    else:
                        send "%{serversettings::error}% &cYetkin Yok" to player
                if argument 1 is "reset":
                    if player has permission "sunucu.config":
                        send "%{serversettings::prefix}% &aTüm haklar sıfırlanmıştır" to player
                        delete {sunucu::*}
                    else:
                        send "%{serversettings::error}% &cYetkin Yok" to player
                if argument 1 is not "öneri" or "oneri" or "şikayet" or "sikayet" or "bug" or "reload" or "reset":
                    send "&7&m---------------&f&m[&7&m-&6&l ServerHelp &7&m-&f&m]&7&m---------------" to player
                    send "&f/sunucu öneri [Öneriniz] &7- Önerinizi kaydeder ve yetkililere bildirir." to player
                    send "&f/sunucu şikayet [Şikayetiniz] &7- Sunucuda rahatsız olduğunuz konuyu kaydeder ve yetkililere bildirir." to player
                    send "&f/sunucu bug [Bulduğunuz Bug] &7- Bulduğunuz bugu kaydeder ve yetkililer bildirir" to player
                    send "&f/sunucu reload &7- Config dosyasını yeniler" to player
                    send "&f/sunucu reset &7- Tüm hakları sıfırlar" to player
            else:
                send "&7&m---------------&f&m[&7&m-&6&l ServerHelp &7&m-&f&m]&7&m---------------" to player
                send "&f/sunucu öneri [Öneriniz] &7- Önerinizi kaydeder ve yetkililere bildirir." to player
                send "&f/sunucu şikayet [Şikayetiniz] &7- Sunucuda rahatsız olduğunuz konuyu kaydeder ve yetkililere bildirir." to player
                send "&f/sunucu bug [Bulduğunuz Bug] &7- Bulduğunuz bugu kaydeder ve yetkililer bildirir" to player
                send "&f/sunucu reload &7- Config dosyasını yeniler" to player
                send "&f/sunucu reset &7- Tüm hakları sıfırlar" to player
        else:
            send "%{serversettings::error}% &cKomudu kullanman engellenmiştir !" to player
every 24 hours:
    delete {sunucu::*}
#-----------------------\ Sunucu Komut Engelleme /-----------------------#

command /sunucuengel [<player>]:
    permission: sunucu.yetkili
    permission message: &cMaalesef bunun için yetkin yok!
    trigger:
        if argument is set:
            if {sunucuengel.%argument%} is true:
                send "%{serversettings::prefix}% %argument% &aAdlı oyuncunun &f/sunucu &ckomudu kullanması aktif edildi." to player
                set {sunucuengel.%argument%} to false
                send "%{serversettings::prefix}% %player's display name% &atarafından &f/sunucu &akomudunu kullanman aktif hale getirilmiştir!" to argument
            else if {sunucuengel.%argument%} is false:
                send "%{serversettings::prefix}% %argument% &cAdlı oyuncunun &f/sunucu &ckomudu kullanması engellendi." to player
                set {sunucuengel.%argument%} to true
                send "%{serversettings::prefix}% %player's display name% &ctarafından &f/sunucu &ckomudunu kullanman engellenmiştir!" to argument

#-----------------------\ Sunucu Komut Engelleme /-----------------------#
 
Son düzenleme:

Doğruyu söylemek gerekirse forum içerisinde buna benzer birçok yapım var ancak bu kadar geniş kapsamlı bir yapımın olması ayrı hoş olmuş <3
 
Doğruyu söylemek gerekirse forum içerisinde buna benzer birçok yapım var ancak bu kadar geniş kapsamlı bir yapımın olması ayrı hoş olmuş <3
Yorumun için teşekkür ederim , bu daha paylaştığım ilk skript yakında daha iyileriyle karşınızda olmayı planlıyorum. :D
 
Detaylandırılması çok daha iyi olmuş, başarılar dilerim..
 
Baya kullanışlı bir skript olmuş tebrik ederim.
:)​
 
Aynı skriptlerin gelişmiş sürümünü görmekten bıktım, mevcut bir skripti geliştirmek yerine farklı şeyler deneyebilir, hayal gücünüzü kullanabilirsiniz.
 
Detaylandırılması çok daha iyi olmuş, başarılar dilerim..
Değerli yorumunuz için teşekkür ederim.
Baya kullanışlı bir skript olmuş tebrik ederim.
:)​
Teşekkürler, yakında umarım daha kullanışlı skriptlerle karşınızda olacağım.
Aynı skriptlerin gelişmiş sürümünü görmekten bıktım, mevcut bir skripti geliştirmek yerine farklı şeyler deneyebilir, hayal gücünüzü kullanabilirsiniz.
Bu skripti şahsen sunucular için önemli olduğunu düşündüğüm için yazdım, yoksa bende aynı skriptleri tekrar tekrar yazmaya meraklı değilim.
 
Güzel olmuş başarılarının devamını dilerim
 
Güzel olmuş başarılarının devamını dilerim
Değerli yorumun için teşekkürler.<3
Gönderi otomatik olarak birleştirildi:

Skript Güncellendi !
Giderilen Hatalar / Eklenenler :
1- /sunucu reload ve reset komutları oyuncularda kullanabiliyordu. Düzeltildi
2- Oyuncuların yaptığı şikayet , öneri , bug bildirme çevrimiçi yetkililere mesaj olarak gidiyor . [ScreenShot Eklendi]
Gönderi otomatik olarak birleştirildi:

Skript Tamamlandı !
Eklenen:
1-/sunucuengel <oyuncu> komuduyla istediğiniz oyuncunun komudu kullanıp kullanamamasını kontrol edebiliyorsunuz !
 
Son düzenleme:
güzel olmuş başarılar
 
eline sağlık başarılarının devamını dilerim
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

Hala Discord sunucumuza katılmadın mı?

Büyük bir topluluğun parçası ol, etkinliklere katıl ve özel hediyeler kazanma şansı yakala!

Şimdi Katıl
Üst