Marauroa 3.9
跳转到导航
跳转到搜索
There are a number of small new features in Marauroa 3.9 that will be explained on this page.
Please note, the term "Marauroa users" refers to developers using Marauroa in their own software. It does not refer to the end user of the programs developed using Marauroa.
Version compatibility[编辑]
Marauroa 3.9 introduces protocol version 34, but is fully compatible to older protocol versions back to 31 on both the server and the client side. A server can handle clients of different versions (both older and newer than the server) at the same time and will use the appropriate feature set for each of them,
Content Transfer includes hash[编辑]
- Summary
- Content transfer includes a md5 hash of the content, if both server and client are using Marauroa 3.9 or higher
- Reason for change
- It was difficult for applications to keep track of the modifications of content. Some application used the timestamp field for a CRC-checksum. CRC, however, is a error detection algorithm, it is not sufficient to keep track of large scale changes in content.
- Impact on Marauroa users
- The hash is a new attribute in the TransferContent object that may be read by the client.
Extended the size of the ban message[编辑]
- Summary
- Ban messages may be longer than 256 characters, if both server and client use Marauroa 3.9 or higher
- Reason for change
- It is desirable to include more details and contact information in the ban message.
- Impact on Marauroa users
- A longer ban message is possible
Logging of failed login with distinct status[编辑]
- Summary
- Failed logins are now logged with distinct status values
- Reason for change
- Making it easier for support to assist players on login issues
- Impact on Marauroa users
- none, unless the loginEvent table is read or written by other applications bypassing Marauroa
- Details
- The value in the result columns of the loginEvent table means: 0 failed password, 1 successful login, 2 banned, 3 inactive, 4 blocked, 5 merged
Client support for skipable empty perceptions[编辑]
- Summary
- The Marauroa 3.9 client supports the omission of empty perceptions
- Reason for change
- This change reduces the amount of network traffic; especially for very short turn times (e. g. Marboard uses 10ms in order to be very responsive)
- Impact on Marauroa users
- None, yet. Starting with the future Marauroa 4.0 empty perceptions will actually be omitted. There might be an impact, if a client assumes that it receives a perception per turn time interval.
- Details
- The client was counting the perceptions in order to determine when to send the "keep alive" message. Starting with 3.9, the client will send the "keep alive" message based on actual passed time. Note: The server will not yet omit empty perceptions in version 3.9, but will start to do that in version 4.0 for 3.9 and above clients. The reason for this approach is that the server side changes are a lot simpler in the refactored code.
RPClass support for RPAction[编辑]
- Summary
- RPClass are now supported for RPActions sent from the client to the server.
- Reason for change
- Reduction of network traffic and type checks on the client side before a message is sent
- Impact on Marauroa users
- Support for RPClass on RPActions on the server side exists since Marauroa 2.0, this change enables the client side to specify the RPClass.
- Details
- It is an optional feature. It requires the RPClass-entries for the actions to be defined on the server side. And the client may then use those RPClasses when instantiating RPActions on the client side.
Smaller features[编辑]
- MySQL 5.5 and newer are now supported
- New server.ini variable server_abuseContact to add a sentence with contact information to the ban dialog.
- RPRuleProcessorImpl provides a default implementation for IRPRuleProcessor
- Automatically try to use a configured SOCKS-proxy. If it cannot be used, Marauroa will fall back to direct connections
{{#breadcrumbs: Marauroa | Overview | Marauroa 3.9 }}