Difference between revisions of "LE-CODE"

From Custom Mario Kart
Jump to navigation Jump to search
(Cleanup)
 
(18 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
{{LE-CODE Content}}
 
{{LE-CODE Content}}
[[File:LE-CODE Logo (Circle).png|right|thumb|LE-CODE logo, circle]]
 
[[File:LE-CODE Logo (Horizontal).png|right|thumb|LE-CODE logo, horizontal]]
 
[[File:LE-CODE Logo (Vertical).png|right|thumb|LE-CODE logo, vertical]]
 
  
== What is the LE-CODE? ==
+
== Overview ==
 +
'''LE-CODE''' (short for '''Leseratte-Code''') is a code extension of [[Mario Kart Wii]] initially written by [[Leseratte]]. After the initial phase, the code was jointly developed by [[Leseratte]] and [[Wiimm]]. It has been named after [[CT-CODE]], the name of the old code extension by [[MrBean35000vr]] and [[Chadderz]].
  
The LE-CODE (short for Leseratte-Code) is a code extension for Mario Kart Wii that was initially written by [[Leseratte]]. After the initial phase, the code was jointly developed by Leseratte and [[Wiimm]]. The name has been chosen by Wiimm in the style of the [[CT-CODE]], the name of the old Mario Kart Wii code extension by [[MrBean35000vr]] and [[Chadderz]].  
+
Development started in January 2019, using the build system taken from the [[Wiimmfi/Update|Wiimmfi updater]]. This means that it supports writing C source code instead of Assembly code for its modifications, and is designed to be loaded into the [[StaticR.rel]] relocation buffer as soon as it has been loaded and linked into memory, which has about 900 KB of usable space for modifications.
  
Leseratte has started the development of the LE-CODE in January 2019. The build system is taken from the [[Wiimmfi/Update|Wiimmfi updater]], which means, it supports writing C source code instead of Assembly code for the game code modifications, and is designed to be loaded into the [[Filesystem/rel/StaticR.rel|StaticR.rel]] relocation buffer as soon as the StaticR.rel has been loaded and linked into memory, which has about 900 KB of usable space for mods.
+
To use this code extension in other mods, [[Wiimm]] added support for management of LE-CODE and its additional features to [[Wiimms SZS Tools]], called Wiimms LE-CODE Tool. Additional documentation can be found [https://szs.wiimm.de/wlect here].
  
Wiimm has adapted his [[Wiimms SZS Tools|SZS tools]] and wrote a new tool called »wlect« ([https://szs.wiimm.de/wlect/ Wiimms LE-CODE tool]).  
+
The first few test versions were tested by [[Wiimm]] and [[Leseratte]] in February 2019, with the first version for a few more private testers being released on February 20th. LE-CODE could be used by the public after the release of [[Wiimms Mario Kart Fun 2019-06]], which happened in June 2019.
  
First test versions of the LE-CODE have been tested by Wiimm and Leseratte in February 2019, with the first version for a few more private testers being released on February 20th. The public can use the LE-CODE in [[Wiimms Mario Kart Fun 2019-06]] which has been released in June 2019. A source code release currently isn't planned.
+
== Media ==
 +
<gallery>
 +
LE-CODE Logo (Circle).png|none|thumb|Circular logo
 +
LE-CODE Logo (Horizontal).png|none|thumb|Horizontal logo
 +
LE-CODE Logo (Vertical).png|none|thumb|Vertical logo
 +
</gallery>
  
The LE-CODE can either be discussed on the talk page, or in this forum thread: [https://forum.wii-homebrew.com/index.php/Thread/59107-Mario-Kart-Wii-Mod-LE-CODE-by-Leseratte/ click]
+
== Features ==
 +
LE-CODE's features are based on a list of modifications that were included in the [[Wiimms Mario Kart Fun]] series. It includes nearly all features that [[CT-CODE]] has and all features of the former mentioned series.
  
== What does the LE-CODE contain? ==
+
=== Features from CT-CODE ===
  
Leseratte developed the LE-CODE as a complete build system for all modifications Wiimm and Leseratte are doing to [[Wiimms_Mario_Kart_Fun|Wiimms MKW-Fun distributions]]. It includes nearly all features of the old ct-code (even though all of them have either been rewritten (C or ASM) or heavily modified to fix quite a few bugs), and it includes all of the features in the MKW-Fun distributions.  
+
{| class="textbox grid sortable alt"
 +
|+ CT-CODE Features
 +
! Feature
 +
! Information
 +
|-
 +
| More Racing Tracks
 +
| Adds more slots to the game by editing the game's [[Slot Usage|slot usage]] to have more than 4000 tracks in a [[distribution]].
 +
|-
 +
| Custom Menu System
 +
| Adds more cups and two arrows to the track selection.
 +
|-
 +
| Wi-Fi Timer
 +
| Makes the timer display always when selecting a track online.
 +
|-
 +
| Random Track Fix
 +
| Fixes the random button from the track selection.
 +
|-
 +
| [[Lap & Speed Modifier]]
 +
| Adds support to have modifier lap and speed amounts.
 +
|-
 +
| Mushroom Only Bug Fix
 +
| Fixes {{obj-ref|0x65|item boxes}} only giving Mushrooms after the 18th item online.
 +
|-
 +
| [[LPAR#THCLOUD-TIME|Thunder Cloud Time Modifier]]
 +
| Allows the Thunder Cloud to strike earlier or later.
 +
|-
 +
| [[LE-CODE/Distribution Tutorial/LE-DEF#random|Random Track from Group]]
 +
| Adds random groups to the track selection, allowing to vote randomly in a set of tracks. (All tracks, Nintendo tracks, custom tracks, new tracks, texture hacks)
 +
|-
 +
| Track Variants
 +
| Allows tracks to function like [[Wii U Animal Crossing|Animal Crossing]] from [[Mario Kart 8]].
 +
|-
 +
| [[LPAR#STATICR-POINTS|Custom VS Point Scheme]]
 +
| Changes the amount of points a player gets when finishing a race.
 +
|-
 +
| No Lightning in Team Races
 +
| Disables the Lightning item in Team Races.
 +
|-
 +
| Engine Class Probability Modifier
 +
| Removes calculations based on VR and uses a fixed probability instead.
 +
|-
 +
| [[LPAR#DRAG-BLUE-SHELL|Draggable Blue Shells]]
 +
| Allows the Blue Shell to be dragged behind a player's vehicle, like Green and Red Shells.
 +
|}
  
=== List of features from the old ct-code and MKW-Fun, now included in LE-CODE ===
+
=== Bugfixes ===
 +
{| class="textbox grid sortable alt"
 +
|+ Bugfixes
 +
! Feature
 +
! Information
 +
|-
 +
| Icache Fix
 +
| Handles the icache properly, making the mod compatible with Dolphin 5.0-9000 and higher.
 +
|-
 +
| 4-Player Mii Crash
 +
| Fixes 4-player mode with [[mariowiki:Mii|Mii]]s.
 +
|-
 +
| Minimap Icon Size Fix
 +
| Fixes the size of the minimap's character icons when playing another game after Time Trials.
 +
|-
 +
| Battle Mode Name Tag Fix
 +
| Fixes the render distance of player's name tags when returning to VS races.
 +
|-
 +
| Grand Prix Savegame Fix
 +
| Fixes playing Grand Prix on custom cups from corrupting the savegame.
 +
|-
 +
| Trophy Fix
 +
| Fixes the game awarding the wrong trophy due to the additional cups.
 +
|}
  
* [[Slot_Usage|Extension to allow the game to load more than 32 race tracks]]
+
=== Main Features ===
* Custom menu system from the ct-code to add arrows to the track selection
+
{| class="textbox grid sortable alt"
* Online track selection time limit is displayed all the time
+
|+ Main Features
* Removed CTGP randomizer so picking "Random" actually votes "???"
+
! Feature
* [[Lap_%26_Speed_Modifier|Lap and speed modifier]]
+
! Information
* [[User:Leseratte#Fix_the_mushroom-only-bug_online|Mushroom bugfix]]
+
|-
* Cloud time modifier
+
| NTSC-K Support
* [[Translations/Random|New random variants]] (All tracks, Nintendo tracks, Custom tracks, new tracks)
+
| Adds support for the [[NTSC-K|Korean version]] of the game.
* Track variants (like Animal Crossing in Mario Kart 8)
+
|-
* [[Filesystem/rel/StaticR.rel#Change_the_points_a_player_gets_for_winning_a_race|VS point scheme changed]] (25 points instead of 15 points)
+
| More Than 256 Tracks
* Room settings (friend room host can set options like vehicle restrictions or number of races)
+
| Extends the track limit to 4,096 or 8,192.
* No Lightning in team races
+
|-
* Engine class probability modifier, engine class is no longer dependant on VR
+
| Crash Handler
* Room stability indicator
+
| Adds a proper crash handler to the game that displays data about the crash.
* Blue shell can be dragged behind a vehicle like other shells
+
|-
 +
| Multiplayer File Removal
 +
| Removes the need for Multiplayer files and picks the regular track if it is not present.
 +
|-
 +
| Track Directory
 +
| Adds a track directory to the game's filesystem.
 +
|-
 +
| Performance Monitor
 +
| Adds the option to display a performance monitor on screen.
 +
|-
 +
| Custom Speedometer
 +
| Adds a speedometer with some settings.
 +
|-
 +
| [[LPAR#debug|Debug Information]]
 +
| Adds the option to turn on various debug information.
 +
|-
 +
| [[LE-CODE/Item Cheat|Item Cheat]]
 +
| Adds an Item Cheat to the game.
 +
|-
 +
| [[LE-CODE/Distribution Tutorial/LE-DEF#texture-hacks|Random Texture Hacks]]
 +
| Adds support for organization of [[texture hack]]s.
 +
|-
 +
| [[LPAR#DEF-ONLINE-SEC|Custom Online Time Limit]]
 +
| Allows the online time limit to be customizable between 30 and 65535 seconds (18:12:15).
 +
|}
  
=== Changes / Bugfixes / New features with the LE-CODE ===
+
=== Track Features ===
 +
{| class="textbox grid sortable alt"
 +
|+ Track Features
 +
! Feature
 +
! Information
 +
|-
 +
| [[LE-CODE/Track FAQ#common|Course Dependent Files]]
 +
| Adds the option to read [[ObjFlow.bin]], [[GeoHitTableItem.bin]], [[GeoHitTableItemObj.bin]], [[GeoHitTableKart.bin]], [[GeoHitTableKartObj.bin]], and [[minigame.kmg]] from the track file itself.
 +
|-
 +
| [[LE-CODE/Track FAQ#woodbox|Woodbox Height Respawn Modifier]]
 +
| Modifies the height at which the {{obj-ref|0x70|woodbox}} object respawns.
 +
|-
 +
| [[LE-CODE/Track FAQ#cannon|Cannon Parameters]]
 +
| Adds the option to have custom cannon parameters through a [[LEX]] file.
 +
|-
 +
| [[LE-CODE/Track FAQ#mcar|Mushroom Car]]
 +
| Changes the {{obj-ref|0xd8|penguin_m}} object to function like a [[mariowiki:Mushroom Car|Mushroom Car]] from [[Mario Kart: Double Dash!!]]
 +
|-
 +
| [[LE-CODE/Track FAQ#ktpt2|Movable Finish Line]]
 +
| Adds the option to add a second starting position to display the finish line on the minimap in a different location.
 +
|-
 +
| [[Extended Presence Flags]]
 +
| Adds more options to [[Nintendo]]'s [[presence flag]]s.
 +
|-
 +
| Goomba Size Memory
 +
| Remembers the original size of a {{obj-ref|0x191|Goomba}} when respawning it.
 +
|-
 +
| [[LE-CODE/Track FAQ#itempos|Item Position Bug Fix]]
 +
| Fixes the [[Item Position Bug]] through a [[LEX]] file.
 +
|-
 +
| [[LE-CODE/Track FAQ#hidepos|Hidden Position Tracker]]
 +
| Hides the position tracker depending on the player's checkpoint information through a [[LEX]] file.
 +
|-
 +
| [[Epropeller Speed]]
 +
| Changes the {{obj-ref|0x1a6|Epropeller}} object to define another scale for the rotation speed.
 +
|-
 +
| [[Conditional Out of Bounds]]
 +
| Adds support for both versions of Conditional Out of Bounds.
 +
|-
 +
| [[LPAR#DEF-ONLINE-SEC|Custom Online Time Limit]]
 +
| Allows the online time limit to be customizable between [[LPAR#MIN-ONLINE-SEC|LPAR:MIN-ONLINE-SEC]] and LPAR:MAX-ONLINE-SEC.
 +
|-
 +
| [[LEX#RITP|Random Item Points]]
 +
| Allows item routes to be picked at random.
 +
|}
  
* Battle
+
=== Battle Features ===
** Battle mode actually works
+
{| class="textbox grid sortable alt"
** Battle mode has proper time limit online (3:00.000 instead of 0:30.000)
+
|+ Battle Features
** Playing a battle no longer influences [https://tcrf.net/Mario_Kart_Wii#Online_Nametag_Drawdistance name tag view distance] in VS races played afterwards
+
! Feature
* Loading [[minigame.kmg]] from track's szs.
+
! Information
* Demo screen
+
|-
** Demo shows battle tracks as well
+
| Working Battle Mode
** Demo correctly switches modes in the proper order
+
| Makes Battle Mode work properly.
** Demo no longer randomly freezes sometimes
+
|-
* General
+
| Battle Mode Time Limit Fix
** New generic features
+
| Fixes the Battle Mode time limit (0:30 to 3:00).
*** The Korean version of Mario Kart Wii is now supported
+
|}
*** [[Slot_Usage#LE-CODE|256 track limit removed]] ⇒ [[Slot Usage#LE-CODE|LE-CODE Slot Usage]]. New limit: 4028 CTs.
 
*** The game now has a proper crash handler (like the "DSI exception" screen in homebrew) that displays data for the developers when the game crashes. ⇒ [[LE-CODE/Exception Handler|Details]]
 
*** Special multiplayer variants (_d.szs) no longer mandatory, if they are missing, the non-multiplayer version is loaded instead
 
*** Tracks are now loaded from <tt>/Race/Course/<slot-id>.szs</tt>, removing the need for a file name table
 
*** MrBeans performance monitor is included and can be enabled / disabled with [https://szs.wiimm.de/wlect/ Wiimms LE-CODE tool] (either console only, or Console+Dolphin)
 
** New track-related features
 
*** Support for track-dependant [[ObjFlow.bin]] and GeoHitTable*.bin files - see section below.
 
*** Special feature for [[DS_Airship_Fortress_(Sniki)|DS Airship Fortress]] (usable in all other tracks as well): The {{obj-ref|woodbox}} object uses setting 8 for the drop height so it doesn't land on the wrong floor
 
*** Loading [[Template:Cannon_characteristics|cannon parameters]] from a [[LEX_(File_Format)|course.lex]] file inside a track so CT authors can define own cannon parameters.  
 
*** Special feature for tracks like [[GCN Mushroom Bridge]] and [[GCN Mushroom City]]: The {{obj-ref|penguin_m}} object's settings can be used to make it behave like a mushroom car (spitting out a mushroom when hit) - thanks to [[User:KHacker35000vr|Kevin]] for the code to do that
 
*** The finish line on the map can be freely placed anywhere (using a second [[KMP#KTPT|KTPT]] entry with player index -1) and will automatically be rotated properly in mirror mode, fixing the [[Start Line Bug]]. See [[LE-CODE/Track_FAQ#ktp2|Track FAQ]] for details.
 
*** Full implementation of new [[Extended presence flags]] including the [[LEX#TEST|simulation of scenarios]].
 
*** Goombas restored to scaled size after hit.
 
*** For online races, the range for items can be increased to larger values than ±131071 (see [[LEX]]:[[LEX#SET1|SET1]]).
 
*** The position tracker can be hidden dependent on offline/online, current lap and current check point (see [[LEX]]:[[LEX#HIPT|HIPT]]).
 
*** [[Conditional Out of Bounds (Riidefi)]] implemented (for AREA type 10 where route=0xff)
 
*** [[Conditional Out of Bounds (kHacker35000vr)]] implemented (for AREA types 10 where route=1)
 
*** New speedometer.
 
*** [[LPAR#debug|Debug screens]].
 
*** [[LE-CODE/Item Cheat|Item Cheat]].
 
** Bugfixes
 
*** The icache is properly handled, this means that LE-CODE will work on Dolphin >=5.0-9000. On older versions of Dolphin, it will most likely freeze at boot.
 
*** 4-player offline mode with Miis no longer crashes (LE-CODE no longer wastes memory with useless copies of unnecessarily large data structures like CT-CODE did)
 
*** After playing a Time Trial the minimap driver icons will be correctly resized instead of staying large
 
*** Playing a team GP no longer removes the Lightning from subsequent non-team GPs
 
*** The special random variants (new tracks, CTs, all tracks, Nintendo tracks) and the track variants now work offline as well
 
*** Playing GPs on custom cups no longer breaks the savegame
 
*** Fixed a bug that would cause the wrong trophy to be awarded in MKW-Fun due to cup reordering
 
* Menu
 
** Fixed a bug that could have caused freezes and/or graphical glitches in the menu under some circumstances
 
** In Time Trial mode, custom tracks are now hidden from the menu
 
** The Worldwide button on the online menu has been removed (instead of just being labeled "don't use")
 
** Scrolling through the cup list auto-updates the track list (also, as in previous versions, one can scroll in the bottom row as well)
 
** The algorithm that selected a track to be loaded when "???" is selected was slightly off and not every track had the exact same probability of winning the random lottery
 
* Not yet done, but likely to be added:
 
** TT ranking selection menu in the Mario Kart Channel is no longer broken
 
  
=== List of features in old MKW-Fun that are no longer included in LE-CODE (yet?) ===
+
=== Menu Features ===
 +
{| class="textbox grid sortable alt"
 +
|+ Menu Features
 +
! Feature
 +
! Information
 +
|-
 +
| Custom Cup Icon Sizes
 +
| Adds support for custom cup icon sizes from 8×8 up to 248×248 pixels in increments of 8. The default is 128×128.
 +
|-
 +
| Demo Screen Battle Mode
 +
| Adds Battle Mode to the Demo Screen.
 +
|-
 +
| Demo Screen Fix
 +
| Fixes random Demo Screen crashes.
 +
|-
 +
| Custom Track Removal in Time Trials
 +
| Removes the ability to play custom tracks in Time Trials.
 +
|-
 +
| Track Selection Scrolling
 +
| Automatically updates the track names when scrolling through the cups. The arrows can also be used from the bottom row of cups.
 +
|-
 +
| [[LPAR#chatmsg|Functional Chat Messages]]
 +
| Adds functionality to room chat messages.
 +
|-
 +
| Online Worldwides
 +
| Adds support for worldwides to play on tracks and battle arenas online.
 +
|}
  
* Change vehicle between online races (cheat code can fix it)
+
== Version History ==
 
+
See [[LE-CODE/History]] for a full history.
== History ==
+
{| class="wikitable"
 
+
! Version
See [[LE-CODE/History]] for a full history.
+
! Date of release
 
+
! Information
; Builds 35+36:
+
|-
* LE-CODE Version number increased from 4 to 5. [[Wiimms SZS Tools]] as of v2.29a are required for LE-CODE processing.
+
| &mdash;
* The [[LE-DEF#flags|track flags]] have been extended from 8 to 16 bits.
+
| 2019-01-07
* New [[LE-DEF#random|random track selection]]: Any Texture Hack. Bit {{code|LE$F_TEXTURE}} is used to identify such tracks.
+
| Start of development
* The 5 [[LE-DEF#random|random track selections]] can be used for racing tracks and now for battle arenas too.
+
|-
 
+
| [https://download.wiimm.de/lecode/distribution-support/lecode-bin/2019-07-12.build-13.zip Build 13]
== <span id=download>Public releases and downloads</span> ==
+
| 2019-07-12
 
+
| First release
You will find all official releases since build 13 at [https://download.wiimm.de/lecode/distribution-support/lecode-bin/ download.wiimm.de].
+
|-
 
+
| [https://download.wiimm.de/lecode/distribution-support/lecode-bin/2020-02-14.build-15.zip Build 15]
; <span id=b28>[https://download.wiimm.de/lecode/distribution-support/lecode-bin/2021-04-08.build-28.zip 2021-04-08, build 28]</span> (zip,90K)
+
| 2020-02-14
* New speedometer, that is based on stebler's [https://mkwii.com/showthread.php?tid=1730 Pretty Speedometer] code.
+
|
* [[LPAR#debug|Debug screens]].
+
* Added [[Extended Presence Flags]].
* [[LE-CODE/Item Cheat|Item Cheat]].
+
* Added Goomba Size Memory.
 
+
* Added Course Dependent Files for [[minigame.kmg]].
; <span id=b30>[https://download.wiimm.de/lecode/distribution-support/lecode-bin/2021-09-03.build-30.zip 2021-09-03, build 30]</span> (zip,95K)
+
* Added Item Position Bug Fix
* Update of [[LPAR#debug|debug screens]].
+
* Added Hidden Position Tracker.
* Implementation of [[Controller#le-cheats|Cheat Code System]]. Cheat Codes are activated by a sequence of {{LE-CODE ALT1}}+{{LE-CODE ALT2}}+{{button|D-Pad key}}.
+
* Fixed cutscene for Team Races.
 
+
|-
; <span id=b32>[https://download.wiimm.de/lecode/distribution-support/lecode-bin/2022-05-13.build-32.zip 2022-05-13, build 32]</span> (zip,95K)
+
| [https://download.wiimm.de/lecode/distribution-support/lecode-bin/2020-03-04.build-16.zip Build 16]
* Patch for [[main.dol]] so that longer texts are allowed than defined in [[BRLYT]] ([https://mariokartwii.com/showthread.php?tid=1860 by Diamond]). Longer track names can be displayed in this way.
+
| 2020-03-04
 
+
|
; <span id=b34>[https://download.wiimm.de/lecode/distribution-support/lecode-bin/2022-10-20.build-34.zip 2022-10-20, build 34]</span> (zip,98K)
+
* Fixed Hidden Position Tracker for 4:3 field-of-view.
* Support of [[random texture hack]]s.
+
* Fixed freeze that occurred when a player left a room which had a track using the Hidden Position Tracker loaded.
* Item Cheat ''Bullet Bill'' is deactivated in battles now.  
+
|-
 
+
| [https://download.wiimm.de/lecode/distribution-support/lecode-bin/2020-04-08.build-18.zip Build 18]
== Information for CT creators ==
+
| 2020-04-08
 
+
| Added Functional Chat Messages.
See »[[LE-CODE/Track FAQ|LE-CODE FAQ for track creators]]«.
+
|-
 
+
| [https://download.wiimm.de/lecode/distribution-support/lecode-bin/2020-06-16.build-20.zip Build 20]
== Information for distribution creators ==
+
| 2020-06-16
 
+
|
See »[[LE-CODE/Distribution Tutorial|LE-CODE Distribution Tutorial]]« and »[[LE-CODE/Distribution FAQ|LE-CODE FAQ for distribution creators]]«.
+
* Added an option to avoid tracks being repicked for up to 50 times.
 
+
* Added more Functional Chat Messages.
== Wiimms SZS Tools ==
+
* Added [[Epropeller Speed]].
 
+
|-
[[Wiimms SZS Tools]] support the LE-CODE extension like the [[CT-CODE]] extension before. Tool ''wlect'' was created for LE-CODE and [[LEX]] support. If using tool ''wctct'' with option ''--lecode'', it switch internally to LE-CODE support and accepts track definition files in [[CT-CODE]] syntax ([[CT-DEF]]). So you can use the same definition file for CT-CODE and for LE-CODE. Since 2022, the new definition format [[LE-DEF]] is available and recommended.
+
| [https://download.wiimm.de/lecode/distribution-support/lecode-bin/2020-07-26.build-22.zip Build 22]
 
+
| 2020-07-26
== Wiki Links ==
+
| Fixed crash that occurred when a player went online with many locked drivers.
 +
|-
 +
| [https://download.wiimm.de/lecode/distribution-support/lecode-bin/2020-09-17.build-24.zip Build 24]
 +
| 2020-09-17
 +
| Fixed freeze that occurred when all players selected random when playing Battle Mode.
 +
|-
 +
| [https://download.wiimm.de/lecode/distribution-support/lecode-bin/2020-12-09.build-26.zip Build 26]
 +
| 2020-10-09
 +
|
 +
* Added Custom Speedometer.
 +
* Added both versions of [[Conditional Out of Bounds]].
 +
* Updated Hidden Position Tracker.
 +
* Fixed Host Always Wins Vote not working when Track Blocker was disabled.
 +
|-
 +
| [https://download.wiimm.de/lecode/distribution-support/lecode-bin/2021-04-08.build-28.zip Build 28]
 +
| 2021-04-08
 +
|
 +
* Added Debug Information.
 +
* Added [[Item Cheat]].
 +
* Updated Custom Speedometer.
 +
|-
 +
| [https://download.wiimm.de/lecode/distribution-support/lecode-bin/2021-09-03.build-30.zip Build 30]
 +
| 2021-09-03
 +
|
 +
* Added Thunder Cloud Time Modifier.
 +
* Added Cheat Code System.
 +
* Added D-Pad Settings.
 +
* Added Cheat Modes.
 +
* Changed Draggable Blue Shells to an option.
 +
* Fixed Debug Information always being enabled.
 +
* Fixed Item Cheat joystick position.
 +
|-
 +
| [https://download.wiimm.de/lecode/distribution-support/lecode-bin/2022-05-13.build-32.zip Build 32]
 +
| 2022-05-13
 +
| Added bigger display to allow longer track names.
 +
|-
 +
| [https://download.wiimm.de/lecode/distribution-support/lecode-bin/2022-10-20.build-34.zip Build 34]
 +
| 2022-10-20
 +
|
 +
* Added support for Random Texture Hacks.
 +
* Removed Bullet Bill from Item Cheat when in Battle Mode.
 +
|-
 +
| [https://download.wiimm.de/lecode/distribution-support/lecode-bin/2022-12-15.build-36.zip Build 36]
 +
| 2022-12-15
 +
|
 +
* Added support for [[LE-CODE/Distribution_Tutorial/LE-DEF#worldwide|Online Worldwides]].
 +
* Added Random Texture Hacks option to [[LE-CODE/Distribution Tutorial/LE-DEF#random|Random Track from Group]].
 +
* Updated Random Track from Group to function for battle arenas.
 +
* Extended [[LE-CODE/Distribution Tutorial/LE-DEF#flags|track flags]] from 8 to 16 bits.
 +
* Increased internal version number.
 +
|-
 +
| [https://download.wiimm.de/lecode/distribution-support/lecode-bin/2023-08-05.build-38.zip Build 38]
 +
| 2023-08-05
 +
|
 +
* Made [[LPAR#STATICR-POINTS|Custom VS Point Scheme]] toggleable.
 +
* Added Custom Online Time Limit for [[distribution]]s and [[custom track]]s in [[LPAR#DEF-ONLINE-SEC|LPAR:DEF-ONLINE-SEC]] and [[LEX#APPLY-ONLINE-SEC|LEX:SET1:APPLY-ONLINE-SEC]] respectively.
 +
* Added [[LEX#RITP|Random Item Points]].
 +
|-
 +
| [https://download.wiimm.de/lecode/distribution-support/lecode-bin/2024-02-17.build-40.zip Build 40]
 +
| 2024-02-17
 +
|
 +
* Added support for custom cup icon sizes from 8×8 up to 248×248 pixels in increments of 8.
 +
* Increased the track limit to 8,192.
 +
|}
  
 +
== Other Articles ==
 
* [[LE-CODE/Distribution Tutorial|LE-CODE Distribution Tutorial]]
 
* [[LE-CODE/Distribution Tutorial|LE-CODE Distribution Tutorial]]
* [[LE-CODE/Distribution FAQ|LE-CODE FAQ for distribution creators]]
+
* [[LE-CODE/Distribution FAQ|LE-CODE Distribution FAQ]]
* [[LE-CODE/Track FAQ|LE-CODE FAQ for track creators]]
+
* [[LE-CODE/Track FAQ|LE-CODE Track FAQ]]
 
* [[Slot Usage]]
 
* [[Slot Usage]]
 
* [[LEX (File Format)]]
 
* [[LEX (File Format)]]
* [[Extended presence flags]]
+
* [[Extended Presence Flags]]
  
[[category:LE-CODE]]
+
{{User-Wiimm-Link}}
 +
[[Category:In Progress/Update]]
 +
[[Category:LE-CODE]]

Latest revision as of 14:08, 17 February 2024

Overview

LE-CODE (short for Leseratte-Code) is a code extension of Mario Kart Wii initially written by Leseratte. After the initial phase, the code was jointly developed by Leseratte and Wiimm. It has been named after CT-CODE, the name of the old code extension by MrBean35000vr and Chadderz.

Development started in January 2019, using the build system taken from the Wiimmfi updater. This means that it supports writing C source code instead of Assembly code for its modifications, and is designed to be loaded into the StaticR.rel relocation buffer as soon as it has been loaded and linked into memory, which has about 900 KB of usable space for modifications.

To use this code extension in other mods, Wiimm added support for management of LE-CODE and its additional features to Wiimms SZS Tools, called Wiimms LE-CODE Tool. Additional documentation can be found here.

The first few test versions were tested by Wiimm and Leseratte in February 2019, with the first version for a few more private testers being released on February 20th. LE-CODE could be used by the public after the release of Wiimms Mario Kart Fun 2019-06, which happened in June 2019.

Media

Features

LE-CODE's features are based on a list of modifications that were included in the Wiimms Mario Kart Fun series. It includes nearly all features that CT-CODE has and all features of the former mentioned series.

Features from CT-CODE

CT-CODE Features
Feature Information
More Racing Tracks Adds more slots to the game by editing the game's slot usage to have more than 4000 tracks in a distribution.
Custom Menu System Adds more cups and two arrows to the track selection.
Wi-Fi Timer Makes the timer display always when selecting a track online.
Random Track Fix Fixes the random button from the track selection.
Lap & Speed Modifier Adds support to have modifier lap and speed amounts.
Mushroom Only Bug Fix Fixes item boxes only giving Mushrooms after the 18th item online.
Thunder Cloud Time Modifier Allows the Thunder Cloud to strike earlier or later.
Random Track from Group Adds random groups to the track selection, allowing to vote randomly in a set of tracks. (All tracks, Nintendo tracks, custom tracks, new tracks, texture hacks)
Track Variants Allows tracks to function like Animal Crossing from Mario Kart 8.
Custom VS Point Scheme Changes the amount of points a player gets when finishing a race.
No Lightning in Team Races Disables the Lightning item in Team Races.
Engine Class Probability Modifier Removes calculations based on VR and uses a fixed probability instead.
Draggable Blue Shells Allows the Blue Shell to be dragged behind a player's vehicle, like Green and Red Shells.

Bugfixes

Bugfixes
Feature Information
Icache Fix Handles the icache properly, making the mod compatible with Dolphin 5.0-9000 and higher.
4-Player Mii Crash Fixes 4-player mode with Miis.
Minimap Icon Size Fix Fixes the size of the minimap's character icons when playing another game after Time Trials.
Battle Mode Name Tag Fix Fixes the render distance of player's name tags when returning to VS races.
Grand Prix Savegame Fix Fixes playing Grand Prix on custom cups from corrupting the savegame.
Trophy Fix Fixes the game awarding the wrong trophy due to the additional cups.

Main Features

Main Features
Feature Information
NTSC-K Support Adds support for the Korean version of the game.
More Than 256 Tracks Extends the track limit to 4,096 or 8,192.
Crash Handler Adds a proper crash handler to the game that displays data about the crash.
Multiplayer File Removal Removes the need for Multiplayer files and picks the regular track if it is not present.
Track Directory Adds a track directory to the game's filesystem.
Performance Monitor Adds the option to display a performance monitor on screen.
Custom Speedometer Adds a speedometer with some settings.
Debug Information Adds the option to turn on various debug information.
Item Cheat Adds an Item Cheat to the game.
Random Texture Hacks Adds support for organization of texture hacks.
Custom Online Time Limit Allows the online time limit to be customizable between 30 and 65535 seconds (18:12:15).

Track Features

Track Features
Feature Information
Course Dependent Files Adds the option to read ObjFlow.bin, GeoHitTableItem.bin, GeoHitTableItemObj.bin, GeoHitTableKart.bin, GeoHitTableKartObj.bin, and minigame.kmg from the track file itself.
Woodbox Height Respawn Modifier Modifies the height at which the woodbox object respawns.
Cannon Parameters Adds the option to have custom cannon parameters through a LEX file.
Mushroom Car Changes the penguin_m object to function like a Mushroom Car from Mario Kart: Double Dash!!
Movable Finish Line Adds the option to add a second starting position to display the finish line on the minimap in a different location.
Extended Presence Flags Adds more options to Nintendo's presence flags.
Goomba Size Memory Remembers the original size of a Goomba when respawning it.
Item Position Bug Fix Fixes the Item Position Bug through a LEX file.
Hidden Position Tracker Hides the position tracker depending on the player's checkpoint information through a LEX file.
Epropeller Speed Changes the Epropeller object to define another scale for the rotation speed.
Conditional Out of Bounds Adds support for both versions of Conditional Out of Bounds.
Custom Online Time Limit Allows the online time limit to be customizable between LPAR:MIN-ONLINE-SEC and LPAR:MAX-ONLINE-SEC.
Random Item Points Allows item routes to be picked at random.

Battle Features

Battle Features
Feature Information
Working Battle Mode Makes Battle Mode work properly.
Battle Mode Time Limit Fix Fixes the Battle Mode time limit (0:30 to 3:00).

Menu Features

Menu Features
Feature Information
Custom Cup Icon Sizes Adds support for custom cup icon sizes from 8×8 up to 248×248 pixels in increments of 8. The default is 128×128.
Demo Screen Battle Mode Adds Battle Mode to the Demo Screen.
Demo Screen Fix Fixes random Demo Screen crashes.
Custom Track Removal in Time Trials Removes the ability to play custom tracks in Time Trials.
Track Selection Scrolling Automatically updates the track names when scrolling through the cups. The arrows can also be used from the bottom row of cups.
Functional Chat Messages Adds functionality to room chat messages.
Online Worldwides Adds support for worldwides to play on tracks and battle arenas online.

Version History

See LE-CODE/History for a full history.

Version Date of release Information
2019-01-07 Start of development
Build 13 2019-07-12 First release
Build 15 2020-02-14
  • Added Extended Presence Flags.
  • Added Goomba Size Memory.
  • Added Course Dependent Files for minigame.kmg.
  • Added Item Position Bug Fix
  • Added Hidden Position Tracker.
  • Fixed cutscene for Team Races.
Build 16 2020-03-04
  • Fixed Hidden Position Tracker for 4:3 field-of-view.
  • Fixed freeze that occurred when a player left a room which had a track using the Hidden Position Tracker loaded.
Build 18 2020-04-08 Added Functional Chat Messages.
Build 20 2020-06-16
  • Added an option to avoid tracks being repicked for up to 50 times.
  • Added more Functional Chat Messages.
  • Added Epropeller Speed.
Build 22 2020-07-26 Fixed crash that occurred when a player went online with many locked drivers.
Build 24 2020-09-17 Fixed freeze that occurred when all players selected random when playing Battle Mode.
Build 26 2020-10-09
  • Added Custom Speedometer.
  • Added both versions of Conditional Out of Bounds.
  • Updated Hidden Position Tracker.
  • Fixed Host Always Wins Vote not working when Track Blocker was disabled.
Build 28 2021-04-08
  • Added Debug Information.
  • Added Item Cheat.
  • Updated Custom Speedometer.
Build 30 2021-09-03
  • Added Thunder Cloud Time Modifier.
  • Added Cheat Code System.
  • Added D-Pad Settings.
  • Added Cheat Modes.
  • Changed Draggable Blue Shells to an option.
  • Fixed Debug Information always being enabled.
  • Fixed Item Cheat joystick position.
Build 32 2022-05-13 Added bigger display to allow longer track names.
Build 34 2022-10-20
  • Added support for Random Texture Hacks.
  • Removed Bullet Bill from Item Cheat when in Battle Mode.
Build 36 2022-12-15
Build 38 2023-08-05
Build 40 2024-02-17
  • Added support for custom cup icon sizes from 8×8 up to 248×248 pixels in increments of 8.
  • Increased the track limit to 8,192.

Other Articles