Mega Man Love - Free Open-Source Mega Man Engine For Love2D
#1
Might as well actually release this.

The Mega Man Love engine is a free open-source NES-styled Mega Man engine built for Love2D 0.10.2. Its main focus is accuracy and flexibility, being very close to its source material, while also being easily changeable. Two years of work has led to the engine's stable release.

Notable features:
- 60 FPS
- Dynamic asset loading, no memory crashes or stuttering
- Instant start up, making for fast debugging
- Lua and Love2D: a simple and quick scripting language, and an easy framework with a massive community, making for an excellent resource
- Dynamic player: everything can be changed, from Mega Man's left slide speed, to his right walking decel. All actions can be toggled to fit the gameplay style of any classic Mega Man game
- Tiled: the best tile map editor out there, just export maps to Lua. Mega Man Love can use as many object layers and tile layers a map file has, and loading only takes a single function call. Animated tiles are supported
- Collision system based on groups instead of object types
- JSON save system
- Pick-ups
- Checkpoint system
- Section and transition system. The camera will make automatic shifts if necessary
- Rush Jet and Coil built in
- Example demo stage with everything the engine includes, tinker around with it!

Video testing the demo:




F.A.Q.
Q: Why did you make this?
A: I don't like Game Maker and wanted an alternative to Game Maker based Mega Man engines.

Q: Why would I care? There are other engines that are easier to use.
A: I consider this engine to be like other Mega Man engines, but much more advanced. If you have the skill and knowledge, Mega Man Love will be a dream, else you might get headaches.

Q: How well does the engine perform?
A: Great. Love2D handles Lua with LuaJIT, making it much faster than something like GML. Even my terrible laptop can keep this engine at 60 FPS.

Q: My game crashed! Or what about this?
A: PM me or post in the thread the details.

Q: How do I use this?
A: There isn't any tutorials as of now, but there's a demo stage, example entities, and a boss.


Downloads:
Zip file of the source code
Windows demo
Love demo

Installation instructions for newcomers:
- Download the code editor, ZeroBrane
- Install Love2D
- Start ZeroBrane. Go to Project > Lua Interpreter, select Love, then go to Project > Project Directory > Choose, choose the folder with the Mega Man Love source code
- Run with the play arrow on the top toolbar or by pressing F6

Notes / bugs:
- There are moving one-ways, but no moving solids

I appreciate any feedback given.
*chew*
Reply
#2
I'm disappointed that this isn't a dating simulator.
Reply
#3
The met shots all have the same directional speed and not the same horizontal speed. Other than that it looks great!

Oh, and Stick Man seems... a bit easy.
Reply
#4
(18-02-2018, 10:45 PM)Diamond Wolf Wrote: The met shots all have the same directional speed and not the same horizontal speed. Other than that it looks great!

Oh, and Stick Man seems... a bit easy.

Met is fixed, but Stick Man will remain lifeless, as he is only an example of how to create a boss. Also added Mega Man's air bubbles when submerged, completely forgot about that.
*chew*
Reply
#5
I'm not in the market for a Mega Man engine, but all the same, this looks super impressive! Didn't run it myself for accuracy checking but it looks pretty solid, and the feature set is very substantial on top of everything seeming to work smoothly.

Not sure how many prospective fan game devs out there could use it well (don't know too much about Lua myself), but it's nice that there's another non-GM option available. Quite generous of you to open-source it after two years of work.

Any plans to use it for a fan game of your own, or does it end with the engine?
[Image: link-blykasdoor.png] [Image: link5.png]
Reply
#6
(21-02-2018, 02:18 AM)Blyka Wrote: I'm not in the market for a Mega Man engine, but all the same, this looks super impressive! Didn't run it myself for accuracy checking but it looks pretty solid, and the feature set is very substantial on top of everything seeming to work smoothly.

Not sure how many prospective fan game devs out there could use it well (don't know too much about Lua myself), but it's nice that there's another non-GM option available. Quite generous of you to open-source it after two years of work.

Any plans to use it for a fan game of your own, or does it end with the engine?

Thanks for kind words, Blyka! And yes I actually am using it for a fan-game.
*chew*
Reply
#7
Glad to see other Mega Man engines being made in stuff other than Game Maker! Big Grin
(I Don't like Game Maker myself)

Just some points to make as I tested this engine:
- You should NOT be able to use Rush Coil just by running toward it. You have to make it so you need to jump on top of Rush first.
- When sliding, pressing the opposite direction should cancel out of it, unless going through small tunnels.
- Most of the smaller Met's should only have 1 HP.
- Since when did the M Tanks suddenly become W tanks?
- When Mega Man gets hit, I think his push back may be too far.
- The getting hit top sprite particles are absent when Mega Man gets hit.

LOVE the expanded & shortened boss room doors. Big Grin

Otherwise, this is a very solid engine. Nice work you have there! Smile

(18-02-2018, 07:50 PM)SnoruntPyro Wrote: I'm disappointed that this isn't a dating simulator.
I can see where the confusion is on this. It's called Mega Man Love because of the framework engine called "Love". Though kinda funny if you think about it.
[Image: dolphin-turn.gif]
Wanna go for a ride?
Reply
#8
Quote:- Most of the smaller Met's should only have 1 HP.

I know, but I want to show off an enemy with multiple health, and I'm too lazy to make another object.

Quote:- Since when did the M Tanks suddenly become W tanks?

Screenshot or other details? As far as I can tell, W Tanks look and act correctly.

Quote:- You should NOT be able to use Rush Coil just by running toward it. You have to make it so you need to jump on top of Rush first.
- When sliding, pressing the opposite direction should cancel out of it, unless going through small tunnels.
Quote:- When Mega Man gets hit, I think his push back may be too far.
- The getting hit top sprite particles are absent when Mega Man gets hit.

Updated the engine.
*chew*
Reply
#9
Updated:
- Option for Mega Man to automatically spawn a camera, defaulted to true
- Mega Man update callbacks, in case the user wants to call code for Mega Man without actually modifying his source file
- Add and remove queue options in megautils.add and megautils.remove. Add queue isn't very useful, but remove queue can prevent some objects from getting skipped when calling updates
- Update layers
- Minor entity system optimizations
*chew*
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)