Languages

Discussion in 'Plugin Requests' started by Xp10d3, Jul 17, 2020.

  1. Offline

    Xp10d3

    ~Plugin Category:~ Misc/RPG
    ~Version:~ 1.8.8
    ~What I want:~
    This is a *somewhat* easy plugin. I need a Language plugin. Basically, this is permission based and also VERY chat based. If an user has a certain permission (like language.gardese), they can only view the language Gardese unless they have another permission. So if an user has the permission ~language.chae~, only other people who have the permission ~language.chae~ can understand them, while the rest of the people see obfuscated characters in chat. The same goes for signs and books. If at the beginning of a sign or book there is the characters l=kalc, only those with the permission language.kalc can understand the sign or book. Everyone else sees obfuscated text. I'd also like a feature that adds the ability to learn languages. This is quite simple. There are 4 stages; 25%, 50%, 75%, and finally 100%. (0% is no permission, so don't worry about that). If an user has the permission language.gardese.25, they will understand 25% of whatever Gardese language is sent in chat. If they have the permission language.gardese.50, they understand 50% of Gardese (and 50% of the obfuscated text is uncovered in English). Same goes for 75%, and finally 100% (which has permission, so don't worry about that). That's... pretty much it. I can probably handle NPC's and only allow those with the language permission to talk to the NPC.
    ~Commands:~
    /language create <language>: Creates a language. Now, Admin's can add the permission to another user. So for example if an Admin does /language create Iocl, then only users with the permission language.iocl can understand one another. So another user with the permission language.iocl can understand the other user with the permission language.iocl.
    ~Permissions:~
    language.*: Can see all languages.
    langauge.<language>: Can see all of a certain language.
    language.<language>.<number>: Can understand a certain percentage of a langauge.
    ~When I want this:~ A.S.A.P. of course :p
     
  2. Offline

    timtower Moderator Moderator

    @Xp10d3 And how is the plugin supposed to know which language is being used?
     
  3. Offline

    Xp10d3

    Based on what permission a user has (let's say language.abcd) and they talk in chat, only other users with the permission language.abcd can understand what they typed. Otherwise, they see obfuscated text.
     
  4. Offline

    KarimAKL

    @Xp10d3 What if they have the permission "language.*" or multiple "language.<language>" permissions?
     
  5. Offline

    Xp10d3

    If it's language.* they can see all text. Nothing will be obfuscated. If it's language.<language> it's exactly what I said in my previous post. If it's language.<language>.50 they can only see 50% of people who type with language.<language>.
     
  6. Offline

    KarimAKL

    @Xp10d3 I mean, how would the plugin know which language the user is using in that case?
     
  7. Offline

    Xp10d3

    If they have the permission language.<language>. So pseudo code could be:
    Code:
    String language = config.getString(player.getUniqueId().toString() + "language." + language_var);
    if (player.hasPermission(language)) {
     //obfuscated chat or something
    }
    
    Sorry, I'd also like to add a feature where they can switch languages. So you could probably have a command that is /switchlang <langauge>. Then you can check what the user is using. Then if they have multiple permissions that allow them to talk in different languages, then it might be easier to handle talking in chat.
     
  8. Offline

    caderapee

    @Xp10d3 for the chat it's possible, fo the book i dun really know, but its not possible for sign. You have to modify client side. Because if 2 players watching the same sign with different language, you can't manage it.
     
  9. Offline

    Xp10d3

    Alright, that's totally fine. Thanks for letting me know. Just the chat then :D
     
  10. Offline

    Xp10d3

  11. Offline

    Xp10d3

  12. Offline

    Xp10d3

  13. Offline

    Xp10d3

  14. Offline

    Xp10d3

  15. Offline

    xImAnton_

    I'm trying to do this but don't expect too much ;)
     
    Xp10d3 likes this.
  16. Offline

    Xp10d3

    Alright, thanks so much! <3
     
  17. Offline

    RageRoringTiger

    @xImAnton_ @Xp10d3 I'm willing to do it/help if you want/can't figure something out
     
    Xp10d3 likes this.
  18. Offline

    Xp10d3

    Thanks RageRoringTiger! :D
     
  19. Offline

    Xp10d3

    @xImAnton_ hey sorry to bother any updates so far?
     
  20. Offline

    xImAnton_

    I started coding yesterday but i cant use my pc till monday. you can expect it in probably a week
     
    Xp10d3 likes this.
  21. Offline

    Xp10d3

    Alright sounds good! Thanks for letting me know :)
     
  22. Offline

    xImAnton_

    Xp10d3 likes this.
  23. Offline

    Xp10d3

    Thank you so much! I'll be sure to test it and let you know about any changes/bugs. If there aren't any I'll let you know and mark this as filled :D
     
  24. Offline

    Xp10d3

    Sorry been quite busy. I don't have a public server up at the moment (the SSD is getting shipped so the servers are down for a week or so). Will get back to you when I get the chance.
     

Share This Page