카테고리: 아크 서버 플러그인

아크 서바이벌 플러그인 만들기 - 명령어

목차6개 항목

아크 서바이벌 플러그인 만들기 - 명령어

1. 명령어 제작

아크 서바이벌 플러그인에서 명령어를 제작하여 특정 동작을 수행하고, 채팅에 출력하는 기능을 구현할 수 있습니다. 명령어를 제작하기 위해서는 다음과 같은 단계를 따를 수 있습니다:

  1. 명령어 등록: 플러그인에서 사용할 명령어를 등록합니다.
  2. 명령어 처리: 등록한 명령어에 대한 처리 로직을 작성합니다.
  3. 채팅 출력: 명령어 처리 결과를 채팅에 출력합니다.

2. 소스 코드

init.cpp

코드

void addCommands() {
    COMMANDS.AddRconCommand(L"공지");

void removeCommands() {
    Commands.RemoveRconCommand(L"공지");

BOOL Load()
{
    LOG::Get().Init("YourPlugin");
    addCommands();
}

init.h

C++

#pragma once
#include "includes.h"

void CommandNotificate(AShooterPlayerController* playerController, FString* msg, int mode);

CommandNotificate.cpp

코드

void CommandNotificate(AShooterPlayerController* playerController, FString* msg, int mode) {
	FString comment = msg->Mid(3);
	LOG->info("{}", comment.ToString());
	FString senderName = L"[공지]";
	uint64 steamID = get_steam_id_from_pc(playerController);
	FString UserInfo, LoggerMessage;
	ArkApi::GetApiUtils().SendChatMessageToAll(*senderName, L"{0}</>", *comment);
	LoggerMessage = L"공지명령어 사용 :";
	UserInfo = FString("(" + url_encode(FString(std::to_string(steamID))) + ")");
	LOG->info("{} {} {}", UserInfo.ToString(), LoggerMessage.ToString(), comment.ToString());
}

3. 마무리 인사

지금까지 "아크 서바이벌 플러그인 만들기 - 명령어"에 대해 알아보았습니다. 명령어를 제작하여 플러그인에 원하는 기능을 구현해보세요! 필요한 소스 코드는 제공해드렸으니, 해당 부분에 직접 코드를 추가하시면 됩니다. 추가적인 도움이 필요하거나 다른 질문이 있으시면 언제든지 물어보세요.

글쓴이

Mojangcam

직접 코드를 짜고, 서버를 돌리고, 막힌 에러를 해결하며 배운 것들을 기록하는 개발·IT 실전 기록 블로그