don't click here

Help wanted: Motobug Engine (derivative fangames appreciated!)

Coderman64

Sound Test
Oct 2, 2019
49
47
28
coderman64.github.io
Hello folks! I'm Coderman64, and a few months ago I posted my first ground-up classic sonic engine, called the Motorbug Engine. (demo here). It's written with modern web technologies (I.E. HTML5, JS, and CSS), so it can be run inside the browser. This presents a few distinct advantages, like:
- Don't have to download shady fan games that might contain malware.
- Full compatibility with smartphones
- and more.

In addition, it is fully open-sourced on GitHub, so anyone can use it/tinker with it/make derivatives/whatever.

While I have gotten to a point where the engine is fairly workable, I still don't feel like it's at a point where I'd recommend others work on it. That's where this post comes in. If anyone has a working knowledge of HTML5 canvas and wants to help out, that would be great. No contribution is too small!

ALSO! If you are considering making a fangame, and don't mind using an experimental-ish engine to do it, please don't be afraid to contact me! If more people use it, we will start to discover more and more ways to make it better.

Thanks!
 

SpaceMoktul

Green Hill Zone
Sep 8, 2020
4
12
27
42
Hello, do you interesting by a sonic fan game with game maker pro8 and Gmate Plus. To update the gmate engine? with your knowledge.
 

Coderman64

Sound Test
Oct 2, 2019
49
47
28
coderman64.github.io
Hello, do you interesting by a sonic fan game with game maker pro8 and Gmate Plus. To update the gmate engine? with your knowledge.
Hey! I had a hard time understanding your comment...I'm assuming you are asking if I want to work with you to update the GMate Engine for your sonic fan game. While I appreciate the request, I am currently busy with other projects. I see that you have posted another thread asking for assistance. Personally, I have not used any version of GameMaker beyond 7, and am unfamiliar with the sonic engines that are built on it. I do think a good place to look for advice would be the dev channel on the SFGHQ Discord server.

Hope you find any answers you're looking for!
 
Last edited:

Pink_bot

Press Start Screen
Dec 28, 2021
9
2
8
39
Thank you for doing this. I’m definitely looking forward to learning more about this framework.
 

Pink_bot

Press Start Screen
Dec 28, 2021
9
2
8
39
Hey coderman, I dont know if youre still working on this project but I made a fork on github and I've been working on some of the character physics (especially slopes.)


I don't feel satisfied with my additions yet but I was wondering what you think of the changes and also what was on your to-do list when you posted your last update.
 

Coderman64

Sound Test
Oct 2, 2019
49
47
28
coderman64.github.io
Hey coderman, I dont know if youre still working on this project but I made a fork on github and I've been working on some of the character physics (especially slopes.)


I don't feel satisfied with my additions yet but I was wondering what you think of the changes and also what was on your to-do list when you posted your last update.
Thanks! Slopes can be a bit of a pain to deal with. I think I dealt with it similar to how the physics guide did (I have a timer that removes control for a certain time if you don't have enough velocity)

I haven't added too much to this since last SAGE, as I have been busy with life stuff. But feel free to make any additions you want/need! The two most important things for this project are physics and performance. The physics are a bit glitchy, especially with non-standard tiles. And performance can vary drastically based on device and browser. I have been trying my best to optimize, but it still causes problems on some devices.

Beyond that, anything that you think needs adding can be added. I should probably make some documentation regarding general architecture stuff at some point, but for now I'll just try to answer questions when I can.
 
  • Like
Reactions: Pink_bot

Pink_bot

Press Start Screen
Dec 28, 2021
9
2
8
39
I just found out the slope factor code I tried to add screwed up the physics so that sonic couldnt run up loops or walls or even clear quarter pipes, but when I commented the code out it seemed like sonic could still gain momentum on slopes. Did you already write that code somewhere in the program?

edit: scratch that, I think I found yours. Not sure why I missed it before.
JavaScript:
if (char.rolling) {
            if (char.Gv / Math.abs(char.Gv) == Math.sin(char.angle) / Math.abs(Math.sin(char.angle))) {
                char.Gv += Math.abs(char.Gv) > 0.01 ? 0.3125 * Math.sin(char.angle) : 0;
            }
            else {
                char.Gv += Math.abs(char.Gv) > 0.01 ? 0.078125 * Math.sin(char.angle) : 0;
            }
        }
        else {
            char.Gv += Math.abs(char.Gv) > 0.01 ? 0.125 * Math.sin(char.angle) : 0;
        }
        //set velocity based on the ground velocity
        if (char.state >= 0) {
            char.xv = isNaN(char.Gv * Math.cos(char.angle)) ? char.xv : char.Gv * Math.cos(char.angle);
            char.yv = isNaN(char.Gv * Math.sin(char.angle)) ? char.yv : char.Gv * Math.sin(char.angle);
        }
I had my own slope factor code in there as well so it was being applied 2x per frame
 
Last edited:
  • Like
Reactions: Coderman64

Coderman64

Sound Test
Oct 2, 2019
49
47
28
coderman64.github.io
Did you already write that code somewhere in the program?
Yup, I did. I thought you wanted to write a better version, which is altogether possible since the physics in motobug is still far from perfect.

If you want more info on how it works, it is based on the sonic physics guide on the subject.

I really appreciate your help, nonetheless! If you see anything that needs working on, it might be good to add an issue in the Github issue tracker and assign it to yourself so we can keep track of who's working on what. I've not been really good at keeping up with this, but now seems as good of a time as any to start!
 
  • Like
Reactions: Pink_bot

Pink_bot

Press Start Screen
Dec 28, 2021
9
2
8
39
I've been using the physics guide to figure out what the math equations do but it looks like I dont know how to use github. The version I have on my github is pretty broken (still has that redundant slope factor code) so you're better off ignoring it for now.