Hey Xaby,
I think basically, like everything else, it all comes down to a matter of work and taking an iterative approach is a good way to go.
By that I mean focus on one part at a time instead of tackling a full game such as Streets of Rage 4.
For example, you can throw out the scrolling level aspect entirely and focus on just getting the character control, animation system and collision box system, etc working to the level of quality you want.
You would need only to create images for the stage. This could be single screen non-scrolling. Or you could create large images maybe 2 screens wide.
That gets that part out of the way. Throw up an image done.
Next you can design a player character and 1 enemy.
Then... yes... create a simple editor that lets you load in a sprite sheet or Spine/Spriter images and animations.
Depending on which way you are going... predrawn images or something like Spriter the Editor would be made one of two ways...
Pre-Drawn
Editor needs to load in your sprite sheet.
Editor needs to allow you to define hit boxes (and possibly hurt boxes as well) for each image.
Editor need to allow you define the animations by choosing images from the sprite sheet (and ideally by specifying duration of each frame)
Once you have that done you can use your Editor to define the animations and hit boxes and save them in a format easy for you to load into AGK.
Spine/Spriter
Editor needs to load in your image and animation data you created using Spine/Spriter.
Editor needs to allow you to step through the animations and define hit boxes (and possibly hurt boxes as well) for each animation based on the current step of time in the animation.
Once you have that done you can use your Editor to create the data tying your hit boxes to your animations and save them in a format easy for you to load into AGK.
Then it is just a matter of loading in the data and using it.
Obviously, that is very basic example but it is always good to keep things simple. Just break things down.
So once you are at this point... now you can get to work on your player walking around.
Then you can get to work on adding your enemy into the game.
Then you will want to look into interaction between the player and the enemy.
For this you will want to look into some simple collision detection system using the data you created in your editor.
It should be fairly easy to do that because you will create the data in a way that is very easy for you to work with.
Then you'll want to use some basic state management systems.
Like say your player hits the enemy... your collision system detects a hit to the enemy's midsection... the enemy will go into the Midsection Injured State... that state will play the animation for the enemy bent over holding their stomach... now your player character may try to jump up grab the enemy and swing them overhead. When your player character jumps and the player presses the appropriate control to do the grab and swing overhead attack you check for enemy proximity and find that enemy... then you check the state of that enemy and you find that yes indeed they are int he Midsection Injured State.... and now you can set the player to Throwing Enemy Overhead State and set that enemy to Being Flipped State and play the appropriate animations for each. When those finish that state ends. The player will be in Landed State then moving to Idle State. The enemy will move to Ground Impact State which may have them hitting the ground bouncing slightly and sliding a bit. Then the Enemy will move to Getting Up From Ground State... and so forth.
Of course once you have all of this defined you can then look into tables to map the things kind of a state control transition table or whatever.
But it is all straightforward if you break it down step by step. All of that stuff seen in the game (or any game) is simply a sequence of very simple actions.
Once you get all of that added you can look into enemy AI management by adding 2 or 3 instances of the enemy at the same time. Look into the Battle Circle. Basically, your enemies will simply let each other know "I am engaging the player" and that will cause the other enemies to simply move around maintaining a certain distance from the enemy but not actually attacking the player. Only the enemy that is engaging will move to the player to attack. At some point (when knocked down or after a certain amount of time... whatever you decide) that engaging enemy will let the others know "I am no longer engaging the player" and they will move out. The other enemies... one will decide "I am engaging the player" and they will check to see if another enemy has already said they are engaging... if so they will not engage.... if not they will let the others know "I am engaging the player"... and so forth.
This is all a very basic overview but hopefully it helps.
Once you get all of that working... then you can look into adding breakable decorative items and then look into creating tile maps and scrolling levels and enemy placements.