Jump to content
RenCorner Network

Server ChangeLog 2020


Recommended Posts

Posted

 


[b]10/31/2020
BR_VERSION 1.54
BR_BUILD 251[/b]

BR DA gamelog chat event instead of using renlog. Toggle config_renlog_chat
BR DA gamelog pre join connecting event.
Fixed issue with new play join events
BR PINFO events, Renlog Joiner game data moved to playerData.pm
ShowModJoinMessage moved to brAuth
JoinStuff move to PlayerData.pm
Various fixes from build 250
Pending fix for auth direct connect
Event messages are now not all caps.

Include GEO IP Database with Brenbot.pl used by HostBans, Iplookup and other plugins

use Geo::IP;
use Net::IP;
use Net::Whois::IP qw(whoisip_query);
#use HTTP::CheckProxy;
use Geo::IP2Proxy;
use Google::API::Client;
use WWW::Shorten 'TinyURL'; # Recommended
use WWW::Shorten::TinyURL;

Scripts.dll
Dragonade RxD 2.0 Scripts 4.7.1
Iran Vehicle Drop off Way Points
VehicleFactoryGameObjDummy.h
Find_Vehicle_Drop_Off_Position !tank da_rencorner.dll
BuildingWarnings can now be disabled with !disablesounds and is DA GameFeature apart of da_recorner.dll


[b]08/22/2020
BR_VERSION 1.54
BR_BUILD 250.2
Tools[/b]

MapInstaller.exe V2.2

Added RepositoryUrl for tt.cfg generation
RepositoryUrl = http://rxd-server.com/ttfs3/

MapInstaller will now automatically update webserver ttfs files
Added RepositoryDir the folder to copy the ttfs to.
RepositoryDir = D:/WebServer/Apache2.4.43/htdocs/rxd_ttfs/

RxD packages will automatically be included in the tt.cfg file generation. When an rxd map is detected.
You can use ExtraPackages to include additional packages.
ExtraPackages     = "kill_sounds","other_mixfiles"

It now creates a backup of the tt.cfg named backup_tt.cfg

Added user prompt yes/no for when generating a new ttfs. New_TTFS = 1

Added support for other mods like RA.

Scripts.dll
Dragonade RxD Scripts 4.6 Update 9
The main big difference in RxD 4.6 is it uses alternate presets names and models and will use the new 4.X game logic. The new naming scheme for RxD high quality weapon models will be terminated with a X for example stock rocket f_gm_rock will be f_gm_rocx weapons that have dual stock naming will be terminated X and Z for example the tiberium flechette rifle and tiberuim auto rifle f_gm_tibx and f_gm_tibz. RxD scheme is used for presets names for example 'CnC_GDI_Engineer_0' will be 'CnC_GDI_Engineer_0_RxD'.

RxD Scripts.dll was merged compared with Neijwiert DA 1.10.1 Dragonade Build
Additions:
   - Added DefaultConnectionAcceptanceFilter.

da.cpp
Page_Player_Sound

engine_da.cpp
Check_Stealth_ICON //Set_Emot_Icon on stealth objects

da_renconer.dll

Server now sends gamelogs to bot when a player is connecting
Ported SEye SSGM 2 to Dragonnade as a game feature. Default binds to 127.0.0.1
SEye_Server.cpp
Tested working with SEye Client 2 and Client 3

RangeRoFDetection.cpp
Added irans RangeRoFDetection as a game feature
 
Map_Load_Events
    PlayerStatsMapLoad
    SetPlayerNetUpdateRate
    SniperMapLoad

Damage_Request_Events
    PlayerStatsDamage
    BuildingRepair
    SniperPointsWhore
HourglassHillDamage
B2B_Damage

Object_Created_Events    
    MineCart_Zone
    Beacon_Prevention_Zone
B2B_Prevention_Zone
Special_Death_Zone
PCT
SamSite
Volcano_RxD_Explode
Volcano_Object
Vehicles
GAMELOGPOS
Vehicle_Blocker
RxDCyberDome

 

 

rc_gameobjobservers
FirstbloodObserverClass
    BWManagerObserverClass
    B2BZoneObserverClass
    B2B_Zone_Player
    MineCartZoneObserverClass
    Secret_Area_Death_Zone
    Secret_Switch
    Mine_Player_ObserverClass
    SuicideKillObserverClass
VolcanoExplodeObserverClass

 

 

[b]08/22/2020
BR_VERSION 1.54
BR_BUILD 250[/b]

!register <playername> <ip> <serial> [Password]
!register updated to include custom password for direct connect auth

BanIp updated so you can ban whole network ranges.
!banip 174 banning network range 255.0.0.0/8
!banip 174.27 banning network range 255.255.0.0/16
!banip 174.27.42 banning network range 255.255.255.0/24

!addban <Name> <Ip> <Serial> <Reason>
!addban Blacky 10.0.0.2 0 Test

All ban commands no longer require adding serial. Serial will be undefined when an invalid serial used.  
Is_banned will not check for invalid serials
All ban commands will display the ban id that was created. modules::get_max_ban_id() added
All br ban commands will make a fds ban entry with the brenbot ban ID
Bot now deletes fds bans by the brenbot ban id instead ip/serial match
If you manually add a fds ban editing \Renegade\banlist.tsv or using !fds addban the bot wont delete that record when you delete a brenbot ban. !fds REMOVEBAN <name> <ip> <serial> can always be used.


!playersearch <Search> now also searches hostname. Making !hostlookup redundant but from a different database. Think the only reason I didn’t do that before was because of the hostbans plugin still useful for banning hostname wildcards. !hostban add Blacky Qwest.net Block all Qwest users
You can bypass playersearch default output max of 50 with !playersearch * <Search>  max output set to 500


The bot will now automatically detect if the server is running instead trying to connect every 60 seconds.
FDs Status checker now checks if the server responds every 2 seconds instead every 60 seconds
Bot will no longer output fds status messages.

Shhot command sshot url will now always use server ip.

Bot now has a prejoin event
You can now auth yourself ingame with password field when direct connecting +pass

 

[b]10/01/2019  
BR_VERSION 1.54
BR_BUILD 249[/b]


[b]10/01/17  
BR_VERSION 1.54
BR_BUILD 248[/b]

Recommendations was dropped from Brenbot and the Recommendations plugin made by DanPaul is used.   
join_messages was dropped from Brenbot and the join_messages plugin made by DanPaul is used.   

Recommendations.pm - results.pm
Fixed some typos/bugs in the Recommendations plugin.
Fixed an issued with gamereults and plugins.
 
The gameresult file used by recommendations now displays in the console.
[02:28:09] Processing game results from D:\RenCorner\Marathon\Server\Renegade\FDS\results25.txt...

join_messages.pm
You can now use !madyell commands in a player setjoin !setjoin !madyell
You can now use server commands like !time in a player setjoin.
join_messages Takes advantage of PLAYERSAYCOMMAND.

ranks.pm && monthlyranks.pm
Using New Rank plugin version '2.05' was using a modified version of '2.03'
Old tempranks plugin has been replaced with a new plugin called monthlyranks.
You can still use the old !temprank commands. but the the new commands are designated with 'm' !mrank

Commands: !monthlyrank !mrank, !monthlytop !mtop, !monthlyrankstats !mrankstats,
!monthlyupdate !mupdate, monthlyftpupdate !mftpupdate, !monthlyrankignore !mrankignore,
!monthlyrankallow !mrankallow, !monthlyrankmerge !mrankmerge, !monthlydelrank !mdelrank.

Ranks and MonthlyRanks now upload to Rencorner Ladder once again.

brIRC.pm, brconfig.pm Updates
Made a formal private channel option for Brenbot
Brenbot config option PrivateChannel
ircPrivateChannel = #rc-mods
ircPrivateChannelKey = password
brconfig::irc_privateChannel

added irc permissions for private channel.
you can now use br commands in the private channel.
You can now send messages to the private channel using its channel code designated as "M".

Example
ircmsg("Sending a message to the private channel", 'M');

# Channel codes determine which channels get the message.
# A = Only admin channel
# M = Only private admin channel
# P = Only public channel
# B = Both channels Public and Admin
# Anything else goes to both channels private, admin

Added xml config permission option for the private channel.
<group>irc_private</group>
All Brenbot command configs updated with irc_private group.

modules.pm
Debug Function Find_Undefined now show in the private channel instead of the admin channel.
Find_Undefined now shows the last call stack File name and line number.
Recommend and join_message functions removed.
Modules recommend and join_message removed.

Commands.pm
Recommend and join message commands removed.

Command !info now calls command !teaminfo and checks if teams are even.
New function Get_Uneven_Team moudles.pm

endvote now only displays limited vote Tally's.
 [BR] Voting period over, tallying vote's... GDI [".$gdi_yes_votes.'/'.$gdi_no_votes."] Nod [".$nod_yes_votes.'/'.$nod_no_votes.']'

plugin.pm Additional plugin functions added
#Get_Loaded_Plugin($plugin) Check if a Plugin is loaded return 1 if loaded
#plugin::Get_Loaded_Plugin
#Get_DA_Version() - return Dragonade Version - return $brconfig::serverDAVersion;
#plugin::Get_DA_Version()

sounds.pm

All !setjoinsound like command's now require to be a donator or mod.
!setjoinsound and other's will now only let you use a 4 second sound and must exist in sounds.list.
Alias for !togglesounds, !ts.

New command !updatesounds - Import sounds.list into the sounds database. Admins

Documented Sounds.pm Functions
#Get RGB Color, IRC color, Color name  
#Get_Special_Color($color) - Returns $rgbcolor, $irc_color, $color_name

Valid Colors: red, green, blue, purple, orange, white, black, pink, yellow,  
brown, darkblue, lightblue, maroon,  magenta, lightgreen, lightgrey, gray,  
cyan, teal RGB 255,255,255

#play_sound(Filename, Soundtype, Delay);
#play_sound_player(Filename, Soundtype, Player);
#get_sound_time(Sound);
# Retuns Sound Time in Seconds
#get_sound_time_array(Sound);  
# Retuns Sound Time in Seconds
#get_vaild_sound_time(Sound, Time);  
# return 1 if the sound exists and is 4 seconds or less.  
#get_vaild_sound_time_message(Sound, Time, NickType, Nick);  
# return 1 if the sound exists and is 4 seconds or less.
#get_valid_soundtype(SoundType) - Make sure we have a valid SoundType , chatsounds, killsounds, music.
#import_sounds() - import sounds.list into the database.
#set_sounds( Name, SoundType) - Enable/Disable Sound for a player.
#get_sounds( Name, SoundType) - Check if SoundType is Enable/Disabled for a player.

Some updates to generate_sounds.pl Generates sounds.list and jukebox.list.
Added Config options for generate_sounds.pl

###########################################
#   GenerateSounds V1.0 Build 1
###########################################

# The output file for Generate_Sounds
File = sounds.list

# Genrate Config Settings for JukeBox plugin.
JukeBox = 0

Jukebox.pm
jukebox now reads from jukebox.list instead of hard coded tracks.
generate jukebox.list with generate_sounds.pl.
fixed !nexttrack command Alias !nt.
Alias for !settrack, !st.

Tags.pm Tag Plugin Updates and fixes.
The Tag plugin has been redesigned to support the da tag abilities.

You can set different tag positions. The server ranks are set at the first position then player tags are set at the second position.
Commands: !tag, !mytag, !cleartag, !deltag, !viewtag

Tag Plugin now sets the player rank tag instead of the rank plugin. ranks plugin must be loaded.
Tags now takes advantage of PLAYERSAYCOMMAND to trigger the DA ingame !tag command.

#Set_Tag( PLAYERID, TAG, [POSITION] ) - Set the player tag position 1 by default. Position is optional.
# If Dragonade is not on the server rank position 0 is always set. Legacy.
# Set_Tag( $player{'id'}, $tag );
# Set_Tag( $player{'id'}, $tag, 2 );

#Set_RankTag($name) - Set the player rank tag - Rank Position 0
# The Rank plugin must be loaded.
# Set top level Tag for Rank Position 0

DA Tag Console Commands
#ADDTAG <playerid> <persist on leave> <persist on map> <position> <tag>
# Add a custom name tag to a player. Persist on map/leave determines if this tag should be removed when the player leaves the game or a new map loads. Position determintes the tag's position relative to the player's other tags."
#REMOVETAG <playerid> <tag> - Removes the given tag from the player."
#TAG <playerid> <tag> - Legacy command to set the custom name tag on a player. Persists through leaving or multiple maps; defaults to position 0"

scrips.dll
Now running DA 1.92 that uses scripts 4.5!

da.rencorner.dll
Fixed a bug in the hillcamping on Hourglasss script.
Block all building damage from hill or only block rear building damage ( ref, pp ).
Currently set to block only rear damage.

Config
BlockHourglassHillDamage = 1
; 1 Block all building Damage from Hill. 2 Block only rear buildings power plant and refinery
HourglassDamageMode = 2

Proxy Disarm has been reenabled.

 
[b]Changelog 09/01/17 togglesounds build and more

BR_VERSION 1.54
BR_BUILD 247[/b]
 
Some big updates to Sounds.pm and the ability to allow players to disable all kinds of sounds.
 
Added to da_rencorner.dll.
SNDA now plays 2d wave/mp3 sounds for the DIALOG sound setting bar instead of SOUND EFFECTS.
Original SNDA Command Replaced so players are able to stop 3rd Party Sounds. Like IRC scripts sending command SNDA or Players that can use !psound or any direct SNDA command.
Console Command SNDA <sound file>
Console Command PLAYERSAY <message> - make a player speak in public chat. Chat
Console Command PLAYERSAYTEAM <message> - make a player speak in team chat. Teamchat
Console Command PLAYERSAYCOMMAND <message> - make a player send a command/message to BRenBot and server Chat_Event. Hiddenchat
Only for da_chatcommands feature
    Console Command DISABLESOUNDS <message> - disable chat command sounds.
    Console Command ENABLESOUNDS <message> - enable chat command sounds.
Console Command DISABLESOUNDS2 <message> - Disable SNDA Sounds.
Console Command ENABLESOUNDS2 <message> - Enable SNDA Sounds.
Used by togglesounds.
Fixed HideCommands wrongfully triggering hiddenchat on player chat.

Sounds Plugin now has a new database structure and uses SQLite3
            "CREATE TABLE special_player
            ( id INTEGER PRIMARY KEY
            , name TEXT
            , joinsound TEXT
            , leavesound TEXT
            , killsound TEXT
            , sounds INT
            , killsounds INT
            , chatsounds INT
            , music INT
            , color TEXT )");
             "CREATE TABLE mp3s
    ( length INT
    ,name TEXT
    ,time INT)");
 
Sounds file mp3.pl renamed to sounds.list. The sounds.list file can now be generated with Generate_sounds.pl
Future release with new RxD Build all sounds will be in Server_Sounds.mix

!psound <SoundFile|SoundFile to Search> has been updated with every server sound added to rencorner and can be updated with Generate_sounds.pl
!psound fix to find exact matches if we have many matches.
!psound can now be used ingame and IRC

Example
!psound jks
There are 2 sounds with "jks" in the name, listing them now!
"jks_giggle.mp3" : time: 1
"jks_laughs.mp3" : time: 1

!psound_jks_gig
 Global Sound --> (BigWrench@IRC): "jks_giggle.mp3"

Command !togglesounds
!togglesound <chatsounds>
    Wil trigger !disablesounds ingame chat command and hide the input.
    
!togglesound <sounds>
    Wil trigger Console command disablesounds2 to stop SNDA sounds and will disable player join and leave sounds.
 
!togglesounds <killsounds>
    Will disable killing spree sounds, headshot, pistol kill sounds, added building kill sounds
    
!togglesounds <music> - allows music to auto turn when a player joins the server
    Will trigger the jukebox commands !music on and !music off

joinsound fixed
pleaverleave sound/commands added
playerkill sound/commands added
Sub play_sound fixes and timer option added.
play_sound(Filename, Soundtype, Delay);
Sub play_sound_player added
play_sound_player(Filename, Soundtype, Player);

Added Sub ssgm_playerkill - pistol humiliation and headshot sounds
Added Sub ssgm_buildingkill - extra building kill sounds
renamed GL_playerkill to Sub gamelog_playerkill

Building kills sounds have been removed from brenbot and put in sounds.pm
SSGM playerkill pistol and headshot sounds moved to sounds.pm
All Sounds played now use 'sounds::play_sound' instead of sending SNDA
Headshot and pistol humiliation sounds moved from ssgm to the sounds plugin.
Sound plugin now uses the ssgm regex hook for plugins.  
All players by default have a green killspree messages.
Sounds specialplayer database entry's now set for all players.

Fixes to gamelog messages when a building/Base Defense kills a player or vehicle.
Fixed building and vehicle kill recommendations.

Fixes to HostBan to show country code and fix invalid hostnames.

Update iplookup on proxy lookup to show isp correctly and added organization on player join.
Plugin iplookup
Iplookup to always show ISP on proxy information
!iplookup add organization message on player join.  
!iplookup <ip> - Public address only
!ipinfo <ip> - Public and Private address.
!whoisip <ip> - Public and Private address.

LogEvent 'CHAT' and 'TEAM' added.
 
Command List Generator improved to support several sorting types and generate hidecommands sever config CommandList_Generator.pl
 
###########################################
#   CommandList V2.0 Build 1
###########################################
 
# The output file for commandlist
File = Commands.txt

# Seperate the main commands and the plugins.
Split = 0
 
# SortTypes: Disable 0, Alphabetically 1,  Sort by ModLevel 2, Sort by Plugin 3, Reverse 4
Sort = 2
 
# Remove duplicate entry from commands and plugins.
UniqueCommands = 1
 
# Show The Command Aliases in the Output
Show_Alias = 1
 
# Show The Command ModLevel in the Output
Show_ModLevel = 1
 
# Show The Command Plugin in the Output
Show_Plugin = 1
 
# Generate the HideCommand List for the Server.  
HideCommands = 0
 
# Append modlevel to end of string.
HideCommands_ShowModLevel = 1
 

01/20/2017 Make Renegade Great Again.
 
[b]Changelog 01/20/2017 - 06-20/2017
 
BR_VERSION 1.54
BR_BUILD 246[/b]
 
Brenbot 1.54 Build 246

Perl Version Change.
This is perl 5, version 24, subversion 0 (v5.24.0) built for MSWin32-x64-multi-thread
Reverted Perl to older version and using 32 bit again. (Uses Less memory)
This is perl 5, version 20, subversion 2 (v5.20.2) built for MSWin32-x86-multi-thread-64int
Fixed the donator system/mod status. It would make you appear to be an owner before. Donator symbol is $ and donator names are italic.
 
Added the ability to enable/disable debug messages with 3 different severity levels. Debug functions added to brenbot logsystem.pm and the fds da_rencorner.dll.
Setting “Debug” in brenbot.cfg & da_rc.ini
 
#Set the debug level, max level is 3. 1. basic 2. oh noes 3. oh shit
Debug = 3
 
#Other Related Debug settings
#Enable/Disable The SSGM Socket Output to IRC "1", Console "2", Debug.txt "3". Disable "0"
SSGM_Output = 0
Gamelog_Output = 0
Renlog_Output = 0
Console_Output = 0
 
#Destroy old gamelog records from memory.
Gamelog_CleanUp = 1
 
Added setting “Gamelog_CleanUp” to brenbot.
Destroy old gameobjects from memory when the server destroys them. We use to keep a record of the entire Gamelog so we can refer to them later on. (All gameobjects ever created on the server ) but we no longer care anymore and it saves memory.
 
# Completely disable Gamelog Functions This will disable certain commands and features
Gamelog = 1
 
Added setting “Gamelog” to brenbot.
The ability to completely disable Gamelog feature of brenbot. This will disable many features like Recommendations, Vehicles, Buildings, …
 
ConnectionTerminate = 0
Added setting “ConnectionTerminate” to brenbot.
Changed the way how the bot manages the server. Before the bot would terminate if it lost connection to the SSGM tcp socket. Setting “ConnectionTerminate” to enable this method. Now the bot will stay online and wait until it reconnects to the server.
 
# The Name of the RelayBot
RelayBot = RCBOT
#The IRC permission need before the bot will start relaying information to the RelayBot
RelayBot_Permission = protected
# Enable/Disable the ability for the RelayBot to use brebot commands.
RelayBot_Commands = 1
 
Added setting “RelayBot”, "RelayBot_Permission", and “RelayBot_Commands”  to brenbot.
 
Send PINFO, SERVERINFO, GAMEINFO, PLAYERS, TEAMINFO, BUILDINGS, VEHICLES to designated bot or person in the admin channel. The bot needs protected privileges or defined privileges "RelayBot_Permission" in the admin channel.
Permissions: voice, halfop, op, protected, founder.
 
FDS Status Report now outputs different messages.
 
modules.pm
sub ban_player
Changed the timeban timestamp format form "DD/MM/YY - hh:mm" to "MM/DD/YY - hh:mm"
 
sub get_date_time
Changed to have unison format. If Month/Day is a single digit then add a 0 in front of number.
 
Functions added to help find uninitialized variables and passing the wrong/missing parameters to functions .
 
Get the call stack frame number from the subroutine you are in.
Get_Caller_Sub(frame number)
 
Pass the parameters intended for a function and make sure they are all defined if not call Get_Caller_Sub() up to 4 Frames to identify where we went wrong.
Outputs to IRC and Writes to ERROR log.
Find_Undefined(parameter list)
 
renlog.pm
Added to ConnectionRefused Event for plugins
Added Check for timeban expiration when player is refused connection to the server. ( FDS BAN )
 
fds.pm
Added functions play_sound_dialog, play_sound_player_dialog, play_sound_team_dialog
sound is played using the "dialog" volume setting in the client config rather than the "sound effects" volume.
All main functions now use Find_Undefined to find flaws in passing argument's.
 
playerData.pm
Added new playerData value ‘shotsfired’, ‘muted’, and ‘muted_sounds’.
getPlayerData now returns an empty hash instead of undefined. When no match found.
Updates/Fixes to clearPlayerData, clearAllData, playerNameToID, playerIpToID, setKeyValue, incrementKeyValue, deleteKeyValue, getKeyValue , getPlayerData, getPlayersByTeam.
 
ssgm.pm
Clear playerData and Gamelog when the bot loses connection to the SSGM socket.
Fixes ghost players in the player list.
 
logsytem.pm
Garbage collector subroutine was added to brenbot. To aid in debugging added to logsytem.pm.

# Hashes of Hashes
PrintHash_HoH_Ref  ( Pass Reference to hash)
PrintHash_HoH ( Pass Hash/Copy of Hash )
# Hashes of Arrays
PrintHash_HoA
# Print contents of Hash Single Element
PrintHash
# Arrays of Hashes
PrintArray_AoH
# Arrays of Arrays
PrintArray_AoA
# Array Single Element
PrintArray
# Other Test Functions
walk_hash
dump_data
dump_it
process_data
 
[COMMANDS]
 
!sshot and !ssurl added to main brenbot command system.
 
# ---------------------------------------------------------------------------------------------------------
## Dialog Sound Commands
## Add new console commands called EVAP/EVAT/EVAA. These work exactly like SNTP/SNDT/SNDA except the
## sound is played using the "dialog" volume setting in the config rather than the "sound effects" volume.
# ---------------------------------------------------------------------------------------------------------
 
Command !evap, !evat and !evaa added.

Command !donators
Shows all donators currently ingame.
 
Command !donator <add/del> <name>
Add a donator to the mod list. You could also do ‘!admin add name 8’ 8 being for donators.
 
Command !psound
Play a Global sound for all player’s. Can now be used ingame by donators.
 
Dev Command !datadump_gamelog that dumps the data structure to datadump_gamelog.txt
Dev Command !datadump_playerdata that dumps the data structure to datadump_playerdata.txt
 
commands.pm
Other Changes to commands.pm
 
Commands are listed in alphabetical order.  Updated command list generator to output in alphabetical order.
 
[PluginSystem]
 
plugin.pm
Added plugin system functions plugin::writeLog, plugin::Log, plugin::setKeyValue, plugin::getKeyValue
#brdatabase::writeLog ( 2, $logmsg ); ( Write to Main Brenbot Log database )
#serverlogs::Log ( 15, $logmsg, 1 ); ( Write to specified database ex Mute )
#playerData::setKeyValue ( $player{'id'}, "muted", 1 );
#playerData::getKeyValue( $args{'nick'}, "muted" )
 
# \param[in] $logtype
#   The ID/LogType of the log we are recording
# \param[in] $logmsg
#   The string to be logged in the database
 
sub writeLog { brdatabase::writeLog (@_); }
 
# \param[in] $logtype
#   The ID/LogType of the log we are recording
# \param[in] $logmsg
#   The string to be logged in database
# \param[in] $useheader
#   Use Log Header if $useheader if undefined, any other value will disable the log prefix
 
sub Log { serverlogs::Log (@_); }
 
Ability to set/retrieve playerData keys in plugins without getting playerData
 
# \param[in] $playerid
#   The ID of the player
# \param[in] $keyname
#   The string name of the key we are setting
# \param[in] $keyvalue
#   The value of the key we are setting
 
#plugin::setKeyValue
sub setKeyValue { playerData::setKeyValue(@_); }
 
# \param[in] $playerid
#   The ID of the player
# \param[in] $keyname
#   The string name of the key we are getting
 
#plugin::getKeyValue
sub getKeyValue { return playerData::getKeyValue(@_); }
 
Attentively you can just set it after retrieving a player's data. plugin:: getPlayerData
 
# Check if a player is ingame and get their data hash
# \param[in] $player
#   Name or ID of player to lookup
#
# \return
#   Array of ($result,$playerData) where $result is either 0 (not found), 1 (found) or 2 (multiple
#   non-exact matches found) and $playerData is either a hash of player data (if $result is 1) or an
#   empty list (any other value of $result)
sub getPlayerData { return playerData::getPlayerData($_[0]); }
 
LogEvent Type’s
 
use constant {
    ERROR   => 0,
    BIATCH   => 1,
    ANTICHEAT  => 2,
    PRIVATE  => 3,
    EVICTED   => 4,
    FDSCOMMAND  => 5,
    HIDDENCHAT  => 6,
    KICK  => 7,
    QKICK => 8,
    BAN => 9,
    TBAN => 10,
    FORCETT => 11,
    REMOVEBAN => 12,
    REMOVEKICK => 13,
    REMOVEFORCETT => 14,
    MUTE => 15,
    REMOVEMUTE => 16,
    BANEXCEPTION => 17,
    REMOVEBANEXCEPTION => 18,
    FORCETTEXCEPTION => 19,
    REMOVEFORCETTEXCEPTION => 20,
    CONNECTIONREFUSED => 21
    CHAT => 22,
    TEAMCHAT => 23
};
 
################################
Renamed sendmsg to send_message
################################
 
# \param[in] $Message
#   The Message that we are sending.
# \param[in] $nicktype
#   The type of user using the command IRC = 1, Ingame = 0
# \param[in] $chantype
#   Type of Channel we are sending to Amdin 'A' Publuc 'P'
# \param[in] $username
#     The player name/irc user
# \param[in] $irc_type
#    The type of message we send to an IRC user.
# \param[in] $ingame_type
#    The type of message we send to an Ingame user.
 
#irc_type = 0  #defualt
#irc_type = 1  #reg irc msg
#irc_type = 2  #irc notice
#irc_type = 3  #pm irc user
#irc_type = 4  #pm the relay bot
#irc_type = 5  #pm all moderators
 
#ingame_type = 0  #Defualt PPage
#ingame_type = 1  #PPage send_message_player
#ingame_type = 2  #send message to all players send_message
#ingame_type = 3  #send_admin_message
 
[PLUGINS]
 
Fixed all plugins to use the correct ‘AF_INET’ keyword when using gethostbyaddr
 
Various fixes like syntax/formatting, not using and undefined variable etc for sounds, hostban, ragequit, serverinfo, rank, temprank, screenshot, warnsystem, jukebox, custom_commands, admin, forcett, ip_database, mute.
 
[rank]
Updates to the rank plugin.
TempRanks is now part of rank.pm and settings in rank.xml. tempranks has been removed.
Fixed getRankData to not return an undefined hash but an empty hash ()
Fixed getRankStats to not return an undefined hash but an empty hash ()
 
[jukebox]
A working version has been added, also with some new renegade music.
 
[screenshot]
Removed screenshot plugin as it is now redundant.
 
[serverinfo]
Removed serverinfo plugin as it is now redundant.
 
[sounds]
Fixed the donator system to work with the sounds plugin.
The Multi kill messages are now colorized. Will now display the player’s multi kill color in IRC. The player can set their color by using !setcolor.
 
Command !psound
Play a Global sound for all player’s. can now be used ingame by donators.
 !ti

Fixed !joinsound, !setjoinsound , !psound, !setcolor to use send_message. The messages where not working.
 
[mute]
Mute Plugin Version 2.0
Mute now uses a SQLite3 Database.
Fixed Some Formatting and Syntax.
Remove sendmsg subroutine as it is now part of the plugin system a few versions back when pluginlib was removed ( years, plugin::sendmsg )
Now named, plugin::send_message
 
Added Command !mutelist | !mutelist <name/ip/dns>
Display the contents of the mute database.
 
Other Commands !mute, !unmute, !addmute, !delmute, !muteinfo
 
Better logging format with a reason and the mod that muted/un-muted a player.
Will now auto mute a player if they are not muted after typing. If for some reason the bot was shutdown during the middle of a game and they are not already muted.
 
All database query's now use plugin::execute_query_database ( Added to the plugin system a while back )
 
sub execute_query_database{ brdatabase::execute_query_database(@_); }
Prams: SQLLite_Query, Database, Flag
 
Added database version checking for old mute databases. DB Version 2.0
New mute database Structure.
 
(id     INT    PRIMARY KEY
, name     CHAR(128)
, ip      INT
, dns     INT
, reason char(1024)
, banner char(50))"
 
[DA_RENCORNER.dll]
 
Removed redundant code from Rencorner.cpp
 
Functions.cpp
Cleaned up and organized Functions
Removed redundant functions. Moved all sniper related things to SniperScripts.cpp
 
Updates to Kill_Harvester(int Team), Destroy_All_Vehicles_Team(int Team), Destroy_All_Vehicles(), Disarm_All_C4_Beacons_Team(int Team)
 
Added Functions
 
GameObject *Find_Object_By_ID(int ObjectID);
StringClass Get_Closest_Building_Name_Translated_Dist(GameObject *obj);
StringClass Get_Closest_Building_Name_Dist(GameObject *obj);
StringClass Get_Closest_Building_Name_Translated(GameObject *obj);
StringClass Get_Closest_Building_Name(GameObject *obj);
void Debug(int Type, int Level, const char *Format, ...);
 
 ConsoleCommands.cpp
Fixed an issue with SERVERINFO and getting the correct Map Number.
 
MapFix.cpp
New Game Feature MapFix. Disable/Enable map exploits/fixes. Intended for custom stock maps to use Iran’s Zone Fixes. Example we could apply these fixes to Under_RxD to fix nukes above the map.
 
MapFix Settings in MapFixes.ini Per Map
Example:
 
;Enable the MapFix Dragonade Gamefeture
EnableMapFixes=1
 
;Genrate The Main mapfixes.ini settings by gameovering on every stock map shipped with TT.
;When CreateINI is turned on disable reading of mapfixes.ini is disabled.
;Generates a list of zones iran added to all the maps
CreateINI=0
EntireRotationGameover=1
StaticZoneList=1
 
[C&C_Canyon.mix]
 
;If for some reason you do not want use Irans Script Zone Fixes for this map we can destroy them.
;Destroy The Defined zones in mapfix.ini
DestroyZones=0
 
;Destroy The Defined laserwalls in mapfix.ini "Simple_Sydney_SandM_Wall"
;Only map that has the laser walls is complex
DestroyLaserWalls=0
 
CreateZones=0
;Enable disable the mctfix
EnableNodRefMctFix=1
VehicleBlocker=0
 
MCT_Position_X=-74.824
MCT_Position_Y=-128.862
MCT_Position_Z=1.024
MCT_Facing=90
 
;Near The GDI Tiberium Refinery Dist 1.306266
ZoneEnabled9=1
Zone9=Script_Zone_All
ZoneObjectID9=100023
ZoneScript9=Iran_Vehicle_Ground_Kill_Zone
ZoneScriptParameter9=0.000000
ZonePosition9_X=-49.908581
ZonePosition9_Y=121.562996
ZonePosition9_Z=0.868832
ZoneSize9_X=2.924685
ZoneSize9_Y=2.669300
ZoneSize9_Z=2.155551
ZoneFacing9=0.000000
 
NoC4DefuseOnLeave.cpp
New Game Feature NoC4DefuseOnLeave
Does what the name says. When a player leaves there proxies will don’t be disarmed.
If the player rejoins the player will be given back ownership of the proxies.
Setting EnableNoC4DefuseOnLeave
 
AFKDetector.cpp
All settings have been moved to AFKDetector.cpp where in Rencorner.cpp
Better AFK Detection. More trigger events.
 
ReadySystem.cpp
Wait until all players type !ready to start the match.
Big improvements/fixes on the ReadySystem used for funwar/clan war games.
 
Ready Settings
 
; Enable Ready System Game Feature, !ready
EnableReadySystem=0
; How long in seconds until the match auto starts, 0 to disable, must be in 30 second intervals
; System will overide limit if set below 30 or uneven number or not divisible by 30
ReadyTimeLimit=300
; Freeze all players until the match has started.
ReadyFreezePlayers = 0
; Allow players to damage buildings while waiting for the match to start.
ReadyBuildingDamage = 0
; Allow players to teamchange after match has started.
ReadyFreeTeamChange = 0
 
BuildingRevival.cpp
 
Added chat command use Default accesslevel ADMINISTRATOR Added NavelFactory AirFactory Revival Functions
Created Building Revive functions to stop code duplication
Added Helipad Repair Sounds Added Repair Facility Repair Sounds Do On_Revive if Scripts 4.2 RC1 (6983) and up Play Create_2D_WAV_Sound_Team_Dialog if Scripts 4.3 RC2 (7455) and up SSGM Log Message for Building Revived.

The bot sets the dragonade accesslevel for mods. Alternatively you can do !fds setaccesslevel <playerid> 6 . ( Only for ingame da commands which there is only a handful. none of the br commands ).
Senior mods, Admins, Owners have access

Console Commands.
To Revive a building in irc it has to be done by the !fds command.
REVIVEAGT - Revives the GDI Advanced Guard Tower. (ragt)
REVIVEAIR - Revives the Nod Airstrip. (rair)
REVIVEBAR - Revives the GDI Barracks. (rb)
REVIVEGDICC - Revives the GDI Communications Center. (rgcc)
REVIVEGDICY - Revives the GDI Construction Yard. (rgcy)
REVIVEGDIPP - Revives the GDI Power Plant. (rgpp)
REVIVEGDIREF - Revives the GDI Refinery. (rgref)
REVIVEGDIREPBAY - Revives the GDI Repair Bay. (rgrb)
REVIVEGDISHRINE - Revives the GDI Superweapon Facility. (rnshrine)
REVIVEGDISILO - Revives the GDI Silo. (rgsilo)
REVIVEHON - Revives the Hand of Nod. (rh)
REVIVENODCC - Revives the Nod Communications Center. (rncc)
REVIVENODCY - Revives the Nod Construction Yard. (rncy)
REVIVENODPP - Revives the Nod Power Plant. (rnpp)
REVIVENODREF - Revives the Nod Refinery. (rnref)
REVIVENODREPBAY - Revives the Nod Repair Bay. (rnrb)
REVIVENODSHRINE - Revives the GDI Superweapon Facility. (rnshrine)
REVIVENODSILO - Revives the Nod Silo. (rnsilo)
REVIVEOB - Revives the Nod Obelisk. (rob)
REVIVEWF - Revives the GDI Weapons Factory. (rwf)

Ingame Commands Admin only
!destroybar
!destroyhon
!destroygdipp
!destroynodpp
!destroygdicy
!destroynodcy
!destroygdiref
!destroynodref
!destroygdisilo
!destroynodsilo
!destroygdirepair
!destroynodrepair
!destroygdishrine
!destroynodshrine
!destroywf
!destroyair
!destroygdicc
!destroynodcc
!destroyagt
!destroyob
!revivebar
!revivehon
!revivegdipp
!revivenodpp
!revivegdicy
!revivenodcy
!revivegdiref
!revivenodref
!revivegdisilo
!revivenodsilo
!revivegdirepair
!revivenodrepair
!revivegdishrine
!revivenodshrine
!revivewf
!reviveair
!revivegdicc
!revivenodcc
!reviveagt
!reviveob
 
revivebuildingbyid <id> - Revives a building by object ID. Host only.
revivebuildingbyname <team> <name> - Revives all buildings whose translated or preset name matches the given wildcard. Host only.
revivebuildingbypreset <team> <preset name> - Revives all buildings with the given preset name. Host only.
revivebuildingbytype <team> <type> - Revives all buildings of the given type. Host only. (See BuildingConstants for types

 

  • Like 3
  • Thanks 1
Posted

jeeeez someone has been busy! Thanks blacky

Posted

Thank you very much Blacky!

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...