vladbos35 1 Posted June 28, 2014 Share Posted June 28, 2014 My syserr what is resolve? SYSERR: Jun 28 03:15:07.771790 :: WriteRunningStateToSyserr: LUA_ERROR: quest dragon_soul.state_learning enter SYSERR: Jun 28 03:15:09.8796 :: RunState: LUA_ERROR: [string "dragon_soul"]:5: attempt to call global `drop_gamble_with_flag' (a nil value) SYSERR: Jun 28 03:15:09.8808 :: WriteRunningStateToSyserr: LUA_ERROR: quest dragon_soul.state_learning enter SYSERR: Jun 28 03:15:09.728920 :: RunState: LUA_ERROR: [string "dragon_soul"]:5: attempt to call global `drop_gamble_with_flag' (a nil value) SYSERR: Jun 28 03:15:09.728931 :: WriteRunningStateToSyserr: LUA_ERROR: quest dragon_soul.state_learning enter SYSERR: Jun 28 03:15:16.46629 :: RunState: LUA_ERROR: [string "dragon_soul"]:5: attempt to call global `drop_gamble_with_flag' (a nil value) SYSERR: Jun 28 03:15:16.46641 :: WriteRunningStateToSyserr: LUA_ERROR: quest dragon_soul.state_learning enter SYSERR: Jun 28 03:15:16.46738 :: RunState: LUA_ERROR: [string "dragon_soul"]:5: attempt to call global `drop_gamble_with_flag' (a nil value) SYSERR: Jun 28 03:15:16.46747 :: WriteRunningStateToSyserr: LUA_ERROR: quest dragon_soul.state_learning enter SYSERR: Jun 28 03:15:16.485620 :: RunState: LUA_ERROR: [string "dragon_soul"]:5: attempt to call global `drop_gamble_with_flag' (a nil value) SYSERR: Jun 28 03:15:16.485631 :: WriteRunningStateToSyserr: LUA_ERROR: quest dragon_soul.state_learning enter SYSERR: Jun 28 03:15:16.846629 :: RunState: LUA_ERROR: [string "dragon_soul"]:5: attempt to call global `drop_gamble_with_flag' (a nil value) SYSERR: Jun 28 03:15:16.846641 :: WriteRunningStateToSyserr: LUA_ERROR: quest dragon_soul.state_learning enter SYSERR: Jun 28 03:15:20.923733 :: RunState: LUA_ERROR: [string "dragon_soul"]:5: attempt to call global `drop_gamble_with_flag' (a nil value) SYSERR: Jun 28 03:15:20.923744 :: WriteRunningStateToSyserr: LUA_ERROR: quest dragon_soul.state_learning enter SYSERR: Jun 28 03:15:22.323624 :: RunState: LUA_ERROR: [string "dragon_soul"]:5: attempt to call global `drop_gamble_with_flag' (a nil value) SYSERR: Jun 28 03:15:22.323636 :: WriteRunningStateToSyserr: LUA_ERROR: quest dragon_soul.state_learning enter SYSERR: Jun 28 03:15:22.443857 :: RunState: LUA_ERROR: [string "dragon_soul"]:5: attempt to call global `drop_gamble_with_flag' (a nil value) SYSERR: Jun 28 03:15:22.443868 :: WriteRunningStateToSyserr: LUA_ERROR: quest dragon_soul.state_learning enter SYSERR: Jun 28 03:15:22.963620 :: RunState: LUA_ERROR: [string "dragon_soul"]:5: attempt to call global `drop_gamble_with_flag' (a nil value) SYSERR: Jun 28 03:15:22.963631 :: WriteRunningStateToSyserr: LUA_ERROR: quest dragon_soul.state_learning enter SYSERR: Jun 28 03:15:23.203619 :: RunState: LUA_ERROR: [string "dragon_soul"]:5: attempt to call global `drop_gamble_with_flag' (a nil value) SYSERR: Jun 28 03:15:23.203630 :: WriteRunningStateToSyserr: LUA_ERROR: quest dragon_soul.state_learning enter SYSERR: Jun 28 03:15:23.803625 :: RunState: LUA_ERROR: [string "dragon_soul"]:5: attempt to call global `drop_gamble_with_flag' (a nil value) SYSERR: Jun 28 03:15:23.803636 :: WriteRunningStateToSyserr: LUA_ERROR: quest dragon_soul.state_learning enter SYSERR: Jun 28 03:15:23.803867 :: RunState: LUA_ERROR: [string "dragon_soul"]:5: attempt to call global `drop_gamble_with_flag' (a nil value) SYSERR: Jun 28 03:15:23.803877 :: WriteRunningStateToSyserr: LUA_ERROR: quest dragon_soul.state_learning enter SYSERR: Jun 28 03:15:23.803962 :: RunState: LUA_ERROR: [string "dragon_soul"]:5: attempt to call global `drop_gamble_with_flag' (a nil value) SYSERR: Jun 28 03:15:23.803971 :: WriteRunningStateToSyserr: LUA_ERROR: quest dragon_soul.state_learning enter My quest quest dragon_soul begin state start begin when levelup or letter with pc.level >= 30 begin send_letter(gameforge.dragon_soul._1010_sendLetter) local v = find_npc_by_vnum(20001) if 0 != v then target.vid("__TARGET__", v, mob_name(20001)) end end when info or button begin say(gameforge.dragon_soul._1020_say) end when 20001.chat.gameforge.dragon_soul._1030_npcChat with pc.level >= 30 begin target.delete("__TARGET__") say_title(mob_name(20001)) say(gameforge.dragon_soul._1040_say) set_state(state_learning) end end state state_learning begin when letter begin send_letter(gameforge.dragon_soul._1050_sendLetter) end when info or button begin say(gameforge.dragon_soul._1060_say) end when kill begin if npc.is_pc() then return end if pc.count_item(30270) < 10 then if drop_gamble_with_flag("ds_drop") then game.drop_item_with_ownership(30270, 1, 300) end end end when 20001.chat.gameforge.dragon_soul._1050_sendLetter begin say_title(mob_name(20001)) if pc.count_item(30270) >= 10 then say(gameforge.dragon_soul._1070_say) pc.remove_item(30270, 10) ds.give_qualification() char_log(pc.get_player_id(), 'DS_QUALIFICATION', 'SUCCESS') pc.give_item2(50255) local today = math.floor(get_global_time() / 86400) pc.setf("dragon_soul", "eye_timestamp", today) pc.setf("dragon_soul", "eye_left", 9) set_state(state_farming) else say(gameforge.dragon_soul._1080_say) end end end state state_farming begin when letter begin send_letter(gameforge.dragon_soul._1090_sendLetter) end when info or button begin say(string.format(gameforge.dragon_soul._1100_say, pc.getf("dragon_soul", "eye_left"))) end when kill begin if npc.is_pc() then return end if drop_gamble_with_flag("ds_drop") then local eye_left = pc.getf("dragon_soul", "eye_left") local haved_gemstone_number = pc.count_item(30270) if eye_left > haved_gemstone_number / 10 then game.drop_item_with_ownership(30270, 1, 300) end end end when 30270.pick begin local eye_left = pc.getf("dragon_soul", "eye_left") if eye_left <= 0 then return end if pc.count_item(30270) >= 10 then pc.setf("dragon_soul", "eye_left", eye_left - 1) pc.remove_item(30270, 10) pc.give_item2(50255) if 1 == eye_left then notice_multiline(gameforge.dragon_soul._1110_notice, notice) set_state(state_closed_season) end end end when 20001.chat.gameforge.dragon_soul._1120_npcChat begin say_title(mob_name(20001)) local today = math.floor(get_global_time() / 86400) if today == pc.getf("dragon_soul", "eye_timestamp") then say(gameforge.dragon_soul._1130_say) else say(gameforge.dragon_soul._1140_say) pc.setf("dragon_soul", "eye_timestamp", today) pc.setf("dragon_soul", "eye_left", 10) end end end state state_closed_season begin when letter begin send_letter(gameforge.dragon_soul._1150_sendLetter) end when info or button begin say(gameforge.dragon_soul._1160_say) local today = math.floor(get_global_time() / 86400) if today == pc.getf("dragon_soul", "eye_timestamp") then say(gameforge.dragon_soul._1170_say) else say(gameforge.dragon_soul._1180_say) end end when 20001.chat.gameforge.dragon_soul._1090_sendLetter begin say_title(mob_name(20001)) local today = math.floor(get_global_time() / 86400) if today == pc.getf("dragon_soul", "eye_timestamp") then say(gameforge.dragon_soul._1130_say) else say(gameforge.dragon_soul._1140_say) pc.setf("dragon_soul", "eye_timestamp", today) pc.setf("dragon_soul", "eye_left", 10) set_state(state_farming) end end end -- deprecated states. so, jump to new state. state state_1 begin when login begin set_state(state_learning) end end state state_2 begin when login begin set_state(state_learning) end end state state_3 begin when login begin set_state(state_closed_season) end end end Link to comment Share on other sites More sharing options...
Active Member ATAG 312 Posted June 28, 2014 Active Member Share Posted June 28, 2014 You don't have drop_gamble_with_flag function. Add this to questlib.lua: function get_today_count(questname, flag_name) local today = math.floor(get_global_time() / 86400) local today_flag = flag_name.."_today" local today_count_flag = flag_name.."_today_count" local last_day = pc.getf(questname, today_flag) if last_day == today then return pc.getf(questname, today_count_flag) else return 0 end end -- "$flag_name"_today unix_timestamp % 86400 -- "$flag_name"_count count function inc_today_count(questname, flag_name, count) local today = math.floor(get_global_time() / 86400) local today_flag = flag_name.."_today" local today_count_flag = flag_name.."_today_count" local last_day = pc.getqf(questname, today_flag) if last_day == today then pc.setf(questname, today_count_flag, pc.getf(questname, today_count_flag) + 1) else pc.setf(questname, today_flag, today) pc.setf(questname, today_count_flag, 1) end end -- This function will return true always in window os, -- but not in freebsd. -- (In window os, RAND_MAX = 0x7FFF = 32767.) function drop_gamble_with_flag(drop_flag) local dp, range = pc.get_killee_drop_pct() dp = 40000 * dp / game.get_event_flag(drop_flag) if dp < 0 or range < 0 then return false end return dp >= number(1, range) end 3 Link to comment Share on other sites More sharing options...
ekrem336 0 Posted October 7, 2015 Share Posted October 7, 2015 thank you super working Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now