Jump to content

br99pedro

Members
  • Posts

    10
  • Joined

  • Last visited

Everything posted by br99pedro

  1. Um recurso é uma pasta, o arquivo nela é o class.lua local XML = xmlLoadFile('connect.xml') local SET = xmlNodeGetChildren(XML)[1] local GET = xmlNodeGetAttribute local name,host,user,pass = GET(SET,'name'),GET(SET,'host'),GET(SET,'user'),GET(SET,'pass') xmlUnloadFile(XML) local Connect = Connection('mysql',('dbname=%s;host=%s'):format(name,host),user,pass) if Connect then outputServerLog('Successfully connect to MySQL server!') local mysql = {} mysql.connect = Connect function mysql.query(query,...) local qhandle = Connect:query(query,...) local r1,r2,r3 = qhandle:poll(-1) if not r1 then outputServerLog(('Query failed: errCode: %d - errMsg: %s'):format(r2,r3)) return false end return r1,r2,r3 end function mysql.exec(query,...) return Connect:exec(query,...) end local admin = { 'B95DA274DD099F546BA0C174D4BE1FB3', '8F6BF86822B5B77D4C34DFA249A595B3', 'CF62F88A8428C6B60B4A44E9BB930EB3', '05B31534456419BB563E021D675171A1', '8954600385BB91CF6E860EDE1E8C8292', } function mysql.server() local query = mysql.query('SELECT * FROM `central` WHERE `name` = ?',getServerName()) if query then if query[1] then return query[1] else mysql.exec('INSERT INTO `central` (`name`,`admin`) VALUES (?,?)',getServerName(),toJSON(admin)) return mysql.server() end end end mysql.server = mysql.server() function MySQL() return mysql end else outputServerLog('Couldnt connect to MySQL server!') getThisResource():stop() end e o connect.xml que ele conecta é este <connect> <set name='dayz' host='127.0.0.1' user='root' pass=''/> </connect> <connect> <set name='name' host='127.0.0.1' user='root' pass=''/> </connect> Obviamente eu mudei os nomes da db e a senha pra nao correr risco, mas garanto que está tudo correto no arquivo original.
  2. Can any help me?
  3. This is my problem ERROR: dayzmode/lib/team/s_team.lua:1: call: failed to call 'dayzconnect:MySQL' ERROR: dayzmode/lib/system/player.lua:1: call: failed to call 'dayzconnect:players' Im using this call ( getResourceFromName ( "dayzconnect" ), "MySQL", 1, "2", "three" ) <export function="MySQL"/> <include resource="dayzmap"/> <include resource="dayzmode"/> <include resource="dayzbase"/> <include resource="dayzcache"/> <include resource="object_preview"/> I do not know what to do anymore
  4. Help with this error! [19-05-08 19:57:15] ERROR: dayzconnect/class.lua:6: bad argument #1 to 'format' (string expected, got boolean) local XML = xmlLoadFile('connect.xml') local SET = xmlNodeGetChildren(XML)[1] local GET = xmlNodeGetAttribute local name,host,user,pass = GET(SET,''),GET(SET,''),GET(SET,''),GET(SET,'') xmlUnloadFile(XML) local Connect = Connection('mysql',('dbname=%s;host=%s'):format(name,host),user,pass) if Connect then outputServerLog('Successfully connect to MySQL server!') local mysql = {} mysql.connect = Connect function mysql.query(query,...) local qhandle = Connect:query(query,...) local r1,r2,r3 = qhandle:poll(-1) if not r1 then outputServerLog(('Query failed: errCode: %d - errMsg: %s'):format(r2,r3)) return false end return r1,r2,r3 end function mysql.exec(query,...) return Connect:exec(query,...) end local admin = { 'B95DA274DD099F546BA0C174D4BE1FB3', '8F6BF86822B5B77D4C34DFA249A595B3', 'CF62F88A8428C6B60B4A44E9BB930EB3', '05B31534456419BB563E021D675171A1', '8954600385BB91CF6E860EDE1E8C8292', } function mysql.server() local query = mysql.query('SELECT * FROM `central` WHERE `name` = ?',getServerName()) if query then if query[1] then return query[1] else mysql.exec('INSERT INTO `central` (`name`,`admin`) VALUES (?,?)',getServerName(),toJSON(admin)) return mysql.server() end end end mysql.server = mysql.server() function MySQL() return mysql end else outputServerLog('Couldnt connect to MySQL server!') getThisResource():stop() end
  5. <meta><download_priority_group>1</download_priority_group><oop>true</oop> <info author='iPanda' type='gamemode'/> <file src='connect.xml'/> <script src='class.lua'/> <script src='whitelist.lua'/> <export function='MySQL'/> <include resource='dayzbase'/> <include resource='dayzcache'/> <include resource='dayzconnect'/> <include resource='dayzedf'/> <include resource='dayzmap'/> <include resource='dayzmode'/> <include resource='dayzshop'/> <include resource='object_preview'/> </meta> This is my meta.xml, seems to be all right
  6. Hi, I'm having some problems and I'm having a hard time resolving them. This is the .log ================================================================== = Multi Theft Auto: San Andreas v1.5.6 [64 bit] ================================================================== = Server name : Default MTA Server = Server IP address: auto = Server port : 22003 = = Log file : ..o_linux_x64/mods/deathmatch/logs/server.log = Maximum players : 32 = HTTP port : 22005 = Voice Chat : Disabled = Bandwidth saving : Medium ================================================================== [19-05-03 19:18:26] Resources: 200 loaded, 0 failed [19-05-03 19:18:27] MODULE: Loaded "MySQL 5.0 database module" (0.50) by "Alberto Alonso <[email protected]>" [19-05-03 19:18:27] Starting resources... [19-05-03 19:18:27] Server minclientversion is now 1.5.6-9.16588.0 [19-05-03 19:18:27] INFO: MAPMANAGER: Some important ACL permissions are missing. To ensure the correct functioning of Mapmanager, please write: aclrequest allow mapmanager all [19-05-03 19:18:28] Successfully connect to MySQL server! [19-05-03 19:18:28] ERROR: dayzmode/lib/team/s_team.lua:1: call: failed to call 'dayzconnect:MySQL' [string "?"] [19-05-03 19:18:28] ERROR: dayzmode/lib/system/player.lua:1: call: failed to call 'dayzconnect:MySQL' [string "?"] [19-05-03 19:18:28] ERROR: dayzmode/lib/system/player.lua:221: attempt to index local 'mysql' (a boolean value) [19-05-03 19:18:36] Gamemode 'dayzconnect' started. [19-05-03 19:18:36] Querying MTA master server... success! (Auto detected IP:149.56.252.100) [19-05-03 19:18:36] Authorized serial account protection is enabled for the ACL group(s): `Admin` See https://mtasa.com/authserial [19-05-03 19:18:36] WARNING: <owner_email_address> not set [19-05-03 19:18:36] Server started and is ready to accept connections! [19-05-03 19:18:36] To stop the server, type 'shutdown' or press Ctrl-C [19-05-03 19:18:36] Type 'help' for a list of commands. [19-05-03 19:18:55] Server stopped! [19-05-03 19:18:55] Stopping resources............................ [19-05-03 19:18:55] MODULE: Unloaded "MySQL 5.0 database module" (0.50) by "Alberto Alonso <[email protected]>" [19-05-03 19:18:55] Closing SQLite3 database This is the s_team.lua local mysql = exports.dayzconnect:MySQL() local function getDBTeam(name,host) local query = mysql.query('SELECT * FROM `teams` WHERE `name` = ?',name) if query then if query[1] then if host then outputDebugString(123) return false end return query[1] else mysql.exec('INSERT INTO `teams` (`name`,`host`) VALUES (?,?)',name,host) return getDBTeam(name) end end end local language = { ['createteam'] = {'Created team: ','Создан клан: '}, ['moreinfo'] = {'More info: ','Больше информации: '}, ['doesnotnewteam'] = {'The team with the same name is already registered!','Команда с таким именем уже зарегистрирована!'}, ['ansinviteteam'] = {'Write the chat /yes or /no to accept or refuse an invitation','Напишите в чат /yes или /no чтобы принять или отклонить приглашение'}, ['sendinviteonlyhost'] = {'Send an invitation can only be a team leader!','Отправлять приглашения может только лидер команды!'}, ['playeralreadyteam'] = {'The player is already a member of another team! He must leave her to get an invitation.','Игрок уже состоит в другой команде! Ему необходимо покинуть её, чтобы получить приглашение.'}, ['writebadname'] = {'The name is entered incorrectly!','Имя введено неверно!'}, ['nocreateteambecauseonteam'] = {'You are already a member of a team!','Вы уже состоите в команде!'}, ['leaveteam'] = {'You left the team: ','Вы покинули команду: '}, ['addmode'] = {'Added a new chat mode: team','Добавлен новый режим чата: team'}, ['usemode'] = {'Use Ctrl, to switch the chat mode','Используйте Ctrl, чтобы переключать режимы чата'}, ['usecmd'] = {'Use commands:','Используйте команды:'}, ['info1'] = {'/addplayer PLAYER_NAME [add a player to the team]','/addplayer ИМЯ_ИГРОКА [добавить игрока в команду]'}, ['info2'] = {'/leaveteam [leave team]','/leaveteam [покинуть команду]'}, } local function LANGUAGE(player,name) local lan = language[name] if lan then return lan[player:getData('options',false).language] or lan[1] end return name end local function isPlayerHostOfTeam(player,team) local team = getRegTeam(name) return player:getSerial() == team.host end local function setTeam(player,set) local oldTeam = player:getData('team') player:setData('team',set) player:setData('inviteteam',nil) if set then outputChat(player,LANGUAGE(player,'addmode'),'orange') outputChat(player,LANGUAGE(player,'usemode'),'orange') outputChat(player,LANGUAGE(player,'moreinfo')..'/infoteam','orange') elseif oldTeam then outputChat(player,LANGUAGE(player,'leaveteam')..oldTeam,'orange') end end local function newTeam(host,name) if host:getData('team') then outputChat(host,LANGUAGE(host,'nocreateteambecauseonteam'),'red') else local team = getDBTeam(name,host:getSerial()) if not team then outputChat(host,LANGUAGE(host,'doesnotnewteam'),'red') else outputChat(host,LANGUAGE(host,'createteam')..name,'orange') setTeam(host,name) end end end local function invitePlayerTeam(host,inviteName) local team = host:getData('team') local player = getPlayerFromName(inviteName) if player then if player:getData('team') then outputChat(host,LANGUAGE(host,'playeralreadyteam'),'red') else player:setData('inviteteam',team) outputChat(player,LANGUAGE(player,'ansinviteteam'),'orange') end else outputChat(host,LANGUAGE(host,'writebadname'),'red') end end local function infoTeam(player) outputChat(player,LANGUAGE(player,'usecmd'),'orange') outputChat(player,LANGUAGE(player,'info1'),'orange') outputChat(player,LANGUAGE(player,'info2'),'orange') end function teamCommand(player,cmd,comment) if cmd == 'createteam' then if #comment > 2 and #comment < 32 then return newTeam(player,comment) end elseif (cmd == 'yes' or cmd == 'no') and player:getData('inviteteam') then return setTeam(player,(cmd == 'yes' and player:getData('inviteteam'))) elseif cmd == 'addplayer' then return invitePlayerTeam(player,comment) elseif cmd == 'leaveteam' then return setTeam(player) elseif cmd == 'infoteam' then return infoTeam(player) end end This is the player.lua local mysql = exports.dayzconnect:MySQL() local function dbAccount(player,a) local a = a or {} local dbtype = mysql.server.type local serial = player:getSerial() local query,result = mysql.query('SELECT `serial` FROM '..dbtype..' WHERE `serial` = ?',serial) if query then if result > 0 then return (a.check and mysql.query('SELECT `serial` FROM '..dbtype..' WHERE `serial` = ?',serial)[1]) or true elseif a.create and mysql.exec('INSERT INTO '..dbtype..' (`name`,`serial`,`ip`) VALUES (?,?,?)',player:getName(),serial,player:getIP()) then return false end end end local defaultData = { ['blood'] = 5000, ['thirst'] = 80, ['hunger'] = 75, ['hands'] = false, ['pain'] = false, ['fracture'] = false, ['temperature'] = 36.6, ['damp'] = 0, ['bleeding'] = {0}, } local dataSave = { ['options']=true, ['face']=true, ['team']=true, ['coins']=true, ['spawnclothes']=true, } for name,_ in pairs(defaultData) do dataSave[name] = true end local function dbBackup() local backupPass = '%DayZ+iPanda=Love%' return Account('backup',backupPass) or addAccount('backup',backupPass) end local function setItem(item,source) if item then item.id = nil if source then item.id = tostring(source)..tostring(item) end if type(item.o) == 'table' then local sx,sy = itemSize(item) for n=1,sx*sy do if item.o[n] then item.o[n].id = nil if source then item.o[n].id = tostring(source)..tostring(item.o[n]) end if itemType(item.o[n].n) == 'cont' and type(item.o) == 'table' then local sx,sy = itemSize(item.o[n]) for n2=1,sx*sy do if item.o[n].o[n2] then item.o[n].o[n2].id = nil if source then item.o[n].o[n2].id = tostring(source)..tostring(item.o[n].o[n2]) end else if source then item.o[n].o[n2] = nil else item.o[n].o[n2] = false end end end end else if source then item.o[n] = nil else item.o[n] = false end end end end else item = false end return item end local function playerDefault(player) local playerpoints = getElementsByType('playerpoints') local x,y,z = getElementPosition(playerpoints[math.random(#playerpoints)]) player:spawn(x,y,z+0.1,math.random(360),0,0) for data,value in pairs(defaultData) do player:setData(data,value) end local inventory = resetClothes(player,player:getData('spawnclothes')) for i,item in ipairs(inventory) do player:setData(itemType(item.n),item) if type(item.o) == 'table' then table.insert(inventory[i].o,{n='battery',c=1,id=tostring(player)..'battery'}) table.insert(inventory[i].o,{n='wpn422flash',c=1,id=tostring(player)..'wpn422flash'}) end end player:setData('inventory',inventory) player:setData('pockets',{}) player:fadeCamera(true,4) local avatar = player:getData('avatar') if avatar and isElement(avatar) then avatar:setData('face',player:getData('face')) end end local function saveAccount(player) if player:getData('logedin') then player:setAnimation() player:setData('giveplayer',false) if player:isDead() then playerDefault(player) end local x,y,z = getElementPosition(player) if player:isInWater() then z = math.max(z,0)+10 end local pos = toJSON({math.round(100,x,y,z,getPedRotation(player))}) local data = {} for name,value in pairs(player:getAllData()) do if dataSave[name] then if name == 'hands' and value then value = setItem(value) end data[name] = value end end local data = toJSON(data) local inventory = {} for i,item in ipairs(player:getData('inventory')) do inventory[i] = setItem(item) end local inventory = toJSON(inventory) dbAccount(player,{create=true}) mysql.exec( 'UPDATE '..mysql.server.type..' SET `name` = ?, `ip` = ?, `pos` = ?, `data` = ?, `inventory` = ? WHERE `serial` = ?', player:getName(),player:getIP(),pos,data,inventory,player:getSerial() ) end end local function playerLogin(player,accData) local x,y,z,rot = unpack(fromJSON(accData.pos)) setElementPosition(player,x,y,z+0.1) setPedRotation(player,rot) player:setCameraTarget(player) player:fadeCamera(true,4) end local function playerSpawn(player) playerDefault(player) player:setCameraTarget(player) saveAccount(player) end addEvent('Spawn',true) addEventHandler('Spawn',root,playerSpawn) local function playerWasted(ammo,attacker,weapon,bodypart) source:fadeCamera(false,0) triggerClientEvent(source,'setBlackScreen',source,'You are dead') local x,y,z = getElementPosition(source) source:removeFromVehicle() if not source:isInWater() then local ped = Ped(source:getModel(),x,y,z,getPedRotation(source)) ped:removeClothes(0) ped:removeClothes(2) ped:removeClothes(3) ped:setData('face',source:getData('face')) local hands = source:getData('hands') if hands then triggerEvent('createItem',ped,hands) end local loot = {} for i,item in ipairs(source:getData('inventory')) do loot[i] = setItem(item,ped) source:setData(itemType(item.n),false) ped:setData(itemType(item.n),item) end local data = { loot = loot, } ped:setData('data',data) ped:kill() end source:setPosition(6000,6000,0) --playerSpawn(source) end addEventHandler('onPlayerWasted',root,playerWasted) local function destroyAvatar(player) local avatar = player:getData('avatar') if avatar and isElement(avatar) then avatar:destroy() end end local function createAvatar(player) destroyAvatar(player) local ped = Ped(0,6000,6000,10) ped:setFrozen(true) ped:removeClothes(0) ped:removeClothes(2) ped:removeClothes(3) ped:setData('face',player:getData('face')) ped:setData('noattach',true) player:setData('avatar',ped) end addEventHandler('onPlayerQuit',root,function() saveAccount(source) destroyAvatar(source) end) function mysql.destroy() mysql.connect:destroy() mysql.connect = nil outputServerLog('Destroy connect to MySQL server!') end addEventHandler('onResourceStop',resourceRoot,function() setGameSpeed(0.1) for _,player in ipairs(getElementsByType('player')) do if player:getData('logedin') then saveAccount(player) player:setFrozen(true) end end mysql.destroy() local backup = dbBackup() saveVehicles(backup) saveTents(backup) end) addEventHandler('onResourceStart',resourceRoot,function() for _,player in ipairs(getElementsByType('player')) do if player:getData('logedin') then createAvatar(player) end player:setFrozen(false) end local backup = dbBackup() if backup then if backup:getData('vehicles') then for _,data in ipairs(fromJSON(backup:getData('vehicles'))) do local vehpart = {} local vehdoor = {} for i=0,5 do vehpart[i] = data.vehpart[i+1] vehdoor[i] = data.vehdoor[i+1] end data.vehpart = vehpart data.vehdoor = vehdoor createVeh(data) end end if backup:getData('tents') then for _,data in ipairs(fromJSON(backup:getData('tents'))) do createTent(data) end end end end) --[[ addEventHandler('onPlayerLogin',root,function() -- if not AdminSerial[source:getSerial()] then -- return cancelEvent(true) -- end end) --]] addEventHandler('onPlayerStealthKill',root,function()cancelEvent()end) addEventHandler('onPlayerChangeNick',root,function()cancelEvent()end) addEventHandler('onPlayerJoin',root,function() for _,stat in ipairs({24,69,70,71,72,73,74,75,76,77,78,79,160,229,230}) do if stat == 69 or stat == 73 or stat == 75 then setPedStat(source,stat,500) else setPedStat(source,stat,999) end end setPedStat(source,23,300) setPedFightingStyle(source,5) for _,control in ipairs({'look_behind','next_weapon','previous_weapon','vehicle_look_behind','vehicle_look_right','vehicle_look_left','radar','action','change_camera'}) do toggleControl(source,control,false) end source:showHudComponent('all',false) source:showHudComponent('crosshair',true) source:setNametagShowing(false) showChat(source,false) source:removeClothes(0) source:removeClothes(2) source:removeClothes(3) local options = { language = 1, vperson = 3, } source:setData('options',options) local inventory,spawnclothes = resetClothes(source) source:setData('spawnclothes',spawnclothes) source:setData('inventory',inventory) source:setData('pockets',{}) source:setData('chatbox',{}) source:setData('coins',0) local db = dbAccount(source,{check=true}) if db then source:setDimension(db.id) for name,value in pairs(fromJSON(db.data)) do if name == 'hands' and value then value = setItem(value,source) end source:setData(name,value) end local inventory = {} for i,item in ipairs(fromJSON(db.inventory)) do inventory[i] = setItem(item,source) end source:setData('inventory',inventory) else for i,player in ipairs(getElementsByType('player')) do if player == source then source:setDimension(i) break end end end for i,admin in ipairs(fromJSON(mysql.server.admin)) do if admin == source:getSerial() then source:setData('admin','admin'..i) end end end) function spawnOrLogin(player) local accData = dbAccount(player,{check=true}) if accData and accData.pos then playerLogin(player,accData) else playerSpawn(player) end createAvatar(player) player:setDimension(0) end That's it, I do not know what else to do.
  7. Hello guys, today i came across this error, witch i can not correct at all, i believe it may be a lack of attention. The server is all set, i enter, but my character stands there, unable to play. If anyone can help me as i correct this error, i will be very grateful. Tranks. function mysql.getAccount(player,a) local a = a or {} local dbtype = GET_SERVER_INFO.type local serial = player:getSerial() local query,result = mysql.query('SELECT `serial` FROM '..dbtype..' WHERE `serial` = ?',serial) if query then if result > 0 then return (a.check and mysql.query('SELECT * FROM '..dbtype..' WHERE `serial` = ?',serial)[1]) or true elseif a.create and mysql.exec('INSERT INTO '..dbtype..' (`name`,`serial`,`ip`) VALUES (?,?,?)',player:getName(),serial,play[2019-04-30 18:04:50] ERROR: dayzmode\lib\team\s_team.lua:1: call: failed to call 'dayzconnect:MySQL' [string "?"] [2019-04-30 18:04:51] ERROR: dayzmode\lib\system\player.lua:1: call: failed to call 'dayzconnect:MySQL' [string "?"] [2019-04-30 18:04:51] ERROR: dayzmode\lib\system\player.lua:221: attempt to index local 'mysql' (a boolean value)
  8. Hello, I bought a Russian gamemode, but the files came strange, and I do not know where to put each file. I would like to know how to create a MySQL based server and where to put the files. After the purchase, I received these files. https://imgur.com/uN0eBnB https://imgur.com/HavvDGn The server is from DayZ Standalone. Thankful.
  9. Muito obrigado mano, me ajudou muito, andei pesquisando e consegui abrir muito mais a minha mente sobre servidores
  10. Olá, gostaria de saber quais, ou qual o melhor host para um servidor de DayZ. Estou querendo abrir um novo servidor, mas tenho muitas duvidas quanto aos hosts. Compensa eu comprar um host brasileiro? Sempre tenho problemas com Dsync nos servers brasileiros. Estava pensando em um host estrangeiro, no Dallas ou Nova York. Se puderem deixar sugestões agradeço muito. Grande abraço. Obs: Tem que ter proteção DDoS
×
×
  • Create New...