Pathwalker

[Open Assets] Pathwalker 1.0 (Treadmill)

What permissions do you give others to modify and/or maintain your submission?
Modify: YES - Maintain: YES - I give permission for my entire submission to be modified by others or used in their own work. I give permission for my entire submission to be maintained by others as well.
In Ring Racers, very few objects travel along a path, and anything that might need to is often left to the modder's vices to figure out, using varying solutions to varying success.

No more of that; say hello to the Pathwalker, a system ported from Mario Kart DS that lets any object imaginable follow their own dedicated path (with some work, of course)!
ringracers0003.gif

This is a robust system optimized for both efficiency and more "natural" path-tracing. Paths are allocated on map load, and all the Pathwalkers do is trace themselves along these pre-allocated paths; no need to worry about lag or excessive mapthing checks!

Using path interpolation based on Cubic Hermite splines, objects smoothly ease over to—and steer along—paths of any shape and size.
ringracers0010.gif

You can let objects interpolate linearly, as well, along with being able to interpolate in a 3D (X, Y, Z) or 2D (X, Y only) space.
ringracers0008.gif


WARNING: Some functions, for the sake of completion, are provided in this library. I've done a quick once-over to understand a bit of what they do, but they're as much of a mystery to me as they are to you. You're on your own in regards to implementing and bugfixing those functions.

All relevant Pathwalker assets are grouped into "pathwalker" folders within the main .pk3 (as of this writing, DL_Pathwalker_v1-Treadmill), for easy plug-and-play style implementation of the systems into your addons. The main .pk3 also contains a basic demo object that showcases some aspects of the Pathwalker system.

Along with that, you can also download a Pathwalker_Extras.zip file, containing a Tutorial area demonstrating the functionality of Pathwalkers, and a RingRacers_pathwalker.cfg file you can implement in HVR, for better information while editing maps.

A comprehensive documentation on the data structures and functions added by this addon can be found here: https://github.com/Chearii/drrr_pathwalker. Have fun, and happy pathwalking!
Katsuhisa Sato, Yusuke Shiraiwa, Shunsaku Kato:
  • Original Mario Kart DS programming
Haroohie Pals:
Cheariisan (me lol):
  • Pathwalker path point sprite asset
  • Conversions of both personally-decompiled Pathwalker C code, and Mario Kart Toolbox's C# conversions of Pathwalker and traffic object code, to Lua
  • "Pathwalkers" Tutorial room
  • HVR config file for Pathwalker points
This system uses elements of decompiled (reverse engineered) code from Mario Kart DS, reworked to both use the Lua language, and to be reliant on Ring Racers' internal systems, and not any internal Nintendo DS systems.
All potentailly reliant systems have been, to the best of my ability (and extent of my knowledge), reworked to use Ring Racers systems, or use unique ways of getting the same result (clean-room code). No assets from Mario Kart DS have been included in this addon, nor will they be.

Mario Kart Toolbox is licensed under the MIT license; to adhere to the permissions of the MIT license, the license file (MKTOOLBOX_LICENSE) has been included in the main .pk3 file.
Author
Cherrysan
Downloads
188
Views
1,705
First release
Last update

More resources from Cherrysan

  • Douki-chan
    Douki-chan
    Will the race for first help her win her race for love? Only time may tell...
  • MK64 Mario Raceway
    MK64 Mario Raceway
    Welcome to Mario Kart! A thrilling circuit from an N64 classic!

Share this resource

Back
Top