Roleplay Essentials
News
February 5, 2014
It's been nearly a year since I began development on RP Essentials 3.0. During that time I found myself overwhelmed with work and now I've found myself a full-time job in animation. As I said in the comments, please let me know if you're willing to work on the project! Otherwise, I will definitely do my best to revisit this as much as I can, as the previous versions have always been unstable, horribly coded. Sorry guys! Again, I will come back to this as much as I can.
June 8, 2013
I've been gone for awhile, just checking in. I know I haven't been around awhile, but I'm here to say I haven't abandoned this project what-so-ever! ;)
April 16, 2013
The new Chat System feature will be next. I aim to making it as flexible as possible, as well as giving it the unique ability to hook into the rest of RP Essentials. Some of you may be familiar with Custom Chat Styles. That's exactly what is being implemented. I'm doing my best keeping up with this work and real life work, so bare with me. And thanks for your support and encouragement!
April 6, 2013
In case you guys didn't get the April Fools joke on the previous post, that was an entire joke. RP Essentials 2.0 is a complete rewrite. No one ever thinks about making an April Fools joke while stating they're pulling an April Fools joke. But Apparently it worked! RP Essentials 2.0 IS in the works, and is almost done! :)
April 1st, 2013
April Fools! RP Essentials 2.0 isn't coming! I just used an old buggy version from Lord of the Craft. This has been the longest April Fools joke I've ever pulled. Sorry if this was an inconvenience to anyone looking forward to RPE 2.0! :P
March 30, 2013
I've been hard at work. New features are in this 3rd dev build of RPE2.0. Check them out if you want! We're getting closer and closer to a finished plugin one step at a time. Please keep up those suggestions guys, I could really use more. I hope everyone's having a great Easter Weekend! :)
March 27, 2013
I've created an IRC channel for Roleplay Essentials: #rpessentials on irc.esper.net
The first development build has been uploaded! Please remember that these are all incomplete builds, and should only be used on Development servers. All feedback and bug reports are welcome!
March 25, 2013
I've added some new features, as well as an idea as to when these features will be done. The percetage is based off of how much configuration support I've added, as well as bug testing.
March 19, 2013
It's been awhile since I made my announcement about RP Essentials 2.0. I've been busy, and sometimes It's difficult to know if developing plugins will be worth my time or not. But I've finally gotten around to it, and I have a list of features that are currently in progress. Every feature is optional, and fully configurable. There are more to come as well. I can't wait to share with you this new plugin, and I hope it's what you're all looking for!
Roleplay Essentials 2.0 Progress
The configuration for RPE2 should be rather simple. Player data is saved under one file to allow for simple search and modification if needed. Every 'Feature' has it's own configuration file, and a Main configuration called "Features". Think of these features as miniature plugins. Keep in mind, these are always subject to additional features and configuration.
-Progress of Features-
- Death Storage Control
- 100% Complete
- Chairs
- 100% Complete
- Drop Planting
- 100% Complete
- Roll System
- 100% Complete
- Emotes
- 100% Complete
- Character Cards
- 100% Complete
- Custom Item Names
- 90% Complete
- Buddylist System
- 90% Complete
- Nametags (TagAPI)
- 80% Complete
- Weather and Biome Effects
- 75% Complete
- Chat System
- 25% Complete
- Consumables
- 0% Complete
-Undecided Features-
- Sound Events upon Player/World actions
- Soulstones and Warps
I'll do my best to reimplement all features from the current version of RP Essentials.
Usage
Some Plugins may not seem so straight forward. So for the ones that don't, I will give a brief rundown of how they work here:
Emotes
Emotes are pretty darn simple. When you open your chatbox, type * (or whatever text you have in your configuration) then type what you want to say. Example:
"*eats a muffin." ...Will result in... "Alec eats a muffin."
Try it with quotation marks and speech. This will color code anything within quotations to white.
Character Cards
Character cards display information about the player you're interacting with. Information they can either set, or admins can set. Thankfully, as a server admin, you have full control over what data values you put in, and the structure of the Cards. Here's how it works.
In the configuration, the Card Data List is the format in which the data appears in the game. For example: - Name - Age - Allegiance - Mood You'll need to also copy one of the data values and set it's name to the exact one the data has in the Data List. The values in this section can be configured to set restrictions. You can also setup a whitelist, following the same YML format as the one shown in Races.
Chairs
To create a chair, place down one of the materials in the configuration. You can add what kind of stairs are supported, or even add any block of your choice if you know it's Material Name. After that, place a painting or an item frame on the back of the stairs. You have then created a chair! Right click on the chair to sit down, and click on it again to stand up.
Drop Planting
The concept here is for natural items to not simply vanish when they despawn. Here, you can choose what block is placed when an item despawns, or when you choose it's time limit is. Best part is, you have full control over what blocks spawn from what item is dropped. The very basic example here is dropping a sappling, and watching it grow itself. Some other materials, such as seeds, require soil to plant themselves.
Biome Effects
This is one of the more larger scale features. It can affect the entire server in many ways depending on how you configure it. Generally, it freezes players in the cold biomes, and exhausts them in the hot biomes. The configuration is rather large. So be very careful when adding a new biome. There are many variables that affect how a player is treated in these biomes, such as sunlight, blocklight, their clothing, water, and weather status. Play around with it!
Death Storage
When a player dies, you have the option to choose where their stuff goes. You have three different modes: ENDER, CHEST, and SAVE. You can use those exact values in the configuration for Death Storage.
ENDER - Sends some of their dropped stuff to their ender chest. CHEST - Creates a chest where they die. SAVE - Saves their stuff in memory. It will be given back to them when they respawn.
RP Essentials 1.0
If you want information on the older, RP Essentials 1.0, check at this page.
Other Notes
Join the IRC Channel! #rpessentials on irc.esper.net
Please keep submitting bugs and providing suggestions. We can make this the best Roleplaying Utility out there!
Any donations to help further this project will be gladly accepted, and your contribution will be made known! It honestly keeps me doing this work. :) I want to thank one of my home servers, Lord of the Craft, for the experience of creating RP Essentials LotC Edition. It has definitely caused me to push harder in my development for Version 2.0.
Thanks to both Gustebeast and PieReviver for your awesome donations and suggestions!
@gustebeast
I'm not too sure I understand what point you're trying to make with the global chat. What's wrong with having a chat that players can turn on or off?
Currently, when a player types /toggleooc, it will toggle whether or not they hear the incoming OOC messages. I would join the OOC chat if I started to feel lonely, or leave the OOC chat if I encountered a lot of roleplay. OOC is currently the only global chat, and is really used for lollygagging. So it's all based on the preference of the player. But a lot of this shouldn't matter too much if I'll be reworking the Chat System anyway.
I'm almost positive I can hook into essentials. I should definitely do that anyway, hence the name. :P I'll look into that soon!
Its convenient to toggle global chat sure, but when you get 20+ people online it can start getting hectic. If global chat is toggleable, many players will just stay in global at all times even when talking to a single person because its easier. But since having it toggleable would be nice for smaller servers, I think the best idea is to have a command /gtoggle or something of that nature, then I could just remove it from the plugin.yml. Also, what do you mean by "leaving ooc chats open". Do you mean everyone hears it? Well personally I think that time goes by when no1 is really roleplaying. Everyone is mining and doing their own stuff and it helps to pass the time when everyone can just chat about random stuff. Also, if ooc isn't global, unless the server is huge, many players can get lonely never hearing anyone talking.
Finally, is the essentials integration a possibility? You didnt mention it in your reply.
@gustebeast
I agree with a lot of this! I probably didn't make some of these things clear in the description, and I definitely need to work on making more room for configuration. I believe that global chats should have a join/leave option, which is why I made it toggleable for players. Some people, including myself, dislike leaving OOC chats open. Even when people use the double brackets, it can often pull you out of the Roleplay mood. Especially when something dramatic or exciting is happening.
One thing I could consider just doing is making configurable channels, much like other chat systems out there. The only reason I wanted to stay away from this is because I don't find it very necessary on a Roleplay Server to have channels, since things are supposed to be relatively realistic.
Also, with that cell phone idea, I would love to implement something like that. RP Essentials isn't just a medieval RP plugin. I'm hoping other Roleplay servers will find ways to use it, especially a sci-fi roleplay server I'm currently looking at.
All of this stuff suggested ways I could improve the plugin, and gave me some ideas! I'll be giving the chat system a lot of work. Thank you so much for your ideas, I'll definitely be reading over this often while coding. :)
This plugin is great, except for the chat formatting. I think with these changes it could become considerably better. Most people use essentialschat so thats what I will be using for my examples. (Preferably, this plugin would work well with EssentialsChat)
1. Global Chat
All global chat should be in OCC because players cant speak loud enough to talk to everyone. Players could talk globally using /g [message]. When using /g, chat would be regular essentials chat format with configurable prefix before it. e.g. [G] (essentials format). The plugin wouldnt change the players display name in global chat. So daveyboy234 would show up as [G] daveyboy234: <msg> even when he set his name to Dave for the RPG. Global chat should have a configurable cooldown, and shouldnt be toggleable. This prevents players from always using it.
2. Local Chat
When a player talks normally with no prefix, it would default to local. Local chat would have a customizable distance and would be formatted very differently. The player name would be taken from the players RPG name, so daveyboy234 would show up as Dave. There would be a configurable chat format in the config like, format: '{name}: &f{msg}'. (notice the configurable colors). Wispering would be toggleable with /w and would have its own customizable format. Shouting would be done differently, you can shout by putting a ! at the end of your sentance. This will extend your chat a configurable amount of blocks and will take away a configurable amount of hunger. The hunger prevents players from always using shout and never talking normally. Personally I would want the shout format the same as the local format, but if you want to make it configurable as well thats good too.
3. OOC local chat
Its nice to be able to talk to players near you, but not connected to the role-play. Whether its clearing up something or just asking an off topic question, it can be useful. Local ooc chat would be toggleable with /ooc. The format would then change to something similar to Global chat except with a chat radius. OOC local would have its own customizable prefix. e.g. [OOC] (essentials format), or [L] (essentials format).
4. Cell Phones - This is from a abandoned plugin called "Realistic Chat"
Sure it doesnt match up with the medieval roleplay, but neither does the /msg command. This is more realistic and more fun than that. A cell phone is a minecraft clock that allows you to talk to another player at any distance. You hold the clock and then type the name of a player. If the player is online, it calls the player (assuming they have a clock in their inventory aswell). The player you are calling hears noteblocks play in a melodic ring sound and can answer the call by selecting the clock. Once both players have selected the clock they can talk normally and hear eachother. No one else can hear them unless they are within the local chat limit. So, for example, if Joe and Bob are having a conversation, Sue cant hear them unless she is within XX blocks of either Joe or Bob. You can hang up the call at any time by switching to a different item. Another more optional feature would be number blocking. When you add a player to your blacklist, they cant call you anymore. This would prevent people from spamming eachother calls, which could get quite annoying.
I think these changes would make the roleplay experience better, but if they would be too hard to implement, or if you dont think they match this plugin, I understand.
Is the girl with the Tits/boobs to draw attention? Because it got Mine :P
@Xanatos11
Let me see what's wrong. As long as you set the "chat" option in the configuration to false, it shouldn't conflict. But I'll double check that. Let me know if that fixes the issue. :)
I like it but the chat functions conflict with my existing chat plugins. Is there any way you can put up a version of the plugin without the chat functions? Otherwise, great plugin.
Will you ever implement "Tab Menu" support for names? Is that already on the To-Do list?
@Alectriciti
No problem! I do really love how this plugin is put together. It is very user friendly. I have been running servers since alpha and I have gotten some plugins that I have had to fight to make them work, but happily your plugin was one of those grab and go plugins. The config has some nice things you can edit to. It has all the necessary things that I might want to edit in the future. One suggestion I have that isn't to big but is kind of for convenience is pulling all the info for the char card into one. So instead of /setname /setgender and all that you have a command like /setchar (name) (gender) (age) (race) (info). Then they could use the add info command to expand there info if they wanted to. Maybe once they execute that command a little thing pops up saying "If you want to expand your info use the /addinfo command." It is just a suggestion that might make things more convenient not a really big deal. By the way where is the donate button? I might want to donate in the future to keep such a great plugin up!
EDIT: No longer getting those errors in the new version! Thanks so much!
Edit2: I am seeming to be having a problem with OOC chat it is no longer showing ooc before the person talking and it no longer defaults your username. I don't think that chat function is working at all. I tried switching to local and everyone could still hear me and there was no conformation that I had switched channels at all. I don't know if this is my side or yours. Hope you can help me fix it tho.
If you every need a beta tester I would be more than happy to do it due to the fact that it will take me so long to get my rp server out. This is because of the sure size of the build I am doing. If you want to talk on Skype or other means just pm me your info and I would be more than happy to talk to you about whatever. Need it be suggestions or just someone to hang out with on Skype.
@PieReviver
Hey there! I'm so glad to hear that! I found these bugs, and I'll fix them up right away. Thanks for your feedback and those bug reports, and really, thanks for your words. They keep me around to update my plugins more often. :)
I absolutely love this plugin. It is really helping my server as I set it up. This is a one of a kind plugin that really knows what it is doing. Other plugins do not have the race aspect just guilds or factions but this one having it really helps me from having to use multiple plugins to get my desired effect. The only problem I am having is this error popping up every time someone logs out of the server.
22:18:33 [SEVERE] Could not pass event PlayerQuitEvent to RP Essentials
org.bukkit.event.EventException
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:304)
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:477)
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:462)
at net.minecraft.server.ServerConfigurationManager.disconnect(ServerConfigurationManager.java:181)
at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:688)
at net.minecraft.server.NetworkManager.b(NetworkManager.java:251)
at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:102)
at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:82)
at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:559)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:451)
at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)
Caused by: java.lang.NullPointerException
at com.github.alectriciti.RoleplayListener.onLogout(RoleplayListener.java:83)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302)
... 11 more
I would really appreciate if you could help me out with this plugin. Other than this this plugin is the best I have used so far! I am surprised it isn't more popular!
EDIT: I am also getting this error
22:31:07 [WARNING] Task of 'RP Essentials' generated an exception
java.lang.NullPointerException
at com.github.alectriciti.Afk.addTick(Afk.java:117)
at com.github.alectriciti.Afk.access$0(Afk.java:116)
at com.github.alectriciti.Afk$1.run(Afk.java:49)
at org.bukkit.craftbukkit.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:126)
at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:525)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:451)
at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)
I think it is essentials conflicting on this one. I will look into it and see if I can fix it.
@Alectriciti
Finally someone who understands what rolepplaying is...
@Iaintee
Heroes and mcMMO are RPG plugins, not RP plugins. There's a big difference.
RPGs focus more on skills and mindless grinding, where as genuine RP focuses on storytelling, living the life of your character, rather than trying to be the best.
@rajinhear
Heroes.... mcMMO...?
This looks marvelous, I will see if it works, and if not, will wait patiently for it to be updated.
I just want the character card feature, I can do this right?
Great plugin, thanks!
@rajinhear
Hey there. There's a massive update on the way. I still need to heavily modify the configuration for it which may take up most of the time. But just letting you know, I'm working hard on it! :)
Can you please add an option to disable drinks. I would like at least potions to work, but keep milk as ale.
Please update it :) Its the only real RP plugin...
/setgender