Jump to content

gaoesa

Management
  • Posts

    4391
  • Joined

  • Last visited

  • Days Won

    167

Reputation Activity

  1. Like
    gaoesa got a reaction from Dragonji in Hitboxes enhancements   
    There are 2 traces. This can not be changed because otherwise some headshots would not get detected. This happens because the trace can end in the bounding box which fully contains the head box, or at least blocks it. The extra leg box is added only for one player if it hits his bounding box. Not for every player or if the hit is already in the head. The behaviour is the same regardless of the g_realbody setting. I.e. if g_realbody is used, the leg box is not added to every player. This same double trace and additional entities is necessary for all hitbox systems. Do note that we have already removed many redundant traces that are present in the etmain or in the ETPub for example. The information of the hit, once resolved, is kept as long as it is needed. The additional overhead from adding one extra leg box to one player is not mentionable enough. Furthermore, it is combined with the fact that the total count of the traces (and building bodies) is already reduced. There migh be some options to improve the performance slightly. But you shouldn't think it would reduce server CPU usage significantly, even with lot of hits to the players.
     
     
    It must be removed from it. Thanks.
  2. Like
    gaoesa got a reaction from Dragonji in flags are mixed up   
    !userinfo and !useredit, check and edit his personal command flags.
     
    EDIT:
    Also make sure he is not using it through rcon and change it if necessary.
     
    EDIT2:
    I trust you are using the ALP feature to protect admin levels from GUID spoofing.
  3. Like
    gaoesa reacted to Dragonji in bugs   
    http://mygamingtalk.com/wiki/index.php/Silent_Mod_Server_Cvar#Flood_Protection
  4. Like
    gaoesa got a reaction from Jakub in Omnibot Medics Won't Revive   
    This discussion at Omni-bot forum might be related http://www.omni-bot.com/forum/showthread.php?3159-Medic-gives-medpacks-instead-of-reviving-with-needle
     
    In general, I haven't noticed this effect or know what might be causing it.
     
    EDIT:
    Another thread about it at Omni-bot forum
    http://www.omni-bot.com/forum/showthread.php?3167-0-82-Beta-Revive-Goal
  5. Like
    gaoesa got a reaction from clan DIABOLIK in Cannot select a team   
    That is indeed intializing etmain. Finding the silent-0.6.3.pk3 is also missing from the log. That should be just above the line /usr/local/games/enemy-territory/silent
     
    The log should say this.
     
    The server silent folder must have both qagame.mp.i386.so and silent-0.6.3.pk3 for the mod to load.
  6. Like
    gaoesa got a reaction from Jakub in Cannot select a team   
    Enable flags 16 and 32 in g_classWeapons http://mygamingtalk.com/wiki/index.php/Silent_Mod_Server_Cvar#g_classWeapons to go around the bug. Ensure that these flags are set with rcon.
     
    The reason why this happens is that when the player clicks the team button in the limbo panel, the default class is soldier and if the bottom weapon in the expanding weapon box is not available for selecting, this error will close the client. Note that it happens exactly when clicking the team button.
  7. Like
    gaoesa got a reaction from Geo in Recording in logs   
    Using the older example as base
     
    local timestamp = os.date("%Y-%m-%d %H:%M:%S") local logLine = timestamp.." Player "..name.." silEnT GUID "..guid.." executed command: "..command.."\n"
  8. Like
    gaoesa got a reaction from Geo in Custom commands and killing spree displays   
    In shrubbot.cfg
     
    [command] command = spec exec = putteam [i] s; specplayer [i] "[1?]" desc = spec any player syntax = [name] levels = 0 1 2 3 4 5  
    In Lua:
    function et_ConsoleCommand(command) if et.trap_Argv(0) == "specplayer" then if et.trap_Argc() == 3 then local clientNum = et.trap_Argv(1) local targetClientNum = et.ClientNumberFromString(et.trap_Argv(2)) et.gentity_set(clientNum, "sess.spectatorState", 2) et.gentity_set(clientNum, "sess.spectatorClient", targetClientNum) end return 1 end return 0 end  
    Notice that the Lua hook is now ConsoleCommand and not ClientCommand.
  9. Like
    gaoesa got a reaction from Geo in /cg_kspreepos   
    This is a bug. Thanks for reporting. Will be fixed in the next version. The same bug affects several other announcements too.
  10. Like
    gaoesa got a reaction from hellreturn in !mute tweaks   
    Implemented in the requested way by extending shrubbot flags 6 and 8 to the !mute command.
  11. Like
    gaoesa got a reaction from Dragonji in !mute tweaks   
    Implemented in the requested way by extending shrubbot flags 6 and 8 to the !mute command.
  12. Like
    gaoesa got a reaction from BECK in Another spamming method   
    g_maxIgnoresPerMap added in 0.7.0. This server cvar is the maximum number of times one player can ignore another player during one map. Default value is 2.
  13. Like
    gaoesa got a reaction from hellreturn in Frequent mod crashes   
    It is our intention to fix everything we find. Bugs that cause crashes have, of course, high priority to get fixed.
  14. Like
    gaoesa reacted to hellreturn in Proxies which admins can pre-ban to stop cheaters, trouble makers, etc   
    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 = console
  15. Like
    gaoesa got a reaction from Dragonji in list of bans   
    We will not implement global ban lists. There are many reasons for not doing it.
     
    Here are few:
    - First of all it needs GUID authentication to prevent GUID spoofing client side. Do note that all GUIDs are spoofable. The way silEnT protect admin leves is separate technique, see g_adminProtection.
    - Second, it all needs to be done between the client and the "ban" server to avoid game server influence and admins generating bans for people they don't like. This might also need user consent.
    - Third, measures must be taken to ensure the client does not block all or selectively messages to the "ban" server.
    - Fourth, even PunkBuster has had problems with intentionally made false bans filling ban lists. This is a typical problem for ban lists when ever people figure out a way to do it.
     
    In other words, it is not practical to implement for it's possible value. For couple binary checksums and few cvars that associate with cheats.
  16. Like
    gaoesa got a reaction from jaie in How to protect admins from GUID spoofing   
    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.
  17. Like
    gaoesa got a reaction from BECK in g_includedMaps   
    Implemented g_includedMaps
     
    It is a string of maps that are always included to the map vote list, regardless of any other restrictions. Including g_excludedMaps.
     
    E.g.
     
    g_includedMaps ":oasis:radar:"
  18. Like
    gaoesa got a reaction from metrizzle in kspree.lua errors in log   
    It is possible that the killer is not a player. You should check that the killer is not 1022, or more safely that the value is below 64.
  19. Like
    gaoesa got a reaction from Chuckun in playerdown hitbox   
    The prone hitbox is already lower then what it is in ETPub or ETPro. Sometimes players already whine that hitting with needle is harder because they need to aim at the body when reviving. I don't think it would be accepted well if it was even smaller.
  20. Like
    gaoesa got a reaction from BECK in Separate custom commands   
    More fitting approach could be to allow color codes in the custom commands. Custom commands are not fun commands by definition and the inbuilt commands also include fun commands.
  21. Like
    gaoesa got a reaction from JvIasterMind in Separate custom commands   
    More fitting approach could be to allow color codes in the custom commands. Custom commands are not fun commands by definition and the inbuilt commands also include fun commands.
  22. Like
    gaoesa got a reaction from hellreturn in Server crashing issue   
    According to the log, the server is receiving signal 2 which means terminal interrupt. Do you have some cronjobs that are working on the server or something? That is not a crash though.
  23. Like
    gaoesa got a reaction from Chuckun in Alias List command?   
    The alias inserts happen in constant time and the commands !aliases and !userinfo will not have significant performance losses from bigger aliases lists. So there shouldn't be problems experimenting higher g_dbMaxAliases values. The only times when the performance suffers from bigger aliases db is when the db is cached into memory during the map initialization and when using !aliasessearch command. I do think that hiding the true identity can be done by changing GUIDs in general. Also, I do think players should have the option to change it also. At least over time.
     
    Using the example of small g_dbMaxAliases value and dropping the least used aliases, it would be possible to hide short lived offensive nicks and fake being a nice regular. While in the case of dropping the nicks by time, even if the most used nick would get lost it would be possible to determine from other stored data that the player is supposed to be a regular. Another poblem is that if the player has 2 nicks with a lot of playtime, it will at some point take considerable effort to have a new nick overcome either one of those old ones. Effectively he would have a possiblity to change his nick freely and all those changed nicks would be lost.
     
    We can consider adding option to remove the least used nicks.
     
    PS.
    I think if you want to set some sort of identity info by hand to a player like in the !setlevel example above, I think a Lua script might do that easily. Associating one name, or note, with one guid.
  24. Like
    gaoesa got a reaction from Bacteria in silEnT release 0.6.0   
    Thing to note is that in this version the database will convert to a new version. If you wish to play safe, you can safe copy userdb.db and userxdb.db files. If you want to use the new aliases database, you will need to set the g_dbMaxAliases to positive integer before you start the server. This setting cannot be changed on a running server.
     
    If your players have mutes before the database is updated, those mutes will be cleared because of the new mute format that is both tied to real time and includes information about who muted and what reason was put for it.
     
    Another feature to note is the skill_(x) cvars. You can now enable/disable any skills regardless of the order. With 0, enable and -1 disable.
  25. Like
    gaoesa got a reaction from BettyBoop in XPsave forever ?   
    That is indeed how it should be done. Execing the map cycle last.
×
×
  • Create New...