Jump to content

Better Reports | A Basic Report System


Recommended Posts

  • Better Reports - Every report is logged in a GUI. Which can be cleared easily. This script is easy to edit.
  • 48 lines of script. So I'd say it's very light weight, Shouldn't lag your server.
  • Permissions
  1. staff - This player will be alerted when a report is made. Basically my permission node for the staff team.

 

  • Pictures

 image.png.60a1916d6c28377d9e255f8e8e98a31e.png      

  • These ar e the messages sent to players and the player with the permission "staff"

 

image.png.aa5435ebac947a2e31f730717684896a.png

  • Once you execute the command /reports (Only players with the permission "staff" has access). This will show up, and once you hover it, It'll show the player who reported the player, and it's reason.

 

image.png.82bb88dbfaf5eefa7562947eb3564a5c.png

  • On the bottom-right corner, You'll see an empty map called Clear Reports... It's pretty much self-explanatory but, Once you click it, It'll delete all the reports and refresh the GUI.

 

 

image.png.d0a39d963dd7bca08125a57a229b6f69.png

  • Everytime the GUI is empty, this will show up. This will also show up once you've cleared all the reports.

 

 

Script (48 lines):

options:
    prefix: &3[Reports]
    staff: staff
    no-perm: &cNo permission.
    gui-name: &3Reports &lGUI

command /report [<offline player>] [<text>]:
    trigger:
        if arg 1 is set:
            if arg 2 is set:
                add arg-1 to {reports::players::*}
                set {reports::reason::%arg-1%} to arg 2
                set {reports::reporter::%arg-1%} to player
                send "{@prefix} &7Sucessfully reported &e%arg-1% &7for &e%arg-2%&7."
                send "{@prefix} &7A new file has been made against &e%arg-1%&7. Check /reports." to all players where [input has permission "staff"]
            else:
                send "{@prefix} &7Please provide a reason."
        else:
            send "{@prefix} &7Please provide a player."

command /reports [<text>]:
    permission: {@staff}
    permission message: {@no-perm}
    trigger:
        send "{@prefix} &7Opening the report gui..."
        wait 1 tick
        reports(player)

function reports(p: player):
    open virtual chest inventory with size 6 named "{@gui-name}" to {_p}
    set {_n} to 0
    if {reports::players::*} is set:
        loop {reports::players::*}:
            format gui slot {_n} of {_p} with ("%loop-value%" parsed as offline player)'s skull with no nbt named "&3%loop-value%" with lore "&7Reason&8: &3%{reports::reason::%loop-value%}%" and "&7Reporter&8: &3%{reports::reporter::%loop-value%}%"
            add 1 to {_n}
            if {_n} = 53:
                stop loop
    else:
        format gui slot 0 of {_p} with paper with no nbt named "&7None." with lore "&7Currently no reports." to do nothing
		
    format gui slot 53 of {_p} with empty map with no nbt named "&6Clear Reports" to run:
        close player's inventory
        loop {reports::players::*}:
            delete {reports::reason::%loop-value%}
            delete {reports::reporter::%loop-value%}
        wait 1 tick
        clear {reports::players::*}
        reports({_p})

 

ENJOY! Thank you for reading! ♥️😘

Spoiler

alzo is fat.. shh, if you see this. say "alzo is fat" in the comments ❤️

 

 

  • Like 4
  • Thanks 2
  • Been "Skripting" for half a year now
  • Whale type 
  • Doesn't like Idle Servers (But made one)
  • Doesn't like Mining-PvP servers (But made one)
  • Likes MrScopes lol

 

I make original memes about minehut too.

Capture.png.5a3e6c2c283f3e0ee17860d8704f25f6.png

 

  • Discord Swayl#4299
  • MC IGN - Swayl
Link to post
Share on other sites

Nice report system!

 

+rep

I've been doing skript for 4 years and a half. I don't find my self a "better" skripter or do competitions against others.

I just wish people can just get along & just help each out and be kind to one and another.

 

I have been hosting ValkNet for 5 years and a half

ever since 2015 when i joined minehut around February or January.

 

I'm the owner of ValkyrieNetwork (known as ValkNet) | https://discord.gg/rPTYbQY

A great service that i provide for the minehut community!

 

Contact:

Discord: https://discord.gg/6rQu2Vn

Link to post
Share on other sites
11 hours ago, Trent said:

This one is awesome. I love how much you can do in so few lines.

 

9 hours ago, TacticalModz said:

Nice report system!

 

+rep

Thank you ❤️ 

  • Been "Skripting" for half a year now
  • Whale type 
  • Doesn't like Idle Servers (But made one)
  • Doesn't like Mining-PvP servers (But made one)
  • Likes MrScopes lol

 

I make original memes about minehut too.

Capture.png.5a3e6c2c283f3e0ee17860d8704f25f6.png

 

  • Discord Swayl#4299
  • MC IGN - Swayl
Link to post
Share on other sites
Just now, Graphick2 said:


I want to be praised too 😞

Post one of your greatest scripts here 😄

 

  • Been "Skripting" for half a year now
  • Whale type 
  • Doesn't like Idle Servers (But made one)
  • Doesn't like Mining-PvP servers (But made one)
  • Likes MrScopes lol

 

I make original memes about minehut too.

Capture.png.5a3e6c2c283f3e0ee17860d8704f25f6.png

 

  • Discord Swayl#4299
  • MC IGN - Swayl
Link to post
Share on other sites
Just now, Swayl said:

Post one of your greatest scripts here 😄

 

I'd like to see it tbh.

  • Been "Skripting" for half a year now
  • Whale type 
  • Doesn't like Idle Servers (But made one)
  • Doesn't like Mining-PvP servers (But made one)
  • Likes MrScopes lol

 

I make original memes about minehut too.

Capture.png.5a3e6c2c283f3e0ee17860d8704f25f6.png

 

  • Discord Swayl#4299
  • MC IGN - Swayl
Link to post
Share on other sites
  • 2 months later...
  • 2 weeks later...
On 6/11/2019 at 9:46 AM, Swayl said:
  • Better Reports - Every report is logged in a GUI. Which can be cleared easily. This script is easy to edit.
  • 48 lines of script. So I'd say it's very light weight, Shouldn't lag your server.
  • Permissions
  1. staff - This player will be alerted when a report is made. Basically my permission node for the staff team.

 

  • Pictures

 image.png.60a1916d6c28377d9e255f8e8e98a31e.png      

  • These ar e the messages sent to players and the player with the permission "staff"

 

image.png.aa5435ebac947a2e31f730717684896a.png

  • Once you execute the command /reports (Only players with the permission "staff" has access). This will show up, and once you hover it, It'll show the player who reported the player, and it's reason.

 

image.png.82bb88dbfaf5eefa7562947eb3564a5c.png

  • On the bottom-right corner, You'll see an empty map called Clear Reports... It's pretty much self-explanatory but, Once you click it, It'll delete all the reports and refresh the GUI.

 

 

image.png.d0a39d963dd7bca08125a57a229b6f69.png

  • Everytime the GUI is empty, this will show up. This will also show up once you've cleared all the reports.

 

 

Script (48 lines):


options:
    prefix: &3[Reports]
    staff: staff
    no-perm: &cNo permission.
    gui-name: &3Reports &lGUI

command /report [<offline player>] [<text>]:
    trigger:
        if arg 1 is set:
            if arg 2 is set:
                add arg-1 to {reports::players::*}
                set {reports::reason::%arg-1%} to arg 2
                set {reports::reporter::%arg-1%} to player
                send "{@prefix} &7Sucessfully reported &e%arg-1% &7for &e%arg-2%&7."
                send "{@prefix} &7A new file has been made against &e%arg-1%&7. Check /reports." to all players where [input has permission "staff"]
            else:
                send "{@prefix} &7Please provide a reason."
        else:
            send "{@prefix} &7Please provide a player."

command /reports [<text>]:
    permission: {@staff}
    permission message: {@no-perm}
    trigger:
        send "{@prefix} &7Opening the report gui..."
        wait 1 tick
        reports(player)

function reports(p: player):
    open virtual chest inventory with size 6 named "{@gui-name}" to {_p}
    set {_n} to 0
    if {reports::players::*} is set:
        loop {reports::players::*}:
            format gui slot {_n} of {_p} with ("%loop-value%" parsed as offline player)'s skull with no nbt named "&3%loop-value%" with lore "&7Reason&8: &3%{reports::reason::%loop-value%}%" and "&7Reporter&8: &3%{reports::reporter::%loop-value%}%"
            add 1 to {_n}
            if {_n} = 53:
                stop loop
    else:
        format gui slot 0 of {_p} with paper with no nbt named "&7None." with lore "&7Currently no reports." to do nothing
		
    format gui slot 53 of {_p} with empty map with no nbt named "&6Clear Reports" to run:
        close player's inventory
        loop {reports::players::*}:
            delete {reports::reason::%loop-value%}
            delete {reports::reporter::%loop-value%}
        wait 1 tick
        clear {reports::players::*}
        reports({_p})

 

ENJOY! Thank you for reading! ♥️😘

  Reveal hidden contents

alzo is fat.. shh, if you see this. say "alzo is fat" in the comments ❤️

 

 

Really good! Also like how you've used the "options" tool properly - a sign of well thought out coding.

Owner of the servers powys, gwent, merthyr, ceredigion and valkyrja.

VIP

I'm very passive-aggressive. IGN: demonitisation

Link to post
Share on other sites
  • 3 weeks later...
On 9/28/2019 at 6:20 PM, demonitisation said:

one small problem

when I do /reports it doesn't work

 

On 9/8/2019 at 2:00 PM, cymraeg said:

command /report [<offline player>] [<text>]

You have to do "/report brobie1kanobi For being too awesome and possibly an alien."

 

Awesome code man! Can't wait to try it either!

Edited by brobie1kanobi
Forgot to thank original poster

Trying to be MH's back up support. 😁

Join my server anytime: 

Spoiler

/join mgwgames or play.megagameworld.com

image.gif.0e020df49d00ae7f1fa263ce320da298.gif

Link to post
Share on other sites
  • 1 month later...
  • 4 weeks later...
  • 2 months later...
On 6/11/2019 at 3:46 AM, Swayl said:
  • Better Reports - Every report is logged in a GUI. Which can be cleared easily. This script is easy to edit.
  • 48 lines of script. So I'd say it's very light weight, Shouldn't lag your server.
  • Permissions
  1. staff - This player will be alerted when a report is made. Basically my permission node for the staff team.

 

  • Pictures

 image.png.60a1916d6c28377d9e255f8e8e98a31e.png      

  • These ar e the messages sent to players and the player with the permission "staff"

 

image.png.aa5435ebac947a2e31f730717684896a.png

  • Once you execute the command /reports (Only players with the permission "staff" has access). This will show up, and once you hover it, It'll show the player who reported the player, and it's reason.

 

image.png.82bb88dbfaf5eefa7562947eb3564a5c.png

  • On the bottom-right corner, You'll see an empty map called Clear Reports... It's pretty much self-explanatory but, Once you click it, It'll delete all the reports and refresh the GUI.

 

 

image.png.d0a39d963dd7bca08125a57a229b6f69.png

  • Everytime the GUI is empty, this will show up. This will also show up once you've cleared all the reports.

 

 

Script (48 lines):


options:
    prefix: &3[Reports]
    staff: staff
    no-perm: &cNo permission.
    gui-name: &3Reports &lGUI

command /report [<offline player>] [<text>]:
    trigger:
        if arg 1 is set:
            if arg 2 is set:
                add arg-1 to {reports::players::*}
                set {reports::reason::%arg-1%} to arg 2
                set {reports::reporter::%arg-1%} to player
                send "{@prefix} &7Sucessfully reported &e%arg-1% &7for &e%arg-2%&7."
                send "{@prefix} &7A new file has been made against &e%arg-1%&7. Check /reports." to all players where [input has permission "staff"]
            else:
                send "{@prefix} &7Please provide a reason."
        else:
            send "{@prefix} &7Please provide a player."

command /reports [<text>]:
    permission: {@staff}
    permission message: {@no-perm}
    trigger:
        send "{@prefix} &7Opening the report gui..."
        wait 1 tick
        reports(player)

function reports(p: player):
    open virtual chest inventory with size 6 named "{@gui-name}" to {_p}
    set {_n} to 0
    if {reports::players::*} is set:
        loop {reports::players::*}:
            format gui slot {_n} of {_p} with ("%loop-value%" parsed as offline player)'s skull with no nbt named "&3%loop-value%" with lore "&7Reason&8: &3%{reports::reason::%loop-value%}%" and "&7Reporter&8: &3%{reports::reporter::%loop-value%}%"
            add 1 to {_n}
            if {_n} = 53:
                stop loop
    else:
        format gui slot 0 of {_p} with paper with no nbt named "&7None." with lore "&7Currently no reports." to do nothing
		
    format gui slot 53 of {_p} with empty map with no nbt named "&6Clear Reports" to run:
        close player's inventory
        loop {reports::players::*}:
            delete {reports::reason::%loop-value%}
            delete {reports::reporter::%loop-value%}
        wait 1 tick
        clear {reports::players::*}
        reports({_p})

 

ENJOY! Thank you for reading! ♥️😘

  Reveal hidden contents

alzo is fat.. shh, if you see this. say "alzo is fat" in the comments ❤️

 

 

+rep for the effort

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×
×
  • Create New...