Wiimm's Custom Archive

From Custom Mario Kart
Revision as of 07:49, 17 September 2019 by Leseratte (talk | contribs)
Jump to navigation Jump to search

Wiimm's Custom Archive is a service (website https://ct.wiimm.de/) by Wiimm. It allows an easy access to his custom track and arena archive including a search engine and permanent links for external websites like this Wiiki.


Introduction

Wiimm released his first MKW-Fun in February 2010. Since this year he collected all tracks in his private archive. In April 2013 he published his track archive as simple list. In October 2017 Wiimm setup the website https://ct.wiimm.de/ and imported 3110 of his old archive.

The main goal for the website is to have a search engine and stable download links of custom stuff. At the moment custom tracks, custom arenas and custom distributions are supported. Some tracks are marked as private. They exist, but can't be accessed by the public.

Families and Clans

Families is a concept to group different versions of the same track. The ID of each family is always the lowest track ID of all members.

Another concept are clans. Here, families are grouped together, that either share the same name or derived from each other. The ID of the clan is always the lowest track ID of all members.

Searching

When searching a track, you can select the class (tracks, arenas or Custom Track Distributions at the moment) and to enter a list of 1 or more space separated keywords.

You can search for:

  • console
  • name or words of the name
  • version number
  • authors
  • attributes
  • classification
  • sha1 of decompressed SZS/WBZ
  • date of format %yyyy or %yyyy-mm
  • other keywords

First, the keyword list is normalized: All characters except letters, digits, point and minus signs are removed. Letters are converted to lowercase. The same was done for all track names. And now the list of keywords is compared to all track names. At the moment only complete words are compared.

If at least one match is found, at most 50 tracks are listed using a special pager. For each track a hit rate is calculated and the list is usually ordered by this rate, but can be reordery by other features.

Special keywords

@recent
Ignore all other keywords and list the 500 most recent uploads. Tracks and arenas are listed together. (Example)
@updates
Ignore all other keywords and list the 500 most recent updates of the database. Updates are changes of track name or status. Tracks and arenas are listed together. (Example)
@all
List only a track, if all entered keywords match.
@NUMBER
Select a track by its numeric and unique track id. (Example)

Unambiguous abbreviations are allowed too. See »Keyword statistics« for more details about keywords.

Activities

The column »Jobs« contains direct links to other pages and also a checkbox for summaries:

Ct-wiimm-follow.png Search
Enter a new search based on the track name and the main authors.
Ct-wiimm-family.png Family
Show the complete family (all versions) of the track. You can click the family column too.
Ct-wiimm-clan.png Clan
Show the complete clan (all families) of the track. Click it to get a family overview. You can click the clan column too.
Ct-wiimm-info.png Info
Show details of the track. The details are also shown as tool tip, if you place your mouse pointer over the track name.
Ct-wiimm-ctwiki.png Link
Link to the track page of this wiki. For unknown pages, an invisible placeholder is inserted. If you click this placeholder, a string like »|wbz-id=1234« is copied to the clipboard. This helps to add more wbz-id entries here. The links are updated twice a day.
Ct-wiimm-download.png Download
Download the tracks as WBZ. Nintendo tracks can't be downloaded.
Check box
You can also select up to 10 tracks by the check boxes. If at least 1 track is selected, some buttons appear below the table.

File names

A filename is displayed as:

PREFIX NAME {VARIANT} VERSION (AUTHORS) [ATTRIBUTES,COMMENTS]
PREFIX
An optional prefix (console or game abbreviation) like »SNES« or »MP9«. See »Console or game prefix« for a complete list of prefixes.
NAME
The official track name.
{VARIANT}
An optional variant like »{day}« or »{night}«.
VERSION
An optional version number like »Alpha«, »RC2« or »v1.2.pre«.
(AUTHORS)
A list of authors. If a comma is available, the authors before the comma are the main authors of the track and the authors behind did important modifications to the track. Multiple authors of the same group are separated by plus signs.
[ATTRIBUTES,COMMENTS]
An optional comma separated list of attributes and comments. Comments are free text like publisher or variant. For special attributes see below.

Example: [1]

Attributes

There are some special comments with acts like attributes of the track:

norm
This track is an automatically fixed and normalized version of another track version. Normalized means: Invalidate SZS fixed if possible, no lap modifier >3, no speed modifier, no AIParam. This kind of tracks is needed for easier comparison of tracks.
minimap
Minimap fixed.
kcl
KCL fixed (e.g. face down roads or invalid faces removed).
<INDEX>
The track has to run at slot INDEX. Examples: »31+71« or »61«.
r<INDEX>
INDEX is the recommended slot for racing tracks. Examples: »r31« or »r42«.
a<INDEX>
INDEX is the recommended slot for battle arenas. Example: »a13«.
m<INDEX>
Recommendation of an alternative music slot. The track index is translated into the real music index. »m11« is special, it recommends the alternative music for Luigi Circuit (music index 0x75). Examples: »m12« or »m72«.
ma<INDEX>
Recommendation of an alternative music slot. The arena index is translated into the real music index. Examples: »ma12« or »ma25«.
<N>laps
The number of laps (default 3) is changed to another value. The number is calculated automatically. Examples: »1lap« or »5laps«.
+<N>laps
Manual definition of the laps to override the automatic calculated value. It is needed for tracks with special check point layout.
x<FLOAT>
Speed factor, if not 1.00. See KMP:STGI for details.
objflow, geohit, lex, cannon, ...
Keywords for special features. Most of these features have only impact with special cheat codes or if using LE-CODE. See »Special feature« for a complete list of keywords.
M
A model hack of original or custom track.
T
A texture hack of original or custom track.


The following attributes can be used for distributions. They are scanned by ct.wiimmi.de and shown as status:

new
A new track. Use this attribute to mark tracks, that are used the first time in the distribution.
again
A track, that were used in an old version of the distribution, but not in the last one.
update
An updated track.
upd
Short form of update.
boost
This track is a boost version.

Classification of tracks

From the beginning in year 2010, Wiimm classified the tracks. This classification is displayed as column »class« in the track listings. It is very subjective and the valuation changed in the years.

invalid
The original SZS file of the track is technically invalid and forces usually a freeze of the Wii.
freeze
The track will freeze the Wii nearly every time either at track loading time (black screen) or while playing.
fail
The track will run, but has major bugs or freezes occasionally. This kind of tracks is unusable for a distribution.
bad
The track will run, but has major bugs. This kind of tracks is usable, but hard to play.
stock
The default class of a track.
select
At least one version of a track family is recommended by Wiimm, if using the track in a distribution. For some tracks this is very subjective.
boost
Boost tracks are modified tracks, where roads are large boost pads.
nintendo
It's an original track of Nintendo. Nintendo tracks can't be downloaded.
private
A private track (not published). Such tracks are only visible for owners and in track selections by the owner.
income
A new track, that isn't evaluated by Wiimm yet.

Normalization

New tracks are normalized. The idea is, that minimal modifications like lap counters or speed factors don't prevent the identification of a track as duplicate. Normalization is done in 2 steps using tool wszst.

First a normalized track is created by the following rules:

  • Option --norm normalizes the subfile structure: Files are reordered and packed and directory ./ is used as top level directory.
  • Option --rm-aiparam is used to remove AIParam.
  • Option --kmp=3laps,max-laps is optionally used to limit the number of laps to 3. The decision about the usage is made by Wiimm track by track.
  • Option --speed-mod=0.0 is optionally used to remove any speed mod. The decision about the usage is made by Wiimm track by track.

Then a second normalized track is created. Here options --kmp=3laps,max-laps --speed-mod=0.0 are always used. If the second normalized track differs from the first one, it is marked with the attribute norm and inserted into the archive too.

At 2017-11-04, a normalized version (step 2) of all tracks was created and inserted into the archive. 137 tracks have been added to the archive.

Template Misc-Info

The template Misc-Info of this Wiiki supports the parameter »wbz-id=ID«. Once set, a link to the family of the track is printed. You can use the identifier of any track of the family, the result remains the same. So the parameter must only defined once, even if new versions becomes available.

Usage example:

{{Misc-Info
....
|wbz-id=1234
....
}}

Additional direct download links to the WBZ archive are possible.

Helper for page edits

The wbz-id is also used to create links from ct.wiimm.de to this wiki. So it is bidirectional. At least twice per day, a bot is running and send all page-to-wbzid relations to ct.wiimm.de.

If you want to help, that each track page have a wbz-id, the go to this page: https://ct.wiimm.de/nowiki This page lists racks without wiki connections and makes adding the wbz-id much easier.

Distribution support

A support for Custom Track Distributions is implemented too. As of v1.55a of Wiimms SZS Tools, the new command DISTRIBUTION is available. It scans all tracks of one ore more directories and creates (or edits) a configuration file. The user has to edit the file to complete the information fields. The he can upload it to ct.wiimm.de.

At the moment, the uploads are only collected and Wiimm have to verify each configuration file.

All available distributions are listed here. The search page supports distributions too. Read article »Wiimm's Custom Archive/Distribution« for more details.

Custom track selections and test distributions

The website supports the management of custom track selections and test distributions. Distributions use selections as basis. The main idea is, to give all track creators and testers a chance to test tracks online with enabled item cheats. Item cheats are very important to simulate situations. The best test for item routes are red shells and Bullet Bill.

Don't be confused about test distributions created by the website and official custom track distributions from external resources. At this section we talk about the first kind, the test distributions.

Read article »Track Selections and Test Distributions« for more details.

Register to ct.wiimm.de

ct.wiimm.de has no public way to register users. You have to ask Wiimm.

Details

Development

Pagers and layout generator

Do you have noticed the pagers scatters around the page? This is a larger PHP class by Wiimm, that supports all of the features. To manage the different layouts, a layout generator was developed. It takes a list of names separated by commas, slashes and parenthesis and creates the layout.

History

2017-10-20
  • Start of development.
  • Scan all SZS files and store information into a database. Each file gets an unique identifier that will never change, even if the filename will changes.
  • Convert all files to WBZ and use the unique identifier as filename.
  • Upload 3110 WBZ files (4.6GB)
  • Create a new website: https://ct.wiimm.de/
  • Create a PHP script to access the WBZ files.
2017-10-21
  • Create and test an Search Interface. The created links are permanent and can be used in this wiki.
2017-11-02
  • The public part of the website is implemented now. This includes info pages, families, redirector and download manager.
  • 3233 tracks uploaded.
2017-11-03
2017-11-04
  • From now on, each track is normalized in 2 ways. This makes comparison of tracks much easier.
  • 3408 tracks uploaded.
2017-11-12
2017-11-26
  • Search for custom track distributions
2017-12-02
  • New column: Status.
  • 3742 tracks, 42 arenas and 32 distributions online.
2018-02-12
  • 4000 tracks total (3958 racing tracks + 42 arenas).
  • 34 distributions.
2018-03-29
  • Started to expand the portal.
    • Login support. No public login yet.
2018-04-21
  • Logins possible. A public registration is not implemented or planned.
  • There are a >200 private tracks in the archive. Users can become owner of a private tracks to have full access to it.
2018-05-07
  • Users can manage custom tracks selections. This is a set of tracks, that can be shown to others. They are also basis for future test distributions created at thew web front end.
2018-05-31
2018-06-20
2018-10-06
  • 4868 racing tracks uploaded.
  • 101 battle arenas uploaded.
  • Information about 38 custom track distributions available.
2019-01-01
  • 5169 racing tracks uploaded.
  • 119 battle arenas uploaded.
  • Information about 39 custom track distributions available.
2019-05-26
  • 5558 racing tracks uploaded.
  • 143 battle arenas uploaded.
  • Information about 41 custom track distributions available.
  • Total size of 5701 files: SZS = 11 GB, WBZ = 8.5 GB
2019-06-15
2019-08-06
  • Command wszst analyze [3] used to update the main attributes (mandatory slot, number of laps, speed factor, special objects and files and more) of all tracks.
  • Speed factors moved from main name to attributes.
  • Attributes sorted by some rules for an uniform look.
2019-08-10
  • Some technical keywords renamed to make them unique. See »Keyword statistics« for details about technical keywords.
  • General pager limit increased from 1000 to 2000 hits.
2019-08-14
  • 5828 racing tracks uploaded.
  • 172 battle arenas uploaded.
  • Total size of 6000 files (racing tracks and battle arenas): SZS: 11.6 GB, WBZ: 9 GB
  • Information about 62 custom track distributions with 8539 track releations available.
2019-09-16
  • CT track names and SHA1 checksums are synchronized with Wiimmfi to display track names on https://wiimmfi.de/mkw

Ideas for the portal

  • Comment function for tracks to tell about bugs and more.
  • Categories for tracks like Winter, Cannon, Rain, Rainbow, Christmas, Test, Aprils fool, ....