Exams
Exams in Minecraft!
This plugin lets server owner setup pre-defined exams which players can take to obtain certain ranks (permission groups) on the server OR execute a certain command for the player if he passes the exam.
Exams is a simple, lightwight and automated way to handle certain ranks on the server, such as :
- Citizen (Player need to read and understand the rules before he can build on the server)
- Wizard (Player need to know how he actually use the wizard spells before he can be a wizard)
- Police (Player need to know under what conditions he should jail players)
From my own experience, using this plugin is a very efficient way to guarantee quality players on your server when players need to pass an exam to be able to build on the server.
By editing the exams.yml file, a server admins can define any type of exam for any rank they like.
Exams are taken by clicking on signs in the world to encourage people to build schools in the game world where players can go to take exams.
Exam questions
Setting up an exam is easy:
- Place a sign with the words "Exam" on line 1, and the name of the exam (from the exam.yml file) on line 3.
- Players can now signup and take the exam by right-clicking on the exam sign
Being a Student
- During the exam, the player will be put in the "Student" permission group.
- If the player fails his exam he will be reverted back to the permission group he had before starting the exam
Installation
Put the Exams.jar file in your /plugins folder and you are ready to go!
Defining your exams
Just edit the exams.yml that appears in the Exams folder. The layout should be simple to understand:
Citizen: RankName: Citizen Command: give $PlayerName 38 1 StartTime: 600 EndTime: 13000 Price: 100 NumberOfQuestions: 2 Questions: Is it ok to grief on the server?: Options: - Yes - No - I will grief like theres no tomorrow! - Maybe CorrectOption: B Questions: What is NOT a way to obtain items?: Options: - Asking an admin for it - Crafting them - Buying them - Asking other players for them CorrectOption: A Questions: How do I obtain a higher rank?: Options: - By yelling and screaming about it - By convincing an admin - By taking the exam for that rank - No idea CorrectOption: C
This exam puts him in the "Citizen" group (RankName) and hands him a rose (38).
Notice that the exam above will select 2 questions (NumberOfQuestions) at random out of all available 3 questions for the exam.
In this way, the exam will never be exactly the same and players will not be able to simply record the sequence of the answers.
This exam has both the "RankName" and "Command" settings.
Either of these are optional: You can setup up an exam that only performs a command or only puts the player in a group or both.
Optional: Required Exams
An exam can be setup to require passing another exam first.
You can set another exam as being required for taking this exam, by specifying the RequiredExam value.
Citizen: RankName: MasterCitizen RequiredExam: Citizen Command: give $PlayerName 38 200 StartTime: 600 EndTime: 13000 Price: 10000 NumberOfQuestions: 64 Questions: Is it ok to grief on the server?: Options: - Yes - No - I will grief like theres no tomorrow! - Maybe CorrectOption: B
Optional: Payment
You can set the required payment for taking an exam by specifying the Price value.
NOTE: You need Vault installed on the server to use payment.
Optional: RankName
You can set the permission group that the player will be put in if the player passes the exam, by specifying the RankName value.
Optional: Command
You can set the command that the plugin will execute if the player passes the exam, by specifying the Command value.
Optional: Multiple Commands
You can set a list of command that the plugin will execute if the player passes the exam, by specifying the Commands value.
Citizen: RankName: Citizen Commands: - give $PlayerName 38 1 - tppos $PlayerName 128 65 128 StartTime: 600 ...
Optional: Required rank
You can set another rank (permission group) as being required for taking this exam, by specifying the RequiredRank value.
Optional: Opening Hours
You can set the opening hours for each exam by specifying the StartTime and EndTime values. Note that these values are in minecraft time.
Commands
Command | Description |
---|---|
exams | Show the basic info |
exams help | Shows the command list |
exams a | Answer A to an exam |
exams b | Answer B to an exam |
exams c | Answer C to an exam |
exams d | Answer D to an exam |
Permission Nodes
Note that Exams currently supports PermissionsBukkit, PermissionsEX, bPermissions and GroupManager.
- exams.* - Player can do everything below
- exams.updates - Player gets notifications about updates to the Exams plugin
- exams.reload - Player can reload the Exams configuration file
Configuration
Setting | Description | Default Value |
---|---|---|
ServerName | Default name for the server. | 'Your Server' |
MinExamTime | Minutes that must pass before a player can take an exam again | 60 |
Required score | Required percentage of correct answers that a player must have to pass an exam | 80 |
Debug | Enable debugging information | false |
DisplayUpdateNotifications | Show notifications about updates to the Exams plugin. | true |
Want to contribute? Exams is open source!
Check out the official repository on github
How do i make it so it ranks up using my Pex Ranks?
I hope the new players into the game after after getting white list must take the test, how do I set up? In addition, there are Chinese? These words are all translation machine translation, if wrong, please forgive me.
why this plugin can't support chinese?can you fix?
So can I make it if a player aces an exam they get a reward not a rank.
I use Exams 0.1.9 Beta and I have 2 problem.
1.Some player start exam and not finish it , Exam will not choose enough question and auto stop , tell player score and fail the exam
2. Exams 0.2.3 Beta can use in 1.5.2 R1.0 Server?
Sorry , my English not very well
Thank you
@DoggyOnFire
How to do this in Ubuntu (Acutally Lubuntu) ?
I am using Leafpad.
@krissern1234
Unfortunately, Exams currently does not support EasyPermissionsEx :(
@axzxc1236
Yes. Simply save your exams.yml as UTF-8 without BOM (if using notepad).
I am using this myself, since my server is Danish.
Is there any way to let this plugin supports Chinese (UTF-8) ?
I am using ubuntu to create my server.
I need this plugin for my server sooooo much......
Can anyone help me?
If there is a bug that using 0.2.3 beta in 1.5.2 ?
2013-08-05 18:43:56 [SEVERE] Cannot load plugins/Exams/exams.yml org.bukkit.configuration.InvalidConfigurationException: while parsing a block mapping in "<string>", line 6, column 5: [常識考驗]你的minecraft版本現在是? : ^ expected <block end>, but found Scalar in "<string>", line 6, column 11: [常識考驗]你的minecraft版本現在是? : ^
at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlConfiguration.java:55) at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguration.java:138) at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguration.java:105) at org.bukkit.configuration.file.YamlConfiguration.loadConfiguration(YamlConfiguration.java:175) at com.dogonfire.exams.ExamManager.load(ExamManager.java:67) at com.dogonfire.exams.Exams.onEnable(Exams.java:120) at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:217) at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:457) at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:382) at us.Myles.PWP.FakePluginManager.enablePlugin(FakePluginManager.java:200) at org.bukkit.craftbukkit.v1_5_R3.CraftServer.loadPlugin(CraftServer.java:284) at org.bukkit.craftbukkit.v1_5_R3.CraftServer.enablePlugins(CraftServer.java:266) at net.minecraft.server.v1_5_R3.MinecraftServer.j(MinecraftServer.java:310) at net.minecraft.server.v1_5_R3.MinecraftServer.e(MinecraftServer.java:289) at net.minecraft.server.v1_5_R3.MinecraftServer.a(MinecraftServer.java:249) at net.minecraft.server.v1_5_R3.DedicatedServer.init(DedicatedServer.java:160) at net.minecraft.server.v1_5_R3.MinecraftServer.run(MinecraftServer.java:388) at net.minecraft.server.v1_5_R3.ThreadServerApplication.run(SourceFile:573) Caused by: while parsing a block mapping in "<string>", line 6, column 5: [常識考驗]你的minecraft版本現在是? : ^ expected <block end>, but found Scalar in "<string>", line 6, column 11: [常識考驗]你的minecraft版本現在是? : ^
at org.yaml.snakeyaml.parser.ParserImpl$ParseBlockMappingKey.produce(ParserImpl.java:575) at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:161) at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:146) at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:230) at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160) at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:237) at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160) at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:237) at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160) at org.yaml.snakeyaml.composer.Composer.composeDocument(Composer.java:123) at org.yaml.snakeyaml.composer.Composer.getSingleNode(Composer.java:106) at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:121) at org.yaml.snakeyaml.Yaml.loadFromReader(Yaml.java:480) at org.yaml.snakeyaml.Yaml.load(Yaml.java:399) at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlConfiguration.java:53) ... 17 more
I have been looking for a plugin like this in a long time, and I finaly found this but when I install the plugin this error comes up: I have reinstalled the plugin, restarted the server etc. I would love some help :)
Could you make it possible to use this like a quiz with multiple questions, where each question are being sent when the player clicks a sign, and that either the player eventually with permissions as he uses the quiz or the console performs custom commands per answer, and also add an option for per quiz/question/answer cooldowns etc... Can you also make it possible to have more than one possible answers, and also that the player therefore can say more than one answer but that he player can't do all the answers to reduce abuse etc... This has so many uses! But it can even get more if you add more features such as the above. :)
@Jones988
@RasCas
It shall be done!
@Jones988
I second that. Some of my players make the citizen exam and cry because they loose their extra permissions. ;-)
A required rank and a message would be nice.
Is there a way to make a person only beable to take an exam if he is a certain rank? Also, I wanna make someones rank somthing else if they fail.
@Marium0505
@DoggyOnFire
Thanks bro got it working :) nice work
@Exceptions
Just do not make a starttime and endtime, then it will be the whole day.
Do you have Vault installed? Is your economy plugin supported by Vault? Does the plugin say that Vault is detetected when it starts up?
@DoggyOnFire
ok get it working but the prices don't seen to work , and the time can i set it to whole day ?
@Exceptions
Yes you can. That is one of the main points of this plugin.
Is it possible to set ; Guest take exam and they pass so they rank up to member?