New in Version 4.0.3.5
Core:
- Added new global function "redirect", makes a header location redirect
- Replaced all header('Location: ...') calls with the new redirect function
- Added new rcp_oggerator.class.php, with better ogg file support
- Added new method gbx::checkConnection
- Added new permission level to the groups.xml, <offlinelogin> allows admins to login also if the gameserver is not responding
- Renamed method gbx::pingGameServer to gbx::pingConnection
- Renamed method gbx::InitWithIp to gbx::newConnection
- Fixed pingConnection method from core::gbx class, the method sometimes returned wrong values
- Removed plugin::$ngame feature, no more game/packmask check (status::getGameFromPackmask still exist)
- Plugins: plugins with need for serverconnection (nservcon), will be destroyed if admin connects in offline-mode
- Plugins: plugins with need for sqlconnection (nsqlcon), will be destroyed if SQL connection isn't available
- Plugins: changed some internal functions (removed some codeparts from index/ajax/live.php)
- Translations: removed temporary holding all the xml data inside the rcp_translations object, should save a lot of mem-usage
- Translations: gets created right after loading the translation file, this should be a lot faster then the old method
- Gbx: removed getError method
- Gbx: added error handling from old getError method, directly to to plugin/core code
- Gbx: added new method, gbx::suppressNextError, this allows to make a gbx::query without any error output
- Changed configuration file servers.xml: renamed connection/ip to connection/host
- Changed configuration file servers.xml: added connection/communitycode
- Added global timeout settings (timeout_connect, timeout_rw), use Core::getSetting method
- Added global timeout settings to /xml/settings/settings.xml
Style:
- added new - templates - directory
- added template files for ajax pages
- categorized all template files into new directories (index, ajax, window)
- fixed windowed mode, javascript ist working now
- fixed bug inside form related css
- some IE6 css improvements
Javascript:
- added automatic change of area-title if plugin tab gets selected
Plugins:
- added install.php to the plugin directory
- added install.php to the page system
- added new plugin: CustomPoints (handles CustomPoints for rounds-mode)
- added new plugin: Help (handles help informations about plugins)
- added help informations to most of the plugins (only en.xml language files)
- Browse plugin: fixed invalid filename for default filetype icons
- Maintenance plugin: changed input field name 'ip' to 'host'
- Maintenance plugin: added communitycode input field
- Maintenance plugin: added ftpport input field
- Maintenance plugin: added offlinelogin permission input field
- Maintenance plugin: removed features to stop/quit/wakeup server, this makes the plugin able to load in offline mode
- Website plugin: fixed bug with invalid cachefile filenames
- Website plugin: changed cachefile filename format from website_optionshurtcuts.xml.tmp to website_serverlogin.xml
- Website plugin: fixed bug that created the cachefile all the time even if plugin was called without the cache option
- Website plugin: added timestamp to the caching xml-output (<cache time="[timestamp]"></cache>)
- Website plugin: added new value attribute to the xml-output <gamemode value="[int]"></gamemode>
- Website plugin: added new value attribute to the xml-output <laddermode value="[int]"></laddermode>
Live - Core:
- Added the new rcp_players_cache database table definition to the /live/PCore/mysql_PCore.sql
- Added new players_cache feature, this will load/save the players 'cdata' if player leaves/joins the server
- Fixed the invalid extraction of the players SpectatorStatus 'CurrentTargetId' (thx to Corto-72)
- Manialink: live.xml; renamed class "mlib1" to "btn1n"
- Manialink: live.xml; renamed class "button" to "btn2n"
- Manialink: live.xml; added new classes - "sub", "btn1a"
Live - Plugins:
- All plugins: removed all $ngame related code
- All plugins: removed manual calls to $this->onPeriodicalUpdate
- Admin plugin: added chatcommand /last, adds last played map as next map and forces mapchange
- Dedimania plugin: added new personal best display with player in front of the player
- Dedimania plugin: changed data array that is returned by dedimania::getData(), array key contains the player login
- Ladder plugin: some performance improvements by Ghost (thx!)
- Music plugin: fixed a small memory leak, should save some kb's mem-usage
- Music plugin: fixed song duration problem
- Music plugin: added songlist, with direct song selection (only if forcemusic mode is disabled)
- PCore plugin: new connection check handling with multiple reconnect (at least try's to reconnect...)
- PCore plugin: if sql/client connection check misses, the plugin now makes a clean [live] shutdown with a E_USER_WARNING
- PCore plugin: onPeriodicalUpdate is now triggered with plugins::TriggerEvent, this allows the call the onPeriodicalUpdate method for all plugins onBeginChallenge
- Players plugin: added ignored info to the players list
- Players plugin: added force spectator button to the players list (if admin)
- Records plugin: added new personal best display with player in front of the player
- Servers plugin: removed display of current server
- Servers plugin: added new datafetching method, plugin now fetches all data directly from the other servers
- TMX plugin: added new settings to settings.xml - ui/enabled, ui/minrecdisp, ui/maxrecdisp
- TMX plugin: added max/min button to the toprecords panel
- TMX plugin: added new tmx records window and added it to the main menu (this will show all records even if maxrecdisp is lower)
- TMX plugin: removed MLTMXDownload window and methods, download info will be displayed inside livemessages box or chat
New in Version 4.0.3.4
Core:
- Plugin system: removed the plugin sql connection check from version 4.0.3.3, since some plugins could use SQL just optional
- Plugin system: changed default value for "nservcon" to TRUE
- Plugin system: the update() method of core::status was called for every plugin that had nservcon = TRUE
- update_4032.php: fixed a SQL-query bug that happend on some mysql servers
- Status class: added GetHideServer / hidestatus
- Removed non server specific settings from /xml/settings/
/settings.xml - Added new setting file with all non server specific settings /xml/settings/settings.xml
Plugins:
- All plugins: removed all nservcon TRUE defintions
- Database plugin: fixed SQL Query issue at searching/sorting the challengelist
- Install plugin: added missing SQL file support, installer will dump all available plugin sql files into the configured database
Live - Core:
- Settings / live.xml: changed default value for usesu setting to false
- players class: added new ignorelist fetching, this allows to get the ignored status right at the player join process
Live - Plugins:
- All plugins: removed all nservcon TRUE defintions
- New plugin: Clock, former 3rd-party plugin added to the release pack
- Admin plugin: fixed SQL Error when opening admins list
- Challenges plugin: "Reset Sort"-Button toggled the sorting direction on multiple calls
- Challenges plugin: fixed invalid jukeboxdata handling, bug was shuffling the jukebox sometimes
- Ladder plugin: fully new method to gather the ladder data
- Music plugin: added new setting option "autoopen", allows to open the music panel for every new joined player
- Music plugin: added new setting option "autochangetrack", allows to change the current track after mapchange
- Music plugin: added new setting option "forcemusic", disables the music panel and uses forceMusic method to play the musictracks
- Records plugin: fixed a SQL-query bug that happend on some mysql servers
- Servers plugin: fixed invalid Date field bug
- Servers plugin: added more view (thx to |Black|Co2ntra)
New in Version 4.0.3.3
Core:
- Live.php: removed a unexpected sleep command, that made the tool respond very slow
- New core class: rcp_activity, logs user acitivities into file "serverlogin_web_activity.log" / "serverlogin_live_activity.log"
- Removed writelog setting, logfile writing is now allways enabled
- Errorhandling: renamed function errorLog to writeLog, the new version supports multiple file handles
- Errorhandling: changed logfilename from log.txt to errors.log (if the serverlogin is known, filename is "serverlogin_errors.log")
- Plugin system: added new default method "debug" to rcp_plugin, allows to add debugging outputs without checking the debugging status inside plugins
- Plugin system: added new default method "isDebug" to rcp_plugin, allows to check if debugging is enabled for the plugin
- Plugin system: added new default method "setDebug" to rcp_plugin, allows to set the debugging status for the plugin
- Plugin system: added new default method "onMLADebug" to rcp_liveplugin
- Plugin system: added new default admin option "onMLADebug" to rcp_liveplugin
- Plugin system: plugins with nsqlcon option will be destroyed / not loaded if there is no SQL enabled for the current server
- Textparser class: changed color/link/tag removement, added new methods: stripCode and stripTags
- Session class: added activity logging for login/logout
- Session class: replaced all simplexml class creation calls by new method session::loadXML, that will handle possible XML errors a bit better
- Actions class: added activity logging for all added actions
- Replaced old SQL classes wie new rcp_database.class.php using PHP PDO
- Changes some SQL related options inside the servers.xml (see readme.txt)
- Removed some connection related options inside the servers.xml (see readme.txt)
- Login/Logout/Serverchange: now directly change to their destination without that odd intermediate page
Style:
- Fixed some html code errors
- Fixed some cascading style sheet errors
- Added new server select box in the upper right corner, replacing the servername
- Improved the core-javascript, plugins are now able to define a "PLUGINNAME_startup" JS function that will be called at plugin load
Plugins:
- All plugins: updated all SQL queries to support PHP PDO
- All plugins: updated all rcp_textparser::toHTML calls to fit the updated textparser
- Browse plugin: translated all old debugging methods to the new plugin based debug system
- Browse plugin: removed useless tmx-upload options for tmx original, sunrise and nations websites
- Challenge plugin: removed the sharemania data loading, since sharemania will go offline soon
- GameSettings plugin: changed behavior of the ForceShowAllOpponents option, this will now support integer values (thx to Jaypsi)
- Player plugin: added accounttype information
- Settings plugin: fixed some XHTML issues and the wrong default style value (thx to Jaypsi)
- Settings plugin: removed switchserver option
- Website plugin: changed behavior of the nocode option (wont affect old scripts)
Live - Core:
- Added update script update_4032.php, this adds/changes the nessesary database fields for the new BestCheckpoints handling
- Improved BestCheckpoint handling, checkpoints are now stored to the records data (@database)
- Removed rcp_interface.class.php
- Timedevents: added new method "check", this allows to check if a timedevent with a specific ID exists
- Manialinks: replaced some hardcoded values (thx to Corto-72)
- Manialinks: removed some unneeded XML outputs, should lower the traffic
- Manialinks: removed to outdated action parsing, actions will now created at xml code creation
- Live: added new method "resetMsgs", allows to reset the currently available live-messages (if messagesui is not in chatmode)
- Live: added new method "getMsgs", allows to get a array of all currently available live-messages (if messagesui is not in chatmode)
- Live: replaced method "updateAdmins" by "updateSession"
- Players: added relay server support
- Added new master setting value 'idle', this setting defines if the system should run in idle mode
Live - Plugins:
- All plugins: updated all SQL queries to support PHP PDO
- All plugis: changed all rcp_textparser::toHTML calls to fit the updated parser
- New plugin: Menu, this plugin replaces the interface from the PCore plugin
- New plugin: Ladder, this external plugin is now part of the default download package
- Renamed Rounds plugin to Scoring
- Admin plugin: added relay server support
- Ads plugin: added new settings.xml option, the new type-attribute defines if a ad should be displayed inside the chat or messagecontainer
- Ads plugin: added new settings.xml option, "reloadtime" allows to define the reload interval for the ads
- Ads plugin: improved the randomizer, it wont show the same message twice in a row
- Challenges plugin: added display of players current record on the available challenges
- Challenges plugin: if a challenge gets a restart, the plugin wont run trough the jukeboxing process
- Challenges plugin: optimized SQL query at getChallengeRating
- Dedimania plugin: added new method "getData", returns the current dedimania record data as array (usefull for 3rd-Party-Plugins)
- Dedimania plugin: added some debugging outputs, removed old message outputs
- Dedimania plugin: added new NbCheckpoints verification at the onEndRace callback
- Dedimania plugin: fixed bug that inserted more records into the dedimania data then defined with 'maxrecords'
- Idle plugin: added new settings.xml option: message. This will allow admins to change the default idlekick message
- Records plugin: improved BestCheckpoints handling (see Live->Core changes)
- Records plugin: fixed a bug that possibly overwrite bader records under certain conditions
- Records plugin: added onPlayerCheckPoint handling from the training plugin
- PCore plugin: removed all interface related code parts
- PCore plugin: removed admin function - 'update admins'
- PCore plugin: removed admin function - 'update plugin settings'
- PCore plugin: added admin function - 'update session'
- PCore plugin: added relay server support
- PCore plugin: added 'idle' master setting handling to the onPeriodicalUpdate method
- PCore plugin: optimized SQL query that counts the player wins
- PCore plugin: optimized SQL query that counts the players play time
- Scoring plugin: added team mode support
- TALimit plugin: added new settings.xml option that allows the plugin to stay active even if the game mode is not TimeAttack
- TMX plugin: shows now up to three tmx-records in the record-side-panel
- TMX plugin: fixed bug with /tmxget command and no tmxget permission set in settings.xml
- Training plugin: moved onPlayerCheckPoint handling to the records plugin
- Training plugin: removed forceCheckPointTime setting option
New in Version 4.0.3.2
Core:
- Added new core class: rcp_serversettings (optional class, not loaded with the core)
- Core::Usage: added new rcp_timeusage subclass
- Core::Usage: added new public var, 'type' (default is string: rcp_ramusage)
- Core::session: added new public var, 'login' to the rcp_server object
- Core::session: added new method 'saveXML'
- Error reporting: added ISO 8601 date to every error message
- Startup: added ISO 8601 date to the startup output
Plugins:
- Browse plugin: added serversettings file support (see core changelog) (!experimental!)
- Chat plugin: added "open in new window" support
- Players plugin: fixed a issue with the isserver check
- Maintenance plugin: added new method to save the xml files, should now respect the formatting (thx to schmidi)
- Maintenance plugin: added support for adding/editing servers with the new 'lists' values
- Settings plugin: added new method to save the xml files, should now respect the formatting (thx to schmidi)
Live - Core:
- Added support for the new BeginChallenge/EndChallenge callbacks (server Version 2009-05-04 or newer now required)
- Added new core class: rcp_manialink
- Improved the loopLimiter, now don't count the players on every loop (only every 20th loop)
- Improved the LoopLimiter, lower loop limiting values should make the script respond much faster
- Core::timedevents: added getAll method, this allows to get a array of all currently available timedevents
- Core::maniafwk: the frames array will no longer stored after xml string generation
- Core::maniafwk: if generated xml and frames array empty, there is no more checking for all the window status stuff (its so useless and slow as hell)
- Core::Players: changed value SpectatorStatus, its now a array with all flag values (thx to corto72)
- Core::Players: changed value Flags, its now a array with all flag values
- Core::Players: fixed issue with the isserver check of new joined players
- Core::Challenges: reads/updates the top-record now every time the challengelist has changed (this has been removed from the records plugin)
- Core::Challenges: added new method 'getIndexByUid'
- Core::Challenges: removed getIndexByKey method, its like it would be named getIndexByIndex ...
- Core::Challenges: fixed bug with getRecord throwing a php warning
- Core::Live: removed manialink framework methods, moved them to the new manialink core object. Old methods are still available and redirect to the new methods, but will be removed in upcoming release
- Core::Live: renamed method addLiveMsg to addMsg. Old method is still available and redirect to the new method, but will be removed in upcoming release
Live - Plugins:
- All plugins: changed apperences of player::SpectatorStatus and player::Flags to the new flag based system
- Challenges plugin: changed onBeginRace/onEndRace callbacks to onBeginChallenge/onEndChallenge
- Challenges plugin: added adminjukeboxing setting-value, allows to enable/disable free jukeboxing for admins
- Dedimania plugin: fixed bug that added slower records to the temporary data array
- Idle plugin: changed onBeginRace callback to onBeginChallenge
- Idle plugin: fixed issue with the isserver check
- LiveStatus plugin: changed onBeginRace callback to onBeginChallenge
- Lottery plugin: changed onBeginRace/onEndRace callbacks to onBeginChallenge/onEndChallenge
- Lottery plugin: added new setting "minplayers", defines how much players must currently play on the server to run the lottery
- Lottery plugin: added new setting "mincoppers", defines how much coppers must available on the server to run the lottery
- Music plugin: fixed bugb that repopuped the playerwindow onBeginRace if it was previously open
- PCore plugin: added new callbacks onBeginRace/onEndRace, changed onBeginRace/onEndRace
- PCore plugin: added multilap support to the onPlayerCheckpoint method (!experimental!)
- PCore plugin: added new method to update the ChallengeList, more error checking and using the new challenges::getIndexByUid method
- Records plugin: changed onBeginRace callback to onBeginChallenge
- Records plugin: fixed invalid use of 'maxrecdisp' setting
- Records plugin: improved onPlayerFinish handling, removed a unneeded SQL query
- Rounds plugin: fixed bugged result sorting, results where sorted into the wrong direction (thx to Corto-72)
- Servers plugin: added mysql database table - import file
- Servers plugin: added new display for all other servers running on the same database as the current
- TALimit plugin: changed onBeginRace/onEndRace callbacks to onBeginChallenge/onEndChallenge
- TMX plugin: changed onBeginRace/onEndRace callbacks to onBeginChallenge/onEndChallenge
- TMX plugin: fixed invalid mode value for nations.tm-exchange
- Training plugin: added multilap support to the onPlayerCheckpoint method (!experimental!)
New in Version 4.0.3.1
Core:
- MySQL: fixed some missing connection handle definition on mysql_query calls
- Fixed invalid execution of the textparser if admin had nocode option enabled
- New core object, 'web': handles connections with webservices, for example tmbase or tm-exchange
- Added a timeout (2 seconds) to the IXR_Library.inc.php query method, should stop 'hanging' in plugins like Update or LiveStatus
Style:
- Added some improvements to fit the checkbox display on some browsers
Plugins:
- Browse plugin: added new game values to the tmx upload, its possible to upload files from sunrise/original.tm-exchange.com (untested)
- Challenge plugin: added better error handling to the sharemania related code part
- Challenge plugin: replaced getFile method by web::checkURL
- Maintenance plugin: fixed possibility that allowed admins, without globalmaintenance permission, to change other admins group
- Maintenance plugin: fixed possibility that allowed admins, without globalmaintenance permission, to remove other admin active-state
- Website plugin: added new "nextchallenge" value to the xml output
Live - Core:
- IMPORTANT: Fixed admin list, this list now contains only valid admin for the current server (before, contained all admins in general)
- Added missing time settingvalue, at plugin loading and onLive
- Added CurrentRecord value and methods to the players object, this temporary stores the current pesonal best on the current map
- Added errorcallback to the bills class, allows to call a callback if the billing failed
- Added new method to the challenges object: "check" allows to verify, if a challenge object is valid
- Changed order of dedicated-server callback handling, player related callbacks now handled before all other callbacks
- Changed core::players: the check method now validates also the database Id
- Changed core::challenges: removed the rcp_challengelist object
- Changed core::challenges: the check method now validates also the database Id
- Moved timedEvents::execute call from live::LoopLimiter to the live.php main loop
Live - plugins:
- All plugins: added validation for valid challenge objects
- All plugins: changed all calls to bills::add()
- All plugins: changed all calls to core::challenges->list
- Challenges plugin: fixed a little bug that possibly destroyed the consitency of the challengelist
- Dedimania plugin: change handling of records, sorting of the data array improved
- Dedimania plugin: fixed checkCheckpoints method
- Dedimania plugin: removed a bug that temporary stored slower records into the data array
- Idle plugin: added new info message if a player gets a idle-kick
- LiveStatus plugin: removed unused getFile method
- PCore plugin: removed hardcoded interface style
- PCore plugin: added handling of the CurrrentRecord value of all players
- PCore plugin: added errorcallback handling to the onBillUpdated method
- PCore plugin: onLive now triggers a fatal error, if it was unable to load the servers challenge data
- PCore plugin: removed UpdatePlayerDB method (moved to players core object)
- PCore plugin: removed UpdateChallengeDB method (moved to challenges core object)
- Records plugin: fixed bug that stopped updating of the players personal best
- Rounds plugin: fixed invalid sorting of results
- TMX plugin: added new game values to the tmxget chatcommand, its possible to search inside nations/sunrise/original.tm-exchange.com (untested)
- TMX plugin: replaced getFile/getFileContents methods with the new web::checkURL method
New in Version 4.0.3.0
Core:
- Updated all swedish language files (thx to breach)
- Added some hacks to the IXR_Library.inc.php to fit dedimania (thx to slig)
- Added newest version of the TMFColorParser by F*ckFish
- Converted all files to UTF-8
- Added new registry system, this allows more flexibility for the core system
- Added new setting options to the /xml/servers.xml for the guest and blacklist
- Added guestlist/blacklist config values to the rcp_server object
- Fixed loading of setting files with additional serverid in filename
- Pngstat: fixed invalid handling of the background color
- Pngstat: added new parameter: style
- Connection: added better xmlrpc client connection check
- Connection: removed connection refused message and logout for rcp live. Live tries to reconnect
- Errors: added better error handling, white page / blank page bug should finally gone (!)
- Errors: added better message handling, core now knows if there is a error or information message
- Permission system: added new group permissions file /xml/groups.xml
- Permission system: added group-value to the /xml/admins.xml
- Permission system: replaced old foreach searching of admin/server nodes, with xpath
- Permission system: changed methods session::checkPerm and live::checkPerm to fit the new group-permission
- Permission system: removed unused permission values "viewmsg", "editmsg" and "viewnetwork"
- Permission system: removed permission value "matchsettings" and replaced it by "browse"
- Permission system: removed permission value "startserver" and replaced it by "globalmaintenance"
- Permission system: removed permission value "quitserver" and replaced it by "globalmaintenance"
- Permission system: replaced permission value "editglobaladmin" by "globalmaintenance"
- Permission system: replaced permission value "editadmin" by "maintenance"
- SQL: changed the appearance of the method rows. Only returns true, if the result has at least one row
- SQL: added support for different SQL database types
- SQL: added new method to the mysql/sqlite class: "fileImport", this allow plugins to import sql dumps
Style:
- Fixed font color for the pagination elements
- Added new style for error/info-message display
- Merged some old javascript definitions into one file
- Added newest version of the mootools javascript framework
- Replaced old modal window class by SqueezeBox ([url]http://digitarald.de/project/squeezebox/[/url])
- Changed loading order of javascript files (very important change for style modders!)
- Javascript: removed function selrow(), added it to the core javascript Linkinizer method
- Javascript: removed function checkuncheckall(), added it to the core javascript Linkinizer method
- Javascript: changed most of the javascript parts to fit the new mootools version
- Javascript: changed colleting of core elements with class selector
- Changed some parts regarding utf-8 encoding and browser compatibility
- Removed the special stylesheet for all IE versions (filtering only for IE 6, by conditional comments)
- Added new class "checkbox", removed old checkbox selector (wasn't working in all browsers)
Plugins:
- Added french language files to all plugins (thx to corto72)
- All plugins: modified to fit the new checkbox styling
- New plugin: Mods, allows to force Mods and Music for the server
- Browse plugin: fixed "The second argument should be either an array or an object on line 384" bug (thx to colonelz)
- Browse plugin: fixed a little display issue with the einvironment tooltip
- Browse plugin: added some missing translation values
- Browse plugin: added new zip file extension and mime-type check
- Browse plugin: added multi file selection
- Browse plugin: added select/unselect all
- Chat plugin: added filtering options for messages (controller output) and chatcommands (admin with globalmaintenance permission only)
- Chat plugin: removed some unused action-permission values
- Database plugin: changed some parts to fit the new SQL::rows method
- Database plugin: added check for the viewpermission, plugin wont be displayed without the database permission
- Lists plugin: added support for the new guest and blacklist config values
- Maintenance plugin: fixed misspelling of ftppath option (thx to colonelz)
- Maintenance plugin: added new sql-type option to the server section
- Maintenance plugin: changed many parts to fit the new config files
- Maintenance plugin: added groups administration
- Maintenance plugin: added support for the new guest and blacklist config values
- Players plugin: added support for the new guest and blacklist config values
- ServerSettings plugin: added buddynotifycation option
- Settings plugin: changed some parts to fit the new group permission system
- Website plugin: removed invertation of tmcode-color tags
Live - Core:
- Added pluginID to the addinterface method as first parameter
- Added methods for checkpoints handling to rcp_player and rcp_challenge
- Changed records handling in rcp_player and rcp_challenge
- Fixed addinterface method, it happend that the method overwrites a option if a other had the same order value
- Renamed method loadPluginSettings to loadSettings
- Renamed callback "onManiaFWKCreate" to "onNewPlayer"
- Renamed ML container Records to SidebarA
- Renamed ML container SplitTimes to SidebarB
- Renamed config value, "usenewmenustyle" with "interfacestyle" inside live.xml
- SQL: Added altering of the mysql database coalition right after the database connect
- ManiaFWK: added new cell-attribute "hidecell", that cell wont be displayed (but position/size will be calculated)
- ManiaFWK: added new parameter for the window::frame() method, allows to specify if the frame should be displayed overlapping (default), horizontal aligned or vertically aligned
- ManiaFWK: moved styleregions from window class to the FWK base class. This should save ~250 bytes/window memory
- ManiaFWK: moved options from window class to the FWK base class. This should save ~80 bytes/window memory
- ManiaFWK: added display modes to the window object. Defines if a window should be shown anytime, only on race, only on scoring
- ManiaFWK: added three default actions that call different callbacks -> onMLAccesskey1 (F5), onMLAccesskey2 (F6), onMLAccesskey3 (F7)
- ManiaFWK: changed behavior of the "hidden"-mode, the window with id 1 (accesskey window) will be rendered also in hidden mode
- ManiaFWK: changed onPlayerManialinkPageAnswer call, parameter is a array of the playerobj. and the original server-call (thx to f*ckfish)
- ManiaFWK: added rePaint method, that refreshes all windows that has ML_MAXIMIZED or ML_STATIC status
- ManiaFWK: fixed frame alignment, if align was set to vertical
- ManiaFWK: added reference to the base-player object, so the framework knows about things like the players specatator status
- ManiaFWK: added new option to the window object "inspec" (defines if a window will shown in spectator mode, default: true)
- ManiaFWK: added new hidden value to the maniawindow object, this defines if a window should be displayed (not respecting anything else, like timeout or display mode)
- Manialink FWK: changed behavior of cell size values. The system supports values with ending % (for example '60%', as string) or normal float values for the default trackmania manialink sizing
- Manialink FWK: fixed a little issue with ManiaFWKCall not calling anything
- Permission system: added a new third parameter to the checkPerm method, allows to drop a chat message if permission is missing
- Plugin system: added globalmaintenace permission check to the disable/enable plugin method
- Plugin system: added possiblity to add a
0/1 option to every settings.xml file, even if it is not included in the default one, this new option will control the enabled status of the plugin - Plugin system: added a new active status, it's more or less the same as the enabled option, but "active" can't be controlled by admin, only plugins can change the active status
Live - plugins:
- Removed plugin: Payment (replaced by Donations/Lottery)
- Removed plugin: Messages (replaced by Uptime/Ads)
- New plugin: Donations, shows some donation buttons and supports the /donate chatcommand
- New plugin: Lottery
- New plugin: Servers, displays all configured servers (servers.xml) and displays a "join now" link with the tmtp protocol
- New plugin: Uptime, shows a "Server running since..." message
- New plugin: Ads, shows random ads in the live messages container
- New plugin: Rounds, shows custom round standings
- New plugin: SplitTimes (external plugin, not included in final 4.0.3.0)
- All plugins: changed behavior of the previous/next page selection (using the new hidecell attribute)
- All plugins: changed some parts to fit the new SQL::rows method
- All plugins: merged windows that appear in the screens center to MLWindow, that should save a lot of ram usage
- All plugins: moved some code parts from "onPlayerConnect" to "onNewPlayer"
- All plugins: removed all $this->enabled definitions and checks from all plugins
- All plugins: changed manialinks to fit the new manialink sizing
- Admin plugin: added pagination to the plugin administration section
- Admin plugin: fixed little security issue with the /admins chatcommand
- PCore plugin: removed file /live/Core/settings.xml, all settings moved to the global live.xml
- PCore plugin: fixed bug that stopped some plugins to work probably, since the database ID of the current challenge was lost
- PCore plugin: added check if a plugin is enabled before it will be display inside the main-menu
- PCore plugin: removed alpha value for the messagescontainer, text should be better readable now
- PCore plugin: changed interface sorting
- PCore plugin: added possibility to disable the /su command (see settings.xml inside /live/Core/)
- PCore plugin: improved servername length calculation for the oldmenustyle
- PCore plugin: updates the message container on every player connect
- PCore plugin: added server call that hides all manialink on live startup (thx to f*ckfish)
- PCore plugin: added onMLAccesskey3 (F7 key) handling, this will toggle the maniaFWK display (like the /fwk chatcommand)
- PCore plugin: removed some unused container definitions, should lower the memory usage by player
- PCore plugin: added new default ML containers SideBarA and SidebarB
- PCore plugin: added new checkpoint handling
- PCore plugin: added new global manialink Window "MLWindow"
- Chat plugin: added chatcommand /serverlogin, this is a default chatcommand, added to the help system since it is mostly unknown
- Challenges plugin: added popup of the challenge-info-box, if the the user voted the challenge
- Challenges plugin: fixed display of the votings slider-bar
- Challenges plugin: added new admin function to reset the jukebox
- Challenges plugin: removed possibilty to at a track to the jukeboxe twice
- Dedimania plugin: added livemessage if new record was driven by a player
- Dedimania plugin: fixed bug that created a performance problem on player connect
- Dedimania plugin: changed style of the records panel
- Dedimania plugin: records panel will also move to the left in team, cup and laps mode
- Dedimania plugin: is now disabled by default (settings.xml)
- Dedimania plugin: added new default config values to the settings.xml
- Dedimania plugin: added new config value check, if the config is the same as default, the plugin becomes disabled
- Dedimania plugin: added a reconnection timer, plugin will only try every 60 minutes to reconnect to the dedimania server
- Dedimania plugin: added ip and port informations to the ServerInfo struct
- Dedimania plugin: moved authentification informations to a own method
- Dedimania plugin: goes to inactive mode, if gamemode is stunts
- Donations plugin: fixed invalid display of players with a donation value of null
- Music plugin: changed behavior of the /music chatcommands, its now a toggle that enable/disable the musicplayer window
- Music plugin: added buttons to jump directly to the first/last track
- Music plugin: new style and position
- Music plugin: fixed some display issues like buttons that changed it size
- Records plugin: fixed bug if the maxrecdisp setting was set higher then 10
- Records plugin: fixed bug that created a performance problem on player connect
- Records plugin: changed style of the records panel
- Records plugin: fixed PB display at the records panel
- Records plugin: added better PB display in records panel. PB shows now with ranking, if inside the maxrecdisp range
- Records plugin: records panel will also move to the left in team, cup and laps mode
- Records plugin: changed BestCheckPoints handling
- Players plugin: player details hides the "Challenges @ Database" info if there is no data
- Players plugin: fixed player details display of donation/lottery value of null
- TMX plugin: added chatmessage to everybody if new challenge has been added with /tmxget
- TMX plugin: fixed bug that created a performance problem on player connect
- TMX plugin: records panel will also move to the left in team, cup and laps mode
- Training plugin: added admin option to en/disable force checkpoint time
- Training plugin: removed popup of the training window onBeginRace
- Training plugin: exporting the training data as bbcode now has removes the color/formating tags
- Welcome plugin: removed some unused var definitions
- Welcome plugin: added support for player disconnect
- Welcome plugin: added settings.xml with abillity to change the welcome and join/leave messages
- Welcome plugin: added groupname display if player connect/disconnect (only admin)
New in Version 4.0.2.7
Core:
- Some files had a wrong charakter encoding type, converted everything to UTF-8
- Added new value to servers.xml, check readme.txt for further informations
- Changed triggerEvent method, the usage will now only logged if the method exists (debugging mode only)
- Added date and time output to the usage class (debugging mode only)
- Added new value for the rcp_server object, login
- Fixed missing display of system messages inside plugins
Style:
- Fixed some sizing issues with the form elements
- Changed the size of the left box, is a little bit wider now
- Supports now sreen-resolutions with 1024*768 or higher
Plugins:
- Challenges plugin: fixed display of votes for the map if sql is enabled
- Maintenance plugin: fixed language selection
- Maintenance plugin: added complete servers.xml administration (only for admins with editglobaladmin permission)
- ServerSettings plugin: updates now the servername inside the servers.xml, tm-code will be removed
- Settings plugin: fixed language selection
Live - plugins:
- Idle plugin: now checks if the idle account is a serveraccount (relayserver for example) and does nothing
- Admin plugin: added new style for the adminlist with "online" information about every admin, thx to Corto-72
New in Version 4.0.2.6
Core:
- Changed all class names, also in all plugins
- Renamed a lot of functions everywhere
- Changed all include file names, splitted thing into different files and moved some into the /includes/objects/ directory
- Changed path and filenames for the core translation files
- Changed triggerEvent method, its now possible to receive return values from the callbacks
- Changed triggerEvent method, the method now awaits the pluginid instead of the plugin object if you send a array as method, this will allow the maniafwk to use this feature
- Changed textparser class, now changes tmcode colors like white or grey into black for better readability
- Added new rcp_server object
- Added new method to plugin class: addQuickOption
- Removed settingset var and added it to the rcp_server object
- Removed logged var and added it to the rcp_admin object
- Removed method plugins::triggerAction
- Removed method plugins::Output, ajax.php triggers the callback now
- Removed method plugins::getMainBox and all calls to this method
- Removed method plugins::getSideBox and all calls to this method
- Removed method plugins::getQuickBox and all calls to this method
- Removed method plugins::showInfoMessage()
- Removed SQL methods from plugins class, added standalone SQL class
- Removed everything that was linked to the Info Message system: file /xml/language/[de|en|se]/messages.xml and more
- Fixed style bug, admins style setting was allways overwritten by the default style setting
- Fixed a bad performance for-loop inside GbxRemote.inc.php
- Fixed multible bad performance for-loops inside TMFColorParser class
- Fixed nocode option, textparser now removes globaly the tmcode
Style:
- New webinterface style
- Removed some unused or useless css declarations (for example: all old tmcode class definitions)
- Moved /includes/style.php to /styles/[stylename]/tpl.[header|body|footer].php
Plugins:
- :
- Changed all plugins to support the new rcp_server object
- Changed all plugins to support the new style system
- Changed all plugins to fit the new SQL system
- Replaced all quickbox related codelines with the new addQuickOption method
- Removed Ith Plugin and all links to it inside other plugins
- Browse plugin: added display of author and environment (tooltip) of any supported trackmania challenge files
- Core plugin: removed quickoptions
- Database plugin: fixed player delete function, this will now also remove all records added by the player
- Lists plugin: the plugin should now use the guest/black list files, defined in the servers config file (hopefully)
- Maintenance plugin: fixed bugs with rcp_admin object
- Maintenance plugin: removed usemsgs option
- Maintenance plugin: fixed bug that made all edited admins inactive
- Overview plugin: added new method GetLadderServerLimits / Ladderlimit to the status section
- Players plugin: fixed invalid display of current besttime
- Settings plugin: fixed bug with rcp_admin object
- Settings plugin: removed usemsgs option
- Settings plugin: fixed invalid selection of the current style
- ServerSettings plugin: fixed problem with callvote ratio "-1"
- Website plugin: added new method GetLadderServerLimits
- Website plugin: added new values to the xml output, ladderlimitmin and ladderlimitmax
Core - Live:
- :
- Fixed a bad performance for-loop inside rcp_player::getPlaytime method
- Removed overwritten and empty method triggerAction, calling this is slow ... very slow
- Added new method Exec, it's a a overwritten version of the plugins::Exec, just without triggerAction
- Added new rcp_liveplugin class with addAdminOption
- Added possiblity to enable/disable all plugins (except the core and admin plugin)
- Fixed missing httppath value inside the live system
Plugins - Live:
- :
- Changed all plugins to fit the new SQL system
- all plugins: made changed to fit the new admin menu system
- new plugin: Dedimania
- new plugin: LiveStatus, sends some data like current challenge, servername, players to the tmbase.de server for some kind of usage stats
- Challenges plugin: added possiblity to vote with the well known ++ or -- commands
- Challenges plugin: fixed a little display bug inside onMLChallenges
- Challenges plugin: added new style for the voting panel, it displays a graphical sliderbar now
- Challenges plugin: added getChallengeRating method, collects the votes for the current challenge onPeriodicalUpdate, onBeginRace and if player voted
- Records plugin: merged this plugin with the RecordsUi plugin
- Records plugin: added settings.xml and a value to disable the RecordsUi
- Records plugin: fixed bug that was not shown the nickname for the personal best in recordspanel
- Records plugin: changed method to update the ML records panel, this will happen every 60 seconds now
- TMX plugin: added possibilty to search for an tmxid with /tmxget command (see ingame help)
New in Version 4.0.2.5
Plugins:
- All plugins changed to fit the new admin object
- Settings plugin: will allways use the userid from the loggedin admin, no more possiblity to fake the userid
Core - Live:
- Removed manual chat routing
- Added support for Stunts gamemode (time/score format)
- Changed onPeriodicalUpdate interval from 180 to 240 seconds
- Added reset of the onPeriodicalUpdate timer onBeginRace, this will remove the problem that live reads all the data twice onBeginRace and still after this if the timer reached the limit
- Removed useless "interface" option from ManiaFWK method
- Changed method ChkPerm, with the new admin objects and without need of searching the admin all the time, this should be a huge performance boost!
Plugins - Live:
- new plugin: Welcome
- All plugins changed to fit the new admin objects
- Admin plugin: admin list uses now the the new admin objects
- Challenge plugin: added support for the stunts gamemode
- Core plugin: changed onPlayerChat callback handling, chat forwarding removed
- Core plugin: removed some of the onPlayerConnect stuff and moved it to the new Welcome plugin
- Core plugin: changed style and position of the messagebox container
- Players plugin: added support for the stunts gamemode
- Records plugin: fixed little problem with the check of the player object
- Records plugin: added support for the stunts gamemode
- RecordsUi plugin: fixed invalid or missing PB, bug
- RecordsUi plugin: added support for the stunts gamemode
New in Version 4.0.2.4
Core:
- only some undocumented security fixes
New in Version 4.0.2.3
Core:
- Textparser Class: added removement of chatcommands. Very important, because other admins or guests could see the /su command from [Live] or other passworded commands
Plugins:
- Challenge plugin: added check for server availability for tmx data
- Payment plugin: removed game check, since nations servers could use coppers, too
- GameSettings plugin: fixed problem with newrules settings from team/rounds mode colide with cup mode
- GameSettings plugin: fixed ForceShowAllOpponents problem
- ServerSettings plugin: fixed UseChangingValidationSeed option, now has current and next values / display
Live - Core:
- Added new admin flag to the players object, this will verifies an admin as authorized (needs /su
chatcommand) - Changed IsAdmin method to fit the new admin verification system
- Added manual routing for chatmessages
Live - Plugins:
- Core plugin: fixed invalid name for scoretable container window
- Core plugin: changed bad position for round_scores container, it was in conflict with the warmup info
- Core plugin: added check if a chat message contains a chatcommand even if there is no slash before it
- TALimit plugin: really really really fixed the timelimit = 0 bug! thx to DerBauer :)
New in Version 4.0.2.2
Core:
- Added new error handling and logfile generation
- Added a prefix (RCP_) to all classes used by remoteCP core system, so plugins can't come in conflict with system classes
- Added method for the StatusUpdate and added some values to it (packmask, systeminfo, isrelay)
- Added new pluginsystem function and callback. Plugins can handle there own settings.xml file with "onLoadSettings"
- Added new info to player class, "Record" can be filled with the current personal record
- install.php: Added
true attribute to the newly created admin account - install.php: Added useraccount creation for rcplive-user and guest-user
- Replaced all language vars ct_save with ct_submit
Style:
- Removed 10 unused files from the download pack, saving 331kb
- Removed old remoteCP3 bg6.jpg background from style.css
Plugins:
- Browse plugin: Added possibility to upload zip files with also folder creation (all experimental)
- Overview plugin: Added check for Game (United/Nations), no more coppers display if game is Nations
- Players plugin: Shows now connected game/relayservers
- Players plugin: fixed bug that made the GameSettings plugin unusable if Players plugin was open
Live - Core:
- Removed method CreateFWK
- Added container feature, default containers are named like the costum_ui elements
- Added non custom_ui container, "messages", most live plugins will send it's global status messages to this container
- Added new settings option to /settings/*all-folders*/live.xml: 'messagesui'
- Added new class to /settings/*all-folders*/live.xml: 'tmf', that uses the styles of the default ingame ui elements
- Manialink Framework: Added support for containers
- Manialink Framework: Added possibility to define a style class for the background, default class is 'main'
- Manialink Framework: Added possibility to add a style array to a line, only styles for the quad element will be used
- Manialink Framework: Removed invalid sizen attribute in for lines, should save some bandwidth
- Manialink Framework: Added possibility to define multible frames inside a window with relativ position to the window position
- Manialink Framework: Added possibility to add a style array to a frame, only styles for the quad element will be used
- Manialink Framework: Will not generate empty quads if there where no attributes, should save some bandwidth
- Removed mliexp var from RCP_player class and added cdata var for custom player data added by plugins
- Changed ChatSend method, it now awaits a full player object instead of the player nickname if you want to set a sender
Live - Plugins:
- New Plugin: RecordsUi, displays some informations about the current records as a static box that replaces the round_scores (unavailable in rounds mode)
- Changed and fixed problems with textcolors in all plugins, old 'color' attribute removed and replaced by 'textcolor'
- Admin plugin: added cancel vote chatcommand and menu option
- Core plugin: Added new admin option that reloads all settings.xml files from every plugin, no need to restart Live after a settingchange
- Core plugin: Added possibility to show all messages from the messages container
- Core plugin: added settings.xml for easier configuration
- Core plugin: added alternative (vertical) interacemenu style
- Challenges plugin: Fixed invalid display of next challenge @ EndRound if jukebox was used
- Challenges plugin: Added settings.xml file for easier configuration
- Challenges plugin: Added support for disabling the jukebox
- Challenges plugin: Added support for disabling the vote popup
- Challenges plugin: Added support for disabling the next challenge popup
- Challenges plugin: Added support for nations jukeboxing, if coppersprice is set to 0 (null)
- Idle plugin: Added settings.xml file for easier configuration
- Idle plugin: Added idle data to the new player->cdata array
- Ladder plugin: Added settings.xml file for easier configuration
- Messages plugin: Added settings.xml file for easier configuration
- Messages plugin: Added possibilty to add new ads to the settings.xml
- Music plugin: Added settings.xml file for easier configuration
- Music plugin: Added musicplayer data to the new player->cdata array
- Payment plugin: Added settings.xml file for easier configuration
- Records plugin: Added Personal-Best display
- TALimit plugin: Added settings.xml file for easier configuration
- TALimit plugin: Fixed invalid calculation of new timelimit
- TMX plugin: Added settings.xml file for easier configuration
- Training plugin: Added forcecptime, that allows to allways show the checkpoint time also if the training plugin is disabled by player
- Training plugin: Added settings.xml file for easier configuration
- Training plugin: Added training data to the new player->cdata array
New in Version 4.0.2.1
Core:
- Added packmask value to plugin system, this will help to check for specific game versions
- Added check, if a plugin needs a specific game: Nations or United (United can use Nations plugins)
- Removed GetGame method and check for different games, no difference since TMF
- Added and extended TMFColorParser class by oorf|****fish
- Remove old TMtoHTML/GetRaceTime methods from system class
- Changed loading of includes, now system.system.php loads all includes at once
- Improved connection error handling. remoteCP will now drop login-session, if there was invalid SuperAdmin data provided
- Added new account registration page
- Added new value to settings.xml, register (enables the admin registration mode)
- Added new value to admins.xml, active (only admins with value "true", allowed to login)
- Added new setting file: database.xml (this file doesn't concerns [live])
- Added alternative settings (database.xml) for Aseco database
- Added chatmessage removement of typical infomessage from servertools that begin with ">>"
- Added new style system to the manialink framework (system.mania.php), this allows to define style classes that can be used by plugins
- Added custom_ui feature to manialink framework (system.mania.php), allows plugins to disable ui elements (for example: the chat)
Plugins:
- Browse plugin: fixed invalid filename removement of numbers at upload
- Maintenance plugin: fixed formhandling issue
- Maintenance plugin: added possibility to set an admin "active"
- Maintenance plugin: new style for admin list, showing server assigment and activation status
- Overview plugin: added display of game (nations/united)
- Payment plugin: added new n(eed)game value, plugin will only show up on united servers
- Players plugin: fixed invalid display for first player in playerlist
- Settings plugin: fixed change server feature
- Settings plugin: fixed formhandling issue
- Website plugin: added caching
- Website plugin: optimized output
- Website plugin: added new value, ServerLogin
- Website plugin: added new value, SpectatorsCount
- New plugin: WebStats (untested & experimental)
Live:
- Changed all plugins to fit the new style system
- Changed most of the plugins to avoid negativ values for the limit part of some SQL queries
- Changed global chatmessage style
- Added new values to PlayerInfo object: Path, OnlineRights, mliexp
- Core plugin: added update of servername to onPeriodicalUpdate
- Core plugin: changed join and welcome messages
- Core plugin: added new main interface handling
- Core plugin: added Path information to join message
- Core plugin: onPeriodicalUpdate updates the challengelist only on startup and if onChallengeListModified has "modified boolean" = true
- Payment plugin: added new n(eed)game value, plugin will only show up on united servers
- Payment plugin: lottery is now for united players only
- Players plugin: added display of game (nations/united) to PlayerDetailsPage
- TMX plugin: added support for /tmxget command, so it is usable for everybody
New in Version 4.0.2.0
Core:
- Added full UTF-8 support (hopefully!)
- Removed allowedtags value from settings.xml
- Moved online.xml from /xml/ to /cache/
- New structure of /xml/servers.xml (I recommend to (re)create all your config files from scratch)
- Added new value to /xml/servers.xml: <settingset></settingset>, adds possibilty for different plugin configurations for each server
- Moved /xml/settings.xml and /xml/live.xml to /xml/settings/default/
- SQL methods: added checking if sql connection is available (this fixes also the mysql_real_escape_string bug)
- fixed TMCode replacement bug in TMtoHTML method(s)
- Added new error "[-3200] connection refused" handling, remoteCP session will be dropped now (relogin possible)
- [Live] Manialink framework: Added new AddCustomXML method, allows to add customized xml to a manialink window
- [Live] Added new GetNext method to ChallengeList class, it helps to get the next challenge data
- [Live] Plugin system: changed SQLPing method, now reconnects also on mysql versions with disabled autoreconnect
Images/Style/Javascript:
- fixed invalid resizing of the modal box
- removed unused images (size: 41 kb) from default style
- fixed invalid alternative color for table rows#
- new filetype icons
Plugins:
- Website plugin: fixed invalid handling of players/challenges/nocode options
- Browse plugin: enhanced file(s) display, now displaying as table with size and date data
- Browse plugin: added filesort order-indicator
- Maintenance plugin: fixed not available server assigment for some admins
Plugins:
- Help plugin: added support for multible examples delivered as array
- Challenges plugin: fixed next challenge popup window
New in Version 4.0.1.4
Core:
- Removed filemode option in servers.xml
- Added new enabled attributes to /xml/servers.xml FTP and SQL settings (check update.txt)
- If FTP is enabled, system falls back to ftp mode (default is local php mode)
- Plugin system checks if SQL is enabled and allows additional SQL-stuff inserted into plugins for the SQL-free webinterface
- Added FTP port setting to servers.xml, leave empty for default port (21)
- Changed plugins::SQLFetch method, now uses mysql_fetch_object
- Fixed bug in TMtoHTML function with nocode enabled
- [Live] GetChatCommand method: Added check for admin permission
- [Live] Fixed bug in ManiaFWKCall, ManiaFWK methods, invalid checking of player object
- [Live] ManiaFWKCall, ManiaFWK methods now call the callback or/and action with the whole player object as parameter (before was login only)
- [Live] onPlayerManialinkPageAnswer now sends the whole player object as parameter
- [Live] onManiaFWKCreate now sends the whole player object as parameter
Plugins:
- changed most plugins to fit the new SQLFetch
- Core plugin: fixed loading of challenges at onLive
- Browse plugin: added possibility for non default FTP port connection
- Challenges plugin: added votings data from SQL database (If SQL is enabled)
- GameSettings plugin: fixed in-tool-help
- GameSettings plugin: fixed pointsnewrules settings in team and rounds mode
- GameSettings plugin: changed some wrong translation values
- Website plugin: fixed bug that was not respecting the values of nocode/players/challenges get-values
- Settings plugin: fixed security issue with guestlogin
- Settings plugin: added some missing translations
Live:
- changed most plugins to fit the new SQLFetch
- changed most plugins to fit the updated ManiaFWK Handling
- changed most plugins to fit the new ChatCommand permission system
- new plugin: Ladder
- Core plugin: fixed wrong handling of chatcommands, now only commands with "/" will be executed
- Core plugin: fixed the wrong calculated width for main-interface-menu options
- Core plugin: changed some very important things in onPlayerConnect and onPlayerFinish
- Chat plugin: moved admin commands to the admin plugin
- Chat plugin: moved fwk command to the core plugin
- Records plugin: fixed some scriptlogic bugs
- Records plugin: fixed 'pos' output
- Challenges plugin: fixed wrong record order in challengedetails
- Challenges plugin: added new multi param system to remember the last "page" on "go back" @ challengedetails
- Challenges plugin: added next challenge box at endrace
- Challenges plugin: added count of total votes for challengedetails
- Players plugin: added new multi param system to remember the last "page" on "go back" @ playerdetails
- Records plugin: added crosslink to playerdetails page
New in Version 4.0.1.3
Core:
- added new tagtype to the manialink framework: audio
- added some destructor code to solve some memory problems
- pngstat.php changed some things to fit the updated Website plugin
- added new global function specialchars(), en/decodes strings to use for xml/html
- added new entry.php, handling for manialink entry fields (not working in this release)
Javascript/Images:
- replaced invalid append.gif icon
- fixed several bugs in modal window javascript
Plugins:
- Website plugin: added urlencoding to some data
- Website plugin: added new options to add challenges/players data to the output (default options wont show this info)
- Ith plugin: fixed some issues with the helpdata
- Browse plugin: fixed missing matchsettings options
- Browse plugin: added filetype values (see file alt-text)
- Browse plugin: fixed saving of matchsettings
- Browse plugin: added autoreload of filelist at saving a new matchsettings file
- ServerSettings plugin: fixed multiline problem with servercomment-textarea
- ServerSettings plugin: removed ForceShowAllOpponents
- GameSettings plugin: added ForceShowAllOpponents
- GameSettings plugin: fixed some settings (Laps mode not working)
- Challenge plugin: fixed destroyed sharemania stats
Live:
- new plugin: Music (not working in this release)
- TMX plugin: fixed issue with unclosed socket connections
- Core plugin: fixed issue with onPlayerConnect at onLive, now the system calls all plugins with onPlayerConnect callbacks
New in Version 4.0.1.2
Core:
- new .htaccess file, deny access to the live.php and all .xml, .sh, .bat files
- fixed utf-8 issue in all xml-files
Live:
- new plugin: Idle (idlekick player, idlekick spectator)
New in Version 4.0.1.1
Core:
- Added AddChatCommand function
- changed php comment style and general documentation in all files
- changed pngstat.php, reading data now after the cache check
- changed pngstat.php, string output
- added simple errorhandling to pngstat.php
- added global debug mode, removed all debug mode settings from plugins
- changed some javascript stuff
Plugins:
- Browse plugin: fixed bug with wrong preselected directory
- Browse plugin: fixed missing file sorting options at first browse-tab load
- Browse plugin: added autoreload files after upload
- Database plugin: fixed edit or delete of challenges, players and records
Live:
- Plugins plugin: added pagination
- Help plugin: added pagination
- Help plugin: added details view
- Help plugin: added "example" to every help
- TMX plugin: fixed problem if tmx is not available
- Core plugin: added new chatcommand handling
- Core plugin: removed some unused methods
- Payment plugin: fixed lotterylist mysql query
- Payment plugin: fixed pagination lotterylist
- Payment plugin: fixed pagination donationlist
New in Version 4.0.1.0
Core:
- fixed bug in class.mania.php that don't allowed multible windows on screen at the same time
- added default close behavior to class.mania.php windows (default is close at action)
- removed default bgcolor from every quad and added
tag to all windows - changed server-call method from single to multicall, should be faster
- fixed memory hole in flushCB method
- [live] added global chattime (GetChatTime method)
- pngstat.php: removed "Running - " from server status
Plugins:
- Browse plugin: fixed raw2n function for ftp mode, thx by =3oP=Blackice
- Browse plugin: added chkstream method for better error output
- Browse plugin: to remove issues with invalid filenames, the browser allows only filenames with A-Z + 0-9 and change the filenames at upload
- Chat plugin: chat updates it's size now after refreshing data and adds a scrollbar if it is too big
- ServerSettings: added SetForceShowAllOppenents
- Website plugin: removed cdata from all fields in xml output
Live:
- all plugins: added support for multi-word input for chatcommands
- Core plugin: removed bug that called onPeriodicalUpdate twice at challenge change
- Core plugin: fixed reading of the full challengelist, supporting now more then 50 challenges
- Core plugin: fixed reading of the full playerlist, supporting now more then 50 players
- TMX plugin: added fallback to tmnforever.tm-exchange if no record found on united.tm-exchange
- TMX plugin: improved /tmxget command, now youre able to define where to search (/tmxget tmn or /tmxget tmu; tmu is also default if not specified)
- TMX plugin: now showing a tm-exchange link to the current map at the end of each round (if available on tmx)
- Records plugin: record list shows now all records
New in Version 4.0.0 Beta 9:
Core:
- fixed system.mania.php, bug with invalid attribute values for manialink tags
- remove all linebreaks from manialink xmlcode
- fixed bug with systemmessage window
- Manialink: removed the hardcoded url to the header/footer images
- Changed uptime check and removed global vars for it, it's now just a logfile-info
- added new value to servers.xml,
defines the path to this servers files
Plugins:
- GameSettings Plugin: fixed invalid float values for all time based values
- [Live] TALimiter Plugin: fixed invalid decimal values for TimeLimit
- Browse Plugin: fixed bug that don't changed the folder fontstyle to bold text if selected
- Browse Plugin: fixed bug with wrong save path for matchsettings, now selectable like upload
- Browse Plugin: added optional filepath, this will fix a server on its on path
- Browse Plugin: removed root tracks path from selection, autoselect of first read path as default path
New in Version 4.0.0 Beta 8:
Core:
- removed all game checks since the forever dedicated server wont need this
- added tmtp:// support for join command (servername in navbar)
- changed getGame function @ plugin system, supporting tmu/tmn forever only!
- Added new admin.xml value: "nocode" (will remove all TMCode from Player oder Challenge Names)
Live:
- support of all forever callbacks
CSS/Images/Javascript:
- changed the whole javascript framework
- updated style
- Added some images for remoteCP-live
Plugins:
- all Plugins: heavy html code changes
- all Plugins: converted input fields for millisecond to seconds
- new Plugin: Player, shows player details
- Browse Plugin: fixed bug with spaces in pathnames (ftp mode)
- Challenges Plugin: added author field
- Chat plugin: removed advanced chat (tmu supports up to 40 chatlines)
- Chat plugin: removed the remoteCP 3.3.3 reversed chatline order
- GameSettings Plugin: added support for all new Forever options
- ServerSettings Plugin: added support for all new Forever options
- Ith plugin: changed display of all help content
- Maintenance plugin: added packmask settings, only available if server is stopped
- Maintenance Plugin: added option for new TMCode option
- Player Plugin: fixed bug with multible specatator display
- Player Plugin: moved forescores from overview
- Players plugin: added forcespectator camera-target
- Settings Plugin: added option for new TMCode option