Leaderboard
Popular Content
Showing content with the highest reputation since 09/11/10 in all areas
-
Proxies which admins can pre-ban to stop cheaters, trouble makers, etc
clan DIABOLIK and 6 others reacted to hellreturn for a topic
Well, I have banned few proxies on my servers. Just thought to share with other admins so they can also pre-ban cheaters, trouble makers, etc. Regular players don't use proxies so they wouldn't be banned on your servers. How to use: Just copy paste in your shrubbot.cfg above [command] block. [subnetban] subnet = 199.255.209.* reason = Try More1 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 199.255.210.* reason = Try More2 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.234.216.* reason = Try More3 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.208.*.* reason = Try More4 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 69.57.161.* reason = Try More5 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 184.75.208.* reason = Try More6 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 184.75.209.* reason = Try More7 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 184.75.212.* reason = Try More8 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 184.75.220.* reason = Try More9 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 184.75.221.* reason = Try More10 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 184.75.222.* reason = Try More11 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 184.75.223.* reason = Try More12 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.234.217.* reason = Try More13 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.234.218.* reason = Try More14 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.234.219.* reason = Try More15 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 198.136.63*.* reason = Try More16 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 198.136.62*.* reason = Try More17 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.198.19*.* reason = Try More18 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.198.20*.* reason = Try More19 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.198.21*.* reason = Try More20 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.198.22*.* reason = Try More21 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.198.23*.* reason = Try More22 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.198.24*.* reason = Try More23 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.198.25*.* reason = Try More24 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 67.231.25*.* reason = Try More25 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 67.231.24*.* reason = Try More26 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 199.114.22*.* reason = Try More27 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 199.114.23*.* reason = Try More28 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 89.233.104.* reason = Try More29 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 216.119.14*.* reason = Try More30 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 216.119.15*.* reason = Try More31 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 50.7.1.* reason = Try More32 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 74.122.19*.* reason = Try More34 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 68.232.191.* reason = Try More35 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 68.232.190.* reason = Try More36 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 68.232.18*.* reason = Try More37 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 68.232.17*.* reason = Try More38 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 68.232.16*.* reason = Try More39 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 109.201.152.* reason = Try More40 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 192.210.143.* reason = Try More41 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 192.210.4*.* reason = Try More42 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 192.210.5*.* reason = Try More43 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 192.210.6*.* reason = Try More44 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.231.1.* reason = Try More45 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.231.2.* reason = Try More46 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.231.3.* reason = Try More47 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.231.4.* reason = Try More48 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.231.5.* reason = Try More49 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.231.6.* reason = Try More50 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.231.7.* reason = Try More51 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.231.8.* reason = Try More52 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.231.9.* reason = Try More53 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.231.10.* reason = Try More54 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.231.11.* reason = Try More55 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 173.231.12.* reason = Try More56 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 67.213.218.* reason = Try More57 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 162.253.128.* reason = Try More58 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 162.253.129.* reason = Try More59 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 162.253.130.* reason = Try More60 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 162.253.131.* reason = Try More61 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 46.16.32.* reason = Try More62 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 46.16.33.* reason = Try More63 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 46.16.34.* reason = Try More64 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 46.16.35.* reason = Try More65 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 89.233.105.* reason = Try More66 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 89.233.106.* reason = Try More67 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 89.233.107.* reason = Try More68 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 89.233.108.* reason = Try More69 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 89.233.109.* reason = Try More70 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 89.233.110.* reason = Try More71 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 89.233.111.* reason = Try More72 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 8.33.136.* reason = Try More73 made = 01/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 95.141.20.* reason = Try More74 made = 07/01/15 09:38:03 expires = 0 banner = console [subnetban] subnet = 79.141.16*.* reason = Try More75 made = 07/01/15 09:39:03 expires = 0 banner = console [subnetban] subnet = 93.190.14*.* reason = Try More76 made = 07/01/15 09:39:03 expires = 0 banner = console [subnetban] subnet = 5.254.9*.* reason = Try More77 made = 07/01/15 09:39:03 expires = 0 banner = console [subnetban] subnet = 5.101.14*.* reason = Try More78 made = 07/01/15 09:39:03 expires = 0 banner = console [subnetban] subnet = 84.19.16*.* reason = Try More79 made = 07/02/15 09:39:03 expires = 0 banner = console [subnetban] subnet = 185.31.15*.* reason = Try More80 made = 07/02/15 09:39:03 expires = 0 banner = console [subnetban] subnet = 188.13*.*.* reason = Try More81 made = 07/07/15 09:39:03 expires = 0 banner = console [subnetban] subnet = 151.236.5.* reason = Try More82 made = 07/07/15 09:39:03 expires = 0 banner = console [subnetban] subnet = 87.236.19*.* reason = Try More83 made = 07/07/15 09:39:03 expires = 0 banner = console [subnetban] subnet = 46.246.*.* reason = Try More84 made = 07/07/15 09:39:03 expires = 0 banner = console [subnetban] subnet = 176.9.1*.* reason = Try More85 made = 07/10/15 09:39:03 expires = 0 banner = console [subnetban] subnet = 46.19.139.* reason = Try More86 made = 08/10/15 09:39:03 expires = 0 banner = console7 points -
I managed to makeshift my way to lua 5.0 compatibility, in a separate branch of LESM 2.7.5 Basically was able to get ingame and do commands with no errors now. Haven't tested all the features, but I don't think I will run into anything too surprising now, possibily a few things that will not be fully functional. But I am pretty excited for the future7 points
-
ET Server Series!
Jhonny/Shinobi and 5 others reacted to Purple for a topic
I've started on a basic ET server configuration series for people. I will continue to update this topic with more and more videos (p.s sorry for the low quality videos going to use something else for recording <3) $part 1 https://www.youtube.com/watch?v=ewwoq1ZUo-Y&feature=youtu.be6 points -
Playernames without colorcodes would definitely improve readability of admin and cheat logs.5 points
-
This is a great idea. I can provide a simple example of a shrubbot command working with LUA - we have a bunch of working scripts that use this method. You can use this if you want. For the purposes of this example, the command is mycommand. It will be executed when the uses enters !mycommand in the console, assuming that player has been assigned level 2 or higher shrubbot level. 1. Create your command in the shrubbot file. Open your shrubbot.cfg file (in silent\database directory) and add the following block: [command] command = mycommand exec = mycommand [i] desc = Does something cool for people over level 2 syntax = levels = 2 3 4 5 2. Create a LUA file in your silent directory on the server. Call it mycommand.lua (or whatever name you want to give it). Begin with the following stub: function et_ConsoleCommand(command) -- if the user types !mycommand in the console if et.trap_Argv(0) == "mycommand" then -- Do your custom processing here return 1 -- Tells silEnT that this method handled this command end return 0 -- Tells silEnT that this file did not handle this command end 3. Update your server config to load the LUA file. Add or modify the following server var (lua_modules): set lua_modules "mycommand.lua" 4. Restart your server. Assuming you are shrubbot level 2 or higher, !mycommand will execute and do cool stuff.4 points
-
Like solar and Dragonji already pointed out, ETPro sourcecode is not available. But I will add as a representative of the silEnT mod team, that even if ETPro source code would be available, there would be no motivation for the silEnT mod team to add features to it. If we would do anything with it, we would just look for things we could use to improve our mod.4 points
-
heh, you just assume Petty arguments aside, I can share it here for you or anyone else who wants to do custom sounds this way. The advantage of this is that you can restrict certain sounds by shrubbot level. We use this as a small benefit for regulars, vip regulars and members. In full disclosure, another member of IoW wrote these scripts, so I can't really help you if things aren't working or this is poorly written or wrong or causes your server to crash. Use at your own risk! All I know is, it works... First you need formatting.lua. I think it was supposed to be a general purpose utility script that is shared by other scripts. function makeDisplayString(text, color, length, alignment) -- Initialize display string local displayString -- Get the display length of the text local textDisplayLength = displayLength(text) -- If the text display length fits in the desired display length if textDisplayLength <= length then -- Create enough padding to make the text the correct length for display local padding = "" for i = 1, length - textDisplayLength do padding = padding .. ' ' end -- If alignment is set to centered if alignment == "center" and string.len(padding) >= 2 then -- Find the middle of the padding and put each half on one side of the string local paddingSplitPoint = math.floor(string.len(padding) / 2) displayString = string.sub(padding, 1, paddingSplitPoint) .. text .. string.sub(padding, paddingSplitPoint + 1) -- Otherwise, if alignment was set to right elseif alignment == "right" then -- Put the padding at the beginning of the string displayString = padding .. text else -- Otherwise add the padding to the end of the string (left aligned) displayString = text .. padding end -- If the text is too big to fit in the desired display length else -- If the display length was specified as a very low number (so can't display the text properly) if length <= 3 then -- Fill the display length with dots displayString = "" for i = 1, length do displayString = displayString .. '.' end -- Otherwise, the display length has enough space to show part of the text else -- Create a table to hold parts of the text (chunks beginning with a color code [if possible]) local textTable = {} -- Split up the text into color coded pieces until there is no more text local moreText = true while moreText do -- Try to find the first occurence of a color code local firstColorCodeLocation = string.find(text, "%^[^%^]") -- Initialize text part local textPart -- If there are no color codes in the text if not firstColorCodeLocation then -- Set the text part to the entire text and specify that there is no more text to add textPart = text moreText = false -- Otherwise, a color code was found else -- If the first color code is not at the beginning of the text if firstColorCodeLocation > 1 then -- Set the text part to the text leading up to the first color code textPart = string.sub(text, 1, firstColorCodeLocation - 1) -- Otherwise, the first color code is at the beginning of the text else -- Attempt to find the second color code local secondColorCodeLocation = string.find(text, "%^[^%^]", firstColorCodeLocation + 2) -- If the second color code is found if secondColorCodeLocation then -- Set the text part to be the text leading up to the second color code (including the first one) textPart = string.sub(text, 1, secondColorCodeLocation - 1) else -- Otherwise, set the text part to the entire remaining text and specify that there is no more text to add textPart = text moreText = false end end -- After determining a text part for the table remove that part from the text text = string.sub(text, string.len(textPart) + 1) end -- Add the text part to the table table.insert(textTable, textPart) end -- Set the amount of text needed to fill the desired display length (not including the ellipses) local displayTextNeeded = length - 3 -- Initialize the display string that will hold the display text displayString = "" -- While more text is needed while displayTextNeeded > 0 do -- Get the next text part from the table and remove the table entry for it local nextTextPart = textTable[1] table.remove(textTable, 1) -- If the text part begins with a color code if string.find(nextTextPart, "%^[^%^]") then -- Get the amount of text needed from the text part (or as much as possible) and update the text needed nextTextPart = string.sub(nextTextPart, 1, displayTextNeeded + 2) displayTextNeeded = displayTextNeeded - (string.len(nextTextPart) - 2) -- Otherwise, there is no color code in the text part else -- Get the amount of text needed from the text part (or as much as possible) and update the text needed nextTextPart = string.sub(nextTextPart, 1, displayTextNeeded) displayTextNeeded = displayTextNeeded - string.len(nextTextPart) end -- Add the text part to the display string displayString = displayString .. nextTextPart end -- Now that no more text is needed, add ellipses to show that it didn't fit displayString = displayString .. colorString("...", color) end end displayString = colorString(displayString, color) -- return the formatted string return displayString end function colorString(text, color) if color then -- If text does not begin with a color code if string.find(text, "%^[^%^]") ~= 1 then -- Add the color code to the beginning of the text text = '^' .. color .. text end end -- Return text with color code return text end function displayLength(text) -- Initialize the display length to the full length of the text local textDisplayLength = string.len(text) -- Loop through each color code for colorCode in string.gmatch(text, "%^[^%^]") do -- Subtract the color code characters from the display length textDisplayLength = textDisplayLength - string.len(colorCode) end return textDisplayLength end function makeLine(character, length) -- Initialize the line string local line = "" -- Add characters until the string is as long as specified for i = 1, length do line = line .. character end -- Return the print line return line end function trim(s, side) -- Initialize the number of spaces removed to 0 local i = 0 -- If the right side was not specified if side ~= 'r' then -- While there are spaces at the beginning of the string while string.find(s, "^%s") do -- Remove the first space and increment counter s = string.gsub(s, "^%s", "") i = i + 1 end end -- If the left side was not specified if side ~= 'l' then -- While there are spaces at the end of the string while string.find(s, "%s$") do -- Remove the last space and increment counter s = string.gsub(s, "%s$", "") i = i + 1 end end -- Return the trimmed string and the amount of spaces removed return s, i end function printETLine(clientNum, text) -- Print the specified text into the specified client's console if clientNum ~= "[i]" then et.trap_SendServerCommand(clientNum, 'print "' .. text .. '\n"') else et.G_Print( text ) end end function printMessage(clientNum, text, messageType) -- Print the specified text into the specified client's console if clientNum ~= "[i]" then et.trap_SendServerCommand(clientNum, messageType .. ' "' .. text .. '"') else et.G_Print( text ) end end Then playsound.lua contains the command implementation require("formatting") -- Initialize a table to hold all possible sounds soundTable = {} -- Initialize a table to hold all players playsound cvar values playsoundCvarTable = {} function et_InitGame(levelTime, randomSeed, restart) -- Read sounds into soundTable local configFile, length = et.trap_FS_FOpenFile("playsound.cfg", et.FS_READ) -- If there were no errors opening the file if length ~= -1 then -- Read data from config file and close it local soundData = et.trap_FS_Read(configFile, length) et.trap_FS_FCloseFile(configFile) -- For each sound block in config file for soundBlock in string.gmatch(soundData, "[%w%-_]+[%s\n\r]+%b{}") do -- Get the sound command name local sound = string.match(soundBlock, "[%w%-_]+") -- Initialize parameter table for the sound command local soundParameterTable = {} -- Get level required from the sound block soundParameterTable["level"] = tonumber(string.sub(string.match(soundBlock, "level:[%d_]+"), 7)) -- Get a list of sound filenames from the sound block local soundFilenameList = {} for soundFilenameLine in string.gmatch(soundBlock, "sound:[%w%-_]+.wav") do local soundFilename = string.sub(soundFilenameLine, 7) table.insert(soundFilenameList, soundFilename) end soundParameterTable["sounds"] = soundFilenameList -- Add the sound parameters to the sound table soundTable[string.lower(sound)] = soundParameterTable end end end function et_CvarValue(clientNum, cvar, value) -- Add the cvar value to the script cvar table playsoundCvarTable[clientNum][cvar] = value end function et_ClientConnect(clientNum, firstTime, isBot) -- Querry server to get cvar value et.G_QueryClientCvar(clientNum, "playsound_method") -- Initialize the playsound_method cvar to nil since we do not know the value yet local clientCvarValueTable = {} -- Add client to the cvar table playsoundCvarTable[clientNum] = clientCvarValueTable -- Return nil to indicate that the player was not rejected by this function return nil end function et_ClientDisconnect(clientNum) -- Remove the player from the playsound cvar table playsoundCvarTable[clientNum] = nil end function et_ConsoleCommand(command) -- If client executed play command from console if string.lower(et.trap_Argv(0)) == "play" then -- If there were at least 3 parameters (including command name) if et.trap_Argc() >= 3 then -- Get client's admin level local clientNum=0 local clientLevel=0 if et.trap_Argv(1) == "[i]" then -- When CONSOLE executes this command, there is no clientNum. So we force the value to 50 -- Avoids a server crash, which is always good clientLevel = 50 else clientNum = et.trap_Argv(1) clientLevel = et.G_shrubbot_level(clientNum) end -- Get sound client passed as a parameter local sound = et.trap_Argv(2) -- Get the parameter table for the requested sound local soundParameterTable = soundTable[string.lower(sound)] -- If the sound exists if soundParameterTable then -- Get the level required to play the sound local level = soundParameterTable["level"] -- If the client has high enough level if clientLevel >= level then -- Choose a random sound from the parameters local soundFilename = soundParameterTable["sounds"][math.random(# soundParameterTable["sounds"])] -- -- Play the sound -- local soundPath = "sound/playsound/" .. soundFilename -- -- et.trap_SendConsoleCommand(et.EXEC_NOW, soundCommand) -- et.G_globalSound(soundPath) -- Loop through the clients and play sound based on their cvar playsound_method for slot, clientCvarValueTable in pairs(playsoundCvarTable) do local playsoundMethod = clientCvarValueTable["playsound_method"] or "sound" if playsoundMethod == "sound" then -- Play the sound for the client local soundPath = "sound/playsound/" .. soundFilename local soundIndex = et.G_SoundIndex(soundPath) et.G_ClientSound(slot, soundIndex) end if playsoundMethod == "text" then local soundText = soundParameterTable["text"] -- Send message to the client showing the text version of the sound command printETLine(slot, soundText) printETLine(slot, "test") end end else -- Otherwise warn client that they do not have high enough level printETLine(clientNum, "^oplay: ^7Permission denied") end else -- Otherwise inform client that the sound doesn't exist printETLine(clientNum, "^oplay: ^7The sound you specified does not exist") end else -- Otherwise inform client that they need to specify a sound name printETLine(clientNum, "^oplay: ^7You must specify a sound name") end -- Return 1 to indicate that the command was handled by this function return 1 end if string.lower(et.trap_Argv(0)) == "listsounds" then -- Initialize display variables local columnSeparator = " " local lineCharacter = '-' local borderColor = '9' local textColor = 'f' local columnWidth = 12 local numberColumns = 6 -- Get client's admin level local clientNum=0 local clientLevel=0 if et.trap_Argv(1) == "[i]" then -- When CONSOLE executes this command, there is no clientNum. So we force the value to 50 -- Avoids a server crash, which is always good clientLevel = 50 else clientNum = et.trap_Argv(1) clientLevel = et.G_shrubbot_level(clientNum) end -- Create a table to hold sounds available to the client local playerSoundTable = {} -- For each sound in the sound table for sound, parameterTable in pairs(soundTable) do -- If the client has high enough level if clientLevel >= parameterTable['level'] then -- Add sound to player sound table table.insert(playerSoundTable, sound) end end -- Sort player sound table in alphebetical order table.sort(playerSoundTable) -- Get number of characters that would be removed from the trimmed separator local trimmedSeparator, charactersRemoved = trim(columnSeparator) -- Determine line length based on number of columns, column width, and the separator display length local lineLength = (columnWidth * numberColumns) + (displayLength(columnSeparator) * (numberColumns + 1)) - charactersRemoved -- Print a line to act as the top border of the chart -- printETLine(clientNum, colorString(makeLine(lineCharacter, lineLength), borderColor)) -- While there are sounds in the player sound table while # playerSoundTable > 0 do -- Initialize line holding sound names local soundsLine = colorString(trim(columnSeparator, 'l'), borderColor) -- For each column for i = 1, numberColumns do -- Add the sound from the beginning of the list soundsLine = soundsLine .. makeDisplayString(playerSoundTable[1] or '', textColor, columnWidth, "left") -- If this is not the last column if i < numberColumns then -- Add a separator (column border) soundsLine = soundsLine .. colorString(columnSeparator, borderColor) else -- Otherwise add a separator with the right side trimmed soundsLine = soundsLine .. colorString(trim(columnSeparator, 'r'), borderColor) end -- Remove first sound from the beginning of the table table.remove(playerSoundTable, 1) end -- Print the sound line followed by a border line printETLine(clientNum, soundsLine) -- printETLine(clientNum, colorString(makeLine(lineCharacter, lineLength), borderColor)) end -- Return 1 to indicate that the command was handled by this function return 1 end -- Return 0 to pass any command for standard et processing return 0 end There is some stuff in here about having clients opt out of the sounds, but I don't think it was ever finished nor does it work AFAIK. But take them as-is if you like. Next, the format of the playsound.cfg file is this: wewin { level:1 sound:the_game.wav } ... So you've got the command (as in !play wewin), the minimum shrubbot level required to use the sound (note all higher levels can use it), then the sound file name itself. The sound file must be in 'sound/playsound/' in your pk3 file, or else you can change the path coded in the playsound.lua file. But this way, you can just edit playsound.cfg to add your sounds, the command string and level required to run it. No end to the amount of sounds you can have. Next, define the commands in your shrubbot.cfg file: [command] command = ^bplay exec = play [i] [1] desc = Play a sound syntax = levels = 0 1 2 3 4 5 [command] command = ^blistsounds exec = listsounds [i] desc = List all sounds syntax = levels = 0 1 2 3 4 5 Finally, be sure to include the LUA scripts in your et config files: set lua_modules "playsound.lua"4 points
-
BACKUPS
Jhonny/Shinobi and 3 others reacted to clan DIABOLIK for a topic
Thanks a lot @all for your support, nice from you I'm afraid it is the case, they just propose to make a new command for another VPS, I learn here the term 'foolish' ... This stupid company is: http://qualityserv.fr/ I remember when I was at http://dediserverhosting.com/ it was zero problem ! I found the courage, now I tune a @home server to get the same settings as the original one, g_mode+g_weapons+g_misc make 90% of the server; cool ! In few days, a good BACKUP and will upload on another VPS Bye all !4 points -
g_shuffle_staytime or something?
hellreturn and 3 others reacted to Sol for a topic
MINIMAL_LEVEL_TOEXECUTE = 20 -- minimal level to execute this command SHUFFLE_COMMAND = "!shuffle" -- shuffle command SHUFFLE_AFTERTIME = 5*60 -- 5min Client = { } function et_InitGame( levelTime, randomSeed, restart ) maxclients = et.trap_Cvar_Get( "sv_maxclients" ) end function et_ClientCommand( num, cmd ) local arg0 = string.lower(cmd) local arg1 = string.lower(et.trap_Argv(1)) if et.G_shrubbot_level( num ) >= MINIMAL_LEVEL_TOEXECUTE and arg0 == SHUFFLE_COMMAND or arg1 == SHUFFLE_COMMAND then StartTime = os.time() for i = 0, maxclients - 1 do local team = et.gentity_get(i, "sess.sessionTeam") if team ~= 3 then Client[i] = team end end return true -- let execute it end if arg0 == "team" and StartTime ~= nil then if arg1 == "b" then if os.time() >= (StartTime + SHUFFLE_AFTERTIME) and Client[num] == 1 then return false end elseif arg1 == "r" then if os.time() >= (StartTime + SHUFFLE_AFTERTIME) and Client[num] == 2 then return false end end end end It is just concept but it should works, in this case they won't be able to change to ->spec-> another team too4 points -
EA titles on Humble Bundle
clan DIABOLIK and 3 others reacted to Dragonji for a topic
"Pay what you want for epic games on Origin. Support charity." https://www.humblebundle.com/ 8 triumphant games. Pay what you want and get the terrifying sci-fi horror third person shooter Dead Space 3; the original bone-chilling horror shooter Dead Space; the intense action-packed supersoldier shooter Crysis 2 Maximum Edition; the high speed open-world crash happy racer Burnout Paradise: The Ultimate Box; the authentic modern warfare sim Medal of Honor; and the first person parkour thrill ride Mirror's Edge. Pay over the average and receive the beloved life sim The Sims 3 (along with two expansion packs in The Sims 3 Starter Pack) and the unrivaled military shooter Battlefield 3. Fire it up on Origin. Buying the Humble Origin Bundle gets you the games to play on Windows through Origin (system requirements here), with The Sims 3 also available on Mac! Electronic Arts has also provided Steam keys for some of the games (full list here)! Pay what you want. On their own, all these mind-blowing titles would cost about $215, but we're letting you name your price! Pay any price to get soundtracks for The Sims 3 and Battlefield 3. A purchase of $1 or more gets you Origin* keys for all the games, and you can also get Steam keys for Dead Space, Crysis 2 Maximum Edition, Burnout Paradise: The Ultimate Box, Medal of Honor, and Mirror's Edge! Beat the average to also get The Sims 3, two expansion packs in The Sims 3 Starter Pack, and Battlefield 3. This offer ends on 28.08.2013 (if I am correct )4 points -
File Name: Spec Command File Submitter: Arcane File Submitted: 03 Apr 2013 File Category: LUA Spec Command lua script which works as a shrubbot command. An alternative for the console command "follow". To install: You need to unzip the file and extract the spec.lua file Upload this file into the silent folder on server (/serverip/silent) In server.cfg cvar: lua_modules "spec.lua" In shrubbot.cfg add the shrubbot command information from inside Readme.txt Click here to download this file4 points
-
I'm writing this post to bring attention since the documentation is not well written around the subject. Since GUIDs are not trustable at all. Not PB GUIDs or silEnT GUIDs. We included admin level protection system into the 0.5.0 version of the mod. This system effectively limits all benefits from GUID spoofing into gaining XP of the spoofed players. Even private messages are not possible without proper authentication with the server. The system uses 2 cvars: g_adminProtection : bitmask 1 Log succesfull authentications to the cheat log 2 Log admin spoofing attempts to the cheat log 4 Report admins waiting for confirmation on their level to the admin chat g_protectMinLevel : integer The minimum level of the protected admins. To use the system, set the g_adminProtection to 7. This will enable all logging so you can see who authenticates to what level and if the authentication is succesfull or not. Set the g_protectMinLevel to the lowest level you want to protect. Don't set this to too low because it causes little overhead and also the credentials need to be given using online commands on the server. When the silEnT notices there is an admin connecting to the server who has protected admin level but no credentials, it will report this admin to the admin chat. When this happens, the admin needs to be confirmed with !confirm command by someone who is able to identify the player identity. This only needs to done once for each admin. In the following connections, the silEnT is able to handle the authentications silently itself. From now on, if someone spoofs the GUID of an admin, he will face the authentication procedure. The silEnT will inform into the admin chat that the player has lost his authentication and !setlevel is required. Do not do the !setlevel unless you know this one is genuinly the correct admin. Also, the !confirm command cannot be used anymore for the reason that the !confirm command can be given to less high admins without risks. If the player spoofing the GUID attempts to spoof the credentials, again the admin chat and cheat log is reported with the spoof attempt. Important thing to know is that the !confirm command and !setlevel commands do not give credentials during the warmup period. Also, authentication does not operate during warmup but player needs to wait until the end of warmup before he gains access to his admin level. If you do !confrim or !setlevel during the warmup and the player is later on reported to not have yet been confirmed, just do the !confirm again. I hope this information helps and brings some light to the subject. Feel free to ask questions in this thread and I we will answer those.4 points
-
silEnT release 0.3.0
Snake and 3 others reacted to TheSilencerPL for a topic
We proudly announce the silEnT Enemy Territory mod 0.3.0. We worked hard for it to become what it is in 0.3.0 version. We made many things server side as well as client side. To cut the story short, here are the top things in 0.3.0 release: new database versionhardware based identificationnew game type: Team Death Matchshrubbot improvementsnew landmine notificationsnew ppsh modelweapon banks display Traditionally, here is the change log (0.3.0): Added: weapon banks shown during weapon change - incorporated into HUD editor (introduced new client cvars for this: cg_wbShowDuration, cg_wbOrientation, cg_wbWideSlots)Fixed: defect with following FT (killed player was picked when he/she was the FT leader - but next FT member should be picked)Improved the database performance.Added new command !baninfo.Removed cg_damageKick client cvar.Reworked cg_hitSounds client cvar. Now a new option play only headshots is availableAdded: New server cvar g_punkbuster. Server that don't have punkbuster enbaled can still force clients enabling punkbuster for them to have GUIDs. This does not guarantee that every player will have a GUID but if the player has it, it will be sent to the server.Added: warmup countdown (last 3 seconds). Can be turned off by setting cg_showCountDown client cvar to "0"Added: g_classWeapons server cvar. Enables weapons per class (so far only PPSh is handled)Changed: allied tripmine beam color changed to blueAdded: Muted players can't call votes.Added: New command !readadmins.Added: separate meaning of death for shoving to death (enemy killing and team killing supported)Added: new type of revealed landmines notifications (cg_landmineNotifyType client cvar and g_landmineNotifyType server cvar provided for this)Added new command !resetpls that reset individual player stats leaving XP save untouched. There has been some cases when the stats have bugged and this is an easy command for admins to correct such stats.Players can customise the announcements and even disable them if they like.Added possibility for First Blood sound for server admins.Fixed headshots from proned players.Added: silEnT mod icon displayed on loading screenAdded: new PPSH weapon model and enhanced the weapon overall (sounds)Fixed: follow Fire Team bug with spec not switching outside of FT for "FT first" option.Fixed: spectator follow bug: SPACE + RMB caused wrong behavior.pmove_fixed is now recognised by the server if the players set it. Added new shrubbot flag '/' that will disables private messages from levels or individual players. Fixed !useredit add command. Before the command checked only valid command flags were added. Now it accepts any flags.Added kills/deaths/spree counters hud display managed by cg_killsDisplay cvar.Added: predefined HUDs can be now chosen from the HUD configuration menuAdded: new predefined HUDs: etpro, etpro2 (thanks to Dragon)Fixed: in chat after every map players' pings are very weird (http://mygamingtalk....c/437-big-ping/)Added: new game type: Team Death Match (easy to be configured server side and client side)Added: when alternate HUD is chosen with compass in the lower part of the screen the compass slides out to bottom. The 0.3.0 is no longer provided as download. Use 0.3.1 instead.4 points -
I have just moved commands stuckstart, stucknext, saveplayerpos, saveusepoint, warpanybot, warptogoaloffset, cleargoalflags from et to global_scripts so that they can be used both in ET and RTCW.3 points
-
Omni-bot wiki has been moved to https://mygamingtalk.com/wiki/OMNIBOT_-_Enemy_Territory_Modification3 points
-
How to download Omni-bot
hellreturn and 2 others reacted to palota for a topic
Enemy Territory If you use ET:Legacy, it is very easy because it automatically downloads and installs Omni-bot. You can also download ZIP package from the GitHub. You can extract it to any folder and then set omnibot_path cvar. Most users need to download only one file omni-bot_0_91_ET.zip, which contains binaries, scripts and waypoints. File omni-bot_0_91_ET_waypoint_mod.zip is the omnibot mod which can be used to create waypoints and goals. If you just want to play the game, it's better to install another mod (legacy, silEnT, n!tmod, Jaymod, NoQuarter, etpub, ...). The latest development version is available in the SVN repository. You can use TortoiseSVN to checkout http://svn.assembla.com/svn/omnibot/Enemy-Territory/0.8/ If it asks for login credentials, you can enter anything (for example username: x, password: x). Return to Castle Wolfenstein Download file omni-bot_0_91_RTCW.zip from GitHub. It contains scripts, waypoints and binaries. It is compatible with the latest version of iortcw.3 points -
Great work as always, but just one question. What is the point of making external library modules without releasing an API?3 points
-
Customizing of Loading Screen between Maps
Ray and 2 others reacted to Flyingdutchman for a topic
Beck, We figured this out. It isn't very difficult, it just isn't documented anywhere. 1.Create a .pk3 file - in this case; we'll call it IOW.pk3 2.Within the PK3 create a the folders: gfx\loading 3. Within that loading subfolder, place your modified image for the loading screen. It's basically just a 1024x1024 TGA (saved at 24 or 32 bit only). The image file needs to be called: camp_map.tga 4. Add this PK3 to silent folder on the server. If that isn't clear enough, you can do this: /connect etforever.com If you connect to our server, you will download ~ETF.pk3 which contains the custom loading screen (saved to your silent folder). You can then extract that file and modify the tga within it for IOW. Once done, rename the ~ETF.pk3 to whatever you want, place it in your servers' silent folder, and it should be good to go. This loading screen change will only be effective on your server: which is good, it's not invasive on the core files of the game. Hope this helps: post back if you have any issues. -FDM3 points -
0.9.0 startup missing extra menu
hellreturn and 2 others reacted to gaoesa for a topic
Unfortunately this is a sad testament of the state of the ET community. It has been visible for a long time around here too. To make matters even worse, ET client game is one huge CVE with no realistic way to protect players. Only thing I can think of is if a project like ET Legacy client would start checking the binaries it loads to prevent proxying the mods, or at least giving the users an option to allow it case by case. However, I don't believe it will ever happen and there is the political element too, which is always present in the GPL projects.3 points -
/minimize for silent
Flyingdutchman and 2 others reacted to Dragonji for a topic
You can minimize the game with no problem on ET Legacy.3 points -
Currently I have had a lot of people ask is there a way to just not include all the features, as there are way too many for what they need. I have answered this question usually with: Everything can be toggled on and off some where. Whether that be Config.json or disabling commands in Commands.json. There are very few things that are not configurable, or at least able to disable. And if there was ever something I missed (Sometimes I do miss some features because I am so used to them being enabled) just to ask me and I can probably make it able to disable / enable. However recently a proposed idea would be to make a drag and drop features into a folder like LESM/plugins/ This would also allow people to use my Lua as a sort of API to make their own plugins which I find really cool. It sounds good, and I really kind of like the idea of it, I just don't know how to approach the idea yet, if it is possible (for me) to do.. This however proposes a problem, instead of having to configure one thing you would then have to configure each individual plugin. It would also require a sort of rewrite of the entire code, which would probably take some time. So what do you think should be done? Should I just continue what I am doing?3 points
-
Spectators ET closes itself
Krauersaut and 2 others reacted to Purple for a topic
Sorry for shit quality but yeah, https://youtu.be/iZXQNaxuchs3 points -
silent mod ofc you have to play with g_mapConfigs and g_mapScriptDirectory and custom commands thx to silent mod guys example: i'd like to setup a tj mod via shrubbot: [command] command = tj exec = set lua_modules "nextmap.lua autopromo.lua TJmod.lua adrenaline.lua" ; set g_mapConfigs "tj_cfg"; restart; desc = ^7!^3tj^7 - turn ^3TRICKJUMP MODE ^1on syntax = levels = 11 [command] command = tjoff exec = set lua_modules "nextmap.lua autopromo.lua" ; set g_mapConfigs "mapconfigs"; restart; desc = ^7!^3tjoff^7 - turn ^3TRICKJUMP MODE ^1off syntax = levels = 11 well, do NOT set lua modules via your server.cfg, and you can find the above lua modules searching via google it's just a sample, have fun3 points
-
1. Open FTP 2. Navigate to and edit shrubbot.cfg 3. Save/Upload 4. Open ET/RCON 5. !readconfig vs: 1. !levedit 1 add w Point is not having to do the shrubbot.cfg we already have commands to add remove edit players flags/greetings and stuff, when we used to not have to. Also you may not want to give your admins access to your whole server but you would want to give them access still to the levedit. Anyways plenty of reasons, it simply would be useful.3 points
-
I looked into this and I don't think it can be done via lua? The only way I can think off was latching the player weapon, but in order to latch the panzer the class would need to be soldier. So I don't think I can do that part, although i did update the lua script and will post it in the downloads sections has a bit more settings and features pre-done in the lua so users won't need to change anything in their server configuration files.3 points
-
Simple lua protection
twt_thunder and 2 others reacted to gaoesa for a topic
For silEnT mod, the mod built admin level protection (http://mygamingtalk.com/wiki/Silent_Mod_Server_Cvar#g_adminProtection) works both reliably and with less inconvenience than this.3 points -
Always see some sort of automove talk on here, so here is a simple automove that works well and i have been using on my server for months, modified quiet a bit to be usable by anyone. -- automove redone. function et_InitGame(levelTime,randomSeed,restart) et.RegisterModname("^1D^0Ri Team Balance") players = { } players[0] = 0 --all players[1] = 0 --axis players[2] = 0 --allies players[3] = 0 --spectators end function et_Obituary(client, killer, death) axiskilled = 0 allieskilled = 0 count2 = 0 player_name2 = GetPlayerName(client) local game_state = tonumber(et.trap_Cvar_Get("gamestate")) local player_team = et.gentity_get(client, "sess.SessionTeam") if game_state ~= 1 and game_state ~= 2 then players[0] = 0 --all players[1] = 0 --axis players[2] = 0 --allies players[3] = 0 --spectators for i = 0, tonumber(et.trap_Cvar_Get("sv_maxclients")) -1, 1 do local teamnumber = tonumber(et.gentity_get(i,"sess.sessionTeam")) if et.gentity_get(i,"pers.connected") == 2 then players[0] = players[0] + 1 players[teamnumber] = players[teamnumber] + 1 end end if (( (players[1] - players[2]) > 1 and player_team == 1 ) or ( (players[2] - players[1]) > 1 and player_team == 2 )) then if player_team == 1 then axiskilled = 1 else allieskilled = 1 end et.trap_SendServerCommand(-1, "chat \"^3Automoving " .. player_name2 .. " ^3as teams were uneven... \"") end end return nil end function et_RunFrame() if axiskilled == 1 then delayaxis() elseif allieskilled == 1 then delayallies() end end function delayaxis() count2 = count2 + 1 if count2 >= 5 then --every 5 deaths move the next player that dies et.trap_SendConsoleCommand( et.EXEC_APPEND, "putteam " .. player_name2 .. " b") count2 = 0 axiskilled = 0 end end function delayallies() count2 = count2 + 1 if count2 >= 5 then--every 5 deaths move the next player that dies et.trap_SendConsoleCommand( et.EXEC_APPEND, "putteam " .. player_name2 .. " r") count2 = 0 allieskilled = 0 end end function GetPlayerName(client) return et.Q_CleanStr(et.gentity_get(client, "pers.netname")) end function et_ShutdownGame(restart) end3 points
-
Trip Mines wire transparency
clan DIABOLIK and 2 others reacted to cinco for a topic
The texture the wire of tripmine uses is in models \ weapons2 \ tripmine \ wire_blue.tga in silent-0.8.2.pk3 You can extract wire_blue.tga and modify it to your liking, change eg blue for a more discreet gray. Never modify the texture of wire_blue.tga in silent-0.8.2.pk3 Create a small pk3 and name it as you like but add a "z_" at the begginig of the name,pk3 (eg. z_name.pk3); within the pk3 create the folder structure models \ weapons2 \ tripmine \ wire_blue.tga where wire_blue.tga will now be your version. Climb this small pk3 the silent folder on your server. It is true that it is visible to kilometers .. Can you get a sample in http://www.clantnt.com/servidor/silent/z_tripmine.pk3,............................. (is a sample) Regards.3 points -
Lua Enhanced Server Module
Jhonny/Shinobi and 2 others reacted to Zelly for a topic
Hello everyone! I have been working on a project with pure lua that enhances current ET servers. I have been working on it alone for a few years and just recently invited purple to come help me out. A short description of some of the many features that it has: It is very configurable, if something isn't already configurable it would be very easy to make it configurable. It includes over 60 custom commands. Has a mail system. It has an option to register a profile to see all your stats over time. (Also used for a bunch of other stuff) There is a lot in the project and it is constantly changing, so for more up to date information you can view the wiki on bitbucket: https://bitbucket.org/zelly/lua-enhanced-server-mod/wiki/Home The wiki has a feature list, command list, information about the keys, how to report bugs, how to join development and more. I am always open to ideas to improve my project so please take a look. Here is the home page if you want to take a look around the project: https://bitbucket.org/zelly/lua-enhanced-server-mod/overview3 points -
New section in Wiki for creting custom commands
hellreturn and 2 others reacted to gaoesa for a topic
I finally decided to add a section for creating custom commands. The information has been scattered around and I thought it will make it easier if all of it is in one place. http://mygamingtalk.com/wiki/index.php/Silent_Creating_Custom_Commands Please comment improvements and if you can provide clean short examples for the last two methods, that would be appreciated.3 points -
Hi, I was thinking if its maybe possible that when you turn on panzerwar, all players are moved into soldier class? Becuase from what it is now, you can join medic class and play panzer and then u go to 156hp or so and then direct hit doesnt kill you, and also another thing if youve been hit you are healing yourself with that 3hp's every second and so on. So I think it would be cooler that when panzerwar gets turned on we all get moved to soldier class. I hope thats possible. Same goes for sniperwar i guess! Thanks!3 points
-
The problem your probably running into is flak jacket, ( 50% less explosive damage for people who have flak jacket ) And most servers let that skill carry over to other classes too not just engineers, I have come to just disable flak jacket altogether as I don't think people should be just launched 50 feet when a grenade hits them directly. To toggle it for every class when level 4 engy is reached look here: http://mygamingtalk.com/wiki/index.php/Silent_Mod_Server_Cvar#g_skills and if you want to disable it altogether, which admittedly is a bit extreme: http://mygamingtalk.com/wiki/index.php/Silent_Mod_Server_Cvar#skill_engineer3 points
-
Side effects of "forcecvar" ?
TheSilencerPL and 2 others reacted to Dragonji for a topic
Also, keep in mind forcecvars are saved in configstrings so it's better to keep the number of forced cvars as low as possible.3 points -
Will this LUA work? (Novice needs help :P)
Jhonny/Shinobi and 2 others reacted to gaoesa for a topic
You could make a custom command that sends you a private message. As an alternative.3 points -
@beck if you download our pk3 file either from our silent server (abcsilent.abcclan.org) or from here and have a look inside it you will see how it is done. Else pm me. @Larrywall Yes it is possible have a look inside our pk3 file to see. Briefly you need to edit wm_quickmessageAlt.menu If you look through this above you should see where the edits are. Then you need to edit the wm_allies_chat.voice and the wm_axis_chat.voice This above was added in at the end of the existing file. More info. If you look at this line QM_MENU_ITEM( "1. ^7Monty Python", exec "VoiceChat Monty"; close wm_ABC_Sounds, "1", 1 ) [name shown in menu], exec"VoiceChat [name of voicechat] So when this is selected off quick chat it will play from wm_allies_chat.voice So different people will hear a different message. Good luck if you followed that.3 points
-
Thank you!
hellreturn and 2 others reacted to Antichrist for a topic
The new changes to the SilentAC system are amazing, and take even more work off admins, giving us more play time. It is MUCH appreciated! Silent has by far exceeded every expectation I've ever had from a mod. I've played EtPub for years, and when Silent was going to release ETPub, I was a little nervous at first, but It has done nothing but good things for our servers. I've always been a creature of habit, and hate changes to what I'm used to, but I actually get excited when I hear about a new Silent release. All the features and changes I see are always an improvement over the previous release. Thank you all, keep up the great work!!3 points -
avatars
TheSilencerPL and 2 others reacted to BECK for a topic
If you do it, I like the idea of providing a standard pack of ones to choose from and allowing admins to supplement, even allow certain shrubbot levels access to certain images etc.... Otherwise -- gonna be a lot of penises running around the map LOL.3 points -
New version of ETEng 0.3 is released. (4e530ad65164f40a584c30cc4bea76a2) (c08a3c14a92cc922955dd1c17e5375c9) md5sum Added: sv_protocolcheck {0,1}: 0-Server doesn't check clients protocols, 1-Server allows only one protocol of sv_protocol. Added: sv_protocol {82,84}: 82- 2.55 Protocol, 84 - 2.6b Protocol, This is shown in getinfo. Added: sv_protect {0,1}: 0-Server doesn't check clients userinfo. 1-Server check clients for fake clients (q3fill exploit). Added: sv_maxreqs {n}: N-getstatus Request per sv_reqtime. Added: sv_reqtime {ms}: ms: ( default 1000 = 1s ) Time per sv_maxreqs request. Added: sv_maxclientsip {n}: Maximum number of connections allowed from one particular IP. Added: sv_rconfilter {0,1}: 0-Server doesn't check the client IP when using rcon. 1-Server filters the source rcon cmds. Added: sv_rcon1 - sv_rcon5 {IP}: Works if sv_rconfilter is enabled. Example: sv_rcon1 "83.0.0.1" IP Mask is also supported Ex: sv_rcon1 "83.0.0.*" Added: Win32 Support Fixed: wwwdl, getstatus exploit. Fixed: Invalid .PK3 files referenced error. ETENG 0.3 Download3 points
-
Improved sorting algorithm for teams.
TheSilencerPL and 2 others reacted to gaoesa for a topic
So helpfull from you dempa! Please keep the trolling out from this forum. Yes I have seen your trolls at the FA forum. If you could have taken a little moment to think, we could have instructed you to do your own changes against ETPub. We could have then reviewed them and seen if they are any worth. Even give the possibility to join our team if you had shown us that you can do good additions without messing up the code. However, even if you would have the skills, which I doubt based on the crap you talk so much, you have no such chance anymore because of your personality.3 points -
silEnT release 0.4.0
Snake and 2 others reacted to TheSilencerPL for a topic
The silEnT Mod Team presents the new 0.4.0 version of silEnT Mod for Enemy Territory. Download Special thanks for Krauersaut for building the Mac OS X client and crapshoot from the omni-bot team for his help and co-operation New main features in silEnT 0.4.0 are: New User Interface with 2 themes. Themes can be switched with "ui_theme" cvar {1,2} Widescreen support. New front end user interface for private message system. 3rd person view for knife throw animations. db improvements. Enhanced Hardware Based Identification system. g_identOptions 16. The server will automatically create a new ban for a player that is circumventing old ban and the client identification catches it. Subnet ban feature to replace pb_sv_banmask. Performance enhancements. Ban numbers are printed in the outputs of !userinfo, !userlist and !usersearch commands, if the player is banned. Miscellaneous added features: Added: tripmines markers on the command map. Added: new tripmine wire shaders. Added: tripmines can be now spotted by coverts to be marked on the command map. Added: Possibility for server admins to enable Jaymod style double jumping This is controlled with g_misc flag 32. Added: hint for tripmine placement (hint is displayed when tripmine can be attached to the pointed place) Added: new cvar: cg_themedCMap {0,1}, which activates/deactivates themed command map frame Added: New shrubbot flag '#'. Players or levels with this flag are not allowed to call votes. Voting is automatically denied from players without PB GUIDs. Do note, it does not require the punkbuster to be enabled on the server for a player to have a PB GUID. Added: new private message which allows to select players from the list or just type the name in Added: Possiblity to mute only global chat sounds with cg_noVoiceChats 2. Also added into the menu. Traditionally, the changelog: Version 0.4.0 Added: different power bolt colors for fops to show arty/airstrikes availability (http://mygamingtalk....ops-air-strike/) Added: tripmines can be tripped by movers (doors etc.) when they cross the wire Added: ui_themedCursor client cvar to disable/enable themed cursor. For those who don't like the new themed mouse cursors. Reworked: new tripmine model, new tripmine icons Fixed: narrow screens (aspect ratio where the width is smaller then in 4:3 aspect ratio) were stretching some visuals Fixed: the map voting during intermission accepted mouse presses under the map list Fixed: landmines and tripmines were positioned wrong in the command map Fixed: throwing knives in air Fixed: map and player list scroller: http://mygamingtalk....if-you-drag-it/ Fixed: tripmines do not disappear from command map after being destructed (tripped, not shot) Fixed: bans no longer write NO_GUID to the guid field in the shrubbot.cfg. Renamed: g_settings renamed to g_banners. That is what it is only for so the change is to clarify the purpose. Removed: /rcon ban. This command was causing issues because of the similar name to !ban. Also, there was no unban method. Version 0.4.0rc1 Added: new UI with 2 themes. Themes can be switched with "ui_theme" cvar {1,2} Added: tripmines markers on the command map. Added: new tripmine wire shaders. Added: tripmines can be now spotted by coverts to be marked on the command map. Added: g_identOptions flag 16. The server will automatically create a new ban for a player that is circumventing old ban and the client identification catches him. Added: Ban numbers are printed in the outputs of !userinfo, !userlist and !usersearch commands, if the player is banned. Added: Possibility for server admins to enable Jaymod style double jumping This is controlled with g_misc flag 32. Added: hint for tripmine placement (hint is displayed when tripmine can be attached to the pointed place) Added: new cvar: cg_themedCMap {0,1}, which activates/deactivates themed command map frame Added: New shrubbot flag '#'. Players or levels with this flag are not allowed to call votes. Voting is automatically denied from players without PB GUIDs. Do note, it does not require the punkbuster to be enabled on the server for a player to have a PB GUID. Added: new private message which allows to select players from the list or just type the name in Added: 3rd person view knife throw animations Added: Possiblity to mute only global chat sounds with cg_noVoiceChats 2. Also added into the menu. Fixed: Aspect ratios with widescreen monitors. Fixed: Empty player name in adminchat report when a player who got just kicked based on client identification reconnects instantly. Fixed: throw knife bug during leaning (http://mygamingtalk....e-71-knife-bug/) Fixed: The shortcut with custom commands now gives the client number always correctly. Fixed: Soldier with secondary SMG was able to keep the SMG when switching classes. Can be troublesome if switching to covert. Fixed: weapon banks shown when knife is thrown: http://mygamingtalk....throwing-knife/ Fixed: xp not shown in limbo menu before joining the team: http://mygamingtalk....ed-into-a-team/ Fixed: it was possible to still write inside edit box after tabbing out to non edit box Removed: g_bot_minPlayers. The omnibot librarys MinBots and MaxBots settings cover this feature better. Fixed: thrown knive dissapears on destructible: http://mygamingtalk....ives-disappear/ Fixed: watermark bug: http://mygamingtalk....-watermark-bug/ Fixed: latched class in fire team not shown: http://mygamingtalk....n-notification/ Fixed: http://mygamingtalk....lose-limbomenu/ Fixed: !nextmap & callvote nextmap, don't work with g_gametype 6 Fixed: fast reload animations for weapons: http://mygamingtalk....2-speed-reload/ Download Click here to view the article3 points -
silEnT release 0.3.1
=EMP=Avery13 and 2 others reacted to TheSilencerPL for a topic
Here is the silEnT Enemy Territory mod 0.3.1. It's the patch release which fixes some issues with the mod: Bug fixes.Added: g_votedMuteLength which controls the lengths of the voted mutes. Default is 3 hours.Reworked: The tripmine shaders. Visually still defaults to the old look.Some code cleanup and minor optimizations.Binaries compiled with optimization settings. The silEnT mod team. The download is no longer provided. Please use 0.3.3 instead.3 points -
You've converted the waypoints successfully. Now you should create some goals. Add a CAPPOINT goal at the ship so that Allies know where to take the documents Add three GRENADE goals to destroy barriers on the beach Enable MOUNTMG42 goals for Axis team Change priorities. CHECKPOINT_beach_flag should have the same priority as FLAG_War_Documents. Create routes.2 points
-
MLB Egypt and silEnT mod: bots don't ride the Boat outside of warmup
hellreturn and one other reacted to palota for a topic
The boat initially spawns in a secret room at coordinates (-5730, 1664, -1218). Then it is moved to the river after one time frame. I fixed the mlb_egypt.gm script.2 points -
silEnT mod release 0.9.0
Night Hunter and one other reacted to TheSilencerPL for a topic
silEnT mod version 0.9.0 is out! Important We have found recently that there is a bug in the censoring which disables the functionality completely. We have fixed it and updated the package. Everyone who downloaded the 0.9.0 package before 22.11.2015 is advised to download the updated package and update his/her server binaries. Download Change log: Version 0.9.0 Added: Server customizable menu that is opened in addition to the silEnT mod menu. Added: Possibility for admins to modify the loading screen of their server. As opposed to modifying the loading screen of every server. Added: New client command mem_report. This command prints diagnostics of the client memory pooling. Added: New client cvars: cg_numPopups, cg_popupStayTime and cg_popupFadeTime for controlling popup behaviour. Added: Server checks the setup and refuses to start if problems are found. This includes checks that official menus are not modified. Added: New option g_forceLimboHealth 2, which matches the ETPro gib damage (125).The option 1 remains as the original ETPub gib health (150). Added: Rate setting is incresed automatically step by step if fragmented snapshots are received from the server. This improves the playability and removes the need to force this setting to players. Added: Server extension modules. With this technology, server functionality can be expanded to various tasks without bloating the qagame library or forcing every admin to use same extension. Added: Statistics module. This module collects various game play data into a relational database. Current choices are SQLit3 and PostgreSQL. Added: Censor module. This module can be configured to censor names and chat with real regular expressions. Added: new fun wars: !knifewar, !stenwar, !riflenadewar, !rifleshootwar, !pistolwar (added g_headshot bitmask value 4 to control instagib of headshot for pistolwar). Added: New server cvar: g_incognitoCountryFlag to control the country flag displayed for the incognito admin. Added: If g_dmg is set server side, body hitsounds have different volumes depending of the damage. This can be disabled by the players. Added: Forcing some cvars is now restricted. These include the client side hitsound selection and theme. Added: Player screenshots. Now admins can take player screenshots which works same as PB screenshots. 2.6b clients supported. Screenshot will have Server name, IP, Player Name, silEnT GUID, PB GUID and Player IP in it. Fixed: G_QueryClientCvar/et_CvarValue can no longer be used to query rcon password. Fixed: In silEnT AC a part of the Anti-Cheat was not compiled into the mod in version 0.8.2. This resulted some previously known cheats to not getting detected. Fixed: The arm hit detection was not working correctly from the side shots. Fixed by adding additional temporary box for the torso. Fixed: !rename admin command doesn't allow adding backslashes to names anymore. Fixed: sv_cvar OUT handling. Fixed: Objective carry icon counting spectators too. Fixed: Crashes related to UI_Alloc running out of memory. It does not run out of memory. Fixed: Ties on highest fragger are solved by comparing kill/death difference. I.e. less deaths will win. Fixed: When g_realbody was set to 1. With certain crouch animations the middle box was not high enough to cover shoulders. Fixed: Ties on the most headshots are solved by comparing the amount of shots fired to reach the amount. The player with less shots fired will win. Fixed: et_UpgradeSkill Lua hook was passing invalid client numbers to scripts. Fixed: Allied hand grenades erroneously recorded kills as axis hand grenades. This change should be noted by all log parsers that parse MOD_ values from kills. Fixed: g_headshot bitmask value 2. It used to apply the g_instagibDamage to every hit. Fixed to apply the damage to only headshots. Fixed: tripmine palcement bug leading to exploit (thanks to Beck for the report). Fixed: theme bug regarding small titled windows. Fixed: report bug official menu had bad background definition (with widescreen). Fixed: The g_weapons flag 32768 was treated as always enabled if any of the g_weapons flags was set. Fixed: Missing ETPro icon from the SD credits menu. Fixed: Non-literal characters not allowed in names anymore. Fixed: Omni-bot + tripmine crash when the map script is missing "script_multiplayer". Removed: ui_autoredirect client cvar. This is used to hack player games. Redirecting still works, but players are presented a choice in a popup. Improved: rifle war nade shooting is not influenced by the charge bar anymore. Improved: Menus cleaned. All options can be found under the Options button. Changed: silEnT mod uses now LUA 5.3. Download Enjoy! silEnT mod team Click here to view the article2 points -
Current country flags are low quality, it would be nice to get them updated. ET:L uses nice flags with a liberal license which allows any use. https://github.com/etlegacy/etlegacy-assets/tree/master/graphics/flags2 points
-
Proxies which admins can pre-ban to stop cheaters, trouble makers, etc
Gramp1 and one other reacted to hellreturn for a topic
Updated. 70+ subnets. Should block popular VPN's and Proxy providers. Feel free to share errors and/or new proxies. Monitor cheat logs for at least 2 weeks after banning above subnets, in case if you find errors.2 points -
zoom of binocular to high
clan DIABOLIK and one other reacted to Aciz for a topic
cg_zoomDefaultBinoc This is the one you are looking for, 22.5 is default value.2 points -
Objective captured visual screen indicator
hellreturn and one other reacted to BECK for a topic
I would like to request an enhancement to the HUD. It would be nice to have a visual indicator (maybe the green circle thingie with the exclamation point in it) on the screen while an objective has been captured by another player. Right now, as far as I know you have to look in the player list to see if someone has something. Its an extra tap and it sometimes goes unnoticed with all the other noise and chatter that someone actually has the objective. Think about a map like Frostbite, I know there are times when I didn't realize allies had the docs and I'm totally out of position and they win the map. I like how right now there is the popup when a dynamite is planted. It shows the location of the dynamite and it is clear and obvious that an engineer is needed quickly. I think the same kind of notification would be nice - just a little green popup when someone has an objective. Now - I'm not sure how this would be handled on maps like Baserace, where both teams can have objective. Maybe some kind of alternate colors (blue and red) for the icon to show which team has an objective. Well, thanks for the consideration.2 points -
Killing spree sounds?
=EMP=Avery13 and one other reacted to Dragonji for a topic
If the lua is problematic, use the built-in spree/multikill system Everything in in the docs. First off, set the right value for g_spreeOptions in your server config: g_spreeOptions Description Options to control the display of killingsprees. Parameters Type: bitmask 1 Enable killingsprees 2 Enable killingspree ends 4 Enable multikills 8 When set, a top 3 current killing sprees message will be printed every minute, similar to binoc masters, and a map's longest killing spree will be printed every two minutes 16 At the beginning of the intermission the highest spree and the 3 highest sprees which are still active will be shown 32 /kill will end a spree 64 Teamswitching will end a spree 128 Multikill messages will be delayed g_multikillTime milliseconds, to prevent the doublekill -> multikill -> megakill -> etc. flooding 256 Killing bots doesn't count for multikills or killingsprees (Note: they DO count for ending kill/deathsprees) 512 Display the map and overall spree record when entering intmission 1024 Summary: don't enable this flag if you don't have enabled g_spreeOptions flag 512 OR g_XPSave flag 16 or Shrubbot flag t Spree records are automatically saved into XPSave file when a map ends. By enabling this flag, you also store the spreerecord at the points where g_XPSave flag 16 would store XP. When you don't have set XPSave flag 16 and g_spreeOptions flag 512 and not allow users to use !spreerecord you should NOT set this flag as it takes some extra resources. When XPSave flag 16 is set this doesn't matter (it actually takes much less resources then). When only g_spreeOptions flag 512 or shrubbot flag t is set it won't do much harm anyway (your server won't explode) 2048 Enable revivesprees ([revive] blocks) Default: 0 Then make a *.pk3 file with right filenames of sounds: Announcement Sounds When announcements are enbaled on the server, the server admins may choose to install their own announcement sounds to replace the mod default ones or add missing sounds. Any of the following sounds can be installed by the admins: Killing Spree sound/announces/spree5.wav Rampage sound/announces/spree10.wav Dominating sound/announces/spree15.wav Unstoppable sound/announces/spree20.wav Godlike sound/announces/spree25.wav Wicked Sick sound/announces/spree30.wav Double Kill sound/announces/doublekill.wav Triple Kill sound/announces/triplekill.wav Multi Kill sound/announces/multikill.wav Ultra Kill sound/announces/ultrakill.wav Monster Kill sound/announces/monsterkill.wav First Blood sound/silent/firstblood.wav To replace any of the sounds, create a pk3 file with the mentioned path and sound file name. The replaced sound will be automatically played. The pk3 files are regular zips with only the zip ending changed with pk3. Last step - upload your package to the silent folder on your server and restart the machine to make sure it will load new settings. VoilĂ ! EDIT: File with sounds created by me, you can use it if you want: http://dl.dropbox.com/u/19256625/silEnT/%7Espreesounds.pk32 points