Gabriele01 Posted December 28, 2016 Posted December 28, 2016 Hello guys again I have a idiot error in my server :)) Error: [2016-12-28 18:53:03] ERROR: DayZ\login.lua:284: bad argument #1 to 'ipairs' (table expected, got nil) Code : local spawnPositions = { {-278.6669921875,-2882.1572265625,32.104232788086}, {-958.5595703125,-2887.9912109375,64.82421875}, {-1816.9375,-2748.18359375,1.7327127456665}, {-2816.166015625,-2439.0546875,2.4004096984863}, {-2941.5673828125,-1206.2373046875,2.7848854064941}, {-2911.51171875,-895.22265625,2.4013109207153}, {-2185.6669921875,2957.380859375,11.474840164185}, {272.2265625,2928.505859375,1.3713493347168}, {2803.943359375,595.9365234375,7.7612648010254}, {2883.7509765625,-178.4658203125,3.2714653015137}, {-233.46484375,-1735.8173828125,1.5520644187927}, {-1056.8720703125,2939.068359375,42.311294555664}, } local playerDataTable = { {"alivetime"}, {"skin"}, {"MAX_Slots"}, {"bandit"}, {"blood"}, {"food"}, {"thirst"}, {"temperature"}, {"currentweapon_1"}, {"currentweapon_2"}, {"currentweapon_3"}, {"bleeding"}, {"brokenbone"}, {"pain"}, {"cold"}, {"infection"}, {"humanity"}, {"zombieskilled"}, {"headshots"}, {"murders"}, {"banditskilled"}, {"Wood Pile"}, {"Bandage"}, {"Water Bottle"}, {"Pasta Can"}, {"Beans Can"}, {"Burger"}, {"Box of Matches"}, {"M1911 Mag"}, {"M9 SD Mag"}, {"Desert Eagle Mag"}, {"M1911"}, {"M9 SD"}, {"Winchester 1866"}, {"PDW"}, {"Hunting Knife"}, {"Hatchet"}, {"Pizza"}, {"Morphine"}, {"Soda Bottle"}, {"Empty Gas Canister"}, {"Full Gas Canister"}, {"Roadflare"}, {"Milk"}, {"PDW Mag"}, {"MP5A5 Mag"}, {"AK Mag"}, {"M4 Mag"}, {"Tear Gas"}, {"Grenade"}, {"Desert Eagle"}, {"Sawn-Off Shotgun"}, {"SPAZ-12 Combat Shotgun"}, {"MP5A5"}, {"Watch"}, {"Medic Kit"}, {"Heat Pack"}, {"Lee Enfield"}, {"PDW"}, --{"TEC-9"}, {"AK-47"}, --{"M136 Rocket Launcher"}, {"Blood Bag"}, {"GPS"}, {"Map"}, {"Toolbox"}, {"Wire Fence"}, {"Tire"}, {"Engine"}, {"Tank Parts"}, {"M136 Rocket"}, {"CZ 550 Mag"}, {"Lee Enfield Mag"}, {"M4"}, {"CZ 550"}, --{"Heat-Seeking RPG"}, {"Satchel"}, {"Infrared Goggles"}, {"Night Vision Goggles"}, {"Tent"}, {"Raw Meat"}, {"Cooked Meat"}, {"Camouflage Clothing"}, {"Ghillie Suit"}, {"Civilian Clothing"}, {"Survivor Clothing"}, {"Painkiller"}, {"Binoculars"}, {"Empty Water Bottle"}, {"Empty Soda Cans"}, {"Scruffy Burgers"}, {"1866 Slug"}, {"2Rnd. Slug"}, {"SPAZ-12 Pellet"}, {"Radio Device"}, {"Baseball Bat"}, {"Shovel"}, {"Golf Club"}, {"Radio Device"}, {"Parachute"}, } function playerLogin(username, pass, player) local playerID = getAccountData(getPlayerAccount(player),"playerID") account = getPlayerAccount(player) local x,y,z = getAccountData(account,"last_x"),getAccountData(account,"last_y"),getAccountData(account,"last_z") local skin = getAccountData(account,"skin") createZombieTable (player) if getAccountData(account,"isDead") then spawnDayZPlayer(player) return end spawnPlayer (player, x,y,z+0.5, math.random(0,360), skin, 0, 0) setElementFrozen(player, true) fadeCamera (player, true) setCameraTarget (player, player) setTimer( function(player) if isElement(player) then setElementFrozen(player, false) end end,500,1,player) playerCol = createColSphere(x,y,z,1.5) setElementData(player,"playerCol",playerCol) attachElements ( playerCol, player, 0, 0, 0 ) setElementData(playerCol,"parent",player) setElementData(playerCol,"player",true) for i, v in ipairs ( clothSlots ) do local elementData = getAccountData(account,v) setElementData(player,v,elementData) if type(elementData) == "string" then local objData = clothesObjects[elementData] if objData then local helmet = createObject(objData[1], x, y, z) setElementData ( source, v.."Object", helmet ) attachElementToBone(helmet, source, objData[2], objData[3], objData[4], objData[5], objData[6], objData[7], objData[8]) end end end for i,data in ipairs(playerDataTable) do local elementData = getAccountData(account,data[1]) if not elementData then if data[1] == "brokenbone" or data[1] == "pain" or data[1] == "cold" or data[1] == "infection" or data[1] == "currentweapon_1" or data[1] == "currentweapon_2" or data[1] == "currentweapon_3" or data[1] == "bandit" then elementData = elementData else elementData = 0 end end setElementData(player,data[1],elementData) end setElementData(player,"logedin",true) --Weapons --Old Weapons local weapon = getElementData(player,"currentweapon_1") if weapon then local ammoData,weapID = getWeaponAmmoType (weapon) giveWeapon(player,weapID,getElementData(player,ammoData), true ) end local weapon = getElementData(player,"currentweapon_2") if weapon then local ammoData,weapID = getWeaponAmmoType (weapon) giveWeapon(player,weapID,getElementData(player,ammoData), false ) end local weapon = getElementData(player,"currentweapon_3") if weapon then local ammoData,weapID = getWeaponAmmoType (weapon) giveWeapon(player,weapID,getElementData(player,ammoData), false ) end setElementModel(player, getElementData(player,"skin")) setElementData(player,"admin",getAccountData(account,"admin") or false) setElementData(player,"supporter",getAccountData(account,"supporter") or false) triggerClientEvent(player, "onClientPlayerDayZLogin", player) end addEvent("onPlayerDayZLogin", true) addEventHandler("onPlayerDayZLogin", getRootElement(), playerLogin) function playerRegister(username, pass, player) local number = math.random(table.size(spawnPositions)) local x,y,z = spawnPositions[number][1],spawnPositions[number][2],spawnPositions[number][3] spawnPlayer (player, x,y,z, math.random(0,360), 281, 0, 0) fadeCamera (player, true) setCameraTarget (player, player) playerCol = createColSphere(x,y,z,1.5) attachElements ( playerCol, player, 0, 0, 0 ) setElementData(playerCol,"parent",player) setElementData(playerCol,"player",true) ---------------------------------- --Player Items on Start for i,data in ipairs(playerDataTable) do if data[1] =="Bandaj" then setElementData(player,data[1],2) elseif data[1] =="Ağrı Kesici" then setElementData(player,data[1],1) elseif data[1] =="MAX_Slots" then setElementData(player,data[1],8) elseif data[1] =="skin" then setElementData(player,data[1],281) elseif data[1] =="blood" then setElementData(player,data[1],12000) elseif data[1] =="temperature" then setElementData(player,data[1],37) elseif data[1] =="brokenbone" then setElementData(player,data[1],false) elseif data[1] =="pain" then setElementData(player,data[1],false) elseif data[1] =="cold" then setElementData(player,data[1],false) elseif data[1] =="infection" then setElementData(player,data[1],false) elseif data[1] =="food" then setElementData(player,data[1],100) elseif data[1] =="thirst" then setElementData(player,data[1],100) elseif data[1] =="currentweapon_1" then setElementData(player,data[1],false) elseif data[1] =="currentweapon_2" then setElementData(player,data[1],false) elseif data[1] =="currentweapon_3" then setElementData(player,data[1],false) elseif data[1] =="bandit" then setElementData(player,data[1],false) elseif data[1] =="humanity" then setElementData(player,data[1],2500) else setElementData(player,data[1],0) end end account = getAccount(username) local value = getAccounts() local value = #value setElementData(player,"playerID",value+1) setAccountData(account,"playerID",value+1) setElementData(player,"logedin",true) createZombieTable (player) end addEvent("onPlayerDayZRegister", true) addEventHandler("onPlayerDayZRegister", getRootElement(), playerRegister) function saveAccounts () -- Save in the database local account = getPlayerAccount(source) if account then for i,data in ipairs(playerDataTable) do setAccountData(account,data[1],getElementData(source,data[1])) end for i, v in ipairs ( clothSlots ) do setAccountData(account,v,getElementData(source,v)) end local x,y,z = getElementPosition(source) setAccountData(account,"last_x",x) setAccountData(account,"last_y",y) setAccountData(account,"last_z",z) destroyElement(getElementData(source,"playerCol")) end setElementData(source,"logedin",false) end addEventHandler ( "onPlayerQuit", getRootElement(), saveAccounts ) function saveAccounts2 () -- Save in the database for i, player in ipairs(getElementsByType("player")) do local account = getPlayerAccount(player) if account then for i,data in ipairs(playerDataTable) do setAccountData(account,data[1],getElementData(player,data[1])) end for i, v in ipairs ( clothSlots ) do setAccountData(account,v,getElementData(source,v)) end local x,y,z = getElementPosition(player) setAccountData(account,"last_x",x) setAccountData(account,"last_y",y) setAccountData(account,"last_z",z) end --setElementData(player,"logedin",false) end end addEventHandler ( "onResourceStop", getRootElement(), saveAccounts2 ) -------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------------------------- local vehicleDataTable = { {"MAX_Slots"}, {"Tire_inVehicle"}, {"Engine_inVehicle"}, {"Parts_inVehicle"}, {"fuel"}, {"Wood Pile"}, {"Bandage"}, {"Water Bottle"}, {"Pasta Can"}, {"Beans Can"}, {"Burger"}, {"Box of Matches"}, {"M1911 Mag"}, {"M1911"}, {"M9 SD"}, {"Desert Eagle Mag"}, {"Winchester 1866"}, {"PDW"}, {"Hunting Knife"}, {"Morphine"}, {"Hatchet"}, {"Pizza"}, {"Soda Bottle"}, {"Empty Gas Canister"}, {"Full Gas Canister"}, {"Roadflare"}, {"Milk"}, {"PDW Mag"}, {"MP5A5 Mag"}, {"AK Mag"}, {"M4 Mag"}, {"Tear Gas"}, {"Grenade"}, {"Desert Eagle"}, {"Sawn-Off Shotgun"}, {"SPAZ-12 Combat Shotgun"}, {"MP5A5"}, {"Watch"}, {"Medic Kit"}, {"Heat Pack"}, {"Lee Enfield"}, --{"TEC-9"}, {"AK-47"}, --{"M136 Rocket Launcher"}, {"Blood Bag"}, {"GPS"}, {"Map"}, {"Toolbox"}, {"Wire Fence"}, {"Tire"}, {"Engine"}, {"Tank Parts"}, {"M136 Rocket"}, {"CZ 550 Mag"}, {"Lee Enfield Mag"}, {"M4"}, {"CZ 550"}, --{"Heat-Seeking RPG"}, {"Satchel"}, {"Infrared Goggles"}, {"Night Vision Goggles"}, {"Tent"}, {"Raw Meat"}, {"Cooked Meat"}, {"Camouflage Clothing"}, {"Ghillie Suit"}, {"Civilian Clothing"}, {"Survivor Clothing"}, {"Painkiller"}, {"Binoculars"}, {"Empty Water Bottle"}, {"Empty Soda Cans"}, {"Scruffy Burgers"}, {"1866 Slug"}, {"2Rnd. Slug"}, {"SPAZ-12 Pellet"}, {"Assault Pack (ACU)"}, {"Alice Pack"}, {"Czech Backpack"}, {"Coyote Backpack"}, {"Radio Device"}, {"Baseball Bat"}, {"Shovel"}, {"Golf Club"}, {"Parachute"}, } --local vehicleManager = getAccount("vehicleManager","ds4f9$") --if not vehicleManager then --addAccount("vehicleManager","ds4f9$") --end function saveallvehicles(ps,command) counter = 0 counterTent = 0 --counterSafe = 0 local vehicleManager = getAccount("vehicleManager","Lfybkxbybxrby112") --local vehicleManager = getAccount("vehicleManager") for i, col in ipairs (getElementsByType("colshape")) do local veh = getElementData(col,"vehicle") local helicrash = getElementData(col,"helicrash") local hospitalbox = getElementData(col,"hospitalbox") --local ammobox = getElementData(col,"ammobox") local tent = getElementData(col,"tent") -- local safe = getElementData ( col,"safe") if veh and not helicrash or veh and not hospitalbox then if tent then counterTent = counterTent +1 account = getAccount("tent_number_"..counterTent,"Lfybkxbybxrby112") or false if not account then account = addAccount("tent_number_"..counterTent,"Lfybkxbybxrby112") end local tent = getElementData(col,"parent") local x,y,z = getElementPosition(tent) local rx,ry,rz = getElementRotation(tent) setAccountData(account,"last_x",x) setAccountData(account,"last_y",y) setAccountData(account,"last_z",z) setAccountData(account,"last_rx",rx) setAccountData(account,"last_ry",ry) setAccountData(account,"last_rz",rz) for i, data in ipairs(vehicleDataTable) do setAccountData(account,data[1],getElementData(col,data[1])) end else counter = counter +1 account = getAccount("vehicle_number_"..counter,"ds4f9$") or false if not account then account = addAccount("vehicle_number_"..counter,"ds4f9$") end setAccountData(account,"spawn_x",getElementData(col,"spawn")[2]) setAccountData(account,"spawn_y",getElementData(col,"spawn")[3]) setAccountData(account,"spawn_z",getElementData(col,"spawn")[4]) for i, data in ipairs(vehicleDataTable) do setAccountData(account,data[1],getElementData(col,data[1])) end local vehicle = getElementData(col,"parent") local model = getElementModel(vehicle) local x,y,z = getElementPosition(vehicle) local rx,ry,rz = getElementRotation(vehicle) local health = getElementHealth(vehicle) setAccountData(account,"last_x",x) setAccountData(account,"last_y",y) setAccountData(account,"last_z",z) setAccountData(account,"last_rx",rx) setAccountData(account,"last_ry",ry) setAccountData(account,"last_rz",rz) setAccountData(account,"health",health) setAccountData(account,"model",model) setAccountData(account,"isExploded",getElementData(vehicle,"isExploded") or false) end end end setAccountData(vehicleManager,"vehicleamount",counter) setAccountData(vehicleManager,"tentamount",counterTent) end addEventHandler("onResourceStop", getResourceRootElement(getThisResource()), saveallvehicles) function doBackup () --outputChatBox ("Резервное копирование сервера. Просим не выходить с сервера во Yaşam Süresi NETWORK.",getRootElement(),27, 89, 224,true) saveallvehicles() --outputChatBox ("Продолжайте!",getRootElement(),27, 89, 224,true) end function checkDoBackup () if gameplayVariables["backupenabled"] then setTimer(doBackup,gameplayVariables["backupinterval"],0) end end checkDoBackup() function createVehicleOnServerStart() local vehicleManager = getAccount("vehicleManager","ds4f9$") for i = 1, (getAccountData(vehicleManager,"vehicleamount") or 0) do wastedVehicle = false vehicle = getAccount("vehicle_number_"..i,"ds4f9$") if not vehicle then break end if getAccountData(vehicle,"isExploded") == true then setAccountData(vehicle,"health",1000) wastedVehicle = true end local veh = createVehicle(getAccountData(vehicle,"model"),getAccountData(vehicle,"last_x"),getAccountData(vehicle,"last_y"),getAccountData(vehicle,"last_z"),getAccountData(vehicle,"last_rx"),getAccountData(vehicle,"last_ry"),getAccountData(vehicle,"last_rz")) vehCol = createColSphere(getAccountData(vehicle,"last_x"),getAccountData(vehicle,"last_y"),getAccountData(vehicle,"last_z"),4) attachElements ( vehCol, veh, 0, 0, 0 ) setElementData(vehCol,"parent",veh) setElementData(veh,"parent",vehCol) setElementData(vehCol,"vehicle",true) setElementData(vehCol,"MAX_Slots",getAccountData(vehicle,"MAX_Slots")) xxx,yyy,zzz = getAccountData(vehicle,"spawn_x"),getAccountData(vehicle,"spawn_y"),getAccountData(vehicle,"spawn_z") setElementData(vehCol,"spawn",{getAccountData(vehicle,"model"),xxx,yyy,zzz}) if wastedVehicle then if getAccountData(vehicle,"model") == 497 then item_id = math.random(table.size(hunterSpawns)) xxx,yyy,zzz = hunterSpawns[item_id][1],hunterSpawns[item_id][2],hunterSpawns[item_id][3] end if getAccountData(vehicle,"model") == 487 then local item_id = math.random(table.size(maverikSpawns)) x,y,z = maverikSpawns[item_id][1],maverikSpawns[item_id][2],maverikSpawns[item_id][3] end setElementPosition(veh,xxx,yyy,zzz+1) setElementRotation(veh,0,0,0) --Motor + Tekerlek + Yakıt Deposu local tires,engine,parts = getVehicleAddonInfos (getElementModel(veh)) setElementData(vehCol,"Tekerlek_inVehicle",math.random(0,tires)) setElementData(vehCol,"Motor_inVehicle",math.random(0,engine)) setElementData(vehCol,"Parts_inVehicle",math.random(0,parts)) end --others setElementData(vehCol,"fuel",getAccountData(vehicle,"fuel")) if not wastedVehicle then for i, data in ipairs(vehicleDataTable) do setElementData(vehCol,data[1],getAccountData(vehicle,data[1])) end else if getElementModel(veh) == 433 or getElementModel(veh) == 470 then for i,items in ipairs(lootItems["helicrashsides"]) do local randomNumber = math.random(1,10) if randomNumber == 5 then setElementData(vehCol,items[1],math.random(1,2)) end end end setElementData(vehCol,"fuel",10) end end for i = 1, (getAccountData(vehicleManager,"tentamount") or 0) do tentData = getAccount("tent_number_"..i,"ds4f9$") if not tentData then break end tent = createObject(3243,getAccountData(tentData,"last_x"),getAccountData(tentData,"last_y"),getAccountData(tentData,"last_z"),0,0,(getAccountData(tentData,"last_rz") or 0)) setObjectScale(tent,1.3) tentCol = createColSphere(getAccountData(tentData,"last_x"),getAccountData(tentData,"last_y"),getAccountData(tentData,"last_z"),4) attachElements ( tentCol, tent, 0, 0, 0 ) setElementData(tentCol,"parent",tent) setElementData(tent,"parent",tentCol) setElementData(tentCol,"tent",true) setElementData(tentCol,"vehicle",true) setElementData(tentCol,"MAX_Slots",100) for i, data in ipairs(vehicleDataTable) do setElementData(tentCol,data[1],getAccountData(tentData,data[1])) end end end addEventHandler("onResourceStart", getResourceRootElement(getThisResource()), createVehicleOnServerStart)
myonlake Posted December 28, 2016 Posted December 28, 2016 As far as I can see, there is no table for clothSlots, which means the for loop will cause an error. I don't know if it's relevant (probably is, or at least was), but as a temporary fix, you can just comment out that for loop. If I helped you, please click the like button on the right Thanks!
myonlake Posted December 28, 2016 Posted December 28, 2016 (edited) 1 minute ago, Gabriele01 said: How to fix? @myonlake Well, I don't have a fix for you. What I do have is a temporary solution to keep the script rolling. --[[for i, v in ipairs ( clothSlots ) do setAccountData(account,v,getElementData(source,v)) end]] Just comment out that part like so (and any other parts which use clothSlots). Edited December 28, 2016 by myonlake If I helped you, please click the like button on the right Thanks!
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now