[FUN] Citizens v2.0.11 - Human NPCs for Bukkit [1.7.2]

Discussion in 'Archived: Plugin Releases' started by Citizens, Mar 5, 2011.

  1. Offline

    Citizens

    Citizens - Human NPCs for Bukkit
    Version: 2.0.11
    Authors: @fullwall and @aPunch
    Source: Citizens on GitHub

    Citizens is now on BukkitDev

    This thread will no longer be updated. We encourage you to use our page on BukkitDev. You can find information, links to our wiki and website, and the download page there.

    Showing Your Support

    We work hard to maintain Citizens. We've been working on Citizens2 around the clock on new and exciting features. A little motivation never hurts, so feel free to donate to us - fullwall and aPunch.

    If you can't donate, we appreciate a "hello" every now and then. Stop by the IRC channel #citizens on irc.esper.net to discuss Citizens and give thanks!
     
  2. Offline

    Beatkidz

    Can you change the model? like Creeper, Skeleton, Slime or any other?
    That would be GREAT.
    getting my next quest from a creeper
     
  3. Offline

    riuthamus

    So, can we get them to where they can buy/sell items next? That is all I need!! god i cant wait!! Can you also look into making the NPC face the people around him....
     
  4. Offline

    Wulfspider

    It actually uses the skin of whatever username you pick. So if you name it Notch, it will call that skin from wherever your skins are hosted at (official skins are hosted at s3.amazonaws.com/MincraftSkins, which is where skins are uploaded to from Minecraft.net accounts who bought the game). Of course there are other methods and locations, but yeeaa... top secret! :p

    Also, I am noticing an error from mcMMO due to the attempt to attack the NPC from using left-click. Someone else mentioned that it might be good to use right-click instead.
    Code:
    04:16:45 [SEVERE] Could not pass event ENTITY_DAMAGED to mcMMO
    java.lang.NullPointerException
            at com.gmail.nossr50.mcCombat.playerVersusPlayerChecks(mcCombat.java:45)
    
            at com.gmail.nossr50.mcEntityListener.onEntityDamage(mcEntityListener.ja
    va:109)
            at org.bukkit.plugin.java.JavaPluginLoader$38.execute(JavaPluginLoader.j
    ava:319)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:225)
            at net.minecraft.server.EntityHuman.d(EntityHuman.java:441)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:722)
            at net.minecraft.server.Packet7UseEntity.a(SourceFile:33)
            at net.minecraft.server.NetworkManager.a(SourceFile:230)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:75)
            at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:357)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:272)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
    >
    annnnnd some features/ideas I'd also love to see:
    1. NPCs face users direction who interacted with them. (I did notice the head points in the direction that you face at time of placement at least)
    2. Renaming NPCs (useful in case you eventually have some complex setup)
    3. Option to enable/disable customizable tag on server-side such as [NPC]
    4. Option to set colors for NPC text and overhead name server-side
    5. Customizable random messages when a user tries to attack them (ex. Watch yourself sir!, Careful where you point that thing!, Hey now, that hurt!)
    6. Tying into uQuest for questing
    7. Alternative to NPCTrader for creating virtual chests or shops
    8. Ability to create questions/answers that the NPC is able to ask and respond to based on directed user input to that NPC in chat or command.
    9. Triggering certain NPC text as player passes within a radius
    --- merged: Mar 6, 2011 9:54 AM ---
    I noticed that the default text has multiple responses, but when I try to make my own NPC have multiple responses separated using ; they all display at once unlike the default. Is only the default string parsed for multiple responses?
    --- merged: Mar 6, 2011 9:58 AM ---
    Another thing I noticed is that after an NPC is removed, the associated lines in the Citizens.texts and Citizens.locations do not get completely removed (Citizens.locations leaves the NPC name in list= and Citizens.texts leaves a line such as Sara= with no text after it). Wouldn't it be better to remove those being as they are unneeded?
    --- merged: Mar 6, 2011 10:00 AM ---
    I also noticed as others did... that NPCs get removed from the world sometimes once you logout or close the client, and log back in. I haven't tested to see if this shows for everyone or just you.
    --- merged: Mar 6, 2011 10:05 AM ---
    Also receive this error when I attempt to delete an NPC that was already removed:
    Code:
    05:01:37 [SEVERE] java.lang.NullPointerException
    05:01:37 [SEVERE]       at com.fullwall.resources.redecouverte.NPClib.NPCSpawner
    .RemoveBasicHumanNpc(NPCSpawner.java:101)
    05:01:37 [SEVERE]       at com.fullwall.Citizens.NPCHandler.removeNPC(NPCHandler
    .java:57)
    05:01:37 [SEVERE]       at com.fullwall.Citizens.Citizens.removeNPC(Citizens.jav
    a:108)
    05:01:37 [SEVERE]       at com.fullwall.Citizens.Citizens.onCommand(Citizens.jav
    a:98)
    05:01:37 [SEVERE]       at org.bukkit.command.PluginCommand.execute(PluginComman
    d.java:31)
    05:01:37 [SEVERE]       at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCo
    mmandMap.java:80)
    05:01:37 [SEVERE]       at org.bukkit.craftbukkit.CraftServer.dispatchCommand(Cr
    aftServer.java:183)
    05:01:37 [SEVERE]       at net.minecraft.server.NetServerHandler.c(NetServerHand
    ler.java:619)
    05:01:37 [SEVERE]       at net.minecraft.server.NetServerHandler.chat(NetServerH
    andler.java:582)
    05:01:37 [SEVERE]       at net.minecraft.server.NetServerHandler.a(NetServerHand
    ler.java:576)
    05:01:37 [SEVERE]       at net.minecraft.server.Packet3Chat.a(SourceFile:24)
    05:01:37 [SEVERE]       at net.minecraft.server.NetworkManager.a(SourceFile:230)
    
    05:01:37 [SEVERE]       at net.minecraft.server.NetServerHandler.a(NetServerHand
    ler.java:75)
    05:01:37 [SEVERE]       at net.minecraft.server.NetworkListenThread.a(SourceFile
    :100)
    05:01:37 [SEVERE]       at net.minecraft.server.MinecraftServer.h(MinecraftServe
    r.java:357)
    05:01:37 [SEVERE]       at net.minecraft.server.MinecraftServer.run(MinecraftSer
    ver.java:272)
    05:01:37 [SEVERE]       at net.minecraft.server.ThreadServerApplication.run(Sour
    ceFile:366)
    >
    It also shows, for example, Sara disappeared... in the chat when /npc remove is called to delete a character that was already supposed to be deleted... perhaps adding a check if they exist or not and perhaps this is related to my previous mention of remnants of NPCs left in the files?
     
    Dicilion likes this.
  5. Offline

    DurtyFree

    It would be so awesome when you could all features from Craftizens :O
     
  6. Offline

    NEO

    Doesn't that mean the ability to have custom skins is possible? For example the plugin would pull the skins associated with the set username from your own hosting, you could then have any name and any skin.
     
  7. Offline

    Wulfspider

    No, the user's client is pulling the skin from Minecraft.net's hosting at Amazon for the username you picked if there is a skin located there from that paid username. The skin URL is hard-coded into the game client, so each user would have to edit their hosts file or change the URL in Minecraft's code for it to look for skins in a new location/hosting that would be controlled by the server/user. Or you could purchase the game for each NPC name! haha!
     
  8. Offline

    kullon

    Like it but add features like

    When you are walking in front of the NPC the npc tels the text
    And they can folow a specific user (lifeguard)
    Kil mob function.

    Srry for mye english i am norwegian :)
     
  9. Offline

    NEO

    I see, that would cost quite a bit of money buying each username :p Hopefully this will be possible when notch release a proper modding api.
     
  10. Offline

    contex

    So it wouldn't be possible to for example add a new setting in the properties called "skin" and then give a custom link to the skin?
     
  11. Offline

    riuthamus

    Why does everybody ask for skins when an NPC plugin comes out. Listen people, RIGHT NOW, IT IS NOT POSSIBLE! AT ALL! once some changes are made, or the API comes out, you can make skins.

    The skins are associated with the persons profile, there is no way to separate them at this point. AKA, if you want skins, find somebody who is using the skin you want and type their name for the NPC, just realize that their skin will change when the owner of the account changes their skin!

    AGAIN, NO CUSTOM SKINS FOR NPCS! jesus...
     
  12. I formally retract my request for multiple of one named NPC being saved.

    I'm just gonna roll my own using the NPC lib. :D
     
  13. Offline

    Uniltiranyu

    need to be able to load a custom skin, keep a skin in the citizens folder and load it
    Code:
    /npc skin (name) (skin file name)
     
  14. Offline

    CrAzYfReAk101

    You need to fix the NPC duplicating text. Also, make it so when you right click the NPCs they say their text, instead of using a book... Which is un-reliable for Roleplay Servers... Skin Editing would help also.
     
  15. Offline

    Futil

    This is impossible. Skins are client-side.
     
  16. Offline

    Machete.Panda

    It keeps telling me I dont have permission even though I'm OP and registered as as admin in Permissions.
     
  17. Offline

    lokiman72

    please help me, allot of people seem to be having my problem
     
  18. Offline

    philaiasi

    Hey!
    Nice Plugin....
    Fullwall did you built in an easteregg?
    Try to:
    1. Create an NPC with Name "Weir"
    2. See the NPC with weired skin... Its like birch texture with leaves as a head...

    Here a screenshot:
    [​IMG]

    Thats really crazy!
     
  19. Offline

    Pawned

    The NPC's grab the skin of the Minecraft account. So someone has the Minecraft account with the name "Weir" and applied that skin, so your NPC gets that skin.
     
  20. You misunderstood completely.

    I am already able to place multiple NPCs with the same name using Citizens (Like, I could place 3 Notches). The problem is that the file that contains the saved positions for when the server shuts down only saves one location instead of all three.

    Like I said, I'm just going to roll my own using the NPC library.
     
  21. Offline

    Futil

    Sorry, quoted the wrong person. meant to quote
    Sorry.
     
    Joker1507 likes this.
  22. All's cool then.
     
  23. Offline

    Nafds

    This plugin has lots of potential.

    Quest giving/trading/path finding/ and so on!

    Love your plugins; can't wait to see what you do with this one!
     
  24. Offline

    Pawned

    Could you perhaps change the commands to something like /cnpc? I'm going to be using NPCTrader as soon as it's updated and this will conflict with it's commands :p
     
  25. Offline

    Kouta Ayanami

    Lol, I named it Notch and it looks like him! XD
     
  26. Offline

    Uniltiranyu

    Thats why you keep the skins in the server file
     
  27. Offline

    fullwall

    Working on an update to fix bugs, use right click, colours, changing names, turn to face, multiple texts. Then I'll do waypoints, added features. Then I'll most likely move onto traders.
    --- merged: Mar 7, 2011 7:09 AM ---
    You can't specify custom skins without altering some basic minecraft code, something which I do not want to do.
     
  28. Offline

    Uniltiranyu

    HEY! YOU SO TOTALY DID IT!
     
  29. Offline

    Futil

    -FACEPALM-

    You see... The only way to have skins is to have an NPC with the name of someone that has a skin. The client ONLY gets the name of the NPC (which it registers as a player) and then gets the skin off of minecraft.net. If minecraft.net does not have the skin for the playername, then it gives it the default skin. What you can do is have the server give the NPC two names; one for the skin that it will load off of minecraft.net(etc Notch) and another for the name that appears above the NPCs head (maybe Fish or something. I don't know.)
     
  30. Offline

    acegiak

    Admins, put a mute on forum members that are repeatedly stupid?
     
    Sorken, infact, Volander and 2 others like this.
  31. Offline

    Zenergyx3

    Right click with any tool to make them talk, please?
    And please add formatting when they talk so instead of NPC Fred going like;
    Hello.
    It would be like;
    Fred: Hello.

    And, is it possible to implement head/body rotation and player tracking? So when a player goes in view range of an NPC the NPC tracks the players movements so that the NPC's head and body rotates. That would give the NPCs more.. life.
     

Share This Page