Homebrew [Release] OpenSyobon3DS - Open Syobon Action (a.k.a CAT Mario) for 3DS

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
3,023
Country
Italy
Today my fever is going better, but I have to back to work, so youìll ned to wait the weekend for other updates.

Now some ansers to tour posts:

These are the changes needed: https://github.com/nop90/OpenSyobon3DS/pull/1/files

I also changed the save filename just to keep everything in /3ds/<game>/ format

Does gridlauncher not have romfs support? I'm pretty sure it does since I've never had users complain when using my romfs homebrew. Using bin2c isn't necessary really.

After thinking about pros and cons of the two solutions, Iìll use your code and put all the resources in a romfs file.


...
In general, I'm noticing a couple of cases where, due to the screen resolution change, the enemies are spawning earlier than usual. Can you shrink the screen resolution (cover the left/right sides with black squares) and prevent early spawning? I think it's affecting how some of these levels are playing.

EDIT5: Oh, yes. That spawning issue is actually making Level 2-2 impossible to play: The player is expected to perfectly line up to hop on the enemies!

I know this couls happen but was hpeing the problem wasn't too big. probably I'll resize the screen tho the original width, and i'll use tho nice graphics for the remaining side bars,

Thank tou for the test, I hope tharesizing the screen will solve all the problem, I'm not going to revesre all the code searching for bugs


Will you be using my sprites? I want to know if I should finish the rest of the sprites.

Yes, I'll do. Thanks
 
Last edited by nop90,
  • Like
Reactions: CrispyYoshi

CeeDee

art by @x65943
Member
Joined
May 4, 2014
Messages
5,317
Trophies
2
XP
9,283
Country
United States
Tpday my fever is going better, but I have to back to work, so youìll ned to wait the weekend for other updates.

Now some ansers to tour posts:



After thinking about pros and cons of the two solutions, Iìll use your code and put all the resources in a romfs file.




I know this couls happen but was hpeing the problem wasn't too big. probably I'll resize the screen tho the original width, and i'll use tho nice graphics for the remaining side bars,

Thank tou for the test, I hope tharesizing the screen will solve all the problem, I'm not going to revesre all the code searching for bugs




Yes, I'll do. Thanks
Alright. I'll finish the rest tomorrow!
 

Ryccardo

watching Thames TV from London
Member
Joined
Feb 13, 2015
Messages
7,403
Trophies
0
Age
27
Location
Imola
XP
6,392
Country
Italy
EDIT2: I'm not entirely sure, but I vaguely remember a hidden alternative ending if you let this poison mushroom trail to the right and eventually kill the guy on the bridge, so you can walk through the bridge. Can you confirm this?

Well, you just get killed later by the chicken man!

EDIT3: Is the message when touching the Bowser fire throughout level 4 supposed to say "800`ÃC!"?
No-unicode fail, it's supposed to be "800 °C" :D
 

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
3,023
Country
Italy
Resizing the sceen I need a nece border image.

If someone want to help, here is a template for the border:

frame.png


the center area of 240 x 20 px is transparent.
 

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
3,023
Country
Italy
this is the layout of thr next release:

os3ds.png


I tested the resized version and now levels from 1 to 4 are ok. The guess others should be ok too.

Also I icludedall the resources in the edsx using romfs (thanks to @TheCruel ) so there is no more need to distribute graphics and sound in a separate folder.

Now I'm working on the confirm dialogs and on using the resized sprites.
 
  • Like
Reactions: Februarysn0w

CeeDee

art by @x65943
Member
Joined
May 4, 2014
Messages
5,317
Trophies
2
XP
9,283
Country
United States
this is the layout of thr next release:

View attachment 47153

I tested the resized version and now levels from 1 to 4 are ok. The guess others should be ok too.

Also I icludedall the resources in the edsx using romfs (thanks to @TheCruel ) so there is no more need to distribute graphics and sound in a separate folder.

Now I'm working on the confirm dialogs and on using the resized sprites.
Later tonight I'll send you a folder with all the shrunken graphics and other assets I've done, if you want to use them.

Also, a few pixels are missing from the left of the poison mushroom on the banner.
 

TheDuckMan64

Chicken nugget.
Member
Joined
Oct 9, 2015
Messages
355
Trophies
0
XP
190
Country
EDIT: I fixed that problem, the makefile was pointing to a different directory to where I had the folder. Now the compile is complaining about 'loadg.o' not being found :P
Is that file even included in the Github source.

Whenever I try to compile, I get the error:

No rule to make target `/Users/edmonds_ha/Downloads/OpenSyobon3DS-master/source/filesystem.cpp', needed by `filesystem.o'

And yes, all my paths are correct.
 
Last edited by TheDuckMan64,

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
3,023
Country
Italy
Did you change something in the sources?

If you copy che source folder on your disk, go in the folder and type make everything shoul work.

I'm on a windows machine but it should be the same on linux too.

If you modified the makefile send it to me and I'l check it.
 

TheDuckMan64

Chicken nugget.
Member
Joined
Oct 9, 2015
Messages
355
Trophies
0
XP
190
Country
Did you change something in the sources?

If you copy che source folder on your disk, go in the folder and type make everything shoul work.

I'm on a windows machine but it should be the same on linux too.

If you modified the makefile send it to me and I'l check it.
I re-downloaded the clean build (because I edited the old makefile) and i get the error:

/Users/me/devkitARM:??/3ds_rules: No such file or directory

make: *** No rule to make target `“/Users/me/devkitARM:??/3ds_rules'. Stop.

I have exported devkitpro and devkitarm in my path, and I have all the required files where they should be.
 

A_Random_Guy

Officially That Dev
Member
Joined
May 22, 2015
Messages
859
Trophies
0
Location
Somewhere
Website
n3dshack.weebly.com
XP
443
Country
Malaysia
Gotten an error when compiling it

Code:
Roboto_Regular.ttf
filesystem.cpp
arm-none-eabi-g++ -MMD -MP -MF /c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/build/filesystem.d -g -Wall -O2 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard  -I/c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/source -I/c/devkitPro/libctru/include -I/c/devkitPro/portlibs/armv6k/include -I/c/devkitPro/portlibs/3ds/include -I/c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/build -DARM11 -D_3DS -fno-rtti -fno-exceptions -std=gnu++11 -findirect-inlining -c /c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/source/filesystem.cpp -o filesystem.o
loadg.cpp
arm-none-eabi-g++ -MMD -MP -MF /c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/build/loadg.d -g -Wall -O2 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard  -I/c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/source -I/c/devkitPro/libctru/include -I/c/devkitPro/portlibs/armv6k/include -I/c/devkitPro/portlibs/3ds/include -I/c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/build -DARM11 -D_3DS -fno-rtti -fno-exceptions -std=gnu++11 -findirect-inlining -c /c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/source/loadg.cpp -o loadg.o
main.cpp
arm-none-eabi-g++ -MMD -MP -MF /c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/build/main.d -g -Wall -O2 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard  -I/c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/source -I/c/devkitPro/libctru/include -I/c/devkitPro/portlibs/armv6k/include -I/c/devkitPro/portlibs/3ds/include -I/c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/build -DARM11 -D_3DS -fno-rtti -fno-exceptions -std=gnu++11 -findirect-inlining -c /c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/source/main.cpp -o main.o
c:/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/source/main.cpp: In function 'void Mainprogram()':
c:/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/source/main.cpp:2958:3: warning: assuming signed overflow does not occur when assuming that (X + c) < X is always false [-Wstrict-overflow]
   if (md > xx[1])
   ^
os3ds.cpp
arm-none-eabi-g++ -MMD -MP -MF /c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/build/os3ds.d -g -Wall -O2 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard  -I/c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/source -I/c/devkitPro/libctru/include -I/c/devkitPro/portlibs/armv6k/include -I/c/devkitPro/portlibs/3ds/include -I/c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/build -DARM11 -D_3DS -fno-rtti -fno-exceptions -std=gnu++11 -findirect-inlining -c /c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/source/os3ds.cpp -o os3ds.o
c:/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/source/os3ds.cpp: In function 'void DrawString(int, int, const char*, u32)':
c:/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/source/os3ds.cpp:58:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  shadow = (c==RGBA8(0x0, 0x0, 0x0, 0xff))?RGBA8(0xff, 0xff, 0xff, 0xff):RGBA8(0x0, 0x0, 0x0, 0xff);
             ^
sfx.cpp
arm-none-eabi-g++ -MMD -MP -MF /c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/build/sfx.d -g -Wall -O2 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard  -I/c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/source -I/c/devkitPro/libctru/include -I/c/devkitPro/portlibs/armv6k/include -I/c/devkitPro/portlibs/3ds/include -I/c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/build -DARM11 -D_3DS -fno-rtti -fno-exceptions -std=gnu++11 -findirect-inlining -c /c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/source/sfx.cpp -o sfx.o
linking OpenSyobon3DS.elf
c:/devkitPro/libctru/lib\libsfil.a(sfil_png.o): In function `_sfil_read_png_file_fn':
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:11: undefined reference to `png_get_io_ptr'
c:/devkitPro/libctru/lib\libsfil.a(sfil_png.o): In function `_sfil_load_PNG_generic':
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:24: undefined reference to `png_create_read_struct'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:29: undefined reference to `png_create_info_struct'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:36: undefined reference to `png_set_longjmp_fn'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:37: undefined reference to `png_destroy_read_struct'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:43: undefined reference to `png_set_read_fn'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:44: undefined reference to `png_set_sig_bytes'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:45: undefined reference to `png_read_info'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:50: undefined reference to `png_get_IHDR'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:57: undefined reference to `png_set_expand'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:79: undefined reference to `png_get_valid'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:85: undefined reference to `png_read_update_info'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:102: undefined reference to `png_read_image'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:104: undefined reference to `png_destroy_read_struct'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:113: undefined reference to `png_destroy_info_struct'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:115: undefined reference to `png_destroy_read_struct'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:83: undefined reference to `png_set_packing'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:55: undefined reference to `png_get_valid'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:77: undefined reference to `png_set_expand_gray_1_2_4_to_8'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:80: undefined reference to `png_set_tRNS_to_alpha'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:68: undefined reference to `png_set_gray_to_rgb'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:64: undefined reference to `png_set_filler'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:61: undefined reference to `png_set_scale_16'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:72: undefined reference to `png_set_palette_to_rgb'
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:73: undefined reference to `png_set_filler'
c:/devkitPro/libctru/lib\libsfil.a(sfil_png.o): In function `_sfil_read_png_buffer_fn':
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:17: undefined reference to `png_get_io_ptr'
c:/devkitPro/libctru/lib\libsfil.a(sfil_png.o): In function `sfil_load_PNG_file':
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:134: undefined reference to `png_sig_cmp'
c:/devkitPro/libctru/lib\libsfil.a(sfil_png.o): In function `sfil_load_PNG_buffer':
c:/Users/Danial/Desktop/CFW/sfillib/libsfil/source/sfil_png.c:150: undefined reference to `png_sig_cmp'
collect2.exe: error: ld returned 1 exit status
make[1]: *** [/c/Users/Danial/Desktop/CFW/OpenSyobon3DS-master/OpenSyobon3DS.elf] Error 1
make: *** [build] Error 2
 

nop90

Well-Known Member
OP
Member
Joined
Jan 11, 2014
Messages
1,556
Trophies
0
Location
Rome
XP
3,023
Country
Italy
Gotten an error when compiling it

Check if you have xerpi's libsfil and that the vesion is updated to the last (I updated it two months ago).

If your lib is ok you could try changing the position of the lib in the makefile. In my makefile there is:

Code:
 LIBS   := -lsftd -lfreetype -lpng -lz -lsf2d -lsfil -lctru -lm

giving a close look to it, to respect dependancies -lsfil should be placed in third position

Code:
 LIBS   := -lsftd -lfreetype -lsfil -lpng -lz -lsf2d -lctru -lm

On my system there is no difference, but try if this solve the problem.
 

A_Random_Guy

Officially That Dev
Member
Joined
May 22, 2015
Messages
859
Trophies
0
Location
Somewhere
Website
n3dshack.weebly.com
XP
443
Country
Malaysia
Check if you have xerpi's libsfil and that the vesion is updated to the last (I updated it two months ago).

If your lib is ok you could try changing the position of the lib in the makefile. In my makefile there is:

Code:
 LIBS   := -lsftd -lfreetype -lpng -lz -lsf2d -lsfil -lctru -lm

giving a close look to it, to respect dependancies -lsfil should be placed in third position

Code:
 LIBS   := -lsftd -lfreetype -lsfil -lpng -lz -lsf2d -lctru -lm

On my system there is no difference, but try if this solve the problem.

Thanks. Changing the position fixed it
 
General chit-chat
Help Users
  • No one is chatting at the moment.
    Skelletonike @ Skelletonike: No idea what that is tbh, is that like the iso or something?