Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 12/01/20 in all areas

  1. Advanced Gaming Roleplay - Innovation With Every Interaction About We hear you, “another role-play server? Guess it’s an edit again” – but that’s not the case. Advanced Gaming is, back again, getting things ready to provide our loyal players with what we do best: next level scripts with a nice balance between realism and fun in each and every script. With at least 10 years of experience on the MTA platform and countless sleepless nights, we present to you: A role-play script written from scratch! If you remember us from back in 2015, hi there! If you don’t, no worries. We’ve been here before and life got in the way, we took over a project (SAPD:FR) which required less of our attention and made it possible for us to get a few things straight as a community but also in our personal lives. Now that we're back we're more than ready to finally put full dedication into this project and bring you guys a brand new twist into the MTA:SA Roleplay scene with a brand new script with some never before seen features, so without further ado let's go on with what we have to offer! Features Since a role-play gamemode requires constant changes, new features and removal of features... we’re not going to list all of our features (we know, it’s a lot, we all hate reading). To give you a glance of what we got to offer, we would love to invite you to our server and just give it a shot (when it’s released), if you want to know what our deal is, here’s a glance of what we got to offer: Realistic Vehicle System: We've put countless hours into the details of our vehicle system which allowed us to implement numerous hidden features which we will not yet release to the public, they'll sure blow your mind when you find out about all of it. After hours and hours of study and at least 4 years of experience we've made a perfect balance between the game's engine and physics system to carefully recreate real-life vehicle models in-game regarding handlings which includes top speeds, accelerations, realistic fuel tank capacities and consumptions. FPS-friendly UI: We’ve written our very own custom GUI (graphical user interface) system to create windows, labels, images and what not with ease without frying your CPU and GPU. Balanced Economy: Our economy has been built in a way to promote player to player interaction. How so? Simple, you can forget about getting rich by doing the default jobs, if you want to get yourself some more cash then you're simply going to have to join one of many player ran companies or perhaps even go down the dark path and join a gang? That's up to you, we won't tell anyone and especially not the cops! Jobs and companies, how do they work?: Simple, the entire server will be running on companies instead of default jobs. The default jobs have been made useful for new players (deliveries from our very own storage units, a government funded bus or a taxi driver) but the real fun starts with real people, in real companies. Hurr Durr I’m a big guy on another server, can I..: let me stop you right there, we don’t care about your previous progress on other servers, your entire track list of bans and offenses. Everyone is fair and square as a new player on our server, no advantages and no labels. Items and products: From snacks to meals, from coca-cola cans to glasses of wine, property keys to theory certificates. We've got it all built in with effect, if any. Users are able to purchase some items, other items have to be earned. You'll get a theory certificate after completing your theory for a driving license, a receipt after purchasing something or an empty can after drinking your coca cola. Illegal activities / gameplay: It’s a tough scene, you want to start your own gang or clap your neighbors, we get it. Since the illegal role-play defines or breaks a server, we’re taking close care of the scene with constant monitoring with a team of people. Guns will be distributed passively, drugs will be taken care of (and tested before distribution…). In the trash(bin)! Attention to detail in every script, want to get rid of the annoying receipt you recieved from the store and don't even need it? Simply throw it into one of the many trash bins present around town and let the garbage collectors take care of your junk for you! Police & Criminals: Tired of officers having super cars, heavy duty weapons like AR-15 or server owner-run departments? So are we, which we why we've given the department normal vehicles with fitting handlings which decreases their advantage, increases the experience of both roleplaying as well as the thrill of being a criminal or officer. They're forced to think tactically and plan their actions, their equipment is distributed on a monitored basis to only the higher ranks in the department where we see fit. Giving the illegal roleplay scene space to grow and feel alive And much more!: You want more? We got more! Two number 9s, a number 9 large, a number 6... oh, you meant features? We have a tight schedule of daily bugfixes, weekly updates and weekly announcements regarding progress. Want to see what we're made of? Check us out.. when we've launched! (sorry, I know..) Screenshots Note: This is still Work in Progress, final product may look different! DMV System Trash Bin System Shopping Vehicle Plate System Other Where to find us? Since we’re still getting things ready, you’re more than welcome to join us on our discord server. We’re working on the forums, lots of script changes and making sure that you’re getting something new and fun, rather than just another edit. Server IP: Coming soon! Website: Coming soon! Forums: https://forum.ag-rp.org/ Discord: http://discord.ag-rp.org/ Launch Date: Upcoming Winter (Q4 2024 or Q1 2025) Note: This thread was written using the Dark Theme, if you spot any issues on the default theme please let us know!
    2 points
  2. Haha, trying to change your serial.. there are protections against it. So that won't work. Anyways - the reason you're banned is because you are working together with "TheInsaneKiller" (after I believed him on his appeal at https://forum.multitheftauto.com/topic/121623-global-ban/) on doing prohibited things with MTA, cheat development-related. He was also banned again for giving you the things that were being messed with. If you don't want this ban to be permanent, then please contact me by sending me a PM, for more details.
    2 points
  3. السلام عليكم ورحمة الله وبركاته طبعا الكل كان يعرف اني معتزل لكن الان الحمدلله رجعت وهذا الموضوع بستغله في نقطتين اعلان رجوعي وفتح سيرفر جديد بعودتي زي ما تقول لعبه عشان الادمن ما يعرف الموضوع تبع اي قسم هههههه فيخله هنا المهم مع رجعتي رجعتلكم مع سيرفر GGC اللي الموقع الخاص فيه https://ggcrpg.com/ بالنسبه لايبي السيرفر mtasa://51.83.99.215:22003 الافتتاح باذن الله غدا في الليل الساعه 5 بتوقيت السعوديه تنورونا السيرفر يدعم عربي+انجليزي+فرنسي الموقع يدعم العربي والانجليزي يا ليت اللي عنده وقت يترجم الموضوع بالقسم الانجليزي بالتوفيق
    1 point
  4. Da uma arrumada no seu tópico e use a função "Code" para que fique mais fácil de nós entender.
    1 point
  5. words = {} SQLS3D = { qury = executeSQLQuery } chatTime = {} lastChatMessage = {} addEventHandler("onPlayerChat", getRootElement(), function(text, msgtype, thePlayer) local account = getAccountName(getPlayerAccount(source)) local name = getPlayerName(source) local root = getRootElement() local name = getPlayerName(source) local r,g,b = getPlayerNametagColor(source) local Account1 = getPlayerAccount ( source ) local new = "" local iter = 0 msg = string.gsub(text,"ـ","") for word in msg:gmatch("%S+") do iter = iter + 1 if iter == 1 and word:len() > 0 then word = word:gsub("%a",string.upper,1) end new = new..word.." " end if new ~= "" then msg = new end text = msg if chatTime[source] and chatTime[source] + tonumber(1000) > getTickCount() then cancelEvent() outputChatBox("Espere 1 segundo para poder digitar novamente!", source, 255, 0, 0) return else chatTime[source] = getTickCount() end lastChatMessage[source] = text local r, g, b = getPlayerNametagColor(source) cancelEvent() if isObjectInACLGroup("user." .. account, aclGetGroup("BOPE")) then TAG_BOPE = "[BOPE]" else TAG_BOPE = "" end if isObjectInACLGroup("user." .. account, aclGetGroup("VIP")) then TAG_VIP = "[VIP]" else TAG_VIP = "" end if isObjectInACLGroup("user." .. account, aclGetGroup("Everyone")) then TAG_EVERYONE = "[Jogador]" else TAG_EVERYONE = "[Guest]" end outputChatBox(""..TAG_BOPE..""..TAG_VIP..""..TAG_EVERYONE.." - #FFFFFF"..name.."#ffffff™: #FF6A00 "..text, root, 255, 255, 255, true) end ) É uma das formas possíveis dentre outras formas,
    1 point
  6. Well since your code uses the same logic, here's a more efficient way to do it: local playerElements = getElementsByType( "player" ) local players = {} for i = 1, #playerElements do local player = playerElements[ i ] players[ i ] = { name = getPlayerName(player), alive = getElementData(player,"state") == "alive", points = tonumber( getElementData(player,"ThePoints")) or 0 } end table.sort( players, function( a, b ) return a.points > b.points end )
    1 point
  7. Observações: o seu código inicial @Rangel funciona! Mesmo tendo coisas sem sentidos como "comando" e "nick" em um addEventHandler e demais coisas, funciona sim! A unica coisa que não ocorre é o player poder destruir depois de ter saído do servidor! já o código do @Angelo Pereira é totalmente funcional e melhorado inclusive ( meus parabéns) Dito isso vamos lá, você tem 2 formas de fazer este Spawn de viaturas: Sistema 1 Para Criar a Vtr: local tableVehicle = {} local ACL = "BOMBEIROS" function spawnvtr ( mkr, dim ) if (dim) then -- verifica a dimensão if mkr == Spawn1 then -- verifica se a marker hitada é a de spawn. Se for então: local accName = getAccountName ( getPlayerAccount ( source ) ) -- pega a account do player if not isObjectInACLGroup ("user."..accName, aclGetGroup ( ACL) ) then -- se ele não for bombeiro ( não estiver na acl) então: outputChatBox("#FFFFFF| #E10000BOMBEIROS #FFFFFF| Somente #E10000BOMBEIROS #FFFFFFPodem Pegar Este Veiculo.", source,255,255,255, true) -- envia essa mensagem return -- termina a função, por precaução eu costumo fazer isto para evitar bug's! Poderia também usar um else no lugar do return! end -- se eu usar else, esse end aqui deveria ficar embaixo do warpPed! if tableVehicle[source] then -- se existir um valor na tableVehicle destroyElement ( tableVehicle[source] ) -- destroi oq esta na tableVehicle tableVehicle[source] = nil -- coloca tableVehicle como nil (anti-bug) end tableVehicle[source] = createVehicle(529, -2410.876, -600.848, 132.619, 0, 0, 270 ) -- cria o veículo e insere ele na tableVehicle setElementHealth (tableVehicle[source] , 200000) -- não entendi o porque de 200.000 de vida mas ok... warpPedIntoVehicle ( source, tableVehicle[source]) -- coloca o player dentro do veículo criado end end end addEventHandler("onPlayerMarkerHit", getRootElement(), spawnvtr) -- Obs: é de boa pratica sempre fazer as verificações negativas antes! Ex: -- Se o player não tiver isto ou não tiver aquilo então a função para de ser executada ou retorna! -- isto muitas das vezes evita bug :) Para destruir a Vtr: function destroyvtr ( mkr, dim ) if (dim) then if mkr == Destroy then local accName = getAccountName ( getPlayerAccount ( source ) ) if not isObjectInACLGroup ("user."..accName, aclGetGroup (ACL) ) then outputChatBox("#FFFFFF| #E10000BOMBEIROS #FFFFFF| Somente #E10000BOMBEIROS #FFFFFFPodem Destruir Este Veiculo.", source,255,255,255, true) return end if tableVehicle[source] then destroyElement (tableVehicle[source]) tableVehicle[source] = nil end end end end addEventHandler("onPlayerMarkerHit", getRootElement(), destroyvtr) Para quando o player sair do servidor: function onQuit() for _, player in ipairs(getElementsByType("player")) do -- faz um loop nos players online if tableVehicle[player] and isElement(tableVehicle[player]) then -- se o player possuia uma viatura antes de sair então: destroyElement (tableVehicle[player]) -- destroi a viatura tableVehicle[player] = nil end end end addEventHandler("onPlayerQuit", getRootElement(), onQuit) ______________________________________________________________________________________________________________________________________________________________________________________ Sistema 2 Para Criar a Vtr (mesmo código do outro sistema!): Obs: caso o player destrua a vtr, dará um erro no debug, mas nada grave! local tableVehicle = {} local ACL = "BOMBEIROS" function spawnvtr ( mkr, dim ) if (dim) then -- verifica a dimensão if mkr == Spawn1 then -- verifica se a marker hitada é a de spawn. Se for então: local accName = getAccountName ( getPlayerAccount ( source ) ) -- pega a account do player if not isObjectInACLGroup ("user."..accName, aclGetGroup (ACL) ) then -- se ele não for bombeiro ( não estivar na acl) então: outputChatBox("#FFFFFF| #E10000BOMBEIROS #FFFFFF| Somente #E10000BOMBEIROS #FFFFFFPodem Pegar Este Veiculo.", source,255,255,255, true) -- envia essa mensagem return -- termina a função, por precaução eu costumo fazer isto para evitar bug's! Poderia também usar um else no lugar do return! end -- se eu usar else, esse end aqui deveria ficar embaixo do warpPed! if tableVehicle[source] then -- se existir um valor na tableVehicle destroyElement ( tableVehicle[source] ) -- destroi oq esta na tableVehicle tableVehicle[source] = nil -- coloca tableVehicle como nil (anti-bug) end tableVehicle[source] = createVehicle(529, -2410.876, -600.848, 132.619, 0, 0, 270 ) -- cria o veículo e insere ele na tableVehicle setElementHealth (tableVehicle[source] , 200000) -- não entendi o porque de 200.000 de vida mas ok... warpPedIntoVehicle ( source, tableVehicle[source]) -- coloca o player dentro do veículo criado end end end addEventHandler("onPlayerMarkerHit", getRootElement(), spawnvtr) Para destruir a Vtr: function destruir(mkr, dim ) if (dim) then if mkr == Destroy then local accName = getAccountName ( getPlayerAccount ( source ) ) if not isObjectInACLGroup ("user."..accName, aclGetGroup (ACL) ) then outputChatBox("#FFFFFF| #E10000BOMBEIROS #FFFFFF| Somente #E10000BOMBEIROS #FFFFFFPodem Destruir Este Veiculo.", source,255,255,255, true) return end local vehicle = getPedOccupiedVehicle(source) -- retorna o veiculo que o player tá local modelo = getElementModel(vehicle) -- pega o modelo do veículo (id) local idViatura = {529, 429} -- tabela onde tem os id's que podem ser destruidos! for _, veiculo in ipairs(idViatura) do -- loop if (isElement(vehicle)) and (getElementType(vehicle)=="vehicle") and (modelo == veiculo) then -- se o que hitou a marker for um veículo e, o modelo(id) dele esta na tabela então: destroyElement (vehicle) -- destroi o veículo! end end end end end addEventHandler("onPlayerMarkerHit", getRootElement(), destruir) No sistema 2 não será necessário a parte do player sair do servidor pois qualquer pessoa que POSSUA a TAG, poderá destruir a viatura. Só para meio de conhecimento ainda há outras formas, uma delas é com o executeSQLQuery (database interna)! Caso tenha alguma duvida só pergunta! Obs: tenha certeza q a ACL "BOMBEIROS" esta criada, e que você esta nela!!
    1 point
  8. نورت المنتدى ياعم علي ?? عجبني جدا انك رابط السيرفر بموقع خارجي بنفسك وفرحان بمجهودك وخبرتك وربنا يزيدك معرفة بس بصراحة معجبنيش انك ترجع تاني للعبة لأنها ببساطة ماتت بالتوفيق ?⚘⚘
    1 point
  9. Da próxima vez, utilize o botão <> do fórum para postar código. Bom, vamos lá, você pode fazer isto de 2 formas: Utilizando 'or', que na tradução para português é 'ou' function revistar (source, cmd, pname) local accountname = getAccountName(getPlayerAccount(source)) if isObjectInACLGroup("user."..accountname, aclGetGroup("BOPE")) or isObjectInACLGroup("user."..accountname, aclGetGroup("PMERJ")) then -- seguindo a lógica, se estiver na acl BOPE ou PMERJ, executa a funcao local Player_2 = getPlayerFromPartialName(pname) if isElement(Player_2) then Ou através de uma função function revistar (source, cmd, pname) if isPlayerPermission(source) then local Player_2 = getPlayerFromPartialName(pname) if isElement(Player_2) then local corpACLS = { "BOPE", "PMERJ", "EB" } function isPlayerPermission(thePlayer) -- faz um loop das acls declaradas na tabela e verifica se a acl do jogador é uma das acls declarada na tabela if isElement(thePlayer) and getElementType(thePlayer) == "player" then if isGuestAccount(getPlayerAccount(thePlayer)) then return end for _, group in ipairs(corpACLS) do if isObjectInACLGroup("user."..getAccountName(getPlayerAccount(thePlayer)), aclGetGroup(group)) then return true end end end return false end
    1 point
  10. Tente isto: -- func para arredondar os numeros, encontrada em: Lua-users.org/wiki/SimpleRound function round2(num, numDecimalPlaces) return tonumber(string.format("%." .. (numDecimalPlaces or 0) .. "f", num)) end local kill = getElementData(source, "Kills") or 0 local mortes = getElementData(source, "Deaths") or 0 local kdr = round2(kill/mortes, 3)
    1 point
  11. function math.round(number, decimals, method) decimals = decimals or 0 local factor = 10 ^ decimals if (method == "ceil" or method == "floor") then return math[method](number * factor) / factor else return tonumber(("%."..decimals.."f"):format(number)) end end ratio = 3.524923 -- Valor qualquer só pra testar. function qualquerCoisa (cmd) outputChatBox (math.round (ratio, 3, "floor"), 255, 255, 0) -- Manda no chat o número com somente 3 decimais. end addCommandHandler ("ratio", qualquerCoisa) Client-side
    1 point
  12. Since you are talking about 'top value', I suppose you've got a table, whose indexes are numerical, which contains the players. If you draw the text within a loop, which goes through all the elements of the previously mentioned table, you can easily edit the order of the players by assigning them to a different index within the table. In the case you don't have a loop whose indexes are numerical, try to implement one to keep it easy.
    1 point
  13. 1 point
  14. Yep, I missed it. Thanks.
    1 point
  15. https://www.dropbox.com/s/4vcnngoodhfsy6n/antiflood_scmd.zip?dl=0 Esse resource previne spam de comandos do servidor. Também lembre-se de deixar ativado as detecções 14, 31 e 32; outras detecções só recomendo colocar sabendo bem pra quê serve pois terá um peso extra para o servidor. Quanto a pessoa que está fazendo ataques, você pode obter evidências e mostrar a um admin do jogo; se a investigação descobrir algo ilegal vindo do serial dele certamente terá um banimento.
    1 point
  16. Habilite todos esses: [Enabled SD: 12,14,15,16,20,31,32,33]
    1 point
  17. se não me engano MTA recebeu um atualização pra corrigir esse bug. atualização disponivel em: https://nightly.multitheftauto.com/
    1 point
  18. Tenha em mente que nem sempre os objetos criados no mapa são criados por resources do tipo map. Se já deu restart em todos os mods mas o suposto mapa não sumiu, no seu lugar eu faria backup do servidor, deletava tudo dele e depois ia reinstalando os resources 1 por 1.
    1 point
  19. Before proceeding with my appeal I'd like to explain what happened. Some guy impersonated a fella by the name of "Cookie" (a well known mapper) to fool mapping server owners into giving him passwords of their servers so he could delete all maps. I won't hide the fact that I too joined the aforementioned servers, but I didn't partake in any malicious activity. The funniest thing about this is that the guy then pretended to reveal his true identity as being me, which everyone believed. Needless to say that it's false and I've never impersonated anyone. That lead to me getting banned earlier today for alleged "hacking" (see screenshot below). I have literally no idea what's that supposed to mean. Please consider that: 1) Nobody has solid proof that it was actually me impersonating Cookie 2) There's no proof that I deleted maps, the only proof you could have is the logs of me accessing servers 3) It's their own fault for giving passwords away while knowing anyone can access maps and delete them 4) There's no specific rule that states you can't delete resources 5) This is a relatively small dispute and a permanent MTA ban isn't justified. 6) I have never used hacks, trainers or any kind of cheating software I am hereby asking for a solid explanation and the proofs that you used to incriminate me. I don't know what kind of lies you've been told, so that's my side of the story. My serial: B626A0A5D6F06BB62233756E510F6052 Best regards, Zocki
    0 points
×
×
  • Create New...