Streets of Rage X (Windows / Android)

In Progress Streets of Rage X (Windows / Android) Beta 33

No permission to download
The project is currently under development.
kratus.PNG

Hello...
Hoho-virtuoso, game is great.

I tested v13 and it seemed unstable.
the game dumped me on SoR 1 Rebellion - stage 1 with Mr.X. And also with Bruce the Clown and Samurai Yamato on SoR 2 - ST 3 - ST 3H when a bike is blown up.
I ran the Saves files on V.12 and it works NO PROBLEMS there.

LOL-Bugs about the agents McBride and etc.
- I think the New way of shooting [F; F; HIT] causes injuries a lot.
They are very slow, have no fighting skills and if they can't fire intensively they are completely mindless.

- Also when the game is at 1 HIT - Kill. They die as soon as they throw someone.

The classics mods have no problem with me - they look fantastic. Thank you for this collection!!!
 
Hoho-virtuoso, game is great.
@vokilvulga Thanks :)

the game dumped me on SoR 1 Rebellion - stage 1 with Mr.X. And also with Bruce the Clown and Samurai Yamato on SoR 2 - ST 3 - ST 3H when a bike is blown up.
Did you mean the new Mr. X attack which calls enemies as allies? Indeed this is not a bug, this is a new move.

I ran the Saves files on V.12 and it works NO PROBLEMS there.
I don't recommend using the previous save files in newer game versions, it can cause problems. I suggest playing the entire game again in order to unlock everything but from the beta 13 onwards you can unlock everything with 1 playthrough (at least during the beta state).

LOL-Bugs about the agents McBride and etc.
- I think the New way of shooting [F; F; HIT] causes injuries a lot.
They are very slow, have no fighting skills and if they can't fire intensively they are completely mindless.
This is not a bug, indeed this is the new way to perform the shooting attack.

- Also when the game is at 1 HIT - Kill. They die as soon as they throw someone.
Yeah, this is working as intended, when this option is activated any hit will kill any enemy.

In SORX, when the phone booth is broken, the pieces are 4 identical square pieces, which feels unnatural and kind of weird. However, in Sor1 of sega MD,the shape of fragments are more diverse. Maybe it can be improved.
@lanyer Something seems wrong, indeed there's 3 different pieces and with different formats, as you can see in the image. However, maybe I can flip some to look different.

1688401689954.png
 
Last edited:
you can apply a random flip/rotate on each piece and it will fix this issue. I do this on some AUBF assets.
Good idea, I will test it. Thanks buddy :)

EDIT: I remembered that I applied rotations to some door pieces on SOR1 Stage 8 but this one uses an old method based on drawmethod rotate on every sprite. Once I'm applying rotation in most obstacles, I created a reusable script to automate the process and I'm share with everyone.

Currently I'm using it in the onmoveascript, so as soon as it reaches the ground the rotation will stop.
C:
void main()
{//Script used to rotate objects

    if(getglobalvar("activeText") == 0 || getglobalvar("activeText") == NULL()){
        void self        = getlocalvar("self");
        void name        = getentityproperty(self, "defaultname");
        void vAnim        = getentityproperty(self, "animationID");
        void condition1 = (name == "Statue_Pieces" && vAnim != openborconstant("ANI_FOLLOW2") && vAnim != openborconstant("ANI_FOLLOW3"));
        void condition2 = (name != "Statue_Pieces");
        int xDir        = getentityproperty(self, "xdir");
        float rotate    = getentityvar(self, "rotate");
        float limit        = 359;
        float add        = 3;

        if(condition1 || condition2){

            //START ROTATE VARIABLE
            if(rotate == NULL()){setentityvar(self, "rotate", 0);}

            //APPLY ROTATE VARIABLE IF NULL
            if(rotate != NULL()){
               
                //FACING RIGHT
                if(xDir < 0){
                    if(rotate > 0){
                        changedrawmethod(self, "enabled", 1);
                        changedrawmethod(self, "rotate", rotate);
                        setentityvar(self, "rotate", rotate-add);
                    }
                    else
                    {
                        changedrawmethod(self, "enabled", 1);
                        changedrawmethod(self, "rotate", limit);
                        setentityvar(self, "rotate", limit);
                    }
                }
               
                //FACING LEFT
                if(xDir > 0){
                    if(rotate < limit){
                        changedrawmethod(self, "enabled", 1);
                        changedrawmethod(self, "rotate", rotate);
                        setentityvar(self, "rotate", rotate+add);
                    }
                    else
                    {
                        changedrawmethod(self, "enabled", 1);
                        changedrawmethod(self, "rotate", 0);
                        setentityvar(self, "rotate", 0);
                    }
                }
            }
        }
    }
}



EDIT2:
- I think the New way of shooting [F; F; HIT] causes injuries a lot.
They are very slow, have no fighting skills and if they can't fire intensively they are completely mindless.
@vokilvulga Due to some requests including yours, I put back the gunshots (Mr. X, Robot X, Macleod, McBride and Maclean) to the jump button (only the gunshots, other projectiles stay in running attacks).
 
Last edited:
Does openbor support achievements/trophies? If not, is it possible to port or overlay the RetroAchievements of the 3 genesis classics from their website? That will further increase replayability massively. Maybe it's something you could do once the core game is more fleshed out. So low priority but on the to-do list.
 
Does openbor support achievements/trophies? If not, is it possible to port or overlay the RetroAchievements of the 3 genesis classics from their website? That will further increase replayability massively. Maybe it's something you could do once the core game is more fleshed out. So low priority but on the to-do list.
Not natively but can be created with scripts. Honestly I didn't consider it in the game's plan once this is a modern feature not present in the classics, but I can think about after the official release is launched.
 
Not natively but can be created with scripts. Honestly I didn't consider it in the game's plan once this is a modern feature not present in the classics, but I can think about after the official release is launched.
@Kratus
if you add achievements or trophies, please add an option to turn off the visual or audible cues,
if its one thing i hate as a gamer is visual contamination and i always hated that about the 360 games, the little sound and images that popped out its what killed the immersion of the ghostbusters game.

if anything, asa default, i would only inform the player of the achievement during the pause menu (in case a player is impatient ands wants to know really bad if they got a trophy or achieved something) AND or at the end of the stage along with the score information...
 
Awesome work!! the game is looking great Kratus!!
By the way, in the project I'm modding, I'm trying to make enemies when jugglin'd in the air bounce off walls, just like in Streets of Rage X. How can I do that @Kratus?
 
Last edited:
Awesome work!! the game is looking great Kratus!!
By the way, in the project I'm modding, I'm trying to make enemies when jugglin'd in the air bounce off walls, just like in Streets of Rage X. How can I do that @Kratus?
Thanks :)
About enemies bouncing walls, this system works together with the screen edge lock system. I still need to make a template with a simplified version of these features in order to post here.

But if you want to make a try, the concept is based on enabling the subject_to_screen inside the takedamage event (for enemies) and then applying a reverse velocity if a falling enemy is blocked by the screen edge through the onblocksscript event.
And once the enemy is moving normally with no damage taken, the subject_to_screen can be disabled through the update/onmovex script events.
 
Thanks :)
About enemies bouncing walls, this system works together with the screen edge lock system. I still need to make a template with a simplified version of these features in order to post here.

But if you want to make a try, the concept is based on enabling the subject_to_screen inside the takedamage event (for enemies) and then applying a reverse velocity if a falling enemy is blocked by the screen edge through the onblocksscript event.
And once the enemy is moving normally with no damage taken, the subject_to_screen can be disabled through the update/onmovex script events.
It looks complicated, but if you ever upload a template with it, I'll take a look at it. Thanks anyway @Kratus!!
 
This looks amazing.
Any chance I can be part of the testers (or maybe I’m missing where the download link is)?
Happy to try this out on my laptop and steam deck and feedback what I find.

I see it now. Will feedback what I find.

Is there a keyboard layout for this game?
 
Last edited:
Cop car, it's under several tests but working 🚔




Thank you, friend! Any feedback is always welcome :)
Do you have a keyboard layout to hand. I’ll map the keys to the steam deck since I have that in front of me and the game running on it (on main menu to press start)
 
Do you have a keyboard layout to hand. I’ll map the keys to the steam deck since I have that in front of me and the game running on it (on main menu to press start)
Do you mean a suggested button mapping? Currently I'm using the default in which is A/S/D/F/Z/X/ENTER/F12.

Oh I wondered if this feature would be added! And as always, you did an amazing job.
Thanks friend :)
 
Do you mean a suggested button mapping? Currently I'm using the default in which is A/S/D/F/Z/X/ENTER/F12.


Thanks friend :)
Thank you 😊
I made it to the controller menu with just enter and arrow keys and now mapped everything properly on the steam deck.

Working very well so far.

curious about the load function and wondering if it remembers which act I got to.

Also wondering what characters become available in arcade or other game modes.
I’m excited as you can see.
 
Cop car, it's under several tests but working 🚔




Thank you, friend! Any feedback is always welcome :)
Hell yeah! It's a must have!

You can try using the same trick they did on SOR (showing box with the car), instead of the darkening effect.
1688654325092.png
Maybe even making the car to appear on it using a new Screen, since you mastered it :)

Someone made a cool mod for the SOR4 which changes how the police car appears:
5f0f6d61befc0.jpg
 
in my opinion you shuld all the sor 3 moves viable, like was on the megadrive if you have the 6 button pad. it would be much more fun. foward foward attack , down downfoward foward attack and half circlle from back to foward attack and even cancel from 1 move to another
 
Hell yeah! It's a must have!

You can try using the same trick they did on SOR (showing box with the car), instead of the darkening effect.
View attachment 4098
Maybe even making the car to appear on it using a new Screen, since you mastered it :)

Someone made a cool mod for the SOR4 which changes how the police car appears:
5f0f6d61befc0.jpg
Thanks buddy :)

Yeah, SOR4 created a good way to call the police car. I tested the darkening method first because I already have this script used in other things. The only thing I don't like in SOR4 method is the use of the stage 1 "Streets" always as the same background, the darkening sounds more neutral to any level. However, I'm thinking on adding an empty black box with no background and with a size similar to SOR4. What do you think about?

Another question I'm thinking is about the damage type, SOR4 uses collision boxes for each fire pillar but the original does damage to any enemy visible on the screen. Currently I'm applying the DC's entity enumeration to do damage in order to replicate the original SOR1, but maybe the SOR4 collision boxes makes more sense...
 
Back
Top Bottom