• 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 [Warning- Npcscript::Npcscript] can not load : repairsoft.lua (TFS 1.3 downgraded 8.6)

Ns Sparkz

Just a Normal Ns King
Joined
Mar 6, 2011
Messages
466
Reaction score
25
Location
Egypt
I Tried 2 different scripts, none of them worked.
Error Given :
Code:
[Warning- Npcscript::Npcscript] can not load : data/npc/scripts/repairsoft.lua

cannot open data/npc/scripts/repairsoft.lua: no such file or directory
Tried This Script
Code:
local talkState = {}
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

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

    local SOFTBOOTS = {
        WORN  = 6530,
        WORN2 = 10021,
        NEW   = 6132,
    }
    local PRICE = 200000
    local QUERY = 'Do you want to repair your worn soft boots for '..PRICE..' gold coins?'
    local BARE  = "Sorry, you don't have the item."
    local POOR  = "Sorry, you don't have enough gold."
    local DONE  = 'Here you are.'
    local BYE   = 'Ok then.'

    local player = Player(cid)
    local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid

    if(msgcontains(msg, 'soft') or msgcontains(msg, 'boots')) then
        selfSay(QUERY, cid)
        talkState[talkUser] = 1
    elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then
        local item = nil
        if(player:getItemCount(SOFTBOOTS.WORN) >= 1) then
            if(player:removeMoney(PRICE)) then
                item = player:getItemById(SOFTBOOTS.WORN, true)
                item:transform(SOFTBOOTS.NEW)
                selfSay(DONE, cid)
            else
                selfSay(POOR, cid)
            end
        elseif(player:getItemCount(SOFTBOOTS.WORN2) >= 1) then
            if(player:removeMoney(PRICE)) then
                item = player:getItemById(SOFTBOOTS.WORN2, true)
                item:transform(SOFTBOOTS.NEW)
                selfSay(DONE, cid)
            else
                selfSay(POOR, cid)
            end
        else
            selfSay(BARE, cid)
        end
        talkState[talkUser] = 0
    elseif(msgcontains(msg, 'no') and isInArray({1}, talkState[talkUser])) then
        talkState[talkUser] = 0
        selfSay(BYE, cid)
    end

    return true
end

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

Second Script Used:
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

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, 'soft') or msgcontains(msg, 'boots')) then
        selfSay('Do you want to repair your worn soft boots for 10000 gold coins?', cid)
        talkState[talkUser] = 1
    elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then
        if(getPlayerItemCount(cid, 10021) >= 1) then
            if(doPlayerRemoveMoney(cid, 10000) == TRUE) then
                doPlayerRemoveItem(cid, 10021, 1)
                doPlayerAddItem(cid, 2640)
                selfSay('Here you are.', cid)
            else
                selfSay('Sorry, you don\'t have enough gold.', cid)
            end
        else
            selfSay('Sorry, you don\'t have the item.', cid)
        end
        talkState[talkUser] = 0
    elseif(msgcontains(msg, 'no') and isInArray({1}, talkState[talkUser]) == TRUE) then
        talkState[talkUser] = 0
        selfSay('Ok then.', cid)


    elseif(msgcontains(msg, 'firewalker') or msgcontains(msg, 'boots')) then
        selfSay('Do you want to repair your worn firewalker boots for 10000 gold coins?', cid)
        talkState[talkUser] = 2
    elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 2) then
        if(getPlayerItemCount(cid, 10022) >= 1) then
            if(doPlayerRemoveMoney(cid, 10000) == TRUE) then
                doPlayerRemoveItem(cid, 10022, 1)
                doPlayerAddItem(cid, 9933)
                selfSay('Here you are.', cid)
            else
                selfSay('Sorry, you don\'t have enough gold.', cid)
            end
        else
            selfSay('Sorry, you don\'t have the item.', cid)
        end
        talkState[talkUser] = 0
    elseif(msgcontains(msg, 'no') and isInArray({1}, talkState[talkUser]) == TRUE) then
        talkState[talkUser] = 0
        selfSay('Ok then.', cid)
    end

    return true
end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
 
Solution
XML:
<?xml version="1.0" encoding="UTF-8"?>
<npc name="Boots" script="repairsoft.lua" floorchange="0" walkinterval="25" access="5" level="1" maglevel="1">
  <health now="150" max="150"/>
    <look type="128" head="114" body="88" legs="88" feet="0" addons="3" corpse="2212"/>
  <parameters>
    <parameter key="message_greet" value="Hello |PLAYERNAME| i am specialised in boots, say [boots]." />       
  </parameters>
</npc>
Code:
[Warning- Npcscript::Npcscript] can not load : data/npc/scripts/repairsoft.lua

cannot open data/npc/scripts/repairsoft.lua: no such file or directory
Means that the server cannot find the file, not that the file has an error within.
You need to check and see that the file is located in data/npc/scripts and that it has the name repairsoft.lua
 
Code:
[Warning- Npcscript::Npcscript] can not load : data/npc/scripts/repairsoft.lua

cannot open data/npc/scripts/repairsoft.lua: no such file or directory
Means that the server cannot find the file, not that the file has an error within.
You need to check and see that the file is located in data/npc/scripts and that it has the name repairsoft.lua
i know that already, but unfortunetly everything is in place. my guess is tfs 1.3 doesn't show the exact error it only shows that the file cannot be read.
 
i know that already, but unfortunetly everything is in place. my guess is tfs 1.3 doesn't show the exact error it only shows that the file cannot be read.
It shows that the file cannot be read, because it can not locate it, which means the file is not where it should be. If it was in the right location then you'd get another error for sure.
Post automatically merged:

As for the npc, did you write it like this script="repairsoft.lua" in XML
 
It shows that the file cannot be read, because it can not locate it, which means the file is not where it should be. If it was in the right location then you'd get another error for sure.
Post automatically merged:

As for the npc, did you write it like this script="repairsoft.lua" in XML
look
look.png
 
Show me the .xml
Lua:
<?xml version="1.0" encoding="UTF-8"?>
<npc name="Boots" script="data/npc/scripts/repairsoft.lua" floorchange="0" walkinterval="25" access="5" level="1" maglevel="1">
  <health now="150" max="150"/>
    <look type="128" head="114" body="88" legs="88" feet="0" addons="3" corpse="2212"/>
  <parameters>
    <parameter key="message_greet" value="Hello |PLAYERNAME| i am specialised in boots, say [boots]." />      
  </parameters>
</npc>
 
XML:
<?xml version="1.0" encoding="UTF-8"?>
<npc name="Boots" script="repairsoft.lua" floorchange="0" walkinterval="25" access="5" level="1" maglevel="1">
  <health now="150" max="150"/>
    <look type="128" head="114" body="88" legs="88" feet="0" addons="3" corpse="2212"/>
  <parameters>
    <parameter key="message_greet" value="Hello |PLAYERNAME| i am specialised in boots, say [boots]." />       
  </parameters>
</npc>
 
Solution
Back
Top