[WIP] TheSocialNetwork - Better Connected

Discussion in 'WIP and Development Status' started by thehutch, Oct 26, 2011.

Thread Status:
Not open for further replies.
  1. Offline


    ~ Better Connected ~
    Team: thehutch, butkicker12, Darkman2412, ThatBox, tips48, DavidCole
    TheSocialNetwork allows for players to stay connected to their friends by having friend lists. For a small taste of what this plugin will achieve:
    Allow players to add and remove friends, message them one-by-one or all together with one single broadcast to your friends only, sendmessages to your friends even whilst they are offline and that friend will receive that message when they next log back in via their mailbox.

    Key: Green = Done, Orange = Started, Red = No where near done.
    Personal Friends list:
    • Add friends
    • Remove friends
    • Deny and accept friend requests
    • Ignore/Block messages/friend requests from people
    • Send Message to all friends at once
    • Personal messages to your friends
    • Friends receive notification of your levelup
    • Customise if you want to receive your friends levelup notifications
    • Receive all messages to you after you have logged back on in your mailbox (Persistant mail)
    • View you mailbox size
    • Open a certain message at once
    • Delete one message at a time
    • Clear all messages in your mailbox
    • Notification on login of how many messages you have in your mailbox
    • Add a GUI (A Notification wall (Facebook wall :p))
    • Simpler add and remove functions for friends
    • Easier reading of messages
    • Block people easier
    • Personal title colours for your friends only (Only you can see them)
    • An achievement system
    Other Features:
    • MySQL database
    • FlatFile database
    • Heroes, Skillz, mcMMO, LevelCraft support
    • Permissions (SuperPerms Only)
    If you wish to leave a suggestion which be suitable for this plugin to have, or to extend current feature then please feel free to post a comment following this guide:
    1. Category of feature : Friends, Mailbox, Spout, Other (if other please leave in detail)
    2. In detail what you would like this feature to be and do.
    3. Any commands or permissions required for this (Makes our lives simpler and all permissions must follow this "thesocialnetwork.<your permission name>"
    4. Anything else
  2. Offline


    <3 Oh yes
  3. Offline


    Adding Skillz support aswell thanks to Lolwemn for fixing his API (soon)
  4. Offline


    Planning on using the Spout achievement popup things for notifications?
  5. Offline


    Oh yeah forgot about that, we will probably add achievements for things like: your first friend, getting x amout of friends, leave some suggestions if you want on some achievements :)
  6. Offline


    how about being able to connect to a webiste. for example
    social.minecraftserver.com ( as a example) or minecraftserver.com/social
    and you can have a mini faceboook ?
  7. Offline


    well I have no idea on how to do that but that would be awesome but of course it would cost money and such also that wasnt the intention of the plugin :(.
    Also i'd like to ask if anyone here has any MySQL skills or any other faster database (H2, SQLite etc) because the flatfile system we have isnt the best and so a faster database would definately improve performance
  8. I'm going to point out right now that based on me trying to fix the repo: 3% of the code works. The other 97% is pretty bad... I mean:
    public void sendMessage(Player p) {
    p = getServer().getPlayer(p.toString);

    Also, you spelled development wrong on the github account. I started a new one and posted it in the PM's...I would have done a pull request but I changed so much github thought it was a new repo
  9. Offline


    Well before you criticise me first of all I didnt create the repo ok and second of all there is not such code in this project where did you get that from?
  10. Offline


    1. public void sendMessageToAllFriends(Player p, String msg) {
    3. p = this.getServer().getPlayer(p.toString());
    4. List<String> f = getConfig().getList("Friends." + p.toString());
    6. for (String player : f) {
    7. Player pl = utils.stringToPlayer(player);
    9. if (pl.isOnline()) {
    10. pl.sendMessage(msg);
    11. } else {
    12. p.sendMessage(ChatColor.GREEN + "The following players are offline and cannot recieve your message");
    16. for (int x=0 ; x<= f.size() ; x++) {
    17. p.sendMessage(pl.toString() + ChatColor.GREEN + ", ");
    18. }
    19. }
    20. }
    21. }

    taken from TheSocialNetwork.java

    btw the stopped after the first instance so this kind of code DOES exist in the repo
  11. Offline


    Ah well id be happy to tell you that, that code is quite old :p today I have reccently corrected all that instead :p so yeah that problem is gone :)
  12. Offline


    just saying according to what we can see, there is code like that in there
  13. Offline


    Well can I ask is this better?
            if (cmd.getName().equalsIgnoreCase("m2af") || cmd.getName().equalsIgnoreCase("messagetoallfriends")) {
                YamlConfiguration file = new YamlConfiguration();
                utils.loadFile(file, "mailbox.yml");
                List<String> friends = utils.getFriendsList(cs.getName());
                String msg = "";
                for (String p : friends) {
                    for (int x=1 ; x <= args.length ; x++) {
                        msg += args[x];
                    if (!utils.stringToPlayer(p).isOnline()) {
                        utils.saveFile(file, "mailbox.yml");
  14. Use StringBuilder. Anyway, I'm not trying to criticize you, I'm trying to help you. When I re-did the repo (notice how it only has half the files) there were so many errors that after a hour, it still didn't all work.

    I point you too https://github.com/xDevelopment/TheSocialNetwork

    In regards to your github comment about me "complaining", I'm not trying to complain. I'm trying to make the code work. Give me one class file where all the methods work, and is coded cleanly. In the main class onEnable and onDisable work (mostly), but besides that, maybe ONE of the command classes work's completely. I point to methods like this:
    2. [SIZE=11px][FONT=helvetica][COLOR=rgb(0, 0, 0)][SIZE=12px][FONT=Bitstream Vera Sans Mono] [B]public[/B] [B][COLOR=rgb(68, 85, 136)]boolean[/COLOR][/B] [B][COLOR=rgb(153, 0, 0)]setupHeroes[/COLOR][/B][B]()[/B] [B]{[/B][/FONT][/SIZE][/COLOR][/FONT][/SIZE]
    4. [COLOR=rgb(0, 0, 0)][SIZE=12px][FONT=Bitstream Vera Sans Mono] Plugin p [B]=[/B] [B]this[/B][B].[/B][COLOR=rgb(0, 128, 128)]getServer[/COLOR][B]().[/B][COLOR=rgb(0, 128, 128)]getPluginManager[/COLOR][B]().[/B][COLOR=rgb(0, 128, 128)]getPlugin[/COLOR][B]([/B][COLOR=rgb(221, 17, 68)]"Heroes"[/COLOR][B]);[/B][/FONT][/SIZE][/COLOR]
    6. [COLOR=rgb(0, 0, 0)][SIZE=12px][FONT=Bitstream Vera Sans Mono] [B]if[/B] [B]([/B]p [B]!=[/B] [B]null[/B][B])[/B] [B]{[/B][/FONT][/SIZE][/COLOR]
    7. [COLOR=rgb(0, 0, 0)][SIZE=12px][FONT=Bitstream Vera Sans Mono] heroes [B]=[/B] [B]([/B]Heroes[B])[/B]p[B];[/B][/FONT][/SIZE][/COLOR]
    8. [COLOR=rgb(0, 0, 0)][SIZE=12px][FONT=Bitstream Vera Sans Mono] System[B].[/B][COLOR=rgb(0, 128, 128)]out[/COLOR][B].[/B][COLOR=rgb(0, 128, 128)]println[/COLOR][B]([/B][COLOR=rgb(221, 17, 68)]"[TheSocialNetwork] Heroes has been detected!"[/COLOR][B]);[/B][/FONT][/SIZE][/COLOR]
    9. [COLOR=rgb(0, 0, 0)][SIZE=12px][FONT=Bitstream Vera Sans Mono] [I][COLOR=rgb(153, 153, 136)]// if plugin "Heroes" does exist then cast the heroes plugin over to heroes[/COLOR][/I][/FONT][/SIZE][/COLOR]
    10. [COLOR=rgb(0, 0, 0)][SIZE=12px][FONT=Bitstream Vera Sans Mono] [B]}[/B][/FONT][/SIZE][/COLOR]
    11. [COLOR=rgb(0, 0, 0)][SIZE=12px][FONT=Bitstream Vera Sans Mono] [B]return[/B] [B]false[/B][B];[/B][/FONT][/SIZE][/COLOR]
    12. [COLOR=rgb(0, 0, 0)][SIZE=12px][FONT=Bitstream Vera Sans Mono] [B]}[/B][/FONT][/SIZE][/COLOR]
    13. [COLOR=rgb(0, 0, 0)][SIZE=12px][FONT=Bitstream Vera Sans Mono][B][/B][/FONT][/SIZE][/COLOR]

    Always returns false. Pretty pointless to have a boolean, yes?
    1. [SIZE=11px][FONT=helvetica][COLOR=rgb(0, 0, 0)][SIZE=12px][FONT=Bitstream Vera Sans Mono]getCommand[B]([/B][COLOR=rgb(221, 17, 68)]"addfriend"[/COLOR][B]).[/B][COLOR=rgb(0, 128, 128)]setExecutor[/COLOR][B]([/B][B]new[/B] FriendManagerCommands[B]([/B][B]this[/B][B],[/B] [B]null[/B][B]));[/B][/FONT][/SIZE][/COLOR][/FONT][/SIZE]
    2. [COLOR=rgb(0, 0, 0)][SIZE=12px][FONT=Bitstream Vera Sans Mono] getCommand[B]([/B][COLOR=rgb(221, 17, 68)]"delfriend"[/COLOR][B]).[/B][COLOR=rgb(0, 128, 128)]setExecutor[/COLOR][B]([/B][B]new[/B] FriendManagerCommands[B]([/B][B]this[/B][B],[/B] [B]null[/B][B]));[/B][/FONT][/SIZE][/COLOR]
    3. [COLOR=rgb(0, 0, 0)][SIZE=12px][FONT=Bitstream Vera Sans Mono] getCommand[B]([/B][COLOR=rgb(221, 17, 68)]"mailbox"[/COLOR][B]).[/B][COLOR=rgb(0, 128, 128)]setExecutor[/COLOR][B]([/B][B]new[/B] MailBoxCommands[B]([/B][B]this[/B][B]));[/B][/FONT][/SIZE][/COLOR]
    4. [COLOR=rgb(0, 0, 0)][SIZE=12px][FONT=Bitstream Vera Sans Mono][B][/B][/FONT][/SIZE][/COLOR]

    Guess how many NPE's this creates? Alot. You can't pass a null class and expect the commands to work.

    Sorry if I sound rude, I just really like the idea and would like to see this project succeed... And it isn't now.

    EDIT: Sorry, Xenofourms fucked up my post and I'm too tired to fix it :p

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 20, 2016
  15. Offline


    It was my spelling error. You can rename groups.

    We could do that but it would most likely me social.xdevs.org or xdevs.org/social

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 20, 2016
  16. Offline


    Ok well fi you'd like to help then all means but try it in a less angry way please :) we are all here to have fun ok :D Also you posted the code on the setting up of heroes well I don't know why you said it won't work since I asked directly from one of the HeroCode team members (Sleaker I think) and he said to use that so tell him why it won't work when infact it does :p
    Also I havent even tested the commands yet but from what I know they should. Also the command executor id like to ask why they do? except if its for that null in them then I have just changed them

    @tips48 also if you want to aid us then sure by all means send me a pm and ill add you on skype and saros :) (If using eclipse ofc)

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 20, 2016
  17. I know the code works, but I'm saying its pointless to have it as a boolean because it always returns false. You need to add a return true

    I'm pretty sure i've already added you on Skype. I use Eclipse and IntellJ, depending on the day :)
  18. Offline


    Whats your skype name? Send me in pm if you want to keep it private
  19. Offline


    Nice. Just hope and prey they don't sue you for the plugin name :p
    jorisk322 and thehutch like this.
  20. Honestly, if they sue us for using a BUKKIT PLUGIN with the name of a movie, they have their heads WWWAAAYYY too far up their asses...

    Just Sayin...
    thehutch likes this.
  21. Offline


    I may help with this, I made SocialCrafting, a social plugin, but it doesn't have as many features as this, let me know, I may be able to help :)
  22. Offline


    Jenkins is up.

    Um. Pm me and thehutch.
  23. Offline


    Can you start it, you can't start convo's on mobile interface :/
  24. Offline



  25. Offline


  26. Offline


    Hey, can I be on the team? :p
  27. Offline


  28. Offline


    It's running on our dedicated server. (I think so?)

    We are already full, sorry. :/
  29. Offline


    @Darkman2412 Ahh right, so it's not webhosted as such? I have free hosting then thought about how i cannot run scripts, oh well :p
  30. Offline


    It's on a vps. I did not set it up @Daniel Heppner did.
Thread Status:
Not open for further replies.

Share This Page