Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

Rom server lua api function list 6.0.8

Newbie Spellweaver
Joined
Jul 8, 2014
Messages
58
Reaction score
10
Here's list with arg nums and types

Code:
AddBorderPage(int,char const *
AddBuff(int,int,int,int
AddExp(int,int
AddGuildResource(int,int,int,int,int,int,int,int,char const *
AddGuildWarEnergy(int,int
AddGuildWarPlayerValue(int,int,int
AddGuildWarScore(int,int
AddHonor(int,int
AddHouseEnergy(int,int
AddMoney(int,int,int
AddMoneyEx_Account(int,int,int,bool
AddMoney_Account(int,int,int
AddMoney_Bonus(int,int,int
AddRankPoint(int,int
AddRecipe(int,int
AddRoleValue(int,int,double
AddSkillValue(int,int,float
AddSpeakOption(int,int,char const *,char const *,int
AddTeamHonor(int,int,int
AddTeamItem(int,int,int,int
AddTeamRankPoint(int,int,int
AddtoPartition(int,int
AdjustDir(int,int
AdjustFaceDir(int,int,int
AssistMagic(int,int,int
AttachCastMotionTool(int,int
AttachObj(int,int,int,char const *,char const *
AttachTool(int,int,char const *
BeginCastBar(int,char const *,int,int,int,int
BeginCastBarEvent(int,int,char const *,int,int,int,int,char const *
BeginMultiStringPlot(int,char const *,int
BeginPlot(int,char const *,int
Billboard_Add(int,int,int
Billboard_TopUpdate(int,int,int
Billboard_Update(int,int,int
BuffCount(int
BuffInfo(int,int,int
BuildGuildHouse(int
BuildHouse(int,int
BuyHouse(int,int
CalDir(float,float
CallPlayer_DBID(int,int
CallPlot(lua_State *
CallSpeakLua(int,int,char const *
CancelBuff(int,int
CancelBuff_NoEvent(int,int
CancelBuff_Pos(int,int
CastSpell(int,int,int
CastSpellLv(int,int,int,int
CastSpellPos(int,float,float,float,int,int
ChangeObjID(int,int
ChangeZone(int,int,int,float,float,float,float
CheckAcceptQuest(int,int
CheckAttach(int,int
CheckAttachAble(int
CheckBit(int,int
CheckBuff(int,int
CheckCardFlag(int,int
CheckCastBar(int
CheckCastBarStatus(int
CheckCompleteQuest(int,int
CheckDistance(int,int,int
CheckID(int
CheckInMyGuildHouse(int
CheckItemTransportPos(void
CheckLine(int,float,float,float
CheckMapID(float,float,float,int
CheckMineEvent(void
CheckOnlinePlayer(int
CheckPassword(int,char const *
CheckQuest(int,int,int
CheckRelation(int,int,int
CheckScriptFlag(int,int
CheckTreasureDelete(int
CheckUseItem(void
CheckZone(int
ClearBorder(int
ClearCampRevicePoint(void
ClearHateList(int,int
ClickToFaceEnabled(int,bool
ClientEvent(int,int,int,char const *
ClientEvent_Range(int,int,char const *
ClientSkyType(int
ClockClose(int
ClockOpen(int,int,int,int,int,char const *,char const *
ClockRead(int,int
ClockStop(int
CloseBattleGround(int
CloseShop(int
CloseSpeak(int
ClsMapMark(int,int
ClsRoomValue(int,int
CopyRoomMonster(int,int
CountBodyItem(int,int
CountItem(int,int
CreateFlag(int,int,float,float,float,float
CreateObj(int,float,float,float,float,int после создания нпц нужно использовать addtopartition(NPC,комната)
CreateObjByFlag(int,int,int,int
CreateObj_ByObjPoint(int,int,char const *
DebugCheck(lua_State *
DebugLog(int,char const *
DebugMsg(int,int,char const *
DelBodyItem(int,int,int
DelExSkill(int,int,int
DelFromPartition(int
DelJob(int,int
DelObj(int
DelRoleItemByDBID(int,int,int
DelRoomMonster(int
DeleteQuest(int,int
DesignLog(int,int,char const *
DetachObj(int
DialogClose(int
DialogCreate(int,int,char const *
DialogGetInputCheckResult(int
DialogGetInputResult(int
DialogGetResult(int
DialogSelectStr(int,char const *
DialogSendOpen(int
DialogSetContent(int,char const *
DialogSetTitle(int,char const *
DisableQuest(int,bool
EmptyPacketCount(int
EnableNpcAI(int,bool
EndBattleGround(int,int
EndCastBar(int,int
EnterWorld(int,int,int,int,float,float,float,float
FaceFlag(int,int,int
FaceObj(int,int
FindMapID(float,float,float
FixAllEq(int,int
GameObjInfo_Double(int,char const *
GameObjInfo_Str(int,char const *
GameTime(void
GenerateMine(int,int,int,int
GetArenaScore(int,int,int,int
GetBattleGroundRoomID(int
GetBodyFreeSlot(int
GetCardFlag(int,int
GetDBKeyValue(char const *
GetDailyQuestCount(int
GetDisconnectTeamMember(int,int
GetDistance(int,int
GetEnterTeamMemberInfo(int,int,int
GetGUIDByDBID(int
GetGuildName(int
GetGuildName_ByID(int,int
GetGuildWarEnergy(int
GetGuildWarPlayerValue(int,int
GetGuildWarScore(int
GetGuildWarScore_ByID(int,int
GetHeight(float,float,float
GetHouseType(void
GetIniValueSetting(char const *
GetItemInfo(int,int,int,int
GetLandMark(int,int
GetLastHidePlotStr(int
GetLocaltime(int,int
GetMaxTeamMember(void
GetMemberVar(int,int,int,int
GetMemory(void
GetMode(int
GetModeEx(int,int
GetMoneyKeyValue(char const *,int
GetMoveFlagCount(int
GetMoveFlagValue(int,int,int
GetName(int
GetNowTime(void
GetNumEnterTeamMember(int,int
GetNumPlayer(void
GetNumQueueMember(int,int
GetNumTeam(void
GetNumTeamMember(int,int
GetObjNameByGUID(int
GetObjectReader(GameObjDbStructEx *
GetPartyID(int,int
GetQuestDesc(int
GetQuestDetail(int,int
GetQuestState(int,int
GetRecipeList(int,int
GetRelation(int,int
GetRelationLv(int,int
GetRelation_DBID(int,int
GetRelation_Lv(int,int
GetRelation_Name(int,int
GetRelation_Relation(int,int
GetRoleCampID(int
GetRoomValue(int,int
GetScore(int,int
GetSearchResult(void
GetServerDataLanguage(void
GetServerStringLanguage(void
GetString(char const *
GetSystime(int
GetTeamID(int
GetTreasure(int,int,int
GetUseItemGUID(int
GetVar(int,int
GetWorldQueueRule(void
GetWorldVar(char const *
GetZoneID(int
GiveBodyItem(int,int,int
GiveBodyItemEx(int,int,int,int,int,int,int,int,int
GiveBodyItem_EQ(int,int,int,int
GiveBodyItem_Note(int,int,int,char const *
GiveItem_Pet(int,int,int,int,int,int
GoHomePoint(int
GoReturnPos(int
GoReturnPosByNPC(int,int
GotoPlayer_DBID(int,int
GuildInfo(int,int
GuildMemberCount(int
GuildRank(int
GuildState(int
HateListCount(int
HateListInfo(int,int,int
Hide(int
Init(void
InitBgIndependence(int,int
Init_Hsiang(void
InterruptMagic(int
ItemSavePos(int
ItemTransportPos(void
JoinBattleGround(int,int,int,int
JoinBattleGroundWithTeam(int,int
KillID(int,int
LanguageType(void
LeaveBattleGround(int
LeaveWorld(int
LoadQuestOption(int
LockHP(int,int,char const *
LockObj(int,int,int
MagicInterrupt(int
ModifyBuff(int,int,int,int
ModifyRangeHatePoint(int,int,float
Move(int,float,float,float
MoveDirect(int,float,float,float
MoveRoleToBattleGround(int,int,int,int,float,float,float,float
MoveTarget(int,int
MoveToFlagEnabled(int,bool
MoveToPathPoint(int,int
Msg(int,char const *
NPCDead(int,int
NpcSay(int,char const *
OpenAC(void
OpenACEx(int
OpenAccountBag(void
OpenBank(void
OpenBankEx(int
OpenBillboard(void
OpenBuyLottery(void
OpenChangeJob(void
OpenClientMenu(int,int
OpenCombinEQ(int,int,int
OpenCreateNewGuild(void
OpenEqGamble(void
OpenExchangeLottery(void
OpenGuildContribution(void
OpenGuildShop(void
OpenGuildWarBid(int,int
OpenMagicStoneShop(int,int,int,int
OpenMail(void
OpenMailEx(int
OpenPlotGive(int,bool,int
OpenRare3EqExchangeItem(void
OpenShop(void
OpenSuitSkill(void
OpenVisitGuildHouse(bool
OpenVisitHouse(bool
OwnerID(void
PE_AddPE(char const *,char const *,int,int
PE_AddPhase(int,int,char const *,char const *,int,int,int,int
PE_AddRegion(int,int
PE_CountHatePoint(int,int
PE_GetActivePhaseIndex(int
PE_GetActivePlayerGUID(int
PE_GetActivePlayerGUIDCount(int
PE_GetAllPlayersScore(int,char const *
PE_GetPartyScore(int,int,char const *
PE_GetPlayerScore(int,int
PE_GetTopNPlayersScore(int,int,char const *
PE_GiveAllPlayersScore(int,float
PE_GivePartyScore(int,int,float
PE_GivePlayerScore(int,int,float
PE_JumpToPhase(int,int
PE_OB_SetCallBackOnAchieve(int,char const *
PE_OB_SetNextPhase(int,int,int,int
PE_OB_SetVisible(int,int,int,bool
PE_PH_AddObjective_Equal(int,int,int,char const *,char const *,char const *,int,int,bool
PE_PH_AddObjective_EqualAndGreater(int,int,int,char const *,char const *,char const *,int,int,bool
PE_PH_AddObjective_EqualAndSmaller(int,int,int,char const *,char const *,char const *,int,int,bool
PE_PH_AddObjective_Greater(int,int,int,char const *,char const *,char const *,int,int,bool
PE_PH_AddObjective_NotEqual(int,int,int,char const *,char const *,char const *,int,int,bool
PE_PH_AddObjective_Smaller(int,int,int,char const *,char const *,char const *,int,int,bool
PE_PH_AddObjective_TimeLimit(int,int,int,char const *,char const *,char const *,int,int,bool
PE_PH_SetBonusScore(int,int,float,float
PE_PH_SetCallBackOnFail(int,char const *
PE_PH_SetCallBackOnSuccess(int,char const *
PE_PH_SetNextPhase(int,int,int
PE_RefreshConfig(void
PE_SetCallBackOnBalance(int,char const *
PE_SetCallBackOnFail(int,char const *
PE_SetCallBackOnPlayerEnter(int,char const *
PE_SetCallBackOnPlayerLeave(int,char const *
PE_SetCallBackOnSuccess(int,char const *
PE_SetPhaseBonusScore(int,float,float
PE_SetPlayerScore(int,int,float
PE_SetScoreVisible(int,bool
PE_SetUIVisible(int,bool
PE_Start(int,int
PE_VAR_AddVar(char const *,int
PE_VAR_GetVar(char const *
PE_VAR_SetVar(char const *,int
PKFlag(int
PartyInstanceLv(int
Play3DSound(int,char const *,bool
Play3DSoundToPlayer(int,char const *,bool
PlayMotion(int,int
PlayMotionEx(int,int,int
PlayMotion_Self(int,int,int
PlayMusic(int,char const *,bool
PlayMusicToPlayer(int,char const *,bool
PlaySoundA(int,char const *,bool
PlaySoundToPlayer(int,char const *,bool
PushMagicExplodeTarget(int
PushMagicShootTarget(int
QueuePacketCount(int
RandRange(int,int
Random(int
ReCalPetLv(int,int
ReCalculate(int
ReSetNPCInfo(int
ReadAccountFlag(int,int
ReadAccountFlagValue(int,int,int
ReadGuildBuilding(int,int
ReadInstanceArg(int,int
ReadRoleValue(int,int
ReadRoleValuefloat(int,int
ReadServantFlag(int,int
ReadServantValue(int,int
Release(void
Release_Hsiang(void
ResetColdown(int
ResetMapMark(int
ResetObjDailyQuest(int
ResetRoleCampID(int
ResetRoomValue(int
Revive(int,int,float,float,float,float
RunPlot(int,char const *
RunningMsg(int,int,char const *
RunningMsgEx(int,int,int,char const *
SaveHomePoint(int
SaveReturnPos(int,int,float,float,float,float
SaveReturnPos_ZoneDef(int
Say(int,char const *
SayTo(int,int,char const *
ScriptMessage(int,int,int,char const *,char const *
SearchTreasure(int
SendBGInfoToClient(int,int
SendGuildWarFinalScore(int,int,int,int,int
SendMail(char const *,char const *,char const *
SendMailEx(char const *,char const *,char const *,char const *,int,int,int
SendQuestClickObjResult(int,int,int,int
SetArenaScore(int,int,int,int,float
SetAttack(int,int
SetBattleGroundObjCampID(int,int
SetBattleGroundObjClickState(int,int,int
SetBattleGroundObjForceFlagID(int,int
SetBattleGroundObjGUIDForceFlag(int,int
SetBitValue(int,int,int
SetCameraFollowUnit(int,int,int,int,int
SetCampRevicePoint(int,int,float,float,float,char const *
SetCardFlag(int,int,bool
SetCrystalID(int,int
SetCursorType(int,int
SetCustomTitleString(int,char const *
SetDefIdleMotion(int,int
SetDelayPatrolTime(int,int
SetDir(int,float
SetEscape(int,bool
SetExSkill(int,int,int,int
SetFightMode(int,int,int,int,int
SetFollow(int,int
SetGuildReady(int
SetHateListPoint(int,int,int
SetHourseColor(int,int,int,int,int
SetHouseType(int
SetIdleMotion(int,int
SetItemInfo(int,int,int,int,int
SetLandMark(int,int,int
SetLandMarkInfo(int,int,int,float,float,float,char const *,int
SetLook(int,int,int,int,int
SetMapMark(int,int,float,float,float,char const *,int
SetMemberVar(int,int,int,int,int
SetMinimapIcon(int,int
SetMode(int,int
SetModeEx(int,int,bool
SetModelScale(int,float
SetNpcPlotClass(int,char const *
SetParalledID(int,int
SetPlot(int,char const *,char const *,int
SetPos(int,float,float,float,float
SetPosByFlag(int,int,int
SetPosture(int,int,int
SetQuestState(int,int,int
SetRandMove(int,int,int,int
SetRelation(int,int,int,float,int,float
SetRelationLv(int,int,float
SetRelation_Lv(int,int,float
SetRelation_Relation(int,int,int
SetRoleCamp(int,char const *
SetRoleCampID(int,int
SetRoleEq_Player(int,int,int
SetRoleEquip(int,int,int,int
SetRoomValue(int,int,int
SetScore(int,int,int
SetScriptFlag(int,int,int
SetSearchAllNPC(int
SetSearchAllNPC_ByGroupID(int,int
SetSearchAllPlayer(int
SetSearchRangeInfo(int,int
SetShop(int,int,char const *
SetSmallGameMenuStr(int,int,int,char const *
SetSmallGameMenuType(int,int,int
SetSmallGameMenuValue(int,int,int,int
SetSpeakDetail(int,char const *
SetStandardClearMagicPointAndSetTP(int
SetStandardWearEq(int
SetStopAttack(int
SetVar(int,int,int
SetWorldVar(char const *,int
SetZoneCamp(int
SetZonePVPScript(char const *
SetZoneReviveScript(char const *
Show(int,int
ShowBorder(int,int,char const *,char const *
SortList_Get(void
SortList_Push(int,int
SortList_Reset(void
SortList_Sort(void
SpecialMove(int,float,float,float,int
StartClientCountDown(int,int,int,int,int,int,char const *
StopClientCountDown(int
StopMove(int,bool
StopSound(int,int
StopSoundToPlayer(int,int
SwapEQ(int,int
SysCastSpellLv(int,int,int,int
SysCastSpellLv_Pos(int,float,float,float,int,int
SysKeyValue(char const *
SysPrint(char const *
TargetID(void
Tell(int,int,char const *
TouchTomb(void
UseItemDestroy(void
UseItemDurable(void
WriteAccountFlag(int,int,bool
WriteAccountFlagValue(int,int,int,int
WriteGameObjInfo_Double(int,char const *,double
WriteGuildBuilding(int,int,int
WriteInstanceArg(int,int
WriteRoleValue(int,int,double
WriteServantFlag(int,int,bool
WriteServantValue(int,int,int
Yell(int,char const *,int
ZonePCall(int,char const *
 
Newbie Spellweaver
Joined
Jul 8, 2014
Messages
58
Reaction score
10
you can use them to write your own lua server scripts, for example

Code:
function any_name_you_like()
    say(ownerid(),'Hello World!')
end

just use in other your scripts or even call directly with gm commands like

/gm ? pcall any_name_you_like

of cource this is just example and primitive say function won't help too much, but something more complex and special would
 
Last edited:
Newbie Spellweaver
Joined
Jul 8, 2014
Messages
58
Reaction score
10
This is example of how make dialog with buttons (note, that runewaker never used callspeaklua in their scripts and i don't know why):

Code:
function speak_dialog(dialog)
	if dialog == 1 then
		SetSpeakDetail( OwnerID(), 'Window text')
		addspeakoption(ownerid(),ownerid(),'button1','speak_dialog(2)',0)
		addspeakoption(ownerid(),ownerid(),'button2','speak_dialog(3)',0)
	elseif dialog == 2 then
		CloseSpeak( OwnerID() )
	elseif dialog == 3 then
		CloseSpeak( OwnerID() )
	else 
		--callback
		DialogClose( OwnerID() )
		CloseSpeak( OwnerID() )
		callspeaklua(targetid(), ownerid(), "speak_dialog(1)")
	end
	if dialog ~= nil and dialog ~= 1 then
		addspeakoption(ownerid(),ownerid(),'Back','speak_dialog(1)',0)
	end
end

and this is example of input dialog

Code:
function input_dialog
	--closing any exist dialogs
	DialogClose( OwnerID() );	
	CloseSpeak( OwnerID() )
	
	local SelectID
	local inputstring = nil;
	
	DialogCreate( OwnerID() , EM_LuaDialogType_Input  , 'Text on the window'); 
	DialogSelectStr( OwnerID() , "Ok" );
	DialogSelectStr( OwnerID() , "Cancel" );


	if( DialogSendOpen( OwnerID() ) == false ) then 
		ScriptMessage( OwnerID(),OwnerID(),1,GetString("SYS_FIXEQ_DATA_ERROR"),0)	
		return;
	end
	
	SelectID = -2;
	for i = 0 , 6000 , 1 do
		Sleep( 1 );
		SelectID = DialogGetResult( OwnerID() );
		if ( SelectID ~= -2 ) and ( SelectID ~= -1 ) then
			inputstring = DialogGetInputResult( OwnerID() );
			break;
		end
	end
	if tostring(inputstring) ~= 'nil' and inputstring ~= nil and inputstring ~= '' then
		--check for number inputs
		--if tonumber(inputstring) > 0 then
			if SelectID == 0 then
				--do anything with string you got from user
			end
		--else
			--ScriptMessage(OwnerID(), OwnerID() , 1 ,'Wrong number', "0xffffff00")
		--end
	else
		ScriptMessage(OwnerID(), OwnerID() , 1 ,'Wrong number', "0xffffff00")
	end
	--closing any exist dialogs
	DialogClose( OwnerID() );	
	CloseSpeak( OwnerID() )
end



example how avoid stack limit when trying give more items:

Code:
function maxheap(itemid ,howmany )
	local maxheap = GameObjInfo_Int( itemid ,"MaxHeap" )
	local maxc = math.floor(tonumber(inputstring)/maxheap)+1
	for i = 1, maxc do
		if howmany > maxheap then
			GiveBodyItem( ownerid(), itemid, maxheap )
			howmany = howmany - maxheap
		elseif howmany > 0 then
			GiveBodyItem( ownerid(), itemid, howmany )
			break
		else
			break
		end
		sleep(10)
	end
end

--p.s. sleep won't work in any cases, only when this/parent function was called with functions callplot, beginplot



this is a trick how "hook" functions

Code:
if happy_redefine_myfunc2 == nil then


	local redefine_myfunc = myfunc
	happy_redefine_myfunc2 = redefine_myfunc


end


function myfunc(orig_arg1,orig_arg2)
	--do any you like and call original func if needed
	return happy_redefine_myfunc2(orig_arg1,orig_arg2)
end
 
Newbie Spellweaver
Joined
Jul 8, 2014
Messages
58
Reaction score
10
this example isn't my own function and even a macro, but very usefull to travel very fast without even gm speed:

Code:
/run local dist = 50 if IsShiftKeyDown() then dist = 500 end SendChatMessage('? pcall kg_Teleport('..dist..')','GM')

how use? just make new macro and put this code inside, save macro and put on the panel, then just hold right mouse button and look at direction you want move and precc makro hotkey

i also like use it when map opened on full screen, i just hold right mouse button to direct my teleports and see how i move on the map ^^ (of course with shift pressed)



another macro to get your current server coords, before use it press ctrl+x to show coords near chat then use this macro

Code:
/run FramerateText:Show() local x,y,z,dir _,_,x,y,z,dir = string.find(FramerateText:GetText(),'FPS:.-ZoneID:.-Ping:.-Pos%((.-)%..,(.-)%..,(.-)%..%).Dir%((.-)%)') Chat_CopyToClipboard(x..','..y..','..z..','..math.floor(dir))

and coords will be copied into buffer, after just ctrl+v where you want

also note you can change separator at

Code:
Chat_CopyToClipboard(x..','..y..','..z..','..math.floor(dir))

just replace ',' with any you like, for example ' ' or '_'



this simple function shows you all buff info on you in chat:

Code:
function happy_checkbuff2()
	local Count = BuffCount ( OwnerID())
	for i = 0 , Count do
		local Buff_owner = getname(BuffInfo ( OwnerID() , i , EM_BuffInfoType_OwnerID ))
		local BuffID = BuffInfo ( OwnerID() , i , EM_BuffInfoType_BuffID )
		local Buff_power = BuffInfo ( OwnerID() , i , EM_BuffInfoType_Power )
		local Buff_time = BuffInfo ( OwnerID() , i , EM_BuffInfoType_Time )
		local Buff_point = BuffInfo ( OwnerID() , i , EM_BuffInfoType_Point )
		say(ownerid(),GetString('Sys'..BuffID..'_name')..'_'..BuffID..'('..i..') owner_ID_lvl_time_point '..Buff_owner..'_'..Buff_power..'_'..Buff_time..'_'..Buff_point)
	end
end
 
Back
Top