Mega Engine GB [pretty much discontinued]
Author Message
JohnLeagsdurg Offline
Baby-baby-ba-ba-baby.
**
Registered

Posts: 38
Threads: 5
Joined: Mar 2015
Reputation: 2
#1
Mega Engine GB [pretty much discontinued]
A note before proceeding:
This engine is a proof-of-concept of my abilities in recreating a style of other systems that the Mega Man games are made. This engine was originally intended to be a branch of Mega Engine for it to be a base for making Game Boy styled games, but until further i realized that it is very hard for me to handle stability on this "engine" and my first experiences on GML are not enough for this, i've discontinued it. My lesson to give out there is that i have absolutely no need to make a branch of Mega Engine that switches the NES aestethics to the Game Boy and further branches using the Wily Wars graphics style, Mega Man 8, etc. can be done by yourself. I'll just leave it here if someone really needs to start a game with this engine, but the rest is up to you.

MEGA ENGINE GB
a.k.a. MEGA ENGINE: GAME BOY EDITION


Mega Engine GB is my own unofficial version of WreckingPrograms' Mega Engine, which aims to modify the original version's source to resemble the aesthetics of the Mega Man Game Boy Series (Mega Man: Dr. Wily's Revenge, Mega Man II, Mega Man III, Mega Man IV and Mega Man V). Like the original Mega Engine, it is an easy to use engine and has been acclaimed for surpassing the code quality of Blyka's Door's Mega Man Engine, but includes some differences departing from the original version. This idea of a modified Mega Engine with the Game Boy style was born from my imagination and it was a challenge to prove my GML coding experiences. The development for this engine took almost a month, starting from the mid-December 2017 to mid-January 2018, with help from some people over at Sprites Inc.

Features include:
  • 60 FPS Classic Mega Man Gameplay adapted into the Game Boy version of the games, complete with physics modification.
  • Retaining the flexibility to modify the engine.
  • New samples of the Title Screen, Stage Introduction and Weapon Get screens, gathered off from the Mega Man Game Boy games.
  • A new, more basic, Pause Menu.

Everything in Mega Engine GB has pretty much the same functionality, just it changes some visual aspects as a ready-made template to make your own Game Boy styled Mega Man fangames. Currently, this engine is only usable in Game Maker Studio 1.4. No plans for a Game Maker 8.1 version , while GMS2 has to be yet ported with help of someone.

Screenshots:
[Image: qROmf5v.png]
(Yes, the title screen's just like this at the moment.)
[Image: Xpkwkqx.png]
[Image: oh8dZjO.png]
[Image: bPpJf1H.png]
[Image: wfHKoEO.png]
[Image: qksjXT6.png]
[Image: ZzsCJiU.png]

F.A.Q.:
Q: I spotted an inaccuracy.
A: The current build may not be really accurate to the Mega Man GB games, but if you're good enough at GML, you can fix that by yourself. Notably, this engine seems to have missing a smooth friction system, and for that you'll have to do it yourself.

Changelog:
Code:
v1.2 (19/01/18) changelog:
-The pause screen will now pan up instead of fading in.
-Forgot to stop the Pharaoh Shot weapon's animation in the Weapon Get screen after the text typing begins.

v1.1.2 (18/01/18) changelog:
-Changed objWeaponEnergySmall's drawing event to just draw the sprite without invidivual palette masks.
-Fixed the white pixel patch on Mega Man's slide sprite.
-Fixed the white contrast on the HUD sprites.
-The pause screen shouldn't draw the unneccessary background sprite anymore, instead it will draw a white rectangle. (But i have kept the sprPauseMenuBG incase you really need it.)

v1.1.1 (15/01/18) changelog:
-Weapons no longer fill with 28 of ammo after spawning, instead it fills with the correct max amount.
-Weapon icons have a white background in order to avoid contrast.

v1.1 (15/01/18) changelog:
-Changed the unexistent icon sprite in objSectionSwitcher while switching weapons mid-transition.
-The sample level gets some tweaks.
-Fixed the Metal Blade's crashing problem which happened when it is fired inside an enemy.
-Mega Man will flash entirely and items will never flash anymore.

v1.0 (14/01/18) changelog:
-Release of the engine.

Download:
Game Maker Studio 1.4

Credits:
  • WreckingPrograms: Original Mega Engine
  • NaCL: Beta testing
  • Soulephant: Programming assist
  • SnoruntPyro: Programming assist
  • PKWeegee: Mega Man IV sound rips
  • Blyka's Door: Mega Man V sound rips

Be sure to give me feedback when using the engine.

(This post was last modified: 25-04-2018, 02:17 PM by JohnLeagsdurg. Edit Reason: I'm declaring it discontinued officially despite the late timing. )
14-01-2018, 10:33 PM
Find Reply
Lionheart261 Offline
Still Here
***
Registered

Posts: 78
Threads: 2
Joined: Nov 2017
Reputation: 4
#2
RE: Mega Engine GB - Finally, it's Mega Engine but in Game Boy flavour.
Hm. How interesting.

One suggestion I might have, purely for aesthetics' sake, is to see if you could add a global variable which, depending on whether its true or false, switches the game's color palette between the standard grey color scheme and the Game Boy's green color scheme.

But overall, this looks like a really interesting project. I might consider using it for an idea I've had for a while now.
15-01-2018, 03:58 AM
Find Reply
N-Mario Offline
Video Game Veteran
****
Registered

Posts: 115
Threads: 18
Joined: May 2012
Reputation: 4
#3
RE: Mega Engine GB - Finally, it's Mega Engine but in Game Boy flavour.
Either
1. Obligatory "Finishing what I started years ago."
or
2. New engine, but this time on GameMaker just because multiple game engines is apparently a good idea.

[Image: dolphin-turn.gif]
Wanna go for a ride?
15-01-2018, 07:14 AM
Website Find Reply
Renhoek Offline
Made an account to use once or twice.
**
Registered

Posts: 48
Threads: 2
Joined: Mar 2016
Reputation: 5
#4
RE: Mega Engine GB - Finally, it's Mega Engine but in Game Boy flavour.
been eying this on the MAGMML3 discord and I'm glad to see it being released but I have a few issues I'd like to address

- firstly in the conveyor belt room you can clip through the lower conveyor if you don't slide. (you should also put some tiles there during the transition, the white bar is weird)

- palette's don't quite work the same way as they do in the gameboy titles, items shouldn't flash when Megaman is charging and Megamans face should be alternating colours

- You did the water object placement wrong, you only need to put water at the surface, that's why there's a bunch of splashing when jumping out of water (I pointed this out on discord idk if you saw it)
[Image: a9nI5UD.png]

- you didn't put a ladder on the lower screen here but you can still grab the ladder above but the screen won't scroll
[Image: zlAbluK.png]

- the Colton area's a bit cheap maybe spread the enemies out a bit more so you don't get impossible jumps

- I got this error message while hitting a transition and switching weapons

Code:
___________________________________________
############################################################################################
FATAL ERROR in
action number 1
of Draw Event
for object objSectionSwitcher:

Variable objSectionSwitcher.sprWeaponIconsColor(100521, -2147483648) not set before reading it.
at gml_Object_objSectionSwitcher_DrawEvent_1 (line 9) -             draw_sprite_ext(sprWeaponIconsColor, global.weapon, round(objMegaman.x-8) + objMegaman.image_xscale, round(objMegaman.y-30), 1, 1, 0, c_white, 1);
############################################################################################

- You didn't put any checkpoints in the example level

- The upper picket man on the picket men screen's projectiles get thrown too high and can't hurt you

- Pharoh man's missing a lot of his charging up animations

- Boss health doesn't show up on the pause screen (also you should consider making the pause screen pan up instead of fading, I forget what the circumstances are that determine if it scrolls up or fades though.)

- I think you forgot to set the weapon ammo somewhere after defeating a boss because I had a tonne of weapon energy for metal blade and it took a while before the bar started to come down.



it's a cute engine so far and I hope to see this get some good use in future
15-01-2018, 10:06 AM
Website Find Reply
TigerKiller003 Offline
I'll Kill For Ya
**
Registered

Posts: 20
Threads: 0
Joined: Aug 2017
Reputation: 0
#5
RE: Mega Engine GB - Finally, it's Mega Engine but in Game Boy flavour.
About time you announced this.
15-01-2018, 10:13 AM
Find Reply
JohnLeagsdurg Offline
Baby-baby-ba-ba-baby.
**
Registered

Posts: 38
Threads: 5
Joined: Mar 2015
Reputation: 2
#6
RE: Mega Engine GB - Finally, it's Mega Engine but in Game Boy flavour.
I got the feedback. Regarding renhoek's post:
These problems will be fixed soon, but since i am a GML beginner, i can show that i've did the most of what i can, but i felt like the HUD bar panning would be not really for me since it's literally scrolling the whole pause menu screen from below, including all the weapon bars and icons.
Since the sample level is nearly a crap effort thing for me, that doesn't count as the engine's problem, but it's because that it is a shrinked version of the original Mega Engine's sample level.
I'm the only person who has full charge on the project, while few people helped me point out the problems, but i will get the bugs away as you wished.

(This post was last modified: 15-01-2018, 12:51 PM by JohnLeagsdurg.)
15-01-2018, 12:48 PM
Find Reply
JohnLeagsdurg Offline
Baby-baby-ba-ba-baby.
**
Registered

Posts: 38
Threads: 5
Joined: Mar 2015
Reputation: 2
#7
RE: Mega Engine GB - Finally, it's Mega Engine but in Game Boy flavour.
Version 1.1 released. This includes some bug fixes and several inaccuracies.

Code:
v1.1 (15/01/18) changelog:
-Changed the unexistent icon sprite in objSectionSwitcher while switching weapons mid-transition.
-The sample level gets some tweaks.
-Fixed the Metal Blade's crashing problem which happened when it is fired inside an enemy.
-Mega Man will flash entirely and items will never flash anymore.

Download unavailable.

NOTE: Regarding the intention to recreate the HUD's panning transition, i cannot really do it at this time, so perhaps i might hand this to those who want to assist me to it.

(This post was last modified: 15-01-2018, 08:34 PM by JohnLeagsdurg.)
15-01-2018, 07:28 PM
Find Reply
JohnLeagsdurg Offline
Baby-baby-ba-ba-baby.
**
Registered

Posts: 38
Threads: 5
Joined: Mar 2015
Reputation: 2
#8
RE: Mega Engine GB - Finally, it's Mega Engine but in Game Boy flavour.
Sorry for another double post, but...
Version 1.1.1 released. There's one bug fix and a visual change to a sprite.

Code:
v1.1.1 (15/01/18) changelog:
-Weapons no longer fill with 28 of ammo after spawning, instead it fills with the correct max amount.
-Weapon icons have a white background in order to avoid contrast.

Download unavailable.

Hopefully there shouldn't be any bugs anymore...

(This post was last modified: 18-01-2018, 01:42 PM by JohnLeagsdurg.)
15-01-2018, 08:33 PM
Find Reply
Yozzaxia1311 Offline
Bored Programmer
***
Registered

Posts: 62
Threads: 3
Joined: Jun 2016
Reputation: 2
#9
RE: Mega Engine GB - Finally, it's Mega Engine but in Game Boy flavour.
A couple bugs:
- Small weapon energy still flashes when charging a shot
- Small health doesn't round its drawing
- Player collides with solids outside of bounds (I get it's meant to save the player from a designer's incompetence, but no official game does this and can be annoying when, for example, trying to make a jump near the top bounds, but then hitting an unexpected ceiling)
- Player can grab a ladder above off-screen without triggering a transition
[Image: jXMt7N5.png]
- Solids are incorrectly handled in checkGround() if the solid isn't 16 x 16
- Can't climb ladders by pressing down in the air

Suggestions:
- GM:S allows for more optimized rooms directly in the room editor, unlike GM8.1. If you aren't going to port this to GM8.1, then why not stretch objects?
[Image: 4KPQIXP.png]
- A simpler checkpoint system that doesn't require putting coords in the checkpoint's creation code
- Place the music in a separate folder
- Remove the white patch around the legs on Mega Man's slide sprite
- The life number hud element shouldn't use a different shade of white than the rest of the hud
- A pause menu that slides up. I quickly did this myself by modifying and adding bits of code, but this should already be in the engine

Overall a very neat version of the Mega Engine. I may use this for small wacky projects in the future.

*chew*
(This post was last modified: 18-01-2018, 01:09 AM by Yozzaxia1311.)
18-01-2018, 12:39 AM
Find Reply
JohnLeagsdurg Offline
Baby-baby-ba-ba-baby.
**
Registered

Posts: 38
Threads: 5
Joined: Mar 2015
Reputation: 2
#10
RE: Mega Engine GB - Finally, it's Mega Engine but in Game Boy flavour.
(18-01-2018, 12:39 AM)Yozzaxia1311 Wrote: A couple bugs:
- Small weapon energy still flashes when charging a shot
- Small health doesn't round its drawing
- Player collides with solids outside of bounds (I get it's meant to save the player from a designer's incompetence, but no official game does this and can be annoying when, for example, trying to make a jump near the top bounds, but then hitting an unexpected ceiling)
- Player can grab a ladder above off-screen without triggering a transition
- Solids are incorrectly handled in checkGround() if the solid isn't 16 x 16
- Can't climb ladders by pressing down in the air

Suggestions:
- GM:S allows for more optimized rooms directly in the room editor, unlike GM8.1. If you aren't going to port this to GM8.1, then why not stretch objects?
- A simpler checkpoint system that doesn't require putting coords in the checkpoint's creation code
- Place the music in a separate folder
- Remove the white patch around the legs on Mega Man's slide sprite
- The life number hud element shouldn't use a different shade of white than the rest of the hud
- A pause menu that slides up. I quickly did this myself by modifying and adding bits of code, but this should already be in the engine

Overall a very neat version of the Mega Engine. I may use this for small wacky projects in the future.

Sorry for literally not checking out since one day my internet was borked. Here's all my responses regarding your feedback.

Code:
- Player collides with solids outside of bounds (I get it's meant to save the player from a designer's incompetence, but no official game does this and can be annoying when, for example, trying to make a jump near the top bounds, but then hitting an unexpected ceiling)
- Player can grab a ladder above off-screen without triggering a transition
- Can't climb ladders by pressing down in the air
Some of these bugs you listed above are literally the problems with the sample level design and not about actual code problems. Obviously, about the collision stuff, the code is very messy when you have to edit Mega Man's core scripts, even the default Mega Engine has few of the problems you have seen. Also, i don't think you could start climbing if you pushed down instead of up, because i always do start climbing with up.

Code:
- Small health doesn't round its drawing
This is Game Maker Studio's problem because WreckingPrograms went with using the default view resizing method rather than using a much complicated drawing resizing method, but this is not very important and not really a bug.

So far, the only "bug" i can fix is that i simply forgot to take away the palette drawing and make it draw itself only.

Code:
- A simpler checkpoint system that doesn't require putting coords in the checkpoint's creation code
I have no plans to actually change the checkpoint object because there would be problems with setting up the coordinates it they were automatic.

Code:
- GM:S allows for more optimized rooms directly in the room editor, unlike GM8.1. If you aren't going to port this to GM8.1, then why not stretch objects?
I once did something like that, but there was problems with the collision code which weren't adapted correctly, so i'm much more habited to use 16x16 tiling collisions. If perhaps the MaGMML2 devkit had automated collisions with resizing object support, well, the devkit has different code from Mega Engine. This is not MaGMML2.

Code:
- Place the music in a separate folder
This can be done by yourself, but beware that Game Maker Studio can sometimes mess up external files when you move the files on folders within the program, it literally transforms the .ogg files into FOLDERS, and recovering them will be uncertain. I suggest backing up your music files you want to use outside the project file before reimporting them again.

Code:
- A pause menu that slides up. I quickly did this myself by modifying and adding bits of code, but this should already be in the engine
If you did that yourself, i'll be glad if you gave me the code you did to make this effect, i will give you credit for when i'll release a future version that uses this. A reason why i didn't like doing this is that i thought it's really hard to change to it instead of the fade in transition.

In regards to all the previous code i left unmodified, I don't own the original Mega Engine, WreckingPrograms does.

Anyways...

A NEW MINOR UPDATE JUMPS OUT IN THE WILD.



Version 1.1.2 released. This minor version has to do with several visual aspect fixes than bug fixes. (But sadly still no pause menu panning yet MM - Frown)

Code:
v1.1.2 (18/01/18) changelog:
-Changed objWeaponEnergySmall's drawing event to just draw the sprite without invidivual palette masks.
-Fixed the white pixel patch on Mega Man's slide sprite.
-Fixed the white contrast on the HUD sprites.
-The pause screen shouldn't draw the unneccessary background sprite anymore, instead it will draw a white rectangle. (But i have kept the sprPauseMenuBG incase you really need it.)

Download unavailable.

(This post was last modified: 19-01-2018, 01:07 PM by JohnLeagsdurg.)
18-01-2018, 01:35 PM
Find Reply
JohnLeagsdurg Offline
Baby-baby-ba-ba-baby.
**
Registered

Posts: 38
Threads: 5
Joined: Mar 2015
Reputation: 2
#11
RE: Mega Engine GB - Finally, it's Mega Engine but in Game Boy flavour.
Version 1.2 released. In this version, the (not so) long awaited feature is that the weapon pause screen can now pan in instead of fading, making the engine a better step towards stability!

Code:
v1.2 (19/01/18) changelog:
-The pause screen will now pan up instead of fading in.
-Forgot to stop the Pharaoh Shot weapon's animation in the Weapon Get screen after the text typing begins.

Download here.

EDIT (20/01/18): Since i've forgot to edit the max vspeed value, i'll suggest everybody who uses this engine to replace the following number in the maxVspeed variable in objMegaman's create event into 4.5. I don't want to make another minor update that just changes it.

(This post was last modified: 19-01-2018, 11:24 PM by JohnLeagsdurg.)
19-01-2018, 01:07 PM
Find Reply
TigerKiller003 Offline
I'll Kill For Ya
**
Registered

Posts: 20
Threads: 0
Joined: Aug 2017
Reputation: 0
#12
RE: Mega Engine GB - Finally, it's Mega Engine but in Game Boy flavour.
I don't know if this is an issue, but whatever.
[Image: kv9RQX.jpg]
You can go through that wall and fall in a pit.
(This post was last modified: 28-01-2018, 12:43 PM by TigerKiller003.)
28-01-2018, 12:07 PM
Find Reply
JohnLeagsdurg Offline
Baby-baby-ba-ba-baby.
**
Registered

Posts: 38
Threads: 5
Joined: Mar 2015
Reputation: 2
#13
RE: Mega Engine GB - Finally, it's Mega Engine but in Game Boy flavour.
So it seems like someone in the Make a Good Mega Man Level 3 discord thought that the engine seems "incomplete" because i haven't implemented the friction which is a notable physics element present in the Mega Man GB games. Let's say, i am not really the person who is capable of doing this, since infact it has to be done inside the really messy playerStep script for objMegaman, and i need someone who can handle this. My promise to want this engine to be accurate to the orignal GB games still has to be fullfilled, so if your interested, please send me a private message.

28-01-2018, 03:17 PM
Find Reply
JohnLeagsdurg Offline
Baby-baby-ba-ba-baby.
**
Registered

Posts: 38
Threads: 5
Joined: Mar 2015
Reputation: 2
#14
RE: Mega Engine GB - Finally, it's Mega Engine but in Game Boy flavour.
So it seems like something has to be renounced...i have discovered another thing i have forgot to modify which is the gravity speed that was associated to the gravityCheckGround and gravityNoGround scripts, and i'm surprised, also there were few problems i managed to fix in my own fangame that uses this edited version. The chances to get my engine to be very accurate to the GB games have been shattered.

Since not many people have been looking forward to this project anymore and the advent of the MaGMML3's devkit (and to an extent, Mega Man Shattered Diamond's Circadian Engine) to come way later, i'd officially declare that Mega Engine GB is losing in public use, and it has been a base for my joke fangame that is based off a strange MM2 rom hack called Cut Man's Bad Scizzors Day. Said fangame will use this branch and further fixes are made in this fangame, but due to the rise of a very busy schedule, i cannot be able to go back to make minor fixes to Mega Engine GB.

Mega Engine GB, infact, is a proof-of-concept of what i could try to do to emulate a different system while retaining Mega Man gameplay, and it succeeded. In a better consideration, i think that "big" branch edits like this isn't even enough to have a public release, but it was worth the work. If your still curious to use this branch, you are free to keep using it, but consider that further minor updates won't come out.

26-03-2018, 09:25 PM
Find Reply


Forum Jump:


Users browsing this thread:
1 Guest(s)

Return to Top