🛠ī¸Setup on a new project

Step 1: Prerequisite
  • Skip step 1, 2 if u want to use the plugin from engine content and Enable MIPChatSystem in Plugins setting

  1. Copy MIPChatSystem and paste it in new project Plugins folder

  2. Copy the settings and paste it in new project DefaultGame.ini

[/Script/MIPChatSystem.MIPChatSettings]
StyleConfigFilePath=/MIPChatSystem/DataAsset/DA_ChatTextBlockStyles.DA_ChatTextBlockStyles
DefaultChatItemWidgetClass=WidgetBlueprintGeneratedClass'/MIPChatSystem/Widgets/W_ChatItem.W_ChatItem_C'
DefaultChatChannelStylesMap=(((TagName="Chat.Channel.System"), BlueprintGeneratedClass'"/MIPChatSystem/Assets/Styles/BP_CCS_System.BP_CCS_System_C"'),((TagName="Chat.Channel.Server"), BlueprintGeneratedClass'"/MIPChatSystem/Assets/Styles/BP_CCS_Server.BP_CCS_Server_C"'),((TagName="Chat.Channel.General"), BlueprintGeneratedClass'"/MIPChatSystem/Assets/Styles/BP_CCS_General.BP_CCS_General_C"'),((TagName="Chat.Channel.Guild"), BlueprintGeneratedClass'"/MIPChatSystem/Assets/Styles/BP_CCS_Guild.BP_CCS_Guild_C"'),((TagName="Chat.Channel.Party"), BlueprintGeneratedClass'"/MIPChatSystem/Assets/Styles/BP_CCS_Party.BP_CCS_Party_C"'),((TagName="Chat.Channel.Whisper"), BlueprintGeneratedClass'"/MIPChatSystem/Assets/Styles/BP_CCS_Whisper.BP_CCS_Whisper_C"'),((TagName="Chat.Channel.World"), BlueprintGeneratedClass'"/MIPChatSystem/Assets/Styles/BP_CCS_World.BP_CCS_World_C"'))
DefaultChatTextBlockStyle=(Font=(FontObject=Font'"/Engine/EngineFonts/Roboto.Roboto"',FontMaterial=None,OutlineSettings=(OutlineSize=0,bSeparateFillAlpha=False,bApplyOutlineToDropShadows=False,OutlineMaterial=None,OutlineColor=(R=0.000000,G=0.000000,B=0.000000,A=1.000000)),TypefaceFontName="Regular",Size=12,LetterSpacing=0),ColorAndOpacity=(SpecifiedColor=(R=1.000000,G=0.000000,B=1.000000,A=1.000000),ColorUseRule=UseColor_Specified),ShadowOffset=(X=0.000000,Y=0.000000),ShadowColorAndOpacity=(R=0.000000,G=0.000000,B=0.000000,A=1.000000),SelectedBackgroundColor=(SpecifiedColor=(R=1.000000,G=0.000000,B=1.000000,A=1.000000),ColorUseRule=UseColor_Foreground),HighlightColor=(SpecifiedColor=(R=0.000000,G=0.000000,B=0.000000,A=1.000000),ColorUseRule=UseColor_Specified),HighlightShape=(ImageSize=(X=32.000000,Y=32.000000),Margin=(Left=0.000000,Top=0.000000,Right=0.000000,Bottom=0.000000),TintColor=(SpecifiedColor=(R=1.000000,G=1.000000,B=1.000000,A=1.000000),ColorUseRule=UseColor_Specified),OutlineSettings=(CornerRadii=(X=0.000000,Y=0.000000,Z=0.000000,W=1.000000),Color=(SpecifiedColor=(R=0.000000,G=0.000000,B=0.000000,A=0.000000),ColorUseRule=UseColor_Specified),Width=0.000000,RoundingType=HalfHeightRadius,bUseBrushTransparency=False),ResourceObject=None,ResourceName="",UVRegion=(Min=(X=0.000000,Y=0.000000),Max=(X=0.000000,Y=0.000000),bIsValid=0),DrawAs=Image,Tiling=NoTile,Mirroring=NoMirror,ImageType=NoImage,bIsDynamicallyLoaded=False),StrikeBrush=(ImageSize=(X=32.000000,Y=32.000000),Margin=(Left=0.000000,Top=0.000000,Right=0.000000,Bottom=0.000000),TintColor=(SpecifiedColor=(R=1.000000,G=1.000000,B=1.000000,A=1.000000),ColorUseRule=UseColor_Specified),OutlineSettings=(CornerRadii=(X=0.000000,Y=0.000000,Z=0.000000,W=1.000000),Color=(SpecifiedColor=(R=0.000000,G=0.000000,B=0.000000,A=0.000000),ColorUseRule=UseColor_Specified),Width=0.000000,RoundingType=HalfHeightRadius,bUseBrushTransparency=False),ResourceObject=None,ResourceName="",UVRegion=(Min=(X=0.000000,Y=0.000000),Max=(X=0.000000,Y=0.000000),bIsValid=0),DrawAs=Image,Tiling=NoTile,Mirroring=NoMirror,ImageType=NoImage,bIsDynamicallyLoaded=False),UnderlineBrush=(ImageSize=(X=32.000000,Y=32.000000),Margin=(Left=0.000000,Top=0.000000,Right=0.000000,Bottom=0.000000),TintColor=(SpecifiedColor=(R=1.000000,G=1.000000,B=1.000000,A=1.000000),ColorUseRule=UseColor_Specified),OutlineSettings=(CornerRadii=(X=0.000000,Y=0.000000,Z=0.000000,W=1.000000),Color=(SpecifiedColor=(R=0.000000,G=0.000000,B=0.000000,A=0.000000),ColorUseRule=UseColor_Specified),Width=0.000000,RoundingType=HalfHeightRadius,bUseBrushTransparency=False),ResourceObject=None,ResourceName="",UVRegion=(Min=(X=0.000000,Y=0.000000),Max=(X=0.000000,Y=0.000000),bIsValid=0),DrawAs=Image,Tiling=NoTile,Mirroring=NoMirror,ImageType=NoImage,bIsDynamicallyLoaded=False),TransformPolicy=None,OverflowPolicy=Clip)
DefaultChatTabsAndAllowedChannels=(("Chat1", (GameplayTags=((TagName="Chat.Channel.Server"),(TagName="Chat.Channel.General"),(TagName="Chat.Channel.Guild"),(TagName="Chat.Channel.Party"),(TagName="Chat.Channel.Whisper"),(TagName="Chat.Channel.World"),(TagName="Chat.Channel.System")))),("Chat2", (GameplayTags=((TagName="Chat.Channel.System"),(TagName="Chat.Channel.Whisper")))),("Chat3", (GameplayTags=((TagName="Chat.Channel.Server"),(TagName="Chat.Channel.System")))),("Chat4", (GameplayTags=((TagName="Chat.Channel.Server"),(TagName="Chat.Channel.System"),(TagName="Chat.Channel.General")))))
DefaultNewChatTabAllowedChannels=(GameplayTags=((TagName="Chat.Channel.Server")))
DefaultChatTabWidgetClass=WidgetBlueprintGeneratedClass'/MIPChatSystem/Widgets/ChatTab/W_ChatTab.W_ChatTab_C'
DefaultChatTabTitleWidgetClass=WidgetBlueprintGeneratedClass'/MIPChatSystem/Widgets/ChatTab/W_ChatTabTitle.W_ChatTabTitle_C'
DefaultChatTabsContainerWidgetClass=WidgetBlueprintGeneratedClass'/MIPChatSystem/Widgets/ChatTab/W_ChatTabsContainer.W_ChatTabsContainer_C'
DefaultMessageReceivedProcessorClass=None
DefaultRequireSenderNameChannels=(GameplayTags=((TagName="Chat.Channel.General"),(TagName="Chat.Channel.Guild"),(TagName="Chat.Channel.Party"),(TagName="Chat.Channel.Server"),(TagName="Chat.Channel.Whisper"),(TagName="Chat.Channel.World")))
DefaultChatMainWidgetClass=WidgetBlueprintGeneratedClass'/MIPChatSystem/Widgets/W_ChatMainWidget.W_ChatMainWidget_C'
DefaultAllowedChannelItemWidgetClass=WidgetBlueprintGeneratedClass'/MIPChatSystem/Widgets/ChatTabSetting/W_ChatTabAllowedChannelItem.W_ChatTabAllowedChannelItem_C'
DefaultChatCommandsMap=(("a", (TagName="Chat.Channel.General")),("g", (TagName="Chat.Channel.Guild")),("p", (TagName="Chat.Channel.Party")),("s", (TagName="Chat.Channel.Server")),("w", (TagName="Chat.Channel.Whisper")),("h", (TagName="Chat.Channel.World")),("r", (TagName="Chat.Channel")),("dance", (TagName="ChatCommand.AnimAction.Dance")),("bye", (TagName="ChatCommand.AnimAction.Bye")),("hello", (TagName="ChatCommand.AnimAction.Hello")),("hi", (TagName="ChatCommand.AnimAction.Hello")))
+DefaultDecoratorClasses=BlueprintGeneratedClass'/MIPChatSystem/DataAsset/BP_RichChatTextBlockHyperlinkDecorator.BP_RichChatTextBlockHyperlinkDecorator_C'
+DefaultDecoratorClasses=BlueprintGeneratedClass'/MIPChatSystem/DataAsset/BP_RichChatTextBlockImageDecorator.BP_RichChatTextBlockImageDecorator_C'
DefaultPlayerInfoProcessorClass=Class'/Script/MIPChatSystem.MIPChatBasePlayerInfoProcessor'
DefaultNameplateWidgetClass=WidgetBlueprintGeneratedClass'/MIPChatSystem/Widgets/W_Nameplate.W_Nameplate_C'
DefaultProfanityWordItemWidgetClass=WidgetBlueprintGeneratedClass'/MIPChatSystem/Widgets/ChatTabSetting/Profanity/W_ProfanityWordItem.W_ProfanityWordItem_C'
DefaultChatThrottlersMap=(((TagName="Chat.Channel.Server"), (CooldownTime=5.000000)))
DefaultChatChatItemLimit=20

Your DefaultGame.ini will look something like this.

Step 2: Add Player Controller Components
Step 3: Add Game State Components
Step 4: Add Game Mode Components
Step 4: Choose AMIPChatBasePlayerController for your Player Controller Parent Class

And copy the key binding for showing chat and cursor.

Step 5: Choose AMIPChatBaseCharacter for your Character Parent Class

Step 6: Choose AMIPChatBasePlayerState for your PlayerState Parent Class

Step 7: Choose AMIPChatBaseGameMode for your GameMode Parent Class

Step 8: Choose AMIPChatWorldSettings as the world settings

Project Settings > Engine > General Settings

Then have the editor restarted. Fill in player info in the world settings tab for as many player as u want.

Last updated