prevnext   » MKW-ANA: Wiimms MKWii Network Analyzer » mkw-ana: Wiimms MKWii Network Analyzer » mkw-ana backend

mkw-ana backend

The frontend works like an interactive backend connection. Closing the interactive frontend is like pressing CTRl-C.

Contents

1.   Syntax

mkw-ana BACKEND [source]...

2.   Options

Options
Option Param Description
--height height Define the terminal height (number of rows) and disable the automatic detection.
--adjust time Adjust time stamps of the network dump by adding 'time' seconds. This may help to synchronize different dumps. The argument is scanned for SI factors, time units, plus and minus terms.
--skip time Skip first 'time' seconds of each read network dump. The argument is scanned for SI factors, time units, plus and minus terms. Negative values are relative to the end (or ignored for pipes).
--term time Terminate each dump at 'time' seconds. The argument is scanned for SI factors, time units, plus and minus terms. Negative values are relative to the end (or ignored for pipes).
--combine Logical combine network dumps to one single dump before executing options --skip and --term.
--checksum Normally, UDP packets with wrong checksums are dropped. If --checksum is set, the checksums are calculated, but no packet is dropped. Some dumps will print a status info. If set twice, checksums are never calculated and assumed to be correct. --csum is a short cut.
-f --follow Don't close the last input dump on reaching end of file. Instead wait for appended data. This works like the unix tool 'tail -f'.
--ip addr[:port] Define an address (IP or DNS name) and optional a port for filtering. Only packets from or to this host are accepted, all others are ignored.
--home addr Define an address (IP or DNS name) as home client.

Without this options, the tool tries to determine the home client by analysing sender and receiver of the first non filtered packet. A local network (10/8, 172.16/12, 192.168/16, 169.254/16) has priority over a non local network. If sender and receiver have the same priority, the IP of the sender is used.

--wii addr[:port] Define an address (IP or DNS name) and optional a port as home client and for filtering. This options is a shortcut for »--home addr --ip addr:port«.
--real-time-factor factor If set (>0.0), the time differences of the packet time is compared with the real time difference. If a packet will be served to early, the tool sleeps a while.

Value 1.0 forces a real time dump. Values >1.0 force a time-laps effect and values <1.0 a slow-motion effect. --rtf is a short cut.

The intention of this option is to simulate a regular input stream on already dumped and stored data in real time. Use this option never for live incoming data, because packets may be lost.

--real-time-wait seconds If set (>0.0) and the real time option --real-time-factor is enabled, it defines the maximum real time between 2 packets. The default is 3 seconds. --rtw is a short cut.
--write file Write filtered network packets as PCAP v2.4 to 'file' with local endian and microseconds format.
--wflush Flush the output after each packet written by --write.
--sleep duration Sleep 'float' seconds after each table output. This option slows down a simulation run. Values between 0.01 and 0.1 seconds are good choices.
--log file Log into the file using the same output as command LOG. If first character of 'file' is a '+', append data to an already existent file. If the filename is only '-', then log to stdout.
--log-mode list Define, which elements are included into the log output (see --log). --lmd is a short cut. A comma separated list of keywords is expected: STATUS, STAGE, SELECT, STARTER, FINISH, GRANDPRIX, GTOTAL, TOTAL, LTOTAL, USLOT, RSLOT, GLITCHES, TRIGGER CHEATS, SLOTS, RTYPES, HOST, TEAM, TRACK, USER, TABLES, DISCONNECT, QUERY, REGION, MKWFUN, JOBS, GWIIMMFI, IDSELECT, LECODE, R-MASTER, R-NATNEG, R-STATUS, RECORD=R-*, TCP=QUERY+REGION, DEFAULT, NONE and ALL. VERBOSE is a flag to increase the output level. If the very first character is either '+' or '-', then the current settings are modified and not reset.
--log-pos file Create a special log file and write racing records with timer, position, speed and direction of all player for further analysis.
-l --long This option is relevant for single line dumps. Usually the time format is printed as 'MM:SS.s' to keep the lines small. If set once, 'HH:MM:SS.s' is used. If set twice, 'HH:MM:SS.sss' is used. All previous --brief are canceled.
-w --wide [=width] Usually hexdumps covers 16 bytes per line. If --wide is set, 32 bytes per line are covered. Optional it is possible to enter a value. This option is ignored if using --one-line or --sep-lines.
--drift Print drift statistics during logging.
--glitch ban[,info] Define 2 levels, the first for automatic bans because of glitching and the optional second to print log infos about glitching (--logmode GLITCH must be set). Bans are always logged. This option has priority over configuration file settings.

This option has priority over option --auto-ban. The backend command GLITCHES list all supported glitches and their levels and allows modify the values. Only Wiimmfi moderators are able to ban!

--item-cheat level Define a level for automatic bans because of using item cheats. If mkw-ana detects more than LEVEL item cheats in 1 race, then an automatic ban is done.

--icheat is a short cut. This option has priority over option --auto-ban. The value can be changed at the backend. Only Wiimmfi moderators are able to ban!

--time-cheat time Define a time in seconds (float), SI units possible. If a time cheat is deteced that gives the user a bonus of at least TIME seconds, then an automatic ban is done.

--tcheat is a short cut. This option has priority over option --auto-ban. The value can be changed at the backend. Only Wiimmfi moderators are able to ban!

--auto-ban list This is another interface to enable automativ bans. A comma separated list of keyowrds is expected. Keywords GLITCH, EMOVE=EARLYMOVE, EITEM=EARLYITEM, ICHEAT=ITEMCHEAT and TCHEAT=TIMECHEAT enable 5 kinds of autobans with default values, vut only if the related option is not used. Keyword ALL is a short cut for all of above.

Additonally you can add one of the fo9llowing keyword: DISABLE disables sending the ban messages to Wiimmfi. TEST sends the ban messages to Wiimmfi in a test mode without impact. KICK converts all bans to simple kicks. BAN (default) enables the auto-ban system.

Only Wiimmfi moderators are able to ban!

--min-race num This is a statistic option: If a Grand Prix (single or team) is aborted, the results of the Grand Prix are only used in the statistics, if NUM races has been completed. The default is 2 and possible values are 0..4.
--md file Create a MakeDoc script with results after each race.
--mdx file Create a MakeDoc script with results after each race. Same as --md, but replace %E, %R, %N and %T in the filename by 'event id', 'race id', 'total race' and 'event type' to create different files.
--php file Create a php script with results after each race.
--phpx file Create a php script with results after each race. Same as --php, but replace %E, %R, %N and %T in the filename by 'event id', 'race id', 'total race' and 'event type' to create different files.
--refresh duration Defines the table refresh time (SI units allowed; default is second) for command RACE (default 0.5s).
-P --print list Define the columns for table RACE. A comma separated list of keywords is expected: SLOT, RANK, XTIME=TIME+DELAY+LAST, POS=XPOS+YPOS+ZPOS, DIR, SPEED=3SPEED+HSPEED, STATUS, DRIFT=DCOUNT+DCHEAT, XDRIFT=DRIFT+DMINTIME, ITEM=ICHEAT+ICOUNT+ISUMMARY, CHEAT=DCHEAT+ICHEAT DRIVER, VEHICLE, COMBI, TEAM, PID, FC, WHO=MINIFC+NAME. Also available: NONE, MIN, DEFAULT, MAX, ALL. If the very first character is either '+' or '-', then the current settings are modified and not reset.

The new option --table overrides this option, but allows to integrate the columns defined by --print.

--tables name=list [;name=list]... If printing table NAME, then print only the specified columns in the entered order. The table name is one of RACE, TEAM, BALLOON, COIN, STARTER, FINISH, GRANDPRIX or TOTALS. Also the tables 0 to 9 are availabe for temporary purposes (kind of macros). If table RACE is set, then option --print is ignored (but see below). If TEAM, BALLOON or COIN is not set, then the definition of the successor is used.

For the column definition a comma or blank separated list of keywords is expected. Type 'mkw-ana tables list' for a list of all columns and all multi column aliases. If a table doesn't support a column, it is simply ignored.

Each keyword can be prefixed by '-' to remove this column, or by '+' to add the column only, if not already included, or by '=' to remove this column and then add it again. To replace an element use %SEARCH=REPLACE. The comma before plus, minus, equal or percent can be omitted.

Instead of a column name, a point followed by a table name can be used ('.race' for example). Then all colums of the table are inserted or removed. The name .PRINT inserts or removes the columns defined by option --print and the name .DEFAULT the default settings for the table. The name .ALL inserts all possible columns. Self referencing and hence definitions in steps are possible.

Option »--table} can be used multiple times. Theimpact is the same as separting the parameters by a semicolon. Command {TABLES --brief« helps to develop good lists and the special column name DEBUG prints a column list after the table assignment.

--tfile file Read the arguments for option --table from a file: The hash sign ('#') starts a comment until end of line. Empty lines are ignored. A table definition can be spread over multiple lines and ends always with a semicolon or end of file. The output of command TABLES is compatible with this option.