Search Unity

  1. Unity 2018.3 is now released.
    Dismiss Notice
  2. The Unity Pro & Visual Studio Professional Bundle gives you the tools you need to develop faster & collaborate more efficiently. Learn more.
    Dismiss Notice
  3. Want more efficiency in your development work? Sign up to receive weekly tech and creative know-how from Unity experts.
    Dismiss Notice
  4. Nominations have been announced for this years Unity Awards. Celebrate the wonderful projects made by your peers this year and get voting! Vote here!
    Dismiss Notice
  5. Want to provide direct feedback to the Unity team? Join the Unity Advisory Panel.
    Dismiss Notice
  6. Improve your Unity skills with a certified instructor in a private, interactive classroom. Watch the overview now.
    Dismiss Notice

[Released] Llama Chat - The Social Platform for your Unity Game

Discussion in 'Assets and Asset Store' started by ChrisKurhan, Sep 5, 2018.

  1. ChrisKurhan

    ChrisKurhan

    Joined:
    Dec 28, 2015
    Posts:
    10

    Now available on the Unity Asset Store - Llama Chat - The Social Platform for your Unity Game.
    Documentation
    Chat System Comparison

    Asset Store Link

    Why another chat system? There are so many already
    There are many chat systems on the Unity Asset store today, however these all come with some strong limitations. My own included :). Most appear to rely on SyncList<struct>, or an external IRC type setup. For SyncList<struct> we have some limitations and baggage associated with it such as syncing all messages to all clients, having a complex/convoluted setup to support cross-scene messaging, difficult to set up direct/private messages, etc.. and IRC requires external libraries/applications running.

    What's different with Llama Chat?
    With Llama Chat I am utilizing UNET Network Messaging
    The benefits here are clear: Only interested clients will be notified of messages, saving on network bandwidth. Additional features such as direct messaging, world space chat bubbles, and private chat channels become much simpler.
    In addition to the technical benefits, it's more than just a chat system. It supports advanced features like friends list, private channels, guilds, block/ignore, chat commands, and more!

    Demos:



    Quickstart tutorial from an empty project:


    Current features in 1.0 (requires Unity 2017.1+:
    • 100% Unity/UNET - no external networking library
    • Tying users to an account
    • Server driven, dynamic channels.
    • Global chat channels
    • Multi-threaded message dispatching - free up the main Unity thread to do other important work
    • Chat retained on level loading
    • "Regional" Chat channels - only show some chat channel if players are within some zone
    • "Guild Chat" support
    • User channels persisted on Server
    • "Friends" List
      • Friend Online/Offline Status
      • Persists across sessions
    • Direct player messaging / whisper
    • World Space Chat bubbles - e.g. so you type in "Say" channel "hello!" and you get "hello!" above your head and others see it there too
    • Customizable Player Context Menu on right click (can be built in Inspector, but actions to be taken must be written in code by you)
      • Demo Includes:
      • Whisper
      • Add Friend
      • Mute/Ignore
    • Customizable Language Filter
    • Customizable chat format - modify the order/hide any
      • Timestamp
      • Channel
      • Sender Name
      • Message
    • Custom text color per channel
    • Word Filters
    • Commands
    • Dynamic joining/leaving channels
    • Many Custom Inspectors
    • Help/Documentation

    The goal is to have as little coding as required. For many use cases I think there will be almost none required. However the following are areas I think will require some:
    • Chat Actions that are not demoed. For example Context Menu items, it will be hard to do some action if it is not defined somehow.
    • Chat Commands. You will need to specify what you want to happen. For example, If you want /ping to return your ping to the server, you will need to write that code and expose some function so we can execute it from the ChatPanel.
    • Account setup - I have provided a demo that handles it, but different types of games have very different needs, so most projects that intend to use the social aspect will need to do some integration work. Also, security should be added :)
    Please let me know your thoughts, suggestions, and any questions you have. I'm really interested to hear your feedback. If you would like to contact me privately, please send an email to support@llama.software.

    Cheers,
    Chris
     
    Last edited: Nov 2, 2018