Homebrew RELEASE Solarus Engine

capsterx

Well-Known Member
OP
Member
Joined
Oct 14, 2020
Messages
147
Trophies
0
Age
39
XP
425
Country
United States
Current Release:
https://github.com/capsterx/solarus/releases/tag/v0.4.3-luajit

This was originally based on the work of carstene1ns, but I made quite a few changes and upgraded it to 1.6.4.

I also made a simple 'loader gui' for it if you load solarus.nro. It will look for games in /switch/solarus/games.
They can either be X.solarus which is how you download them from the offical website or unpacked into a sub directory.
It's much faster if they are unpacked as the gui will load the title from each one, and loading them from zips is a little slow.

The left joy stick and dpad are mapped to keyboard keys up, down, left, right. minus is mapped to escape and plus should be pause

There is also a stand alone copy of Mystery Of Solarus which loads directly from a romfs without the gui loader. Any solarus game can be built into a standalone nro from the codebase

I embeded Plutonium and lua into the code base, if there is a better way let me know.

I did play all of Mystery of Solarus, but i did it on my own copy of the 1.5 branch I modified from carstene1ns repo. I think this 1.6 branch works well, but I have not heavily tested it as much. There were quite a bit of changes between 1.5 and 1.6+.

Changelog:
v0.4.3-luajit:
Allow per-game and overall configuration of keys

v0.4.2-luajit:
The game Zelda - A Link To The Dream does not currently use the joypad on the file creation/selection menu, so as a quick workaround ZR was mapped to return so the game can be started.

v0.4.1-luajit:
This is a minor patch that prevents keys from registering as alt/shift/control being pressed as this messes up with the game tunics

v0.4-luajit:
This is the same as switch gui 0.4 but includes luajit 2.1.0-beta3 with JIT enabled

Is this better? Im not sure, but hopefully.

v0.4
This changes the gui dramatically and removes many hardcoded values. It switched from pu -> borealis which magics a lot of the design work of the interface.

The global Settings tab does not save, but you should not need to change them. The previous release has turbo=yes by default, I found this broke a few places in 'Zelda Return of the Hylian SE'

You can also change the video mode for a given game. 'Zelda Return of the Hylian SE' does not have an option to change it. This should only be used for 1.5x games, 1.6x games include shaders and I'm not sure how the would interact between software and hardware shaders.

0.4:
This changes the gui dramatically and removes many hardcoded values. It switched from pu -> borealis which magics a lot of the design work of the interface.

The global Settings tab does not save, but you should not need to change them. The previous release has turbo=yes by default, I found this broke a few places in 'Zelda Return of the Hylian SE'

You can also change the video mode for a given game. 'Zelda Return of the Hylian SE' does not have an option to change it. This should only be used for 1.5x games, 1.6x games include shaders and I'm not sure how the would interact between software and hardware shaders.
 
Last edited by capsterx,

impeeza

¡Kabito!
Member
Joined
Apr 5, 2011
Messages
626
Trophies
0
Age
43
XP
849
Country
Colombia
Hi, actually the path for the quests is hardcoded to sdmc:/switch/solarus/games will be nice if the path is relative to the actual location of NRO, by example if I put the NRO file on sdmc:/switch/SolarusEngine then search for games on sdmc:/switch/SolarusEngine/games folder.
As I was saying my coding skills are very basic, but on a light reading of code, I did find:
On src\core\QuestFiles.cpp file there is a function called get_base_write_dir() used on several pieces of code to get different directories related to base (actual) dir, but on /src/switch/switch_gui_main.cpp and /src/switch/back/switch_gui.cpp the path is hard coded. Can the function get_base_write_dir() be used on the switch .cpp files? regards.
 
General chit-chat
Help Users
    The Real Jdbye @ The Real Jdbye: you take 2 hours to eat?