Homebrew [Release] Meritous for 3ds (using lib SDL 1.2 )

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
3,136
Country
Italy
Meritous.png

Far below the surface of the planet is a secret. A place of limitless power. Those that seek to control such a utopia will soon bring an end to themselves.

Seeking an end to the troubles that plague him, PSI user MERIT journeys into the hallowed Orcus Dome in search of answers.

If the game is too difficult for you, you can play in 'Wuss mode' for a far more sombre gaming experience.

Meritous
is a cross between a top-view dungeon crawler and a bullet-hell shoot-em-up. In it, you control main character Merit, who travels through an enormous 3000-room labyrinth, the Orcus Dome, in order to find three artifacts called the PSI Keys, and restore them to their proper locations.

Although enemies fire copious amounts of bullets at you, you don't shoot back- instead, you have an attack called a PSI Circuit, which you charge up to unleash a shockwave that hits enemies and nullifies their shots.

As you charge up the PSI Circuit, target reticules appear on nearby enemies, the circle indicating they're in range, and the cross indicating you've charged up enough to damage or kill them.

You can't just use the PSI Circuit as often as you want, though. After releasing it, there's a cooldown time before you can charge up again, and the longer you charge up, the longer you have to wait.

Destroyed enemies leave behind PSI crystals you can use to upgrade three facets of your PSI Circuit- Circuit Charge (charge up faster), Circuit Refill (less cooldown time), and Reflect Shields.

When you have at least one level in Shields, a barrier is projected around Merit, which will deflect one bullet per shield level, before having to regenerate. As you upgrade Shields, the barrier becomes bigger, then shows multiple layers as it gets stronger.

--------​

3DSX Users: Currently, the 3DSX build needs to utilize a large app installed on your 3ds. If you have used any of the similarly large RetroArch emulators or ScummVM 3ds, you have nothing to worry about. The easiest target to use is the Youtube app, so if you have that installed, you're ready to go.

CIA Users: You will first need a DSP dump on your SD card.
This is a one-time process and is needed for all homebrew CIAs that use DSP audio.
The source code of my port is on my github (https://github.com/nop90/Meritous-3ds).
The compiled game (3dsx and CIA format) is released on github (https://github.com/nop90/Meritous-3ds/releases).

Credits:
The original source is by Lancer-X/ASCEAI (http://www.asceai.net/meritous/)
The 3ds port is based on the code of the dingoo port by 31, that has resized screen to 320x240
This game uses the SDL 1.2 library for 3ds

Changelog

Ver. 1.4-1 (19 Aug 2017)
- Other minor tunings

Ver. 1.4 (12 Aug 2017)
- Fixed Endings and Credits text wrap
- Tuned maps scolling
- Compiled with fixed SDL lib that solves random missing sound starting the game (CIA format only)

Ver. 1.3 (29 May 2017)
- Fixed dialogues text shown entering in boss rooms

Ver. 1.2c (22 March 2017)

- Released another new build using the last version of SDL lib. Solved closing the game fom home menu and some problems of GPU freeze

Ver. 1.2 (22 March 2017)

- Released a new build using a fixed version of SDL lib that solves the screen flickering

Ver. 1.1 (05 March 2017)
- Using 400x240 resolution instead of 320x240 stretched (thanks to @asiekierka)
- Fixed some bugs

Ver. 1.0a (26 February 2017)
- Added CIA format

Ver. 1.0 (26 February 2017)
- First reelase in 3dsx format

Installation

In the zip there is a folder with the 3dsx, smdh and the xml (for target title selection) files inside, to be used with a homebrew launcher.

The CIA file is to be installed with FBI. To download and install the CIA with FBI you can use the QR code below.

All the resources are included in the executable using romfs.

The game creates a Meritous subfolder inside the 3ds folder if doesn't exist. Here will be stored the gamesave.
QR code for FBI

Meritous_v1.4.1.png
(Click to enlarge)

Commands

- D-pad: Move
- A: Select / use PSI
- B: Activate tiles
- X: Show artifacts
- Y: Show shield meters
- L: Open Help
- R: Open map
- Select: Exit
- Start: Pause

Known Bugs

-

To Do List

-

Screenshots

Meritous1.png
Meritous2.png
Meritous3.png
 
Last edited by nop90,

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
3,136
Country
Italy
The game in cia format works fine, but theinteraction with the home menu (pressing start or closing the lid) dosn't work, and this is a problem of the SDL lib (related to threads I think).

Hope to fix everything next week.
 

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
3,136
Country
Italy
Added on github the CIA format of the game. Don't close the game from the 3dsx home menu or it will hung the 3ds (it's a problem of the SDL lib)
 
Last edited by nop90,

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
3,136
Country
Italy
Why all SDL port game (3dsx format) doesn't works for me ?
Probabily not enough permissions for something (Theads, dsp, who knows)

I have several o3ds and one n3ds. All of them have a9lh + latest luma and are on 11.2.

Meritous always works, Xrick srarts on the o3ds but not on the n3ds.

Tyrian srarts only after starting and closing meritous.

With this situation I'm not able to investigate the problem and I'm using the cia version
 

Cid2mizard

Well-Known Member
Member
Joined
Aug 16, 2007
Messages
401
Trophies
1
Age
43
Location
Maubeuge
XP
2,436
Country
France
Probabily not enough permissions for something (Theads, dsp, who knows)

I have several o3ds and one n3ds. All of them have a9lh + latest luma and are on 11.2.

Meritous always works, Xrick srarts on the o3ds but not on the n3ds.

Tyrian srarts only after starting and closing meritous.

With this situation I'm not able to investigate the problem and I'm using the cia version


I have just last hbl (o3ds 9.2 with menuhax and soundhax), i can not install cia, FBI has encountered a fatal error (Kernel backdoor not installed).
 

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
3,136
Country
Italy
I have just last hbl (o3ds 9.2 with menuhax and soundhax), i can not install cia, FBI has encountered a fatal error (Kernel backdoor not installed).

Added an xml file for target title selection that should make startd the 3dsx file if it wasn't starting without (for me the 3dsx file was working).

Please let me know if the problem is solved now.
 

Cid2mizard

Well-Known Member
Member
Joined
Aug 16, 2007
Messages
401
Trophies
1
Age
43
Location
Maubeuge
XP
2,436
Country
France
Added an xml file for target title selection that should make startd the 3dsx file if it wasn't starting without (for me the 3dsx file was working).

Please let me know if the problem is solved now.

I am in trouble,
Usually I do not use the cia. I finally managed to start FBI thanks to fasthax but I can not install youtube. It's hard to find youtube in cia format, and when I find one, FBI refuses to install it.
 

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
3,136
Country
Italy
I am in trouble,
Usually I do not use the cia. I finally managed to start FBI thanks to fasthax but I can not install youtube. It's hard to find youtube in cia format, and when I find one, FBI refuses to install it.
If you have Freeshop you can download youtube with it.

Other games that can be use to launch the 3dsx are:
- Monster Hunter 4 Ultimate Special Demo (USA)
- Monster Hunter 4 Ultimate Special Demo (Europe)
- Monster Hunter 4 Ultimate (USA eShop)
- Monster Hunter 4 Ultimate (Europe eShop)
- Monster Hunter 4G (Japan eShop)-->
- Monster Hunter 4 Ultimate (USA cartridge)
- Monster Hunter 4 Ultimate (Europe cartridge)
- Monster Hunter 4 Ultimate (Japan cartridge)
- Super Smash Bros. for Nintendo 3DS Demo (USA)
- Super Smash Bros. for Nintendo 3DS Demo (Europe)
- Super Smash Bros. for Nintendo 3DS Special Demo (USA)
- Super Smash Bros. for Nintendo 3DS Special Demo (Europe)
- Super Smash Bros. for Nintendo 3DS (USA eShop)
- Super Smash Bros. for Nintendo 3DS (Europe eShop)
- Dairantou Smash Brothers for Nintendo 3DS (Japan eShop)
- Super Smash Bros. for Nintendo 3DS (USA cartridge)
- Super Smash Bros. for Nintendo 3DS (Europe cartridge)
- Dairantou Smash Brothers for Nintendo 3DS (Japan cartridge)
 

Cid2mizard

Well-Known Member
Member
Joined
Aug 16, 2007
Messages
401
Trophies
1
Age
43
Location
Maubeuge
XP
2,436
Country
France
If you have Freeshop you can download youtube with it.

Other games that can be use to launch the 3dsx are:
- Monster Hunter 4 Ultimate Special Demo (USA)
- Monster Hunter 4 Ultimate Special Demo (Europe)
- Monster Hunter 4 Ultimate (USA eShop)
- Monster Hunter 4 Ultimate (Europe eShop)
- Monster Hunter 4G (Japan eShop)-->
- Monster Hunter 4 Ultimate (USA cartridge)
- Monster Hunter 4 Ultimate (Europe cartridge)
- Monster Hunter 4 Ultimate (Japan cartridge)
- Super Smash Bros. for Nintendo 3DS Demo (USA)
- Super Smash Bros. for Nintendo 3DS Demo (Europe)
- Super Smash Bros. for Nintendo 3DS Special Demo (USA)
- Super Smash Bros. for Nintendo 3DS Special Demo (Europe)
- Super Smash Bros. for Nintendo 3DS (USA eShop)
- Super Smash Bros. for Nintendo 3DS (Europe eShop)
- Dairantou Smash Brothers for Nintendo 3DS (Japan eShop)
- Super Smash Bros. for Nintendo 3DS (USA cartridge)
- Super Smash Bros. for Nintendo 3DS (Europe cartridge)
- Dairantou Smash Brothers for Nintendo 3DS (Japan cartridge)


Freeshop is cia, and FBI will not install it. I install on Emunand Gateway with Devmenu and install is good. Now Freeshop need Decrypt9 but Decrypt9 doesn't works on my Emunand.
This is a real journey of the fighter to operate cia without CFW. I'm giving up...
 
Last edited by Cid2mizard,
D

Deleted User

Guest
So I was playing this port and I was in one of the areas of the game, and then my System crashed. When I went back in to the game and pressed "continue", it kept kicking me back to the Home menu and sometimes crashing.

Can you explain why this is happening?

I'm also willing to provide the System Crash Dump if needed.
 

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
3,136
Country
Italy
So I was playing this port and I was in one of the areas of the game, and then my System crashed. When I went back in to the game and pressed "continue", it kept kicking me back to the Home menu and sometimes crashing.

Can you explain why this is happening?

I'm also willing to provide the System Crash Dump if needed.

A crash happenend once to my son, but after restarting the game and continuing from the last save went fine.

Probably some memory leak in the original source. I don't have time to debug it now, but if you want semd me the savefile and when I have time I'll try to see what I can do.

Delering the savefile in the 3ds/Meritous folder should fix your problem, but you'll have to restart the game.
 
D

Deleted User

Guest
A crash happened once to my son, but after restarting the game and continuing from the last save went fine.

Probably some memory leak in the original source. I don't have time to debug it now, but if you want send me the savefile and when I have time I'll try to see what I can do.

Deleting the save file in the 3ds/Meritous folder should fix your problem, but you'll have to restart the game.

Alright, Sucks cause I upgraded the hell out of my Abilitys, but I can understand that things like this can happen, Especially for a Port.

Oh, and here is the Save file that messed up.
 

Attachments

  • MeritousSave.rar
    71 bytes · Views: 277

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
3,136
Country
Italy
Alright, Sucks cause I upgraded the hell out of my Abilitys, but I can understand that things like this can happen, Especially for a Port.

Oh, and here is the Save file that messed up.
It's easy to understand. Software has always bugs (often also hw has, look at the problems of the just launched Switch) and debugging is very time consuming. So homebrew are unlikely to be perfect.

Porting a game to a console like 3ds with a limited amount of resources, small bugs In memory managing that on widows can be ignored, are a big problem.

Another problem is the small stack size (on windows the default stack is 4MB :wacko:) so the use of large arrays as local variable in a function or an high use of recursion, don't give problems on compiling but will crash the game while running it on the 3ds.

Using your savefile I'll try to trace the code execution to find the problem, but without a debugger I have to use the console output and hardcoded breakpoints. Really a dirty work.

First I'll try with a quick fix. To solve the problem of local big arrays the easy solution is to declare them static, but this doesn't clear the memory on different calls of the function. Replacing this with malloc/free calls is a cleaner way and could solve a potential bug introduced by me. But if the bug is elsewhere, don't expect that fixing it will be fast.
 

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
3,136
Country
Italy
@Coolnez your savefile has size 0.

If it's the same on your SD you had a SD writing failure. In this case I don't know if it's a bug of the game or if your SD is damaged.
 
D

Deleted User

Guest
@Coolnez your savefile has size 0.

If it's the same on your SD you had a SD writing failure. In this case I don't know if it's a bug of the game or if your SD is damaged.

I'm leaning more to Bug of the game cause my SD Card never had a Writing error before, but okay.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • Bunjolio @ Bunjolio:
    if ur on a Chromebook and cant change jack about the laptop that's what I gotta use
  • SylverReZ @ SylverReZ:
    One of the sites that weren't blocked on the school's network was some file uploading sites. I would upload some games, write down the URL and take it to school one day.
  • Bunjolio @ Bunjolio:
    lol
  • SylverReZ @ SylverReZ:
    I did it when the teachers werent looking ofc. I even managed to take in a USB stick that wasn't allowed.
  • Bunjolio @ Bunjolio:
    my school has a chrome extension called light speed filter agent and it legit blocks YouTube pfps since the file cdn(I think aka yt3.ggpht.com) is classed as mature
  • Bunjolio @ Bunjolio:
    mhm
  • Bunjolio @ Bunjolio:
    they have other stuff like goguardian too
  • SylverReZ @ SylverReZ:
    Ours mainly relied on the router, I believe.
  • Bunjolio @ Bunjolio:
    our school network and chrome policies block stuff too
  • Bunjolio @ Bunjolio:
    alot of yt to mp3 sites are blocked by light speed for "Security"
  • SylverReZ @ SylverReZ:
    It was easy to bypass some of the restrictions, as one of the admins left a registry key in the administrative shares drive, which allowed me to get around the blocking of some sites.
  • Bunjolio @ Bunjolio:
    tf does tta mean
  • Bunjolio @ Bunjolio:
    yeah this is chrome os
  • Bunjolio @ Bunjolio:
    cant do shit
  • SylverReZ @ SylverReZ:
    @Bunjolio, Wdym 'TTA'?
  • Bunjolio @ Bunjolio:
    that* as in why yt to mp3 sites are blocked for security
  • SylverReZ @ SylverReZ:
    @Bunjolio, Remember when YouTubetoMP3 was a thing back in the 2010s?
  • SylverReZ @ SylverReZ:
    Until YT updated some stuffs and broke the website.
  • Bunjolio @ Bunjolio:
    I was 2 in 2010
  • SylverReZ @ SylverReZ:
    Oh lol
  • Bunjolio @ Bunjolio:
    lol
  • SylverReZ @ SylverReZ:
    This was in the Minecraft-era.
  • AncientBoi @ AncientBoi:
    lol Bun rockin out at 2 :rofl2:
    AncientBoi @ AncientBoi: lol Bun rockin out at 2 :rofl2: