Wiimm's Custom Archive

From Custom Mario Kart
Jump to: navigation, 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

All tracks of Wiimm's private track archive were uploaded to the new website https://ct.wiimm.de/. The main goal for the website is to have a search engine and stable download links of custom stuff. At the moment custom tracks and custom arenas are supported.

Some tracks are marked as private. They exist, but can't be accessed by the public.

The interface allows searching for tracks or arenas by a list of keywords. Consoles, names, part of names, version numbers, authors and additional attributes can be used as keywords.

Links to the old track archive are redirected to this new archive.

Searching

When searching a track, you have to 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

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 100 tracks are listed. The limit can be changed with the special keyword @limit (see below). For each track a hit rate is calculated and the list is ordered by this rate.

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.

Columns

The output tables consists of the following columns:

Rate
The search rating of the track. It is calculated by the number of matching words and by the length of the matching words. The column is only visible if a rating exists.
Id
Unique and permanent identifier of the track.
Family
The assigned family. The family identifier is the minimal track identifier of all family members. The tooltip will expose the total number of tracks in the family. If the number is ≥2, then a unique color is used for all members of the same family.
Type
The type of the track (»arena« or »track«). This column is only visible, if arenas and tracks are listed together (modes @recent and @updates).
Class
The classification of the track. See below for details.
Date
The date of the SZS file.
Updates
The date of the last record update. It is only displayed for mode @updates.
Name
The filename of the track. See below for details.
Status
This column is only available for Custom Track Distributions and only if the maintainer enabled it. It shows the track status (new, again or update). This column can also used to select a filtered output.
Jobs
Different activities. See below for details.

Jobs

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.
Ct-wiimm-info.png Info
Show details of the track.
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.

Permanent Links

Each track will get an unique and permanent track identifier (id). It is displayed as column »id«. This identifier is independent of the track name and status and will never change.

The links are:

 https://ct.wiimm.de/i/IDLIST
 https://ct.wiimm.de/i/SHA1

 https://ct.wiimm.de/f/IDLIST

 https://ct.wiimm.de/r/ID
 https://ct.wiimm.de/r/SHA1
 https://ct.wiimm.de/r/NAME

Infos

Syntax of a Link:

  • https://ct.wiimm.de/i/ID
  • https://ct.wiimm.de/i/SHA1

IDLIST is a comma separated list of track identifiers or SHA1 checksums. For each found track, a info table is printed. Instead a id, the SHA1 checksum of the decompressed track can be used. At the bottom you find a table with a family overview.

Families

Syntax of a Link: https://ct.wiimm.de/f/IDLIST

Families is a concept to group different versions of the same track. IDLIST is a comma separated list of track identifiers or SHA1 checksums. The families of all tracks are printed in order by ordered by family index.

Redirects

Syntax of a Link:

  • https://ct.wiimm.de/r/ID
  • https://ct.wiimm.de/r/SHA1
  • https://ct.wiimm.de/r/NAME

The redirect part was implemented to support redirect of the old track archive. Therefor NAME is the complete track name used by the old archive. ».szs« and ».wbz« suffixes are removed before analysis. If a track is renamed, the previous names are still available for the redirector. Instead a name, the SHA1 checksum of the decompressed track or the unique id can be used.

If the track is found, the user is redirected to an info page of the track. Otherwise the search engine called with all parts of the NAME.

File names

A filename is displayed as:

CONSOLE NAME {VARIANT} SPEED VERSION (AUTHORS) [COMMENTS]
CONSOLE
An optional console prefix like »SNES« or »GBA«.
NAME
The official track name.
{VARIANT}
An optional variant like »{day}« or »{night}«.
SPEED
An optional speed factor like »x2« or »x1.25«.
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.
[COMMENTS]
An optional comma separated list of comments. Comments are either free text like publisher or variant, or 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).
r<INDEX>
It is recommended, that the track runs at slot INDEX. Examples: »r31« or »r42«.
<INDEX>
The track has to run at slot INDEX. Examples: »31+71« or »61«.
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. Examples: »1lap« or »5laps«.
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 invalid and forces 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.
Ideas for the portal
  • Comment function for tracks to tell about bugs.