Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Faster episode booting #70

Open
wants to merge 71 commits into
base: master
Choose a base branch
from

Conversation

SpencerEverly
Copy link
Contributor

@SpencerEverly SpencerEverly commented Jan 21, 2024

This is another pull request by me. I decided to make a new way of booting episodes on boot, so rather than use the old method of "booting intro.lvl -> select episode from list -> boot it -> load episode", I decided on bypassing intro.lvl ENTIRELY so now that it's "skip intro.lvl -> load episode".

Check out this video for a loading comparison for Super Mario Bros. 2024, an episode by vitzie629: https://youtu.be/IDYBZzBwuzI

Note: When loading LunaLoader.exe by itself with this PR, it tells you to use the SMBX2 launcher instead to load LunaLoader.exe. This means the final way to use the old legacy launcher is finally bypassed, and any way to use intro.lvl is no longer possible.

…not loading the proper wld file when specifying a name
…and other player IDs of a higher player count specified
…he first/second characters that may not apply them correctly
…o attempt to make external episode booting better but it's not there yet
…below the file to prevent commit merge breaking changes
- On the fast episode boot source codes & GlobalFunc.cpp fast episode boot source codes: Switch old GM, old native functions, and old SMBXInternal things to the new SMBX13 namespace environment
- Port "Misc.getEpisodeList" to a new LuaBind namespace ("Episode"), along with adding some new world-related functions, as well as renaming the functions to be shorter and easier to remember ("Misc.getEpisodeList()" is now "Episode.list()", and there's also "Episode.id()", "Episode.name()", "Episode.path()", and "Episode.filename()")
- Replace "WStr2Str(gAppPathWCHAR)" with gAppPathUTF8 in the checkIfWorldIsIn* functions (It looks better this way)
- Make episode loading more better, it hopefully can now withstand more than 100 episodes in the worlds folder (Though it's still capped at 100)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants