Jump to content

DizzasTeR

Members
  • Posts

    17
  • Joined

  • Last visited

Everything posted by DizzasTeR

  1. You can't make it perfect, because even then the system and processing itself is not always perfect, stuff has to PROCESS and the process time will vary, as for me, I made whats called "Anti delay" for our race servers and what it really is, is what I told you, I was able to tie my toptime (Even miliseconds) with a person of 30 ping, and I had ~200. Guess that's all from my end you can try doing it better than this but I don't see it making a difference.
  2. you can keep the freeze/unfreeze part at server side, even at ~300 pings if the connection of the client itself is stable (No losses and stuff) it should be very reasonable and fine, the main thing is to start ticking the timer when your client event trigger for the "onClientRaceStart" for example is called on client side, and then the rest as I said in first reply.
  3. What you are doing wrong is using setElementFrozen on two different sides for two different values, true at server and false at client, stick to one side
  4. You start counting the timer once you unfreeze the client (You can trigger a client side event for player to "start"). Once the player finishes you stop counting, you take out the ticks that the player took to finish, and just forward it as a parameter to server to do your toptimes work, this makes it little to no delay.
  5. More than half of the features getting removed is the best part.
  6. Nahi mere dost, aisi baat nahi hai. Aap ko try karnay sey koi nahi rook raha, umeed hai aap ki zarrorat poori ho, good luck. Waisay mujhay politics aur un ki bakwaas mein koi interest nahi hai, sach mein.
  7. Name: Rasikh Qadeer | Nick: -ffs-DizzasTeR City: Kohat Speciality: Mapper | Squirrel expert, Advanced Lua, PAWN, BASIC and others. Server(s): FFS Gaming
  8. Well its kinda weird to hear that, as you already ( maybe ) know a few servers doing that, but the question is how exactly because they don't have a download bar on the start of maps and even though if there is any download how they have made it this fast and customize it? I have been trying to do alot of stuff and code in order to get a solution but all in vain, so I'm hoping that if someone else might know the answer if you don't from this point.
  9. Alright so the music can be streamed but what would you suggest regarding loading scripts. Since loadstring can't do the job and startResource causes downloads, how can I load important map scripts for instance model replacements etc.
  10. The startResource works well but its not fine in this case because it causes download for the client which I don't want. I want to play the map music and load the scripts without downloads so any idea?
  11. So basically I'm working on a multigamemode, everything is well, performance is great, maps load excellently fast and all that. The problem which occurred towards me is that how can I load the scripts of the maps. Now I've been searching around the wiki and the forum and found some stuff regarding loadstring, I tried that by opening all the client scripts of the map which is loaded and execute them but that didn't work out pretty well due to errors such as 'unknown setModelLODDistance' and stuff. So basically all I need help with is to start the scripts of the map which has been loaded and ofcourse without any downloads. So I would like some ways how can I do that. I didn't do tests to see yet if loadstring executes scripts as client side or server side but still, I can't manage to play the music files of maps since they are not in the core resource's meta. Any ways? If you are still unable to understand me then please let me know and I'll try to explain better.
  12. Modify the getPlayerFromPartialName with this one: function getPlayerFromPartialName(name) -- Author: TAPL local name = name and name:gsub("#%x%x%x%x%x%x", ""):lower() or nil if name then for _, player in ipairs(getElementsByType("player")) do local name_ = getPlayerName(player):gsub("#%x%x%x%x%x%x", ""):lower() if name_ == name then return player else return false; end end end end But remember now you have to specify exactly the same name inorder for it to work.
  13. That function is just to remove any color codes from a player's name which we send to it and then match it. If you use getPlayerFromName then you have to give exactly the same name with color codes to send a message.
  14. function Gift( player, command, giftTo, ... ) if( not giftTo or not ... ) then return outputChatBox( "* Invalid syntex: /gift [Name] [Text]", player, 255, 0, 0 ); else outputChatBox( "Args: " .. giftTo .. " | " .. table.concat( {...}, " " ), player, 255,255,255 ) plr = getPlayerFromPartialName( giftTo ) if( not plr ) then return outputChatBox( "* Player not found", player, 255, 0, 0 ); else local msg = table.concat( {...}, " " ); outputChatBox( "* You sent a gift message: \"" .. msg .. "\" to " .. getPlayerName( plr ), player, 0, 255, 0, true ); outputChatBox( "* " .. getPlayerName( player ) .. "#00FF00 gift-messaged you: \"" .. msg .. "\"", plr, 0, 255, 0, true ); end end end addCommandHandler( "gift", Gift ) function getPlayerFromPartialName(name) -- Author: TAPL local name = name and name:gsub("#%x%x%x%x%x%x", ""):lower() or nil if name then for _, player in ipairs(getElementsByType("player")) do local name_ = getPlayerName(player):gsub("#%x%x%x%x%x%x", ""):lower() if name_:find(name, 1, true) then return player end end end end Usage: /gift PlayerName Message
×
×
  • Create New...