• 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!
  • New resources must be posted under Resources tab. A discussion thread will be created automatically, you can't open threads manually anymore.

NPC All RPG Addons NPCs Global scripts for TFS 0.3.5 and TFS 0.3.6

Bulet, I think the Shaman Addon doesn't work too. I was made a script to kill snake's head and set storage value soshaman = 22040. Next I was went to NPC Hairycles and get Shaman outfit properly but when I going to Chondur and ask him for staff or mask he told me "You have this addon"

Norseman addon don't work properly. Fist is working but Second not. This is the same text for both addon and NPC on and on say formulas form First addon ; )
 
Last edited:
Bulet, I think the Shaman Addon doesn't work too. I was made a script to kill snake's head and set storage value soshaman = 22040. Next I was went to NPC Hairycles and get Shaman outfit properly but when I going to Chondur and ask him for staff or mask he told me "You have this addon"

Norseman addon don't work properly. Fist is working but Second not. This is the same text for both addon and NPC on and on say formulas form First addon ; )

isnt snake head monster but check player_storage in bd anc check if have that storage 22040 i will check here the mage addon summoner addon shaman and will open norseman to ckeck bug

(SHAMAN OUTFIT) CHECK => WORKS FINE => Dear Bivan i will help you to due a script to shaman outfit works fine ... =)
(SUMMONER OUTFIT) CHECK => FIXED
(MAGE OUTFIT) CHECK => FIXED
(NORSEMAN OUTFIT) CHECK => FIXED

Will release the npc addon v1.21 soon with these fixed files
 
Last edited:
This is mine script from banuta snakes head:
Its don't work correctly, don't show text message but set storage value:
Code:
  function onUse(cid, item, fromPosition, itemEx, toPosition)
        if itemEx.itemid == 4861 then
                if getPlayerStorageValue(cid, 22040) == -1 then
                doPlayerSendTextMessage(cid, "Snakes head was damaged. Go to Hairycles and tell him about it!", TALKTYPE_ORANGE_1) 
                doRemoveItem(cid, item.uid, 1)
                setPlayerStorageValue(cid, 22040, 1)
            end
        end
end
I don't know item ID, which will create after snake'd death and I create this scrpit. The rest I don't change. I will test it again but now I go to doing my homework and go sleep because tomorrow I must get up early...
 
(SHAMAN OUTFIT) CHECK => WORKS FINE
(SUMMONER OUTFIT) CHECK => FIXED
(MAGE OUTFIT) CHECK => FIXED
(NORSEMAN OUTFIT) CHECK => FIXED

FIXED BUGs AND RELEASE NEWEST VERSION OF ADDONS PACKET v1.21

Bivan to put shaman mask you will need make shaman staff as Tibia RL
Try that on snake head on last banuta room reward

Code:
function onUse(cid, item, frompos, item2, topos)
	 if item.itemid == 4861 then
	      if getPlayerStorageValue(cid,22040) == -1 then
            doCreatureSay(cid, "You restore snake head statue go back to haircycles and ask him about shamanic powers and you will get your prize.", TALKTYPE_ORANGE_1)
	            setPlayerStorageValue(cid,22040, 1)
            else
			doCreatureSay(cid, "You already been restored snake head.", TALKTYPE_ORANGE_1)
            
	end
	 else
         doPlayerSendCancel(cid,"Sorry, not possible.")
		        end

 
    return TRUE
end
 
Last edited:
This script banuta haven't any bugs but doesn't work. Look at the sandra.lua SummonerFirst
Code:
if getPlayerSex(cid) == 1 then
	   selfSay(nofemale)
	   elseif getPlayerSex(cid) == 1 then
; )

and she wants 50 vampire dusts but in script is feru hat in mage and summoner.
 
Last edited:
This script banuta haven't any bugs but doesn't work. Look at the sandra.lua SummonerFirst
Code:
if getPlayerSex(cid) == 1 then
	   selfSay(nofemale)
	   elseif getPlayerSex(cid) == 1 then
; )

and she wants 50 vampire dusts but in script is feru hat in mage and summoner.

SANDRA.LUA
Code:
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)

function onCreatureAppear(cid)            npcHandler:onCreatureAppear(cid)            end
function onCreatureDisappear(cid)        npcHandler:onCreatureDisappear(cid)            end
function onCreatureSay(cid, type, msg)    npcHandler:onCreatureSay(cid, type, msg)    end
function onThink()                        npcHandler:onThink()    end


-- Storage IDs --

fmage        = 22005    
smage        = 22006
  
fsummoner    = 22011
ssummoner    = 22012   

newaddon    = 'Ah, right! The barbarian axe! Here you go.'
noitems        = 'You do not have all the required items.'
noitems2    = 'You do not have all the required items or you do not have the outfit, which by the way, is a requirement for this addon.'
already        = 'It seems you already have this addon, don\'t you try to mock me son!'
nomale        = 'It seems you are female isnt there you get that part of this addon!'
nofemale      = 'It seems you are male isnt there you get that part of this addon!'

function MageFirst(cid, message, keywords, parameters, node)

    if(not npcHandler:isFocused(cid)) then
        return false
    end

    if isPremium(cid) then
    addon = getPlayerStorageValue(cid,fmage)
    if addon == -1 then
	   if getPlayerSex(cid) == 1 then
	   selfSay(nofemale)
	   elseif getPlayerSex(cid) == 0 then
       if getPlayerItemCount(cid,5905) >= 50 then
       if doPlayerRemoveItem(cid,5905,50) then
            npcHandler:say('Ah, right! The mage fluid belt! Here you go.')
            doSendMagicEffect(getCreaturePosition(cid), 13)
			setPlayerStorageValue(cid,fmage,1)
			 
            doPlayerAddOutfit(cid, 138, 1)		
        end    
        end
        else
            selfSay(noitems)
        end
    else
        selfSay(already)
    end
    end

end

function SummonerFirst(cid, message, keywords, parameters, node)

    if(not npcHandler:isFocused(cid)) then
        return false
    end

    if isPremium(cid) then
    addon = getPlayerStorageValue(cid,fsummoner)
    if addon == -1 then
	   if getPlayerSex(cid) == 0 then
	   selfSay(nofemale)
	   elseif getPlayerSex(cid) == 1 then 
       if getPlayerItemCount(cid,5905) >= 50 then
        if doPlayerRemoveItem(cid,5905,50) then
            npcHandler:say('Ah, right! The summoner fluid belt! Here you go.')
            doSendMagicEffect(getCreaturePosition(cid), 13)
			setPlayerStorageValue(cid,fsummoner,1)			
            doPlayerAddOutfit(cid, 133, 1)		
        end    
        end
        else
            selfSay(noitems)
        end
    else
        selfSay(already)
    end
    end

end




node1 = keywordHandler:addKeyword({'mage fluid belt'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'To get mage fluid belt you need give me 50 Vampire Dust. Do you have them with you?'})
node1:addChildKeyword({'yes'}, MageFirst, {})
node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Alright then. Come back when you got all neccessary items.', reset = true})

node2 = keywordHandler:addKeyword({'summoner fluid belt'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'To get summoner fluid belt you need give me 50 Vampire Dust. Do you have them with you?'})
node2:addChildKeyword({'yes'}, SummonerFirst, {})
node2:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Alright then. Come back when you got all neccessary items.', reset = true})



npcHandler:addModule(FocusModule:new())
 
Script for demon hunter outfit with all addons. This scripts will give You Demonhunter outfit if You done Inquisition Quest.
demonhunter.lua
Code:
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}

function onCreatureAppear(cid)				npcHandler:onCreatureAppear(cid)			end
function onCreatureDisappear(cid)			npcHandler:onCreatureDisappear(cid)			end
function onCreatureSay(cid, type, msg)			npcHandler:onCreatureSay(cid, type, msg)		end
function onThink()					npcHandler:onThink()					end


-- Storage IDs --

inq           = 8560    
demonhunter   = 8561  

newaddon      = 'Ah, right! The demon hunter outfit! Here you go, Now you are truly Demon Hunter!'
already       = 'It seems you already have this addon, don\'t you try to mock me son!'

function DemonhunterOutfit(cid, message, keywords, parameters, node)

    if(not npcHandler:isFocused(cid)) then
        return false
    end

    if isPremium(cid) then
    if getPlayerStorageValue(cid,inq) == 1 then
            npcHandler:say('Ah, right! The demon hunter outfit! Here you go, Now you are truly Demon Hunter!')
            doSendMagicEffect(getCreaturePosition(cid), 13)
			setPlayerStorageValue(cid,demonhunter,1)
			if getPlayerSex(cid) == 1 then
            doPlayerAddOutfit(cid, 289, 0)
            doPlayerAddOutfit(cid, 289, 1)
            doPlayerAddOutfit(cid, 289, 2)
			elseif getPlayerSex(cid) == 0 then
            doPlayerAddOutfit(cid, 288, 0)
            doPlayerAddOutfit(cid, 288, 1)
            doPlayerAddOutfit(cid, 288, 2)
        end
    else
        selfSay(already)
    end
    end

end


---------------------- Inq Quest -------------------------------


function creatureSayCallback(cid, type, msg)
	if(not npcHandler:isFocused(cid)) then
		return false
	end

	local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid


	if msgcontains(msg, 'inquisitor') then
		selfSay('The churches of the gods entrusted me with the enormous and responsible task to lead the inquisition. I leave the field work to inquisitors who I recruit from fitting people that cross my way. If you wanna {join} in the inquisition, ask me why!' ,cid)
		talkState[talkUser] = 1
	
	elseif talkState[talkUser] == 1 then
		if msgcontains(msg, 'join') then
		selfSay('Do you want to join the inquisition?', cid)
		talkState[talkUser] = 2
		end
		
	elseif msgcontains(msg, 'mission') then
		if getPlayerStorageValue(cid,20000) == 1 then
			selfSay('Your mission is simple,You must enter in the retreat and destruct the Shadow Nexus. Then report to me about your mission.', cid)
			setPlayerStorageValue(cid,20000,2)
			setPlayerStorageValue(cid,15202,1)
		elseif getPlayerStorageValue(cid,20000) == 2 then
			selfSay('Are you so crazy? You don\'t have finished this mission.', cid)
		elseif getPlayerStorageValue(cid,20000) == 3 then
			selfSay('Did you destructed the shadow nexus?', cid)
			setPlayerStorageValue(cid,20000,4)
		elseif getPlayerStorageValue(cid,20000) == 5 then
			selfSay('Sorry, no missions yet!', cid)
		end

		elseif msgcontains(msg, 'yes') then
			if talkState[talkUser] == 2 then
			selfSay('So be it. Now you are a member of the inquisition. You might ask me for a {mission} to raise in my esteem.', cid)
			setPlayerStorageValue(cid,20000,1)
		elseif getPlayerStorageValue(cid,20000) == 4 then
			selfSay('Thank you! Now you can get just one reward in the north room.', cid)
			doPlayerAddExp(cid,1500000)
			setPlayerStorageValue(cid,20000,5)
			setPlayerStorageValue(cid,15203,1)
		elseif talkState[talkUser] == 5 then
			selfSay('Ok, Good Looky. Then report to me about your mission.', cid)
			setPlayerStorageValue(cid,15201,4)
		end

	end

	return true
end

node1 = keywordHandler:addKeyword({'demonhunter'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Do you want get a demon hunter outfit with first and second addons?'})
node1:addChildKeyword({'yes'}, DemonhunterOutfit, {})
node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'You dont like that? Your choice...', reset = true})



npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

On the top are config storages id - set to yours if you want.
 
@ Bivan .. Tks for this script but i dont know how its is on Tibia i dont make mine inquisitor on mine Real Map dont make nothing on Yalahar too just cleaning map and make quests and puting respawn and correct the lot of real maps bugs ... rsrsrs
At this moment im finish mine enchanteds shires to you back to the city who you go and making addons quests like griffingclaw, pure hydra water, simon beggar staff, mermaid comb and anothers who i need on addons when i finish these easys fix i will make and fix these hardest quest like POI Inquisitor, Killing in the name of, DOQ like tibia rl if you dont kill all demons etc you will dont make x quest, im trying make a good project ... =)
Because that i make these packet like rl you know if you will recieve demon outfit in stages or will recieve him full on finish quest ?
To i do him and anothers ... XD

MERRY CHRISTMAS to all
 
@Bullet

When you will release the others addons ?

Warmaster
Yalaharian
and another who you say
Waiting for that
 
@Bullet

When you will release the others addons ?

Warmaster
Yalaharian
and another who you say
Waiting for that

@ Vash
Whow i say to you on another post im working hard on mine server will see those on tibiawiki whow get they and make the npc if have cause like DEMONHUNTER i hear something about him and just need finish the quest to get their outfit and addon ...

W8 will fix errors if have and release newst packet w8 plx :thumbup:
 
UPdated to 1.22

Sorry Vash will make anothers addons soon like i had time i has working hard on NPCs.xml download a newest packet to see :peace:
 
They are not working for me. when trying 1 citizen addon he just takes my leathers.

[15/05/2010 20:26:16] data/npc/lib/npcsystem/npchandler.lua:576: table index is nil
[15/05/2010 20:26:16] stack traceback:
[15/05/2010 20:26:16] data/npc/lib/npcsystem/npchandler.lua:576: in function 'say'
[15/05/2010 20:26:16] data/npc/scripts/addons/citizen.lua:33: in function 'callback'
[15/05/2010 20:26:16] data/npc/lib/npcsystem/keywordhandler.lua:40: in function 'processMessage'
[15/05/2010 20:26:16] data/npc/lib/npcsystem/keywordhandler.lua:168: in function 'processNodeMessage'
[15/05/2010 20:26:16] data/npc/lib/npcsystem/keywordhandler.lua:122: in function 'processMessage'
[15/05/2010 20:26:16] data/npc/lib/npcsystem/npchandler.lua:371: in function 'onCreatureSay'
[15/05/2010 20:26:16] data/npc/scripts/addons/citizen.lua:7: in function <data/npc/scripts/addons/citizen.lua:7>

using tfs 0.3.1 do i need to do anything else but put them in my npc / scripts folder?
 
They are not working for me. when trying 1 citizen addon he just takes my leathers.

[15/05/2010 20:26:16] data/npc/lib/npcsystem/npchandler.lua:576: table index is nil
[15/05/2010 20:26:16] stack traceback:
[15/05/2010 20:26:16] data/npc/lib/npcsystem/npchandler.lua:576: in function 'say'
[15/05/2010 20:26:16] data/npc/scripts/addons/citizen.lua:33: in function 'callback'
[15/05/2010 20:26:16] data/npc/lib/npcsystem/keywordhandler.lua:40: in function 'processMessage'
[15/05/2010 20:26:16] data/npc/lib/npcsystem/keywordhandler.lua:168: in function 'processNodeMessage'
[15/05/2010 20:26:16] data/npc/lib/npcsystem/keywordhandler.lua:122: in function 'processMessage'
[15/05/2010 20:26:16] data/npc/lib/npcsystem/npchandler.lua:371: in function 'onCreatureSay'
[15/05/2010 20:26:16] data/npc/scripts/addons/citizen.lua:7: in function <data/npc/scripts/addons/citizen.lua:7>

using tfs 0.3.1 do i need to do anything else but put them in my npc / scripts folder?

maybe you cant use that cause thats is too tfs 0.3.5 + your NPC lib file need be upgraded
 
...

i DONT know how use all scripts... i dont know how install it... CAN u explain all? how install... i must do npc? i dont know how..

can you make npc for all script?
 
Last edited:
Back
Top Bottom