Leaderboard


Popular Content

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

  1. 4 points
    I can say with 100% confidence that would never happen. 1. We would never implement pawn 2. Kalcor has very strong opinions about this project and isn't willing to budge. Try mentioning MTA on the SAMP forums. He'll just ban you 3. Why should we? Provide me the positive effects that would give us. We don't fake our player numbers, we are pretty open to changes, we actually have anticheat. What does SAMP have? Some custom models and a few extra features? They don't have even close to the feature set we do. I don't see any reason why either party would agree to this. There's no point in letting this thread exist, so I'm going to lock it.
  2. 2 points
    See this function + example: https://wiki.multitheftauto.com/wiki/GetPlayerIdleTime
  3. 2 points
    @#~Scared In the editor there is a map setting called useLODs. (Also you can just edit the meta.xml of the map) <meta> <info type="map" version="1.0.0"></info> <map src="test-lods.map" dimension="0"></map> <settings> <setting name="#maxplayers" value="[ 128 ]"></setting> <setting name="#useLODs" value="[ true ]"></setting> <setting name="#gamespeed" value="[ 1 ]"></setting> <setting name="#minplayers" value="[ 0 ]"></setting> <setting name="#gravity" value="[ 0.0080000004 ]"></setting> <setting name="#waveheight" value="[ 0 ]"></setting> <setting name="#camera" value='[ [ [ &quot;0&quot;, &quot;0&quot;, &quot;0&quot; ], [ &quot;0&quot;, &quot;0&quot;, &quot;0&quot; ] ] ]'></setting> <setting name="#locked_time" value="[ true ]"></setting> <setting name="#weather" value="[ 0 ]"></setting> <setting name="#time" value="12:0"></setting> </settings> <script src="mapEditorScriptingExtension_s.Lua" type="server"></script> <script src="mapEditorScriptingExtension_c.Lua" type="client" validate="false"></script> </meta> This will enable a list of GTA san lowLOD elements. (but it doesn't include all, there for you have to script a little bit more to use default elements as lowLOD objects, edit the mapEditorScriptingExtension files for that. Keep performance in mind while making those tweaks.)
  4. 2 points
  5. 2 points
    @Tommy. @Jonas^ Sobre o problema com indentação zoada: Só configurar pra indentar com espaços em vez de tabulações. function name () -- TAB end function name () -- 4 spaces end
  6. 2 points
    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!!
  7. 2 points
    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.mtasa.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.
  8. 1 point
    Alright, thanks bro! Already solved, but thanks for your advance, too!
  9. 1 point
    Every player in the server does have an account. If the account is not created by script, then it is a guest account, which is automatic deleted when it is not required any more. if not isGuestAccount ( acc ) then
  10. 1 point
    Ah oke Just don't add words that make it really aggressive: I meant, i've created my function for idle animations, not ready-to-use animations. And how can I reset players' idle time. So? WUTEVA, I DON'T NEED HELP WITH THIS ANYMORE! It will back fire and you get less help instead of more.
  11. 1 point
    Please behave yourself. We do not want to inherit your stress.
  12. 1 point
  13. 1 point
    Ok, sem problemas. Bom vou estar te passando dois tópicos, um é de como você estar usufruindo do fórum da maneira certa! É um tutorial em vídeo feito pelo Lord Henry link abaixo: O outro link é um outro tutorial, meio que um "passo-a-passo" feito pelo DNL291 sobre como começar na linguagem Lua no MTA. Leia com calma e paciência! Segue o link abaixo: Agora vamos lá. Primeiro o que é ELEMENT DATA? É uma forma de você salvar um dado ao player exemplo: o player Eder esta sendo revistado, eu quero salvar isso a mim o que eu faço? coloco setElementData(playerRevistado, "sendo:Revistado", playerRevistado), dessa forma eu acabei de colocar um dado a mim. Agora se eu quiser ver se eu estou sendo revistado ou não? Eu faço isto: if getElementData(playerRevistado, "sendo:Revistado") == true then ou seja se eu tiver esta data "sendo:Revistado" então algo acontecerá comigo... Vamos ao código: 1 - onde esta escrito local bank, coloque isto aqui: local bank = format(tonumber(getElementData(jogador, "Bank:Caixa") or 0)); Caso não funcione o problema deve estar no nome da data "Bank:Caixa", para verificar vc tem q abrir o seu mod do banco e procurar por isto lá dentro! 2 - para "adicionar a fome, sede e sono é necessário onde tem isto: local Fome = format(tonumber(getElementData(jogador, "hunger")) or 0); -- data da fome local Sede = format(tonumber(getElementData(jogador, "sede")) or 0); -- data da sede local Sono = format(tonumber(getElementData(jogador, "sono")) or 0); -- data do sono Os nomes "hunger", "sede" e "sono" precisam estar EXATAMENTE iguais ao que esta no seu mod de lanchonete! Para estar mudando é só apagar o que esta entre as aspas " ", e digitar com letras maiúsculas e minusculas o nome certo da data que esta lá no mod de lanchonete. Normalmente só abrir o arquivo e pesquisar por setElementData ou getelementData que vc encontrará. O básico é isso. Caso não tenha entendido só estar perguntando novamente, que tentarei lhe ajudar! Edit: E não se esqueça de ativar o debugscript 3!!
  14. 1 point
    And that's it? That's it? Looping timers is that simple? Goddamnit... thanks btw!
  15. 1 point
    Na verdade já existe um tópico desses aqui no forum. veja pode ser que ajude.
  16. 1 point
    Nice server. Many active players too. Would like to see it grow
  17. 1 point
    Não é possível. Aplica em todos os jogadores que forem usar a arma cuja propriedade foi alterada. A função só funciona client-side para armas customizadas.
  18. 1 point
    Dear @Da Nang I'm very sorry that this happened. You might sent me your discord so i can talk with you.
  19. 1 point
    Hmm, now they work. Maybe related to an update of some sort, because I couldn't see them the moment I replied.
  20. 1 point
    Bom, sem nenhum código fica um pouco difícil de ajudar, Mesmo para logar não precisando de permissão, sabe se o painel de login está com as permissão na acl?
  21. 1 point
    It should be something like that: (if am i wrong i hope someone will correct me) local startTick = getTickCount() local players = getElementsByType("player") -- ipairs for i = 1, 10000 do for index, player in ipairs(players) do outputChatBox(getPlayerName(player)) end end outputDebugString("ipairs done in "..getTickCount() - startTick.." ms.") -- pairs startTick = getTickCount() for i = 1, 10000 do for index, player in pairs(players) do outputChatBox(getPlayerName(player)) end end outputDebugString("pairs done in "..getTickCount() - startTick.." ms.") -- int startTick = getTickCount() for i = 1, 10000 do for i = 1, #players do outputChatBox(getPlayerName(players[i])) end end outputDebugString("int done in "..getTickCount() - startTick.." ms.") By the way, if you gonna use some variables in loop, it is better (faster) to declare them out of scope, and reuse them. I suggest to test it singly, because sometimes it could give you different results, as you can see here - pairs should be faster than ipairs - as far i know Separately:
  22. 1 point
    About why it is faster, pairs tries to get all the keys of one table (which means it doesn't look only for numbers as index). Meanwhile, making usage of a limited number of possible index values leaves you with faster results. Try tables with at least 1000 values in order to see some difference.
  23. 1 point
    So, you want to load a xml file with xmlLoadFile from other resource? Enter the full path, from the root resource folder. ( start path with : ) xmlLoadFile(":OTHER_RESOURCE_NAME/SUBFOLDER/file.xml")
  24. 1 point
    player variable not defined. When you trigger it from client side, pass the player element in first argument. triggerServerEvent("givemins", localPlayer, PLAYER_ELEMENT)
  25. 1 point
    zonapvp = createColRectangle ( 5441.9, -1926.4, 119.5, 133 ) event_iniciado = 1 verificarOne = 0 oldTeam = {} -- Tabela para salvar o Team antigo. local spawns = { {5460.70264, -1825.30945, 10.97057}, {5454.74805, -1884.13953, 10.29621}, {5537.57373, -1887.13306, 11.04092}, {5545.14746, -1829.44873, 10.29401}, {5501.95557, -1861.66174, 10.29621} } function start_admin_event (player) if event_iniciado == 1 then local accName = getAccountName(getPlayerAccount(player)) if isObjectInACLGroup("user."..accName, aclGetGroup("Owner")) then outputDebugString ("Evento Iniciado") event_iniciado = event_iniciado + 1 i = 0 pvp_1 = createTeam("PVP-Red [use /pvp]", 255, 0, 0) pvp_2 = createTeam("PVP-Green [use /pvp]", 0, 255, 0) pvp_3 = createTeam("PVP-Blue [use /pvp]", 0, 0, 255) pvp_4 = createTeam("PVP-Yellow [use /pvp]", 255, 255, 0) addCommandHandler ( "pvp", tele ) end end end addCommandHandler ( "eventStart", start_admin_event ) function entrar_na_zona( thePlayer, matchingDimension ) if getElementType ( thePlayer ) == "player" then redirecionar_team (thePlayer ) end end addEventHandler("onColShapeHit", zonapvp, entrar_na_zona) function sair_da_zona( thePlayer, matchingDimension ) if getElementType ( thePlayer ) == "player" then retirar_team (thePlayer ) end end addEventHandler("onColShapeLeave", zonapvp, sair_da_zona) function tele(player) local teles = math.random ( #spawns ) if ( teles ) then local isTeamPlayer = getPlayerTeam ( player ) verificarOne = verificarOne +1 setElementData(player,"inPVP",true) redirecionar_team(player) setElementPosition(player, unpack ( spawns [ teles ] )) end end function redirecionar_team (thePlayer) playerTeam = getPlayerTeam(thePlayer) i = i + 1 if i > 4 then i = 1 end if pvp_1 and pvp_2 and pvp_3 and pvp_4 then if playerTeam then if not oldTeam[thePlayer] then -- Adicionado oldTeam[thePlayer] = getTeamName(playerTeam) end -- Adicionado --else -- Adicionado -- oldTeam[thePlayer] = true -- Adicionado end if i == 1 then setPlayerTeam ( thePlayer, pvp_1 ) end if i == 2 then setPlayerTeam ( thePlayer, pvp_2 ) end if i == 3 then setPlayerTeam ( thePlayer, pvp_3 ) end if i == 4 then setPlayerTeam ( thePlayer, pvp_4 ) end end end function retirar_team (player) if oldTeam[player] then local team = getTeamFromName(oldTeam[player]) or false -- Adicionado if team then -- Adicionado setPlayerTeam(player, getTeamFromName(oldTeam[player])) oldTeam[player] = nil -- Adicionado end else setPlayerTeam(player, nil) -- Adicionado end end addCommandHandler("stop123", function (player) local accName = getAccountName ( getPlayerAccount ( player ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Owner" ) ) then if event_iniciado >= 2 then for k , v in ipairs(getElementsByType("player")) do if getElementData(v,"inPVP") then retirar_team(v) end end destroyElement(pvp_1) destroyElement(pvp_2) destroyElement(pvp_3) destroyElement(pvp_4) removeCommandHandler("pvp") event_iniciado = 1 end end end) Você fez alterações no código, em vez, de remover a linha que eu tinha mencionado, teste isso
  26. 1 point
  27. 1 point
    السلام عليكم ورحمة الله وبركاته طبعا الكل كان يعرف اني معتزل لكن الان الحمدلله رجعت وهذا الموضوع بستغله في نقطتين اعلان رجوعي وفتح سيرفر جديد بعودتي زي ما تقول لعبه عشان الادمن ما يعرف الموضوع تبع اي قسم هههههه فيخله هنا المهم مع رجعتي رجعتلكم مع سيرفر GGC اللي الموقع الخاص فيه https://ggcrpg.com/ بالنسبه لايبي السيرفر mtasa://51.83.99.215:22003 الافتتاح باذن الله غدا في الليل الساعه 5 بتوقيت السعوديه تنورونا السيرفر يدعم عربي+انجليزي+فرنسي الموقع يدعم العربي والانجليزي يا ليت اللي عنده وقت يترجم الموضوع بالقسم الانجليزي بالتوفيق
  28. 1 point
    The first one seems quite reasonable. I'm not sure of the second but then again I might not be the best to consult on this matter.
  29. 1 point
    Funny, I actually added this functionality too, via https://mtasa.com/api/
  30. 1 point
    isObjectInACLGroup onVehicleStartEnter cancelEvent
  31. 1 point
    zonapvp = createColRectangle ( 5441.9, -1926.4, 119.5, 133 ) event_iniciado = 1 verificarOne = 0 oldTeam = {} -- Tabela para salvar o Team antigo. local spawns = { {5460.70264, -1825.30945, 10.97057}, {5454.74805, -1884.13953, 10.29621}, {5537.57373, -1887.13306, 11.04092}, {5545.14746, -1829.44873, 10.29401}, {5501.95557, -1861.66174, 10.29621} } function start_admin_event (player) if event_iniciado == 1 then local accName = getAccountName(getPlayerAccount(player)) if isObjectInACLGroup("user."..accName, aclGetGroup("Owner")) then outputDebugString ("Evento Iniciado") event_iniciado = event_iniciado + 1 i = 0 pvp_1 = createTeam("PVP-Red [use /pvp]", 255, 0, 0) pvp_2 = createTeam("PVP-Green [use /pvp]", 0, 255, 0) pvp_3 = createTeam("PVP-Blue [use /pvp]", 0, 0, 255) pvp_4 = createTeam("PVP-Yellow [use /pvp]", 255, 255, 0) addCommandHandler ( "pvp", tele ) end end end addCommandHandler ( "eventStart", start_admin_event ) function entrar_na_zona( thePlayer, matchingDimension ) if getElementType ( thePlayer ) == "player" then redirecionar_team (thePlayer ) end end addEventHandler("onColShapeHit", zonapvp, entrar_na_zona) function sair_da_zona( thePlayer, matchingDimension ) if getElementType ( thePlayer ) == "player" then retirar_team (thePlayer ) end end addEventHandler("onColShapeLeave", zonapvp, sair_da_zona) function tele(player) local teles = math.random ( #spawns ) if ( teles ) then local isTeamPlayer = getPlayerTeam ( player ) verificarOne = verificarOne +1 setElementData(player,"inPVP",true) redirecionar_team(player) setElementPosition(player, unpack ( spawns [ teles ] )) end end function redirecionar_team (thePlayer) playerTeam = getPlayerTeam(thePlayer) i = i + 1 if i > 4 then i = 1 end if pvp_1 and pvp_2 and pvp_3 and pvp_4 then if playerTeam then if not oldTeam[thePlayer] then -- Adicionado oldTeam[thePlayer] = getTeamName(playerTeam) end -- Adicionado else -- Adicionado oldTeam[thePlayer] = true -- Adicionado end if i == 1 then setPlayerTeam ( thePlayer, pvp_1 ) end if i == 2 then setPlayerTeam ( thePlayer, pvp_2 ) end if i == 3 then setPlayerTeam ( thePlayer, pvp_3 ) end if i == 4 then setPlayerTeam ( thePlayer, pvp_4 ) end end end function retirar_team (player) if oldTeam[player] then if oldTeam[player] == true then setPlayerTeam(player, nil) oldTeam[player] = nil return end -- Adicionado local team = getTeamFromName(oldTeam[player]) or false -- Adicionado if team then -- Adicionado setPlayerTeam(player, getTeamFromName(oldTeam[player])) oldTeam[player] = nil -- Adicionado end end end addCommandHandler("stop123", function (player) local accName = getAccountName ( getPlayerAccount ( player ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Owner" ) ) then if event_iniciado >= 2 then for k , v in ipairs(getElementsByType("player")) do if getElementData(v,"inPVP") then retirar_team(v) end end destroyElement(pvp_1) destroyElement(pvp_2) destroyElement(pvp_3) destroyElement(pvp_4) removeCommandHandler("pvp") event_iniciado = 1 end end end)
  32. 1 point
    test = { [1] = 1, [2] = 2, [3] = 3, } local ot = test[math.random(1, #test)] outputChatBox(ot)
  33. 1 point
    Da uma arrumada no seu tópico e use a função "Code" para que fique mais fácil de nós entender.
  34. 1 point
    Aqui também acontece isso @Tommy., já tentei resolver mexendo em todas configurações mas nada resolveu, mas só com vscode, dai pra indentar uso o notepad++
  35. 1 point
    It should be available with in the element property window.
  36. 1 point
    Rangel, posso te dar uma opinião. Se caso alguém consiga entrar na base que não seja da corporação ou gang etc, ela pode bugar todo seu servidor com o spawn. Ela pode spawnar vários veículos na base.
  37. 1 point
    انا تخرجت هندسة برمجيات , السؤال الأوضح شو الفرق بين هندسة البرمجات وعلم الحاسوب , الامن سيبراني موضوع مختلف فهو متعلق أكثر بحماية نظام من سرقة المعلومات هدة تخصص في المنطقة العربية للأسف قليل شركات الي بتطلب هدة تخصص ولكن المفروض شئ مهم ورواتبها عالية , من ناحية هندسة البرمجيات فهي بتتعلق بكيفية ادارة مشاريع البرمجية بالأضافة لتعلم اغلب لغات البرمجة مثل c,c++, python,c#,web desgin(php),java , java script ,swift,assembly assembly : لغة برمجة الماشين واغلب القطع بترمج عن طريقها login : بتتعلم كيف قطع الجهاز بتشتغل بطريقة فيزيائية وايضا بتوخد كورسات مهمة مثل algorithms , data structure : بشرح الكثير من الخوارزميات المهمة مثل sorting , insertion , selection والمواد هدي بتعلمك شو افضل الخوارزميات وافضلها من ناحية توفير الوقت حتى تتنفد العملية و المواد بتشرح تحليل الكود واستخراج وقت تنفيد حتى تعرف كيف الكود سريع ولا بطيئ المواد الي حطيتها فوق هده مواد مشتركة بين هندسة البرمجيات و علم الحاسوب , المواد الي بختلفو عن بعض بي هندسة البرمجيات بتوخد مواد مثل testing : بتجرب النظام ادا فيه عيوب أو مشاكل design : كيفية رسم مخططات تساعد المبرمج لتنفيد النظام Risk Management : بتعرف شو المشاكل الممكن تواجهك خلال بناء نظام وما بعدها Analysis : بتحلل النظام , شو الكلفة وتحدد وقت تنفيد المشروع Requirements : مادة بتعلمك كيف تستخرج المعلومات من الجهة طالبة للمشروع وشو بدهم خصائص في النظام وكيف تكتبهم بطريقة رسمية -------------------------------------- من ناحية علم الحاسوب المواد الي مختلفة عن هندسة البرمجيات calculus 3 : physics : 2 Linear : كمان متعلق بالرياضيات ---------------------------------------- كاخلاصة هندسة البرمجيات بتشمل البرمجة وكيف تدير نظام علم الحاسوب : برمجة فقط لا غير , من ناحية شو الأفضل كعلم حاسوب ما بقدر يكون مدير مشاريع (كرواتب بتفرق) ممكن اخريته يكون رئيس قسم البرمجة , هندسة البرمجيات بأمكانه يدير مشاريع وشركات + بأمكانه يكون مبرمج فبنصحك في هندسة البرمجيات --------------------------------------------------------------------------------------------------------------------------------- نيجي للموضوع ثاني بايثون يعد أسهل لغة برمجة حاليا , الأصعب هو c , c++ والأسمبلي
  38. 1 point
  39. 1 point
    napvp = createColRectangle ( 5441.9, -1926.4, 119.5, 133 ) event_iniciado = 1 verificarOne = 0 local spawns = { { 5460.70264, -1825.30945, 10.97057 }, { 5454.74805, -1884.13953, 10.29621 }, { 5537.57373, -1887.13306, 11.04092 }, { 5545.14746, -1829.44873, 10.29401 }, { 5501.95557, -1861.66174, 10.29621 } } oldTeam = {} -- Tabela para salvar o Team antigo. function start_admin_event (player) if event_iniciado == 1 then local accName = getAccountName ( getPlayerAccount ( player ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Owner" ) ) then outputDebugString ("Evento Iniciado") event_iniciado = event_iniciado +1 i = 0 pvp_1 = createTeam("PVP-Red [use /pvp]", 255, 0, 0) pvp_2 = createTeam("PVP-Green [use /pvp]", 0, 255, 0) pvp_3 = createTeam("PVP-Blue [use /pvp]", 0, 0, 255) pvp_4 = createTeam("PVP-Yellow [use /pvp]", 255, 255, 0) addCommandHandler ( "pvp", tele ) end else outputChatBox("The event is already activated", player, 255, 0, 0) end end addCommandHandler ( "eventStart", start_admin_event ) function entrar_na_zona( thePlayer, matchingDimension ) if getElementType ( thePlayer ) == "player" then --outputChatBox( "Working One" ) redirecionar_team (thePlayer ) end end addEventHandler("onColShapeHit", zonapvp, entrar_na_zona) function sair_da_zona( thePlayer, matchingDimension ) if getElementType ( thePlayer ) == "player" then --outputChatBox( "Working Two" ) retirar_team (thePlayer ) end end addEventHandler("onColShapeLeave", zonapvp, sair_da_zona) function tele(player) local teles = math.random ( #spawns ) if ( teles ) then local isTeamPlayer = getPlayerTeam ( player ) if getElementData(player,"SavedTeam") then setElementData(player,"inPVP",true) else --outputDebugString ("Esse playe foi pro pvp mas não tem team") verificarOne = verificarOne +1 end setElementPosition(player, unpack ( spawns [ teles ] )) end end function redirecionar_team (thePlayer) playerTeam = getPlayerTeam(thePlayer) i = i + 1 if i > 4 then i = 1 end if pvp_1 and pvp_2 and pvp_3 and pvp_4 then if playerTeam then --/// Verifica se o player já estava em um Team oldTeam[thePlayer] = getTeamName(playerTeam) --/// Salva o Team na tabela oldTeam end if i == 1 then setPlayerTeam ( thePlayer, pvp_1 ) end if i == 2 then setPlayerTeam ( thePlayer, pvp_2 ) end if i == 3 then setPlayerTeam ( thePlayer, pvp_3 ) end if i == 4 then setPlayerTeam ( thePlayer, pvp_4 ) end end end function retirar_team (player) if getElementData(player,"SavedTeam") then if getTeamFromName(oldTeam[player]) then --/// Verifica se o Team antigo ainda existe setPlayerTeam(player, getTeamFromName(oldTeam[player])) --/// Seta o player no Team que está na tabela oldTeam end local t = getElementData ( player, "SavedTeam" ) setElementData(player,"SavedTeam",false) end end addCommandHandler("stop123", function (player) local accName = getAccountName ( getPlayerAccount ( player ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Owner" ) ) then if event_iniciado >= 2 then for k , v in ipairs(getElementsByType("player")) do if getElementData(v,"inPVP") then retirar_team (v) end end for i, team in ipairs(getElementsByType("team")) do destroyElement(team) end removeCommandHandler ( "pvp" ) event_iniciado = 1 else outputChatBox("Unable to stop because it was not started", player, 255, 0, 0) end end end) Tenta isso. EDIT: Não testei.
  40. 1 point
    Habilite todos esses: [Enabled SD: 12,14,15,16,20,31,32,33]
  41. 1 point
    se não me engano MTA recebeu um atualização pra corrigir esse bug. atualização disponivel em: https://nightly.mtasa.com/
  42. 1 point
    Bom acredito eu que aqui não seja a seção certa para estar postando isto mas enfim. O cara entrou no seu servidor e logo após isto ele caiu? Primeiro você tem certeza que não foi problema na sua host? Segundo você divide senha do seu servidor ou deu acesso a alguma outra pessoa ao ftp, painel admin, ou até mesmo ao seu tc admin? Terceiro, verifique o console do seu tc admin, veja se tem algum comando efetuado pelo "cara", ou algo que envolva ele!
  43. 1 point
  44. 1 point
    Helle there, for everyone who's interested we've opened the administration applications! If you like to roleplay and help players join our discord and fill in a application!
  45. 1 point
    I'll update it as soon as I get a new rig
  46. 1 point
    I meant that every roleplay server which is coming up will die anyways.
  47. 1 point
    Tbh nta roleplay is becoming one hell of a joke
  48. 1 point
    This topic contains the MTA global ban policy, information on how to appeal your ban and instructions on how to file a report (see bottom of topic) ** Different language versions ** Russian (русский): КЛИКНИТЕ СЮДА Для русскоязычных пользователей Portuguese (Português) CLIQUE AQUI Versão em português Arabic النسخة العربية (عربي) انقر هنا Romanian (Română) APĂSAȚI AICI Versiunea în limba română This board is for global MTA bans only ("You have been banned by MTA"). It's not to be used for when you get banned from a server. In the case of server bans, please contact the admin of that server or use their website/forums to appeal if they have one. If you want to appeal a global ban, then please create a new topic HERE (click) that includes atleast your MTA serial. How to find your serial: launch MTA, press the F8 key and write ``serial`` into it. Now, select your serial and copy it using CTRL + C, then paste it into your appeal topic. If you received a global ban, you can appeal it under certain circumstances. Examples: - The ban is permanent, or has a pretty long duration (a month or more). * If a ban is permanent, no duration (ban time left) is shown in the ban message. - The ban is custom. This is the case when your ban message shows a reason that is not "TRAINER" or "DLL INJECTOR". * This can happen when you got banned as a result of illegal conduct on MTA. * The possibility to appeal bans mostly exists for these situations, where your appeal will prompt us to review if you can be unbanned, based on the offense and its severity. If you post an appeal and your ban doesn't fall under the above circumstances, then it may be removed rather than being answerred (although we more often do our best to make people understand the specific reason of their ban). This is because of the sheer volume of appeals for automated bans (for trying to run old, detected cheats or 1-hour bans for DLL injectors) would otherwise be insane. If it's a short-duration ban, then please just wait for the ban to expire. Explanation of the most common ban types and categories of bans they cover: "TRAINER" - Bans related to cheating: - If the ban is temporary (a few hours to a couple of days), then you attempted to run a detected cheat or used it while it was still working. * In the case of high-impact cheats, the ban duration can be a couple of weeks to a month. The same goes for paid (or subscription-based) cheats. * It is also possible that MTA AC's heuristics flagged you for custom cheating, such as amateuristic attempts to modify memory or use your own little cheat. This can sometimes also result in a temporary ban. - If the ban is permanent (note: with the type "TRAINER"), or for more than 2 months, then there can be several possibilities: * We know that you're a cheat developer, and we took efforts to remove you from our platform in order to stop you from messing with MTA and its anti-cheat. In this case, you have played your entitlements and we can deny your appeal on our discretion. However, we are always willing to give your case a fresh look. If you think that you've learned from your mistakes, and are willing to use our Bug Bounty program (click) in the future instead, you may be given another chance. So you're always welcome to appeal your ban. * You used a particularly serious (intrusive) cheat, one that we would call 'serious hackage', for example one that allowed you to ruin the game for everyone on a server or set out to harm a server or its integrity. This also goes for attacks aimed at a server or its playerbase that were packaged as executable code that you loaded & used in a cheat-like fashion. "REASON" - Custom bans that give a hint of the reason in your ban message. If you engage in illegal activities, we consider it our duty to keep the rest of MTA safe from people such as yourself. Under no circumstance will we allow MTA to be used as a platform for illegal or malicious actions. Besides that, although this policy covers most situations and possible ban reasons, MTA staff can use their discretion to ban for any reason that can reasonably be considered as illegal, harmful, or damaging to MTA as a platform or its users. You will most definately be able to figure why you got banned from the ban reason text, and if you don't, you can always make an appeal to get further explanation. Also please note, if you post a ban appeal topic (for a ban about illegal conduct), you automatically agree that said topic, its content and any later posts in it won't ever be removed from the MTA forums. Reason being that while the ban was to protect MTA and its users/server owners from illegal conduct (malicious people such as yourself), if you later return to MTA others can be informed about you and your past to be prepared against falling victim to illegal conduct themselves. It helps for case-building (future offenses or moderators in need of referencing). We also reserve the right to add in (at most) MTA serial(s) to appeal topics. Common examples: * "DDOS" If you carry out DDoS/network attacks against MTA servers or other players, then you do not belong on MTA, and we will ban you to protect others on MTA against you and put consequences to it. Therefore, when we receive a substantiated report about you, we may decide to ban you if there's overwhelming evidence, or ban you indefinitely for our investigation to proceed (read below for details). * "RAT" If you (try to) infect the PC of MTA players with viruses or (remote control) trojan, which are called RATs. The most common way is for someone to share infected file (links) in a server's chat, or directly to a person that you have a relation to because of MTA. We ban those that engage in illegal activities like this as well, because MTA will not be a platform for such acts; if someone deliberately tries to inflict harm or digital safety risks to another player, we believe that person doesn't belong on MTA. * "EMAIL: ADDRESS" e.g "EMAIL: CCW808@GMAIL.COM" or "EMAIL: MCAK105@OUTLOOK.COM" This ban message means you got banned to allow us to investigate something you were involved in. If you see this, then please send a message to the e-mail address that is mentioned, which belongs to the MTA staff member willing to investigate you. It can be a result of a report against you (illegal activity, for example as described earlier) or (unknown/custom) cheats/hackage that you seem to have used and of which we want to learn more. We may even desire to know more if MTA anti-cheat managed to block & detect your attempts. For this reason, sometimes, temporary "TRAINER" bans may turn into this ban type or become extended/permanent. Also, doing suspicious things while not getting banned (like only kicked by advanced AC heuristics) can have you confronted with such a ban when you launch MTA at a later point. If there's overwhelming evidence for what you're suspected of doing, you may aswell see a hint of the reason followed by the e-mail address. Ex. "DDOS [EMAIL: ADDRESS]" This means we're confident that you did it, but that we're still interested in talking to you anyways. It merely offers you a way out, perhaps to get unbanned (early) by cooperating with us, express regret, or share your side of the story. At the same time, this type of ban message is also an encouragement to just accept your mistakes and move on, by understanding you did what the hint points to and that it got you caught. Unlike the ban message saying "EMAIL: ADDRESS", the variation with "REASON [EMAIL: ADDRESS]" can aswell be temporary and be unbanned at a set date. So if you recognize and accept your mistake, just wait for it to expire. * "CHANGE" / "SERIAL CHANGE" This ban message means that your serial (the one that got banned) isn't authentic: you (attempted to) change your MTA serial, and this got detected. Using technical measures to try manipulate MTA into generating a new serial results in a ban on said serial if it appears to succeed. Because they get banned, it's not succesfull after all, because you now cannot use it. If you return to using your original serial (undo the tampering that you tried getting it changed with), in most cases you will be able to play again. If you cannot figure it out/are convinced that you didn't try to serial-change, then feel free to create a ban appeal topic and we'll check on your case. * "BACKDOOR" This ban message means that you included a backdoor (or hidden commands with destructive or abusive functionality) in any script or gamemode that you (re)distributed, advertised or sold to any party. Investigation would result in a clear indication that you are in control of said backdoor. There are no excuses for the use of backdoors in MTA scripts. Justifications like "security" or "it's to protect from our gamemode being leaked" are invalid, because your actions in such a case would be an illegal action in itself (ex. using a command to set your own admin level would be considered hacking, using a command to shutdown/dump the server would be an hacking intrusion to the server infrastructure.. answerring immoral or bad acts with illegal acts isn't the right solution and will get you banned). Even though we now motivated this, we do realize that this excuse will be used to cover the intentions of 90% of the people who implant backdoors into their scripts and gamemodes, and still we do not believe this by default. But as you can see, such excuses would be invalid anyways. * "[SERVICE] ABUSE" / ex. "FORUMS ABUSE" In extreme cases of abuse on MTA services (such as forums, discord, community page), we may decide to global-ban you. For example: - if you're constantly evading bans on forums/discord, becoming a pest to our moderation team - if you're uploading resources with backdoors/exploits (such as hidden commands or destructive functionality) to the community page - if you're malicious towards the MTA infrastructure or intend to inflict MTA serious harm - if you engage in unacceptable behavior towards MTA staff, such as blackmailing or threathening them or their surroundings, because they are doing their job Please always remember that MTA: San Andreas is made and ran by volunteers that devote their free time offering you a game to play on and have fun. You're a guest, and not definately entitled to using our services; that's a favor. If you become very disruptive, causing us a lot of trouble, or soaking up moderation team resources to deal with the problems you cause us, then don't be surprised if you're no longer welcome to play on the platform we offered you. *Note: the above text refers directly to the "SERVICE ABUSE" paragraph. While the purpose of this topic is to explain why someone that wants to appeal may have been banned, it also contains our banning policy and a list of common bannable offenses. So as a side note, perhaps as a victim of something, you want to report someone that has engaged in activity listed in here, then feel free to send a message to Dutchman101 and/or ccw (you could add both into the same conversation, but make sure to at least send it to Dutchman101 to ensure timely handling of your report)
  49. 1 point
    Please read and apply the section guidelines to your topic within 48 hours, or your post will be removed. @dicosky
  50. 1 point
    I wont be releasing any newer version of it so I decided to release the older version to the publicity. How to install/start w/e: * Copy toolbox folder to your server resources folder * Start map-editor * /start toolbox