SEGA Saturn 29th Anniversary Game Competition - Discussion Thread

EmeraldNova

Pluto Supporter
Non-judges, please discuss competition entries from the SEGA Saturn 29th Anniversary Game Competition thread here.
 
I'm gonna go out on a limb and say that maybe a demo for a platformer or something entertaining is in order for this. Hopefully platformer...:afraid::ahhhhh::banana::biggrin::whistling:
 
Always great to see the Saturn is still alive and kicking even at this year!

As of writing this, there's one entry in the official thread which is Red Moon: Lost Days...I happened to play it before - it's a game set in the same universe of another VN / RPG hybrid the dev made for PC (Red Moon of April), following a different story through what can be considered one of the "antagonists" of the first game, so as far as lore / universe go, it's really interesting to get to know more about that character.

RM:LD is more straightforward than RMA, but it's on Saturn, so that makes it just as cool. The game is on the short side but the plot is well written and the ending actually surprised me because
it's basically mechas with something similar to the nen ability used in the shounen Hunter x Hunter
, so that makes it great for me already, lmao

Best of luck to all participants!
 
Many 'alive' proyects this year, i´m sure enough that they will give a lot of visibility to the console and its homebrew possibilities
 
  • Like
Reactions: vbt
@JBeretta Nice stuff with Cold case !
However, the Satiator complains about invalid headers for tracks 1, 3, 4 and 5.
Opening and exporting those tracks to wav with Audacity solved the issue.
 
@JBeretta Nice stuff with Cold case !
However, the Satiator complains about invalid headers for tracks 1, 3, 4 and 5.
Opening and exporting those tracks to wav with Audacity solved the issue.
Thanks for this! tested it the other day and it was fine but won't load the tracks now! i've done what you said and it's ok now, have re-uploaded
 
Thanks for this! tested it the other day and it was fine but won't load the tracks now! i've done what you said and it's ok now, have re-uploaded
Yes, v0.11 works fine on the Satiator.
FYI, using MediaInfo, I noticed that all the problematic tracks in v0.1 had the producer field set at "Logic Pro X".

A small detail, but the health gauge and the half transparent rectangles under the pause menu or the messages are slightly rotated clockwise. It creates a small aliasing and an overdraw vertical line in the center of the half transparent rectangles. Is it intended ?
 
Yes, v0.11 works fine on the Satiator.
FYI, using MediaInfo, I noticed that all the problematic tracks in v0.1 had the producer field set at "Logic Pro X".

A small detail, but the health gauge and the half transparent rectangles under the pause menu or the messages are slightly rotated clockwise. It creates a small aliasing and an overdraw vertical line in the center of the half transparent rectangles. Is it intended ?
i'm not sure why it looks like that - its not intentional! i'm using the jo_engine functions "jo_sprite_change_sprite_scale_xy" to change the scale and "jo_sprite_draw3D" to draw it. thought it might be a glitch due to using scaled sprites and transparency
 
i'm not sure why it looks like that - its not intentional! i'm using the jo_engine functions "jo_sprite_change_sprite_scale_xy" to change the scale and "jo_sprite_draw3D" to draw it. thought it might be a glitch due to using scaled sprites and transparency
in jo if you rotate the sprite, than its not rotated correctly at 90 deg intervals, there is slight dicrepancy (2-3deg)
 
I love seeing what the talented devs in this community come up with every year. Especially with genres or series that had little to no representation on the console during its original life span, or that ran poorly because of the various issues back in the day.

This year, Cold Case has really captured my attention as well as the Metal Gear demo. Translations are always exciting and the visual novels for fans of that genre are great.

The one genre that is practically nonexistent on the Saturn that I'd love a good homebrew effort for is a Mario Kart style game. Even the Jaguar has Atari Karts while the PS1 has Crash Team Racing. Imagine a 32-bit Sonic All Stars racing with Joe Musashi throwing Ninja Stars at Sonic. LOL
 
i'm not sure why it looks like that - its not intentional! i'm using the jo_engine functions "jo_sprite_change_sprite_scale_xy" to change the scale and "jo_sprite_draw3D" to draw it. thought it might be a glitch due to using scaled sprites and transparency
In jo_engine\sprite.c, try these 2 changes to prevent Jo from using an angle of 1 instead of 0 :
C:
void                    jo_sprite_draw(const int sprite_id, const jo_pos3D * const pos, const bool centered_style_coordinates, const bool billboard)
{
#if JO_COMPILE_USING_SGL
    FIXED               sgl_pos[5];
    //SPR_ATTR            attr = SPR_ATTRIBUTE(0, No_Palet, No_Gouraud, ECdis, sprNoflip | FUNC_Sprite);
    SPR_ATTR            attr = SPR_ATTRIBUTE(0, No_Palet, No_Gouraud, ECdis, sprNoflip);

    sgl_pos[2] = jo_int2fixed(pos->z);
    sgl_pos[3] = __jo_sprite_attributes.fixed_scale_x;
    sgl_pos[4] = __jo_sprite_attributes.fixed_scale_y;
    if (centered_style_coordinates)
    {
        sgl_pos[0] = jo_int2fixed(pos->x);
        sgl_pos[1] = jo_int2fixed(pos->y);
    }
    else
    {
        sgl_pos[0] = jo_int2fixed(pos->x - JO_TV_WIDTH_2 + JO_DIV_BY_2(__jo_sprite_def[sprite_id].width));
        sgl_pos[1] = jo_int2fixed(pos->y - JO_TV_HEIGHT_2 + JO_DIV_BY_2(__jo_sprite_def[sprite_id].height));
    }
    __jo_set_sprite_attributes(&attr, sprite_id);
    if (billboard)
        slPutSprite(sgl_pos, &attr, 0);
    else if (sgl_pos[3] != sgl_pos[4])
        //slDispSpriteHV(sgl_pos, &attr, 1/* SGL bug: doesn't work properly if angle is null */);
        slDispSpriteHV(sgl_pos, &attr, 0);
 
In jo_engine\sprite.c, try these 2 changes to prevent Jo from using an angle of 1 instead of 0 :
C:
void                    jo_sprite_draw(const int sprite_id, const jo_pos3D * const pos, const bool centered_style_coordinates, const bool billboard)
{
#if JO_COMPILE_USING_SGL
    FIXED               sgl_pos[5];
    //SPR_ATTR            attr = SPR_ATTRIBUTE(0, No_Palet, No_Gouraud, ECdis, sprNoflip | FUNC_Sprite);
    SPR_ATTR            attr = SPR_ATTRIBUTE(0, No_Palet, No_Gouraud, ECdis, sprNoflip);

    sgl_pos[2] = jo_int2fixed(pos->z);
    sgl_pos[3] = __jo_sprite_attributes.fixed_scale_x;
    sgl_pos[4] = __jo_sprite_attributes.fixed_scale_y;
    if (centered_style_coordinates)
    {
        sgl_pos[0] = jo_int2fixed(pos->x);
        sgl_pos[1] = jo_int2fixed(pos->y);
    }
    else
    {
        sgl_pos[0] = jo_int2fixed(pos->x - JO_TV_WIDTH_2 + JO_DIV_BY_2(__jo_sprite_def[sprite_id].width));
        sgl_pos[1] = jo_int2fixed(pos->y - JO_TV_HEIGHT_2 + JO_DIV_BY_2(__jo_sprite_def[sprite_id].height));
    }
    __jo_set_sprite_attributes(&attr, sprite_id);
    if (billboard)
        slPutSprite(sgl_pos, &attr, 0);
    else if (sgl_pos[3] != sgl_pos[4])
        //slDispSpriteHV(sgl_pos, &attr, 1/* SGL bug: doesn't work properly if angle is null */);
        slDispSpriteHV(sgl_pos, &attr, 0);
Thanks fafling, that's fixed the issue!

game-0392.png
 
@not-AI-generated ,

Cool stuff. Obviously you will get more people to try out your game if you implement controller support. But I'm sure you know that and ran out of time.

You may (re)start a new game (with a new psuedo-randomly-selected word that varies each time you restart the game) by pressing the Escape key.

I swear there is a memory mapped register you can use for random (pseudo random?) values on the Saturn. If not you can grab the time and seed that (with obvious issues of the year being 1994 because of the player's dead battery....).
 
My entry is "Jacky Car" which is a racing game adapted from the eponym game for TI calculators here : Ti-Fr v3 !

Basically, it's like OutRun, but viewed from top, and without beaches, and without open cars too. It also shares some common points with PONG (regarding the lack of fancy graphics), Sonic (regarding the choice of the color of the road) and also Radiant Silvergun regarding the fact that the score is displayed in the top left area of the screen.
Apart from the race itself, the game features a small demo that can be displayed when the score reaches 999999 points.

Controls :
- Left / Right : move the car
- A or B or C : exit the race
- Start : exit to Saturn multiplayer

Last year I promised @vbt to publish an entry in this game competition, and despite the poor quality of this entry I'm glad I could fulfill this promise :)
well done @cafe-alpha and thanks for the good times
 
Less than 4 hours to go. Just thanks and good luck to all the participants, this is a present and the best day of the year as a Saturn user.
I miss many other entries seen over 2023 i just hope you the best and keep going in the future with the proyects. Thanks again.
 
Back
Top