• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

[Lua] LUA_FUNCTIONS

Korrex

Intermediate OT User
Joined
Jan 19, 2008
Messages
2,748
Reaction score
109
This is the list of most of the Lua functions from /doc/LUA_FUNCTIONS.
Since many people fail to read these and instead make new threads I decided to post them here.
Credits goto our lovely TFS devs.
Lua:
[ LUA FUNCTIONS
	Project Name
		The Forgotten Server

	Version
		0.3.6

	Codenamed
		Crying Damson

	License
		GNU GPLv3

	Forum
		[url]http://otland.net/[/url]
]

[ ABOUT
	List with all available Lua functions.
	You can read a short instruction for all of them;
		how to use them, what they return and see an usage examples.

	If some function parameters are in bracket ([]) - it means that these are optional
	E.g.
		doPlayerAddItem(uid, itemid[, count/subtype[, canDropOnMap]])
		Means that count/subtype + canDropOnMap parameters can but don't have to be specified
		Example:
			doPlayerAddItem(cid, 2160) --adds 1 crystal coin
			doPlayerAddItem(cid, 2160, 10, TRUE) --adds 10 crystal coins and allow item to be dropped on map if player can't lift it
]

[ "get" functions
	Introduction
		These functions will return a requested string or value.
		If specified thing is not found, function returns false. Example: getCreatureName(666) will return false, as creature with cid 666 doesn't exists.

	LIST
		*Creatures (means, that these are accessible for all players, monsters, npcs)
			getCreatureName(cid)
				Info
					This function checks creature name.

				Returns
					Creature name.

			getCreatureHealth(cid)
				Info
					This function checks creature current health points.

				Returns
					Creature current health points.

			getCreatureMaxHealth(cid)
				Info
					This function checks creature max health points.

				Returns
					Creature max health points.

			getCreatureMana(cid)
				Info
					This function checks creature current mana points.

				Returns
					Creature current mana points.

			getCreatureMaxMana(cid)
				Info
					This function checks creature max mana points.

				Returns
					Creature max mana points.

			getCreaturePosition(cid)
				Info
					This function checks creature current position.

				Returns
					Creature position.
					For example:
						{x = 127, y = 7, z = 9, stackpos = 1}
						{x = 396, y = 582, z = 13, stackpos = 2} (when creature is on an item)

				Example
					local pos = getCreaturePosition(cid)
					doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your current position is [X: "..pos.x.." | Y: "..pos.y.." | Z: "..pos.z.."].")

			getCreatureLookDirection(cid)
				Info
					This function checks creature direction.

				Returns
					Creature direction.
					For example:
						NORTH (0) - creature is looking up (north) (/\)
						EAST (1) - creature is looking right (east) (>)
						SOUTH (2) - creature is looking down (south) (\/)
						WEST (3) - creature is looking left (west) (<)

				Example
					local direction = getCreatureLookDirection(cid)
					if direction == NORTH then
						doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "You are looking to north.")
					elseif direction == EAST then
						doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "You are looking to east.")
					elseif direction == SOUTH then
						doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "You are looking to south.")
					else --when west
						doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "You are looking to west.")
					end

			getCreatureSkullType(cid)
				Info
					This function checks creature current skull.

				Returns
					Creature skull.
					For example:
						SKULL_NONE (0) - means, no SKULL_GREEN
						SKULL_YELLOW (1)
						SKULL_GREEN (2)
						SKULL_WHITE (3)
						SKULL_RED (4)
						SKULL_BLACK (5)

				Example
					local skullNames = {"Yellow", "Green", "White", "Red", "Black"}
					local creatureSkull = getCreatureSkullType(cid)
					if creatureSkull ~= SKULL_NONE then
						doPlayerSendTextMessage(cid, "Your current skull color is " .. skullNames[creatureSkull] .. ".")
					else
						doPlayerSendTextMessage(cid, "You don't have any skull :(")
					end

			getCreatureMaster(cid)
				Info
					This function checks creature master. Its used for summoned creatures, to check who has summoned it.

				Returns
					Creature master cid if found, otherwise self cid.

			getCreatureSummons(cid)
				Info
					This functions checks for creature summons list.

				Returns
					false if creature not found, otherwise table with creatures list (NOTE: Can be empty!)

				Example
					local summons = getCreatureSummons(cid)
					if(table.maxn(summons) <= 0) then -- no summons
						doPlayerSendCalcel(cid, "You don't have any summons..")
						return false
					end

					-- remove all summons ;)
					for _, pid in ipairs(summons) do
						doRemoveCreature(pid)
					end

			getCreatureOutfit(cid)
				Info
					This function checks creature current outfit.

				Returns
					Creature outfit in array.
					For example:
						{lookType = 266, lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0} --my current God outfit

				Example
					local myOutfit = getCreatureOutfit(cid)
					doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Im currently wearing outfit with lookType = " .. myOutfit.lookType .. ".")

			getCreatureByName(name)
				Info
					This function will search in current creatures list being in game for specified name.
					NOTE: this function is not case-sensitive. So searching for 'GM MASTER' is same as searching for 'GM Master'.

				Returns
					Creature cid, if creature has been found, otherwise false.
					For example:
						false - Creature with name 'asdasdasdasdasd' has not been found :(
						268475687 - my current cid

				Example
					local firstDragonFound = getCreatureByName('Dragon')
					doSendMagicEffect(getCreaturePosition(firstDragonFound), CONST_ME_CAKE) --Lets display some effect on this creature :D

		*Players
			getPlayerExperience(cid)
				Info
					This function checks player experience points.

				Returns
					Player experience points.

				Example
					doPlayerSendTextMessage(cid, "You have " .. getPlayerExperience(cid) .. " experience points!")

			getPlayerLevel(cid)
				Info
					This function checks player level.

				Returns
					Player level.

			getPlayerMagLevel(cid)
				Info
					This function checks player magic level.

				Returns
					Player magic level.

			getPlayerFood(cid)
				Info
					This function checks how many seconds a player is full.

				Returns
					Time in second for which player is full: 360.
						Ham - 360, Meat - 180, Fish - 145

			getPlayerAccess(cid)
				Info
					This function checks player access.

				Returns
					Player access.

			getPlayerSkillLevel(cid, skillid)
				Info
					This function checks player skill level.
						Skillid can be:
							SKILL_FIST (0) = Fist Fighting
							SKILL_CLUB (1) = Club Fighting
							SKILL_SWORD (2) = Sword Fighting
							SKILL_AXE (3) = Axe Fighting
							SKILL_DISTANCE (4) = Distance Fighting
							SKILL_SHIELD (5) = Shielding
							SKILL_FISHING (6) = Fishing

				Returns
					Player skill level.
					For Example
						37
						10

				Example
					if getPlayerSkillLevel(cid, SKILL_SWORD) >= 20 then --checking for sword skill value
						doPlayerAddItem(cid, 2376) --gives sword, when skill >= 20
					else
						doPlayerSendCancel(cid, "Sorry, your sword skill is not high enough.")
					end

			getPlayerTown(cid)
				Info
					This function checks player actually Town ID.

				Returns
					Player Town ID.
					For Example:
						1
						3

				Example
					local playerTown = getPlayerTown(cid)
					local playerPos = getCreaturePosition(cid)
					if playerTown == 1 then
						doSendAnimatedText(playerPos, 'I am living in a town with id 1 (Main City)! :)', TEXTCOLOR_GOLD)
					elseif playerTown == 2 then
						doSendAnimatedText(playerPos, 'I am living in a town with id 2 (Desert City)! :)', TEXTCOLOR_GOLD)
					end

			getPlayerVocation(cid)
				Info
					This function checks player Vocation ID.

				Returns
					Player Vocation ID.
					For Example:
						1 - when player vocation is Sorcerer
						7 - when player vocation is Royal Paladin

				Example
					local playerVoc = getPlayerVocation(cid)
					if playerVoc == 1 then --If Vocation is Sorcerer or Master Sorcerer then weapon = Wand
						weapon = 2190 --Wand of vortex
					elseif playerVoc == 2 then --If Voc == Druid or Elder Druid then weapon = Rod
						weapon = 2182 --Snakebite Rod
					elseif playerVoc == 3 then --If Voc == Paladin or Royal Paladin then weapon = Spear
						weapon== 2389 --Spear
					elseif playerVoc == 4 then --If Voc == Knight or Elite Knight then weapon = Sword
						weapon = 2412 --Katana
					end
					doPlayerAddItem(cid, weapon)

			getPlayerItemCount(cid, itemid)
				Info
					This function checks how much items with specified id is player holding.

				Returns
					A count of itemid.
						For Example:
							2 - when player have 2x royal spear
							73 - when player have 73 platinum coins

				Example
					local crystalCoins = getPlayerItemCount(cid, 2160)
					local platinumCoins = getPlayerItemCount(cid, 2152)
					local goldCoins = getPlayerItemCount(cid, 2148)
					money = crystalCoins * 10000 + platinumCoins * 100 + goldCoins
					doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Your money: " .. money .. "gp")

			getPlayerSoul(cid)
				Info
					This function checks how much soul points player actually have.

				Returns
					Player actually soul points.
					For Example:
						27 - when player have 27 soul points
						134 - when player have 134 soul points

				Example
					doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Your soul points: " .. getPlayerSoul(cid))

			getPlayerFreeCap(cid)
				Info
					This function checks how much free cap points player actually have.

				Returns
					Player actually cap points.
						For Example:
							181 - when player have 181 capacity
							1460 - when player have 1460 capacity

				Example
					local playerCap = getPlayerFreeCap(cid)
					local item = 2393 --Giant Sword
					local itemweight = getItemWeight(item, 1)
					if playerCap >= itemweight then
						doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, 'You have found a giant sword.')
						doPlayerAddItem(cid,item)
					else
						doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, 'You have found a giant sword weighing ' ..itemweight.. ' oz it\'s too heavy.')

			getPlayerLight(cid)
				Info
					This function checks player actually light.

				Returns
					Player actually light.
					For Example:
						215 - after using "utevo gran lux"

			getPlayerSlotItem(cid, slot)
				Info
					This function checks what item player have actually in slot.
					Slot can be:
					CONST_SLOT_HEAD (1) = helmet
					CONST_SLOT_NECKLACE (2) = necklace slot (amulet of loss etc.)
					CONST_SLOT_BACKPACK (3) = backpack, bag
					CONST_SLOT_ARMOR (4) = armor
					CONST_SLOT_LEFT (5) = left hand (its really hand placed >> (right page on screen))
					CONST_SLOT_RIGHT (6) = right hand (its really hand placed << (left page on screen))
					CONST_SLOT_LEGS (7) = legs
					CONST_SLOT_FEET (8) = boots
					CONST_SLOT_RING (9) = ring slot
					CONST_SLOT_AMMO (10) = ammo slot (arrows etc.)

				Returns
					Array with item which is actually in slot. When slot is empty, then returns false
						For Example:
							{itemid = 2493, uid = 70001, actionid = 0} (demon helmet, slot = 1)

				Example
					if getPlayerSlotItem(cid, CONST_SLOT_NECKLACE).itemid == 2173 then  --checking if player have amulet of loss in necklace slot
						doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Ok, you can go.")
					else
						doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Sorry, you need amulet of loss to go.")
						doTeleportThing(cid, fromPosition, TRUE)
					end

			getPlayerDepotItems(cid, depotid)
				Info
					This function checks how much items (slots reserved, becouse 10cc = 1 slot) player have in depo.
						Depotid = number, which depo we want to check.

				Returns
					Busy slots in depot.
						For example:
							7 - when player have in depo:
								- sword
								- rope
								- 100 uh
								- parcel (inside: 10 crystal coins + label)
								- depot chest (standard, all players have it)

				Example
					depotItems = getPlayerDepotItems(cid, 3)  -- 3 = Desert City
					if depotItems < 2 then --When depo contains only 1 ITEM.
						doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Your depot contains 1 item.")
					else
						doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Your depot contains " ..depotItems.. " items.")
					end

			getPlayerSex(cid)
				Info
					This function checks player sex.

				Returns
					Player sex.
					For example:
						PLAYERSEX_FEMALE (0) - when player is female
						PLAYERSEX_MALE (1) - when player is male
						PLAYERSEX_GAMEMASTER (2) - gamemaster (Means if player have changed their sex to type = 2)

				Example
					local playerPos = getCreaturePosition(cid)
					local playerSex = getPlayerSex(cid)
					if playerSex == PLAYERSEX_FEMALE then --female
						doSendAnimatedText(playerPos, 'GiRl :*:*', TEXTCOLOR_GOLD)
					elseif playerSex == PLAYERSEX_MALE then --male
						doSendAnimatedText(playerPos, 'Wtf? I aM BoY.', TEXTCOLOR_GOLD)
					else --hermaphrodite
						doSendAnimatedText(playerPos, 'Who am I? :(', TEXTCOLOR_GOLD)
					end

			getPlayerGUID(cid)
				Info
					This function checks player guid.

				Returns
					Player id. When checked creature isn't player then returns false.
					For example:
						61 - when player id in database is 61
						false - when checked creature is NPC

				Example
					doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "You are player with id: " .. getPlayerGUID(cid))

			getPlayerFlagValue(cid, flag)
				Info
					This function checks player flag value.

				Returns
					Return true if player have specified flag, otherwise false
					For example:
						true - checking GM for PlayerFlag_CannotBeAttacked
						false - checking player for PlayerFlag_CannotBeAttacked

				Example
					if getPlayerFlagValue(cid, PlayerFlag_CanSummonAll) then --if can
						doSummonCreature("Demon", fromPosition.x + 1)
					else --if cant
						doSummonCreature("Rat", fromPosition.x + 1)
					end

			getPlayerCustomFlagValue(cid, flag)
				Info
					Same as getPlayerFlagValue, but there are checked custom flags, which was introduced in TFS 0.3
					This function checks player custom flag value.

				Returns
					Return true if player have specified custom flag, otherwise false
					For example:
						true - checking GM for PlayerCustomFlag_CanLoginMultipleCharacters
						false - checking player for PlayerCustomFlag_CanLoginMultipleCharacters

			getPlayerGroupId(cid)
				Info
					This function checks player group ID.

				Returns
					Player group id.
					For example (using standard TFS groups):
						1 - when checked player is player
						2 - when checked player is gamemaster
						3 - when checked player is god

				Example
					local group = getPlayerGroupId(cid)
					if group == 3 then--when God
						doPlayerAddItem(cid, 2160, 100) --100 crystal coins
					elseif group == 2 then--when Gamemaster
						doPlayerAddItem(cid, 2160, 50) --50 crystal coins
					else
						doPlayerSendCancel(cid, "Sorry, cheats doesnt work for you."
					end

			getPlayerGuildId(cid)
				Info
					This function returns player's guild id.

				Returns
					Players guild id.
					For example
						21 - The guild the player is in has the guild id 21, as stored in the database.

				Example
					local guildId = getPlayerGuildId(cid)
					if guildId == 21 then
						doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Welcome in our guild hunting place!")
					elseif guildId == 22 then
						doPlayerSendCancel(cid, "This area is not for your guild!")
					end

			getPlayerGuildName(cid)
				Info
					Used to get player's guild name.

				Returns
					Players guild name in a string.
					For example
						"Lost Dragons"

				Example
					local guildName = getPlayerGuildName(cid)
					doSendAnimatedText(getCreaturePosition(cid),guildName, TEXTCOLOR_GOLD)

			getPlayerGuildRank(cid)
				Info
					Used to get player's rank name in a guild.

				Returns
					The players current rank in his guild in a string
					For example
						"Senator"

				Example
					local rank = getPlayerGuildRank(cid)
					doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR,"You're a " .. rank .. " in your guild.")

			getPlayerGuildNick(cid)
				Info
					Used to get player's nick in his guild.

				Returns
					The players current nick in a string.
					For example
						"The protector"

				Example
					doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR,"Your guild nick is " .. getPlayerGuildNick(cid) .. ".")
]

[ "set" functions
	Introduction
		These functions usually changes thing properties.

	List
		*Creatures
			setCreatureMaxHealth(cid, health)
				Info
					This function changes creature max health.

				Returns
					Returns true - if creature found and max health changed, otherwise return false

			setCreatureMaxMana(cid, mana)
				Info
					This function changes creature max mana.

				Returns
					Returns true - if creature found and max mana changed, otherwise return false

]

[ "do" functions
	Introduction
		These functions usually execute an action.

	List
		*Creatures

		*Players
			doPlayerSendCancel(cid, text)
				Info
					This function will send cancel message do player (visible in bottom of a screen)

				Returns
					Returns true - when msg was sent, false - when it was impossible.

				Example
					if getPlayerLevel(cid) >= 10 then --checking level
						doSummonCreature("Chicken", fromPosition.x + 1)
					else
						doPlayerSendCancel(cid, "Sorry, your level isnt enought to summon this monster.")
					end
]

[ LIST
	[ Note
		This list seems to be strongly outdated! Please come back on Gold release ;)
	]

	//get*
	getCreatureHealth(cid)
	getCreatureMaxHealth(cid)
	getCreatureHideHealth(cid)
	getCreatureMana(cid)
	getCreatureMaxMana(cid)
	getCreatureSpeakType(cid)
	getCreatureMaster(cid)
	getCreatureSummons(cid)
	getCreatureOutfit(cid)
	getCreaturePosition(cid)
	getCreatureLookDirection(cid)
	getCreatureName(cid)
	getCreatureSpeed(cid) //TODO
	getCreatureBaseSpeed(cid) //TODO
	getCreatureTarget(cid) //TODO
	getCreatureByName(name)
	getCreatureSkullType(cid)
	getCreatureCondition(cid, condition[, subId]) //TODO
	getCreatureNoMove(cid) //TODO
	getMonsterInfo(name)
	getMonsterHealingSpells(name) //TODO
	getMonsterAttackSpells(name) //TODO
	getMonsterLootList(name) //TODO
	getMonsterSummonList(name) //TODO
	getMonsterTargetList(cid) //TODO
	getMonsterFriendList(cid) //TODO
	getPlayerByNameWildcard(name~[, ret = false]) //TODO
	getPlayerLossSkill(cid) //TODO
	getPlayerLossPercent(cid, lossType) //TODO
	getPlayerGUIDByName(name[, multiworld = false]) //TODO
	getPlayerNameByGUID(guid[, multiworld = false[, displayError = true]]) //TODO
	getPlayerFood(cid)
	getPlayerLevel(cid)
	getPlayerExperience(cid)
	getPlayerMagLevel(cid[, ignoreBuffs = false]) //TODO
	getPlayerSpentMana(cid) //TODO
	getPlayerAccess(cid)
	getPlayerGhostAccess(cid)
	getPlayerSkillLevel(cid, skillId)
	getPlayerSkillTries(cid, skillId) //TODO
	getPlayerTown(cid)
	getPlayerVocation(cid)
	getPlayerRequiredMana(cid, magicLevel) //TODO
	getPlayerRequiredSkillTries(cid, skillId, skillLevel) //TODO
	getPlayerItemCount(cid, itemid[, subType = -1])
	getPlayerSoul(cid)
	getPlayerAccountId(cid) //TODO
	getPlayerAccount(cid) //TODO
	getPlayerIp(cid) //TODO
	getPlayerFreeCap(cid)
	getPlayerLight(cid)
	getPlayerSlotItem(cid, slot)
	getPlayerWeapon(cid[, ignoreAmmo = false]) //TODO
	getPlayerItemById(cid, deepSearch, itemId[, subType = -1]) //TODO
	getPlayerDepotItems(cid, depotid)
	getPlayerGuildId(cid)
	getPlayerGuildName(cid)
	getPlayerGuildRank(cid)
	getPlayerGuildNick(cid)
	getPlayerGuildLevel(cid) //TODO: From here, all bottoms
	getPlayerSex(cid)
	getPlayerStorageValue(uid, key)
	getPlayerGUID(cid)
	getPlayerFlagValue(cid, flag)
	getPlayerCustomFlagValue(cid, flag)
	getPlayerPromotionLevel(cid)
	getPlayerGroupId(cid)
	getPlayerLearnedInstantSpell(cid, name)
	getPlayerInstantSpellCount(cid)
	getPlayerInstantSpellInfo(cid, index)
	getPlayerBlessing(cid, blessing)
	getPlayerStamina(cid)
	getPlayerExtraExpRate(cid)
	getPlayerPartner(cid)
	getPlayerParty(cid)
	getPlayerPremiumDays(cid)
	getPlayerBalance(cid)
	getPlayerMoney(cid)
	getPlayerSkullTicks(cid, type)
	getPlayerRates(cid)
	getPlayerLastLogin(cid)
	getPlayerLastLoginSaved(cid)
	getPlayerAccountManager(cid)
	getInstantSpellInfo(cid, name)
	getPlayersByAccountId(accountNumber)
	getPlayersByIp(ip[, mask = 0xFFFFFFFF])
	getChannelUsers(channelId)
	getPlayersOnline()
	getPartyMembers(lid)
	getAccountIdByName(name)
	getAccountByName(name)
	getAccountIdByAccount(accName)
	getAccountByAccountId(accId)
	getIpByName(name)
	getItemRWInfo(uid)
	getItemProtection(uid)
	getItemDescriptionsById(itemid)
	getItemWeightById(itemid, count[, precise])
	getItemDescriptions(uid)
	getItemWeight(uid[, precise])
	getItemAttack(uid)
	getItemExtraAttack(uid)
	getItemDefense(uid)
	getItemExtraDefense(uid)
	getItemArmor(uid)
	getItemAttackSpeed(uid)
	getItemHitChance(uid)
	getItemShootRange(uid)
	getItemIdByName(name[, displayError = true])
	getItemLevelDoor(itemid)
	getItemWeaponType(uid)
	getFluidSourceType(type)
	getContainerSize(uid)
	getContainerCap(uid)
	getContainerCapById(itemid)
	getContainerItem(uid, slot)
	getDepotId(uid)
	getTileItemById(pos, itemId[, subType = -1])
	getTileItemByType(pos, type)
	getTileThingByPos(pos)
	getTileInfo(pos)
	getTopCreature(pos)
	getClosestFreeTile(cid, targetpos[, extended = false[, ignoreHouse = true]])
	getThingFromPos(pos)
	getThing(uid)
	getThingPos(uid)
	getHouseInfo(id)
	getHouseAccessList(houseid, listid)
	getHouseByPlayerGUID(playerGUID)
	getHouseFromPos(pos)
	getTownId(townName)
	getTownName(townId)
	getTownTemplePosition(townId)
	getTownHouses(townId)
	getWorldType()
	getWorldTime()
	getWorldLight()
	getWorldCreatures(type) //0 players, 1 monsters, 2 npcs, 3 all
	getWorldUpTime()
	getHighscoreString(skillId)
	getVocationInfo(id)
	getGuildId(guildName)
	getGuildMotd(guildId)
	getSpectators(centerPos, rangex, rangey[, multifloor = false])
	getSearchString(fromPosition, toPosition[, fromIsCreature = false[, toIsCreature = false]])
	getWaypointPosition(name)
	getGameState()
	getNotationsCount(accId)
	getBanData(value)
	getBanList(type[, value])
	getBanReason(id)
	getBanAction(id[, ipBanishment])
	getGlobalStorageValue(valueid)
	getExperienceStage(level)
	getConfigFile()
	getConfigValue(key)
	getModList()
	loadmodlib(libName)
	domodlib(libName)
	getLogsDir()
	getDataDir()
	getWaypointList()
	getTalkActionList()
	getExperienceStageList()

	//set*
	setCreatureMaxHealth(cid, health)
	setCreatureMaxMana(cid, mana)
	setHouseOwner(houseid, ownerGUID)
	setHouseAccessList(houseid, listid, listtext)
	setItemName(uid)
	setItemPluralName(uid)
	setItemArticle(uid)
	setItemAttack(uid, attack)
	setItemExtraAttack(uid, extraattack)
	setItemDefense(uid, defense)
	setItemArmor(uid, armor)
	setItemExtraDefense(uid, extradefense)
	setItemAttackSpeed(uid, attackspeed)
	setItemHitChance(uid, hitChance)
	setItemShootRange(uid, shootRange)
	setCombatArea(combat, area)
	setCombatCondition(combat, condition)
	setCombatParam(combat, key, value)
	setConditionParam(condition, key, value)
	setCombatCallBack(combat, key, function_name)
	setCombatFormula(combat, type, mina, minb, maxa, maxb)
	setConditionFormula(combat, mina, minb, maxa, maxb)
	setGlobalStorageValue(key, newValue)
	setWorldType(type)

	//do*
	doCreatureAddHealth(cid, health[, force])
	doCreatureAddMana(cid, mana)
	doCreatureSetDropLoot(cid, doDrop)
	doCreatureSetSkullType(cid, skull)
	doCreatureSetSpeakType
	doCreatureSetLookDirection(cid, dir)
	doPlayerSetMaxCapacity(cid, cap)
	doCreatureChangeOutfit(cid, outfit)
	doCreatureSay(uid, text, type[, ghost = false[, cid = 0[, pos]]])
	doCreatureSetNoMove(cid, cannotMove)
	doSetCreatureLight(cid, lightLevel, lightColor, time)
	doSetCreatureOutfit(cid, outfit, time)
	doRemoveCreature(cid[, executeLogout = true])
	doMoveCreature(cid, direction)
	doConvinceCreature(cid, target)
	doChallengeCreature(cid, target)
	doChangeSpeed(cid, delta)
	doSummonMonster(name, pos)
	doCreateMonster(name, pos)
	doMonsterChangeTarget(cid)
	doMonsterSetTarget(cid, target)
	doCreateNpc(name, pos)
	doSetMonsterOutfit(cid, name, time)
	doPlayerBroadcastMessage(cid, message[, type])
	doPlayerSetSex(cid, newSex)
	doPlayerSetTown(cid, townid)
	doPlayerSetVocation(cid, voc)
	doPlayerSetStorageValue(uid, key, newValue)
	doPlayerSetGroupId(cid, newGroupId)
	doPlayerSetPromotionLevel(cid, level)
	doPlayerSetStamina(cid, minutes)
	doPlayerSetBalance(cid, balance)
	doPlayerSetExtraExpRate(cid, value)
	doPlayerSetPartner(cid, guid)
	doPlayerRemoveItem(cid, itemid, count[, subtype])
	doPlayerAddExperience(cid, amount)
	doPlayerSetGuildId(cid, id)
	doPlayerSetGuildRank(cid, rank)
	doPlayerSetGuildNick(cid, nick)
	doPlayerAddOutfit(cid,looktype, addons)
	doPlayerRemoveOutfit(cid,looktype, addons)
	doPlayerSetRedSkullTicks(cid, amount)
	doPlayerSetLossPercent(cid, lossType, newPercent)
	doPlayerSetLossSkill(cid, doLose)
	doPlayerAddSkillTry(cid, skillid, n)
	doPlayerAddSpentMana(cid, amount)
	doPlayerAddSoul(cid, soul)
	doPlayerAddItem(uid, itemid[, count/subtype[, canDropOnMap = true]])
	doPlayerAddItemEx(cid, uid[, canDropOnMap = false])
	doPlayerSendTextMessage(cid, MessageClasses, message)
	doPlayerSendChannelMessage(cid, author, message, SpeakClasses, channel)
	doPlayerSendToChannel(cid, targetId, SpeakClasses, message, channel[, time])
	doPlayerAddMoney(cid, money)
	doPlayerRemoveMoney(cid, money)
	doPlayerTransferMoneyTo(cid, target, money)
	doPlayerPopupFYI(cid, message)
	doPlayerSendTutorial(cid, id)
	doPlayerAddMapMark(cid, pos, type[, description])
	doPlayerAddPremiumDays(cid, days)
	doPlayerAddBlessing(cid, blessing)
	doPlayerAddStamina(cid, minutes)
	doPlayerResetIdleTime(cid)
	doPlayerLearnInstantSpell(cid, name)
	doPlayerUnlearnInstantSpell(cid, name)
	doPlayerFeed(cid, food)
	doPlayerSendCancel(cid, text)
	doPlayerSendDefaultCancel(cid, ReturnValue)
	doPlayerSetRate(cid, type, value)
	doPlayerJoinParty(cid, lid)
	doPlayerSendOutfitWindow(cid)
	doPlayerSave(cid[, shallow = false])
	doCreateItem(itemid, type/count, pos)
	doCreateItemEx(itemid[, count/subtype])
	doAddContainerItemEx(uid, virtuid)
	doAddContainerItem(uid, itemid[, count/subtype])
	doChangeTypeItem(uid, newtype)
	doDecayItem(uid)
	doRemoveItem(uid[, count])
	doTransformItem(uid, toitemid[, count/subtype])
	doSetItemActionId(uid, actionid)
	doSetItemText(uid, text[, writer[, date]])
	doSetItemSpecialDescription(uid, desc)
	doSetItemOutfit(cid, item, time)
	doSetItemProtection(uid, value)
	doTileAddItemEx(pos, uid)
	doTileQueryAdd(uid, pos[, flags])
	doAddCondition(cid, condition)
	doRemoveCondition(cid, type[, subId])
	doRemoveConditions(cid[, onlyPersistent])
	doAreaCombatHealth(cid, type, pos, area, min, max, effect)
	doTargetCombatHealth(cid, target, type, min, max, effect)
	doAreaCombatMana(cid, pos, area, min, max, effect)
	doTargetCombatMana(cid, target, min, max, effect)
	doAreaCombatCondition(cid, pos, area, condition, effect)
	doTargetCombatCondition(cid, target, condition, effect)
	doAreaCombatDispel(cid, pos, area, type, effect)
	doTargetCombatDispel(cid, target, type, effect)
	doCombat(cid, combat, param)
	doTeleportThing(cid, newpos[, pushmove = true])
	doCreateTeleport(itemid, topos, createpos)
	doSendMagicEffect(pos, type[, player])
	doSendDistanceShoot(frompos, topos, type[, player])
	doSendAnimatedText(pos, text, color[, player])
	doShowTextDialog(cid, itemid, text)
	doRelocate(pos, toPos[, creatures = true])
	doBroadcastMessage(message, type)
	doWaypointAddTemporial(name, pos)
	doSetGameState(stateId)
	doAddIpBanishment(ip[, length[, comment[, admin]]])
	doAddNamelock(name[, reason[, action[, comment[, admin]]]])
	doAddBanishment(accId[, length[, reason[, action[, comment[, admin]]]]])
	doAddDeletion(accId[, reason[, action[, comment[, admin]]]]])
	doAddNotation(accId[, reason[, action[, comment[, admin]]]]])
	doRemoveIpBanishment(ip[, mask])
	doRemoveNamelock(name)
	doRemoveBanisment(accId)
	doRemoveDeletion(accId)
	doRemoveNotations(accId)
	doSaveServer()
	doReloadInfo(id[, cid])
	doCleanHouse(houseId)
	doCleanMap()
	doRefreshMap()

	//is*
	isCreature(cid)
	isMonster(uid)
	isNpc(uid)
	isPlayer(cid)
	isPlayerPzLocked(cid)
	isItemStackable(itemid)
	isItemRune(itemid)
	isItemMovable(itemid)
	isItemDoor(itemid)
	isItemContainer(itemid)
	isItemFluidContainer(itemid)
	isContainer(uid)
	isCorpse(uid)
	isMovable(uid)
	isSightClear(fromPos, toPos, floorCheck)
	isIpBanished(ip[, mask])
	isPlayerNamelocked(name)
	isAccountBanished(accId)
	isAccountDeleted(accId)
	isInArray({array}, value[, lower = true])

	//others
	registerCreatureEvent(uid, eventName)
	createCombatArea({area}[, {exArea}])
	createConditionObject(type[, ticks[, buff[, subId]]])
	addDamageCondition(condition, rounds, time, value)
	addOutfitCondition(condition, lookTypeEx, lookType, lookHead, lookBody, lookLegs, lookFeet)
	createCombatObject()
	numberToVariant(number)
	stringToVariant(string)
	positionToVariant(pos)
	targetPositionToVariant(pos)
	variantToNumber(var)
	variantToString(var)
	variantToPosition(var)
	canPlayerWearOutfit(cid, lookType, addons)
	executeRaid(name)
	addEvent(callback, delay, ...)
	stopEvent(eventid)
	hasProperty(uid)

	md5(str)
	sha1(str)

	//db table
	db.executeQuery(query)
	db.storeQuery(query)
	db.escapeString(str)
	db.escapeBlob(s, length)
	db.stringComparisonOperator()
	db.lastInsertId()

	//result table
	result.getDataInt(resId, s)
	result.getDataLong(resId, s)
	result.getDataString(resId, s)
	result.getDataStream(resId, s, length)
	result.next(resId)
	result.free(resId)

	//bit table
	#bit.cast
	bit.bnot(n)
	bit.band(type, n)
	bit.bor(type, n)
	bit.bxor(type, n)
	bit.lshift(type, n)
	bit.rshift(type, n)
	#bit.arshift
	#bit.ucast
	bit.ubnot(n)
	bit.uband(type, n)
	bit.ubor(type, n)
	bit.ubxor(type, n)
	bit.ulshift(type, n)
	bit.urshift(type, n)
	#bit.uarshift

	//compats
	table.getPos = table.find
	doSetCreatureDropLoot = doCreatureSetDropLoot
	doPlayerSay = doCreatureSay
	doPlayerAddMana = doCreatureAddMana
	playerLearnInstantSpell = doPlayerLearnInstantSpell
	doPlayerRemOutfit = doPlayerRemoveOutfit
	pay = doPlayerRemoveMoney
	broadcastMessage = doBroadcastMessage
	getPlayerName = getCreatureName
	getPlayerPosition = getCreaturePosition
	getCreaturePos = getCreaturePosition
	creatureGetPosition = getCreaturePosition
	getPlayerMana = getCreatureMana
	getPlayerMaxMana = getCreatureMaxMana
	hasCondition = getCreatureCondition
	isMoveable = isMovable
	isItemMoveable = isItemMovable
	saveData = saveServer
	savePlayers = saveServer
	getPlayerSkill = getPlayerSkillLevel
	getPlayerSkullType = getCreatureSkullType
	getCreatureSkull = getCreatureSkullType
	getAccountNumberByName = getAccountIdByName
	getIPByName = getIpByName
	getPlayersByIP = getPlayersByIp
	getThingfromPos = getThingFromPos
	getPlayersByAccountNumber = getPlayersByAccountId
	getIPByPlayerName = getIpByName
	getPlayersByIPNumber = getPlayersByIp
	getAccountNumberByPlayerName = getAccountIdByName
	convertIntToIP = doConvertIntegerToIp
	convertIPToInt = doConvertIpToInteger
	queryTileAddThing = doTileQueryAdd
	getTileHouseInfo = getHouseFromPos
	executeRaid = doExecuteRaid
	saveServer = doSaveServer
	cleanHouse = doCleanHouse
	cleanMap = doCleanMap
	shutdown = doShutdown
	mayNotMove = doCreatureSetNoMove
	doPlayerSetNoMove = doCreatureSetNoMove
	getPlayerNoMove = getCreatureNoMove
	getConfigInfo = getConfigValue
	doPlayerAddExp = doPlayerAddExperience
	isInArea = isInRange
	doPlayerSetSkillRate = doPlayerSetRate
	getCreatureLookDir = getCreatureLookDirection
	getPlayerLookDir = getCreatureLookDirection
	getPlayerLookDirection = getCreatureLookDirection
	doCreatureSetLookDir = doCreatureSetLookDirection
	getPlayerLookPos = getCreatureLookPosition
	setPlayerStamina = doPlayerSetStamina
	setPlayerPromotionLevel = doPlayerSetPromotionLevel
	setPlayerGroupId = doPlayerSetGroupId
	setPlayerPartner = doPlayerSetPartner
	setPlayerStorageValue = doPlayerSetStorageValue
	setPlayerBalance = doPlayerSetBalance
	doAddMapMark = doPlayerAddMapMark
	doSendTutorial = doPlayerSendTutorial

	//lua-made functions
	doPlayerGiveItem(cid, itemid, amount, subType)
	doPlayerTakeItem(cid, itemid, amount)
	doPlayerBuyItem(cid, itemid, count, cost, charges)
	doPlayerBuyItemContainer(cid, containerid, itemid, count, cost, charges)
	doPlayerSellItem(cid, itemid, count, cost)
	doPlayerWithdrawMoney(cid, money)
	doPlayerDepositMoney(cid, money)
	comparePos(pos, posEx)
	isInRange(pos, fromPos, toPos)
	getArea(pos, rangeX, rangeY)
	isPremium(cid)
	getMonthDayEnding(day)
	getMonthString(m)
	getArticle(str)
	isNumber(str)
	getDistanceBetween(firstPosition, secondPosition)
	doPlayerAddAddons(cid, addon)
	isSorcerer(cid)
	isDruid(cid)
	isPaladin(cid)
	isKnight(cid)
	isRookie(cid)
	getDirectionTo(pos, posEx)
	getCreatureLookPosition(cid)
	getPosByDir(fromPosition, direction, size)
	doPlayerWithdrawAllMoney(cid)
	doPlayerDepositAllMoney(cid)
	doPlayerTransferAllMoneyTo(cid, target)
	doPlayerAddLevel(cid, amount, round)
	doPlayerAddMagLevel(cid, amount)
	doPlayerAddSkill(cid, amount)
	playerExists(name)
	getTibiaTime()
	doWriteLogFile(file, text)
	isInArea(pos, fromPos, toPos)
	getExperienceForLevel(lv)
	doMutePlayer(cid, time)
	getPlayerGroupName(cid)
	getPlayerVocationName(cid)
	getPromotedVocation(vid)
	doPlayerRemovePremiumDays(cid, days)
	getPlayerMasterPos(cid)
	getHouseOwner(houseId)
	getHouseName(houseId)
	getHouseEntry(houseId)
	getHouseRent(houseId)
	getHousePrice(houseId)
	getHouseTown(houseId)
	getHouseTilesCount(houseId)
	getItemNameById(itemid)
	getItemPluralNameById(itemid)
	getItemArticleById(itemid)
	getItemName(uid)
	getItemPluralName(uid)
	getItemArticle(uid)
	getItemText(uid)
	getItemSpecialDescription(uid)
	getItemWriter(uid)
	getItemDate(uid)
	getTilePzInfo(pos)
	getTileZoneInfo(pos)
	debugPrint(text)
	doShutdown()
	doSummonCreature(name, pos)
	getOnlinePlayers()
	getPlayerByName(name)
	isPlayerGhost(cid)
	getPlayerFrags(cid)
	getPartyLeader(cid)
	isInParty(cid)
	isPrivateChannel(channelId)
	doConvertIntegerToIp(int, mask)
	doConvertIpToInteger(int, mask)
	getBooleanFromString(str)
	doCopyItem(item, attributes)
	exhaustion.check(cid, storage)
	exhaustion.get(cid, storage)
	exhaustion.set(cid, storage, time)
	exhaustion.make(cid, storage, time)
	table.find(table, value)
	table.isStrIn(txt, str)
	table.countElements(table, item)
	table.getCombinations(table, num)
	string.split(str)
	string.trim(str)
	string.explode(str, sep)
]
 
All the functions can be found in luascript.cpp, thought sometimes it's hard to figure out the usage if ur not that great in C++
 
Back
Top