1 Star 5 Fork 3

kbengine / kbengine_ue4_plugins

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

kbengine_ue4_plugins

Usage

1: add "KBEnginePlugins" to *.Build.cs
	{ProjectName}\Source\{ProjectName}\{ProjectName}.Build.cs
		PublicDependencyModuleNames.AddRange(new string[] { ..., "KBEnginePlugins" });

2: Create clientapp Blueprint
	1: Add KBEMain Component(Reference: https://github.com/kbengine/kbengine_ue4_demo/blob/master/Content/ClientApp.uasset).
	2: Set the parameters of the component.

3: Implment the KBE defined entity (including the client part)
	See: kbengine\kbengine_demos_assets\scripts\entities.xmlhasClient="true" need to implment
		<Account hasClient="true"></Account>
		<Monster hasClient="true"></Monster>
		<Gate hasClient="true"></Gate>
		<Space/>

		class Account : public Entity
		{
			// entity initialization
			virtual void __init__() override
			{
			}
		}

	Call entity server method
		entity.baseCall("base_func", 1, "arg2", "argN")
		entity.cellCall("cell_func", 1, "arg2", "argN")

4: Monitor KBE-plugins event
	For example:
		class KBENGINE_UE4_DEMO_API AGameModeLogin : public AGameMode
		{
			// Called when the game starts or when spawned
			virtual void BeginPlay() override
			{
				KBENGINE_REGISTER_EVENT("onConnectionState", onConnectionState);
			}

			// KBE-plugins event fired
			UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "KBEngine")
			void onConnectionState(const UKBEventData* pEventData);
		}

5: Fire events to the KBE-plugins
	For example:
		UKBEventData_login* pEventData = NewObject<UKBEventData_login>();
		pEventData->username = username;
		pEventData->password = password;
		pEventData->datas = datas;
		KBENGINE_EVENT_FIRE("login", pEventData);

KBE-Plugin fire-out events(KBE => UE4):

Entity events:
	onEnterWorld
		Description: 
			Entity enter the client-world.

		Event-datas: 
			Enity
			

	onLeaveWorld
		Description: 
			Entity leave the client-world.

		Event-datas: 
			Enity

	onEnterSpace
		Description: 
			Player enter the new space.

		Event-datas: 
			Enity

	onLeaveSpace
		Description: 
			Player enter the space.

		Event-datas: 
			Enity

	onCreateAccountResult
		Description: 
			Create account feedback results.

		Event-datas: 
			uint16: retcode
				http://kbengine.org/docs/configuration/server_errors.html

			bytes: datas
				If you use third-party account system, the system may fill some of the third-party additional datas.

	onControlled
		Description: 
			Triggered when the entity is controlled or out of control.

		Event-datas: 
			Enity
			bool: isControlled

	onLoseControlledEntity
		Description: 
			Lose controlled entity.

		Event-datas: 
			Enity

	set_position
		Description: 
			Sets the current position of the entity.

		Event-datas: 
			Enity

	set_direction
		Description: 
			Sets the current direction of the entity.

		Event-datas: 
			Enity

	updatePosition
		Description: 
			The entity position is updated, you can smooth the moving entity to new location.

		Event-datas: 
			Enity

Protocol events:
	onVersionNotMatch
		Description: 
			Engine version mismatch.

		Event-datas: 
			string: clientVersion
			string: serverVersion

	onScriptVersionNotMatch
		Description: 
			script version mismatch.

		Event-datas: 
			string: clientScriptVersion
			string: serverScriptVersion

	Loginapp_importClientMessages
		Description: 
			Importing the message protocol for loginapp and client.

		Event-datas: 
			No datas.

	Baseapp_importClientMessages
		Description: 
			Importing the message protocol for baseapp and client.

		Event-datas: 
			No datas.

	Baseapp_importClientEntityDef
		Description: 
			Protocol description for importing entities.

		Event-datas: 
			No datas.

Login and Logout status:
	onLoginBaseapp
		Description: 
			Login to baseapp.

		Event-datas: 
			No datas.

	onReloginBaseapp
		Description: 
			Relogin to baseapp.

		Event-datas: 
			No datas.

	onKicked
		Description: 
			Kicked of the current server.

		Event-datas: 
			uint16: retcode
				http://kbengine.org/docs/configuration/server_errors.html

	onLoginFailed
		Description: 
			Login failed.

		Event-datas: 
			uint16: retcode
				http://kbengine.org/docs/configuration/server_errors.html

	onLoginBaseappFailed
		Description: 
			Login baseapp failed.

		Event-datas: 
			uint16: retcode
				http://kbengine.org/docs/configuration/server_errors.html

	onReloginBaseappFailed
		Description: 
			Relogin baseapp failed.

		Event-datas: 
			uint16: retcode
				http://kbengine.org/docs/configuration/server_errors.html

	onReloginBaseappSuccessfully
		Description: 
			Relogin baseapp success.

		Event-datas: 
			No datas.

Space events:
	addSpaceGeometryMapping
		Description: 
			The current space is specified by the geometry mapping.
			Popular said is to load the specified Map Resources.

		Event-datas: 
			string: resPath

	onSetSpaceData
		Description: 
			Server spaceData set data.

		Event-datas: 
			int32: spaceID
			string: key
			string value

	onDelSpaceData
		Description: 
			Server spaceData delete data.

		Event-datas: 
			int32: spaceID
			string: key

Network events:
	onConnectionState
		Description: 
			Status of connection server.

		Event-datas: 
			bool: success or fail

	onDisconnected
		Description: 
			Status of connection server.

		Event-datas: 
			No datas.

KBE-Plugin fire-in events(UE4 => KBE):

createAccount
		Description: 
			Create new account.

		Event-datas: 
			string: accountName
			string: password
			bytes: datas
				Datas by user defined.
				Data will be recorded into the KBE account database, you can access the datas through the script layer.
				If you use third-party account system, datas will be submitted to the third-party system.
			

login
		Description: 
			Login to server.

		Event-datas: 
			string: accountName
			string: password
			bytes: datas
				Datas by user defined.
				Data will be recorded into the KBE account database, you can access the datas through the script layer.
				If you use third-party account system, datas will be submitted to the third-party system.

reloginBaseapp
		Description: 
			Relogin to baseapp.

		Event-datas: 
			No datas.

resetPassword
		Description: 
			Reset password.

		Event-datas: 
			string: accountName

newPassword
		Description: 
			Request to set up a new password for the account.
			Note: account must be online

		Event-datas: 
			string: old_password
			string: new_password

bindAccountEmail
		Description: 
			Request server binding account Email.
			Note: account must be online

		Event-datas: 
			string: emailAddress

空文件

简介

使用该插件即可使Unreal engine4客户端与服务器引擎kbengine通讯,快速的使用UE4打造各种MMO游戏。 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
C++
1
https://gitee.com/kbengine/kbengine_ue4_plugins.git
git@gitee.com:kbengine/kbengine_ue4_plugins.git
kbengine
kbengine_ue4_plugins
kbengine_ue4_plugins
master

搜索帮助

14c37bed 8189591 565d56ea 8189591